私たちの主な目標は、Flipper を中心に健全で持続可能なコミュニティを構築することなので、新しいアイデアや貢献を歓迎します。ここにはいくつかのルールやタブーもありますので、このページと当社の行動規範をよくお読みください。
答えを探すのに最適な場所は、ユーザー ドキュメントです。そこで答えが見つからない場合は、Discord サーバーまたはフォーラムを確認してください。ファームウェアの開発に貢献したい場合、または独自のニーズに合わせてファームウェアを変更したい場合は、開発者向けドキュメントを確認することもできます。
問題を見つけて報告したい場合は、問題ページを確認してください。説明には、使用しているファームウェアのバージョン、プラットフォームに関する情報、および問題を再現する手順の明確な説明が含まれていることを確認してください。
PR を開く前に、変更がファームウェアに含まれている必要があることを確認してください。多くのアイデアは外部アプリケーションとして簡単に実装でき、Flipper アプリケーション カタログで公開できます。不明な場合は、Discord サーバーまたは問題ページからご連絡ください。コードの適切な場所を見つけるお手伝いをいたします。
また、コントリビューション ガイドとコーディング スタイルをお読みになり、コードがプロジェクト ライセンスと互換性があることを確認してください。
最後に、プル リクエストを開き、CI/CD ステータスがすべて緑色であることを確認します。
Flipper Zero ファームウェアは C で書かれており、一部の部分は C++ および armv7m アセンブリ言語で書かれています。快適なプログラミングを行うには、中級レベルの C の知識が推奨されます。 Flipper アプリケーションでは、C、C++、および armv7m アセンブリ言語がサポートされています。
ファームウェア ロードマップ Miro ボード
サポートされている開発プラットフォーム:
サポートされているインサーキット デバッガ (オプションですが強く推奨):
Flipper Build System は他のすべての依存関係を処理します。
十分なスペースがあることを確認して、ソース コードのクローンを作成します。
git clone --recursive https://github.com/flipperdevices/flipperzero-firmware.git
Flipper Build Tool を使用してファームウェアをビルドします。
./fbt
インサーキット デバッガーを Flipper に接続し、Flipper Build Tool を使用してファームウェアをフラッシュします。
./fbt flash
フリッパーがオンになっていて、ファームウェアが機能していることを確認してください。 USB ケーブルで Flipper を接続し、Flipper Build Tool を使用してファームウェアをフラッシュします。
./fbt flash_usb
applications
- ファームウェアで使用されるアプリケーションとサービスapplications_users
- 追加のアプリケーションとサービスのための場所assets
- アプリケーションとサービスによって使用される資産documentation
- ドキュメント生成システム構成および入力ファイルfuri
- Furi コア: OS レベルのプリミティブとヘルパーlib
- 当社およびサードパーティのライブラリ、ドライバー、ツールなど...site_scons
- システム構成とモジュールを構築するscripts
- 補助スクリプトとさまざまな Python ライブラリtargets
- ファームウェア ターゲット: プラットフォーム固有のコードまた、詳細については、これらのディレクトリ内のReadMe.md
ファイルを参照してください。