less than 1 minute read

開発環境

kconfig-frontendsのインストール

$ apt install automake gperf flex bison libncurses-dev

$ git clone https://bitbucket.org/nuttx/tools
$ cd tools kconfig-frontends
$ ./configure
$ make
$ make install

tool chainのインストール

$ apt install gcc-arm-none-eabi

NuttX

NuttX wiki を参考に進めればよい。
Getting Started with NuttX – STM32F4 Discovery

$ git clone https://bitbucket.org/nuttx/nuttx.git
$ git clone https://bitbucket.org/nuttx/apps.git

$ cd nuttx
$ git checkout nuttx-7.26

$ cd apps
$ git checkout nuttx-7.26

Configuration

$ cd nuttx
$ ./tools/configure.sh -l stm32f3discovery/usbnsh

Build

$ make

nuttx.hexとnuttx.binができるのでST-LINK utilityで書き込む。
nuttx.binは57kBだった。

STM3F3DISCOVERY

ST-LINKのファームウェアアップグレードが必要だった。
STSW-LINK007 ここからダウンロードする。

NuttX Boot

BootするとUSB COM portでアクセスできる。起動まで数秒かかった。USBの認識に時間がかかるのか?

NuttShell (NSH)
nsh> help
help usage:  help -v <cmd>

        [           cp          exit        mb          rm          time
        ?           cmp         false       mkdir       rmdir       true
        basename    dirname     help        mh          set         uname
        break       dd          hexdump     mv          sh          unset
        cat         echo        kill        mw          sleep       usleep
        cd          exec        ls          pwd         test        xd

Builtin Apps:
nsh>

USBのIDは以下を借用していた。

VID: 0525 (Netchip Technology, Inc.)
PID: A4A7 (Linux-USB Serial Gadget (CDC ACM mode))

デバイスドライバは自動的にインストールされた。

Factory Image

工場出荷時のファームウェアは STSW-STM32118 に入っている。

リンク

履歴

  • 2018-12-15: scrapboxから転記加筆修正