ファームウェア開発サービス
マイコン向けのファームウェア開発サービス:C、C++、Rustによるベアメタルとリアルタイムのファームウェア、ドライバー、Bluetoothと無線スタック、ブートローダーとフィールドアップデート、車載ECUファームウェア、モーター制御とバッテリー管理、そしてウェアラブル、センサー、メーター、家電、車両、医療機器向けの低消費電力設計。御社のチームに加わる専任のファームウェアエンジニア、またはプロジェクトの一括受託に対応します。
開発するファームウェア
マイコンファームウェア
STM32、Nordic nRF52・nRF53・nRF54、ESP32、NXP、Renesas、Infineon、Microchip、Silicon Labsの各製品向けに、ベアメタル、Zephyr、FreeRTOS、Eclipse ThreadXのファームウェアを開発します。ベンダーSDKは時間を節約できる場面で使い、特定のチップに縛られる場面ではラップします。
ペリフェラルとセンサーのドライバー
センサー、ディスプレイ、モーター、無線機向けのI2C、I3C、SPI、UART、CAN、ADC、DMAのドライバーを開発します。いずれも、実機に接続する前に、シミュレートまたは記録したデバイスでテストします。
無線プロトコルのファームウェア
Bluetooth Low EnergyとLE Audio、Wi-Fi、Thread、Matter、Zigbee、LoRaWANのスタックをチップ上で設定・拡張し、セルラーモデムはATコマンドまたはLwM2Mで制御します。Bluetooth SIGの認定とMatter認証に向けた準備まで行います。
ブートローダーとフィールドアップデート
署名付きイメージ、2スロット、ロールバックを備えたMCUbootまたは専用ブートローダーにより、バッテリー切れで中断したアップデートの後も、デバイスは最後の正常なバージョンに留まります。
低消費電力・ウェアラブルのファームウェア
フィットネスバンド、ヘルスパッチ、イヤホン、センサーなど、小型バッテリーで数か月動作する機器を対象に、スリープモード、ウェイクアップ要因、無線のデューティサイクルを、パワープロファイラーの波形に照らして調整します。そのため、箱に印刷されたバッテリー駆動時間は、推定ではなく測定値です。
モーター制御、電源、バッテリーのファームウェア
BLDCモーターとステッピングモーターのフィールド指向制御、セルバランシングと充電状態推定を備えたバッテリー管理、充電器、太陽光インバーター、エネルギー貯蔵向けの制御ファームウェアを開発します。制御ループは、実際のハードウェアを駆動する前にシミュレーションで調整します。
車載ECUファームウェア
Infineon AURIX、NXP S32K、Renesas RH850コントローラー上のClassic AUTOSARのベーシックソフトウェアとアプリケーションコンポーネント、CAN FD、LIN、車載Ethernetの通信、UDS診断を、MISRA Cと、対象アイテムが求めるISO 26262の安全度水準に沿って開発します。
オーディオ、DSP、オンデバイス機械学習
CMSIS-DSP、またはCadence TensilicaとAnalog Devices SHARCコア上でのオーディオとセンサーの信号処理、そしてLiteRT for MicrocontrollersまたはEdge Impulseを通じてマイコン上で動作するキーワード検出、ジェスチャー、異常検知のモデルを開発します。
安全性が重要なフォールトトレラントなファームウェア
医療機器、家電、産業安全機能向けのファームウェアを、MISRA CとIEC 62304、IEC 60730、IEC 61508の規則に沿って開発します。ウォッチドッグ、リセットをまたいでクラッシュの記録を保持するフォールトハンドラー、規格が求めるレベルで測定したコードカバレッジを備えます。
ファームウェアエンジニアを採用する
専任のファームウェアエンジニア
御社のチームにフルタイムで参画し、御社のツールとプロセスの中で働き、御社のリードに報告するファームウェアエンジニアです。面接は御社が行い、ウクライナでの雇用契約、給与支払い、請求書発行、休暇管理は当社が担います。
ファームウェア開発プロジェクト
スコープと固定の計画が定まったファームウェア開発の一区切りの業務です。当社側の担当リードが成果に責任を持ち、進捗は御社のチャネルで報告します。
継続的なファームウェア開発
ファームウェア開発を継続サービスとして提供します。毎月同じメンバーが担当し、優先順位は御社がバックログで決め、稼働時間は当社のポータルと請求書で確認できます。
スペシャリストが御社のチームに参画する方法は専任チームのページで、プロジェクトのデリバリー、引き継ぎ、料金の考え方はアウトソーシングのページで説明しています。
御社のファームウェア開発を担当するメンバー
ファームウェアエンジニア
マイコン上のC、C++、Rust
車載ファームウェアエンジニア
Classic AUTOSAR、CAN、UDS診断
ハードウェアエンジニア
ファームウェアが動作するボードの回路図とブリングアップ
組み込みQAエンジニア
ハードウェアインザループのテストと治具
モバイルエンジニア
iOS、.NET MAUI、React Nativeのコンパニオンアプリ
ファームウェアの書き方
ファームウェアの多くはボードなしでテストできるため、そのように書きます。ハードウェアへのアクセスは薄いインターフェースの背後に置き、その上のロジックは、Unity、Ceedling、GoogleTestを使ったユニットテストとしてビルドマシン上で実行します。パイプラインでは、Renodeがエミュレートされたハードウェア上でイメージ全体を実行します。静的解析では、製品が求める場合にMISRA CまたはCERT Cの規則を確認し、コンパイラの警告はエラーとして扱います。すべてのリリースイメージは、タグ付きコミットからパイプラインがビルドし、そこで署名します。
ハードウェアは、2つの方法のいずれかでエンジニアに届きます。開発キットやプロトタイプボードを送る方法と、リモート電源制御、デバッグプローブ、シリアルコンソールを御社のVPN経由で使い、御社のラボのラックで作業する方法です。どちらの場合も、ビルドは御社のパイプラインで実行され、コードは御社のリポジトリに置かれます。
その他の組み込み・ハードウェアのサービス
組み込みソフトウェア開発
組み込みソフトウェア開発サービス:組み込みLinux、AndroidとRTOS、ドライバー、BSP、車載・ネットワーク・音声・映像ソフトウェア、セキュアアップデートを、専任の組み込みソフトウェアエンジニアまたはプロジェクト単位でご提供します。
FPGA開発
FPGA開発サービス:SystemVerilogとVHDLによるRTL設計、FPGAとASICの検証、SoC FPGA、映像、ネットワーク、データ収集、アクセラレーションを、専任のFPGAエンジニアまたはプロジェクト単位でご提供します。
ハードウェア・基板(PCB)設計
ハードウェアと基板(PCB)設計サービス:回路図、多層基板とHDIのレイアウト、高速、RF、アナログ、電源の設計、EMC対策の準備、製造用データを、専任のハードウェアエンジニアまたはプロジェクト単位でご提供します。
IoT開発
IoT開発サービス:通信接続、プロビジョニング、AzureまたはAWS上のクラウドプラットフォーム、デバイス群のアップデート、産業用IoT、資産追跡、EV充電、ダッシュボードとアプリを、専任のIoT開発者またはプロジェクト単位でご提供します。
組み込み・ハードウェアのテスト
組み込み・ハードウェアのテストサービス:デバイステスト、ハードウェア・イン・ザ・ループ(HIL)リグ、ファームウェアの自動化、車載ECU、通信接続、セキュリティのテストを、専任の組み込みQAエンジニアまたはプロジェクト単位でご提供します。
ロボティクスソフトウェア
ROS 2によるロボティクスソフトウェア開発サービス:認識、ナビゲーション、モーションプランニング、ロボット制御、産業用セル、自動運転車両、フリート管理ソフトウェアを、専任のロボティクスエンジニアまたはプロジェクト単位でご提供します。
ファームウェア開発に関するご質問
ハードウェアが完成する前にファームウェアの作業を始められますか?
はい。選定したマイコンの開発キットとRenode上で作業を始め、回路図にある部品のデータシートに基づいてドライバーを書きます。そのため、最初の試作ボードは、ゼロから始めるのではなく、すでに存在するファームウェアでブリングアップできます。
ファームウェアはC、C++、Rustのどれが向いていますか?
ベンダーSDK、既存のコード、認証の証拠がCで書かれている場合はCです。ヒープ割り当てなしで型とテンプレートの利点を得られる大規模なファームウェアにはC++です。メモリ安全性が重要で、マイコンが十分にサポートされている新規ファームウェアには、Embassyとembedded-halを使うRustです。Rustは、当社自身のデスクトップソフトウェアでもすでに使っている言語です。最初の1行を書く前に、製品ごとに1つを推奨します。
ファームウェアエンジニアはどの業界で業務を行っていますか?
家電・ウェアラブル(フィットネスバンド、イヤホン、家電製品、スマートホームセンサー)、産業・エネルギー機器(モータードライブ、バッテリー管理システム、メーター、充電器)、車載(ボディ、コンフォート、パワートレインのECUと、電動自転車・電動スクーターのコントローラー)、医療・ヘルスケア機器(血糖測定器、輸液ポンプ、補聴器)、セキュリティ製品(警報センサー、スマートロック、入退室リーダー)、通信(モデムと無線モジュール)です。
ファームウェアエンジニアは、どのくらいで開始できますか。
適任のファームウェアエンジニアがすぐに対応可能な場合、開始までの条件は、御社の面接と、NDAおよび知的財産権の譲渡契約の締結のみです。そうでない場合は人材を探索し、通常は2〜3週間以内に候補者のプロフィールをお出しします。御社が承諾するまで、誰も業務を始めません。
BigTree108を通じてファームウェアエンジニアを採用するには、どうすればよいですか。
必要な業務内容、シニアリティ、稼働時間をお知らせください。1〜2名の候補者をプロフィールとともにご提案し、御社が自社で採用する場合と同じ形で面接を行います。契約はBIG TREE 108 LLCとの1本、請求書は月1通です。
成果物の権利は、誰に帰属しますか。
御社です。すべてのスペシャリストはBigTree108と署名済みの契約を結び、成果物のすべてを会社に帰属させています。さらに、御社との契約により、その権利は御社に引き継がれます。コード、デザイン、ドキュメントは、当社だけが変更できる場所ではなく、御社のリポジトリとツールに納品します。
ファームウェアの開発や修正をお考えですか?
マイコン、ツールチェーン、デバイスが果たすべき役割をお知らせください。1営業日以内に、ファームウェアの計画案、候補者のプロフィール、または既存コードのレビューをご回答します。