質問: ### 前提・実現したいこと 実現したいこと: blenano2をnrf5 sdkで開発 背景: blenano2を用いた開発を行っています。 現状の開発環境はarduinoIDEを使用しているのですが、限界が見えたためnRF5 sdkに移行したいと考えています。 開発環境を整えてみた、などのページのリンクを貼っていただくなどでも結構です。 ### わからないこと blenano2をnrf5sdkで開発するにあたって、どのようなソフトウェア、ツール群が必要なのか?また、それらのソフトウェア内の設定について。(まだ何もインストールしていません。) sdkでコンパイルしたものをどうやってblenano2に書き込むのか(blenano2付属のライタを使用するだけでいいのか?ほかのライタが必要なのか?) ### 試したこと 「nRF5 sdk blenano2」などで検索をかけても有益な情報が得られませんでした(自分の見落としがあるかもしれませんが)
回答: TJM-KENTAさん、 NordicのSDKでは、 * Keil MDK-ARM (有料, Lite版は無料) http://www2.keil.com/mdk5/editions/lite * IAR Embedded Workbench (有料) https://www.iar.com/iar-embedded-workbench/ * Segger Embedded Studio (非商用(non-commercial)なら制限なしで無料?) https://www.segger.com/products/development-tools/embedded-studio/ * GCC のツールチェーンに現在は対応してるようです。 SDKのサンプルフォルダの中(例:`nRF5_SDK_15.2.0_9412b96/examples/ble_peripheral/ble_app_hrs/pca10040/s132`)を覗くと、以下のようなフォルダがあり、それぞれのツールの環境のプロジェクトファイルが入ってます。 * `arm5_no_packs` - MDK-ARM v5のプロジェクト * `iar` - IARのプロジェクト * `ses` - SESのプロジェクト * `armgcc` - Makefileとリンカスクリプト 私が使用したことがあるのは、MDK-ARM系だけなので、他のものはどうかわかりませんが、インストールして、サンプルフォルダの.uvprojxファイル(例ble_app_hrs_pca10040_s132.uvprojx) をダブルクリックすると、初回時、必要そうなもの(PACK)がインストールされたと思います。 大したことをしなければ、Lite版の32KB制限でもで足りると思います。 (KeilとIARの値段を検索するとわかると思いますが、個人の趣味で買うような値段ではないです...) HEXを作って、焼いて、動作確認なら、BLENano2のみでもがんばれると思いますが、デバッガがあると、ブレークポイントをはったり、動作中にRAMの値を見たり、書き換えたりできて、便利です。 SeggerのJ-Linkというのが、メジャーなものの一つだとおもいますが、Nordic公式の開発ボード`nRF52-DK`は、オンボードで同様のデバッガがついてくるので、気合い入れて開発するなら、そういうのも入手したほうがよいかもしれません。 BLE通信中にブレイクさせると、例外が発生して、継続できなくなりますが、リアルタイムで値をみたりできるので、便利でした。 あとは、Nordicのところに、いくつかチュートリアルがあるようなので、見てみると良いと思います。 * https://devzone.nordicsemi.com/tutorials/b/getting-started/posts/getting-started-with-the-nrf5-development-kit * https://devzone.nordicsemi.com/tutorials/b/getting-started/posts/development-with-gcc-and-eclipse