
flipperzero-firmware v1.5.0-rc
Flipper Zeroファームウェアのソースコード
Flipper Zero ファームウェア
- Flipper Zero 公式ウェブサイト - Flipper Zero ができることを友達に簡単に説明できる方法。
- Flipper Zero ファームウェアアップデート - あなたのイルカのための改良: 最新のファームウェアリリース、PC およびモバイルデバイス用のアップグレードツール。
- ユーザードキュメント - あなたのイルカについてもっと学ぶ: 仕様、使用ガイド、そして知りたいことすべて。
- 開発者向けドキュメント - Flipper Zero ファームウェアのソースコードを深く掘り下げる: ビルドシステム、ファームウェア構造など。
コントリビューション
私たちの主な目標は、Flipper を中心とした健全で持続可能なコミュニティを築くことです。新しいアイデアやコントリビューションはいつでも歓迎します。また、ここにはいくつかのルールとタブーがあるので、このページと 行動規範 をよくお読みください。
助けが必要な場合
答えを探すのに最適な場所は、ユーザードキュメント です。そこに答えが見つからない場合は、Discord サーバー を確認してください。ファームウェア開発に貢献したい場合や、自分のニーズに合わせて変更したい場合は、開発者向けドキュメント も参照できます。
問題を報告したい場合
問題を見つけて報告したい場合は、Issues ページを確認してください。説明には、使用しているファームウェアのバージョン、プラットフォーム、問題を再現する手順の明確な説明が含まれていることを確認してください。
新機能を提案したい場合
機能リクエストがある場合や、既存のリクエストに投票したい場合は、Discussions を使用し、ディスカッションガイドライン に従ってください。
コードのコントリビューションをしたい場合
PR を開く前に、変更がファームウェアに含まれる必要があることを確認してください。多くのアイデアは外部アプリケーションとして簡単に実装でき、Flipper Application Catalog で公開できます。不明な場合は、Discord サーバー または Issues ページでお問い合わせください。あなたのコードに最適な場所を見つけるお手伝いをします。
また、コントリビューションガイド と コーディングスタイル をお読みいただき、コードが プロジェクトライセンス と互換性があることを確認してください。
最後に、Pull Request を開き、CI/CD ステータスがすべてグリーンであることを確認してください。
開発
Flipper Zero ファームウェアは C で書かれており、一部は C++ と armv7m アセンブリ言語で書かれています。快適にプログラミングするには、中級レベルの C の知識が推奨されます。Flipper アプリケーションでは、C、C++、armv7m アセンブリ言語がサポートされています。
要件
対応開発プラットフォーム:
- Windows 10+(PowerShell と Git を搭載、x86_64)
- macOS 12+(Command Line Tools を搭載、x86_64、arm64)
- Ubuntu 20.04+(build-essential と Git を搭載、x86_64)
対応インサーキットデバッガ(任意ですが強く推奨):
- Flipper Zero Wi-Fi Development Board
- CMSIS-DAP 互換: Raspberry Pi Debug Probe など...
- ST-Link (v2, v3, v3mods)
- J-Link
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 の電源が入っていて、ファームウェアが動作していることを確認してください。USB ケーブルで Flipper を接続し、Flipper Build Tool を使用してファームウェアを書き込みます:
./fbt flash_usb
ドキュメント
- Flipper Build Tool - Flipper ソフトウェアのビルド、書き込み、デバッグ
- アプリケーション、アプリケーションマニフェスト - Flipper アプリケーションの開発、ビルド、デプロイ、デバッグ
- ハードウェアコンボと復旧 - 最悪の状況から Flipper を復旧させる
- Flipper ファイルフォーマット - Flipper がデータを保存する仕組みと、そのデータの扱い方のすべて
- ユニバーサルリモコン - 赤外線リモコンをユニバーサルリモコンデータベースに貢献する
- その他にも 開発者向けドキュメント に多数あります。
プロジェクト構成
applications- ファームウェアで使用されるアプリケーションとサービスapplications_users- 追加のアプリケーションとサービスを置く場所assets- アプリケーションとサービスで使用されるアセットdocumentation- ドキュメント生成システムの設定と入力ファイルfuri- Furi Core: OSレベルのプリミティブとヘルパーlib- 自前およびサードパーティのライブラリ、ドライバ、ツールなど...site_scons- ビルドシステムの設定とモジュールscripts- 補助スクリプトとさまざまな Python ライブラリtargets- ファームウェアターゲット: プラットフォーム固有のコード
また、詳細については、各ディレクトリ内の ReadMe.md ファイルを参照してください。
リンク
- Discord: flipp.dev/discord
- Reddit: reddit.com/r/flipperzero
- ウェブサイト: flipper.net
- Kickstarter: kickstarter.com
SAST ツール
- PVS-Studio - C、C++、C#、Java コード用の静的アナライザー。