PR

modustoolboxの初期設定

イライラさせる開発環境だぜ、これほんと…

こうした悩みを解決します。

立プロ

新卒でメーカーに入り、10年間組み込みの現場で設計を行う。
今は個人事業主として自作の組み込み機器開発や、エージェント様に紹介いただき業務委託を行っています。
C,C#,JavaScript, Vue, PHP, VBA, GAS, Kotlinなど、扱う言語が増えゆく日々。

立プロをフォローする

modustoolboxとは

infinionのマイコンボード開発で用いる純正の統合開発環境です。

まあこれを使うあたり、組み込み初心者ではないでしょう。

でも、でもですよ、この開発環境設定がイライラさせるんですねえ、ほんとに。

久々に壁ドンしてしまいました(意味違う

これよくわからないのが、2台のパソコンにmodustoolbox入れたんですが、一方は問題なく動き、他方はエラーだらけとなり、一体なんなんでしょう。

以下私のつまずいた点。ubuntu22.04使ってます。

bin/makeがない

modustoolboxでまずはLチカのサンプルコードもらおうと、

File -> New -> ModustoolboxApplication

と進むと、project creatorが表示されます。

そこには、githubから引っ張ってきたサンプルコードの一覧が列挙されます。

しかし、bin/makeがない、と赤字で表記されてサンプルコードが表示されない。

そもそもこのbinディレクトリはmodustoolbox/tools_x.x/modus-shellディレクトリにあるとのこと。
(x.xはバージョン情報、例えば、tools_3.1とかになってますよ、実際は。)

で、そこを見るとそもそもbinディレクトリがない。

modustoolboxには、CY_TOOLS_PATHS correctly?とか表示される。

どう調べても、それはすでに存在するプロジェクトで設定する内容で、bin/makeがないというエラーと関係がない。

純正環境がテキトーなこと言うんじゃないということと、そこまで言うならガイドを出せと言いたい。気が利かないエンジニアが作った開発環境だと思わせる。

けどまあ純正環境だからこそ、こんな動きが許されるというのだが。

あと、警告として、プロキシサーバー設定が云々とも書かれてますけど、これも関係ないです。

すみません、愚痴が長くなりましたが、結局どうすればよいかというと、modustoolbox/tools_x.x/modus-shellディレクトリにあるpostinstallを実行すればよいです。

//パスは基本的に→ ~/ModusToolbox/tools_3.1/modus-shell
$./postinstall

これによってbinディレクトリとその中のファイルがインストールされます。

これでサンプルコードが参照できるようになります。

Error: unable to find a matching CMSIS-DAP device

さて、サンプルコードも引っ張ってこれるようになったので、とりあえずボードに書いてみるか。

ビルドも通ったし、Runで書き込もうとすると、

Error: unable to find a matching CMSIS-DAP device

このように表示されて書き込みできません。おい、もう勘弁してくれよ…

これはケーブルの断線とかボードの故障によってmodustoolboxが認識できないことが疑われる、と。

で、それを確認するために、tools_x.x/modus-shell/binディレクトリのfw-loaderを実行しなさい、と。

$ ./fw-loader --device-list

ちゃんと認識できていれば上記コマンドでボード情報が表示される。

しかし、接続されたデバイスはないと言われる。なんでだよ…

Infineon Firmware Updater, Version: 3.5.0.2114
(C) Copyright 2018-2023 by Cypress Semiconductor Corporation (an Infineon company)
All Rights Reserved

Info: Start the API initialization
Info: The hardware initialization has completed in 252 ms
Error: No connected devices.

私の場合、これはopenocdがなかったために起こった問題でした。

$ sudo apt-get install openocd

openocdをインストールして、

$ ./fw-loader --device-list

再度デバイスリストを表示させたら、問題なく表示しました。

そしてmodustoolboxでrunするとこちらも問題なく書き込み動作できました。

まとめ

modustoolboxはクセあり環境、導入時要注意。(丸1日かかりました)

コメント

タイトルとURLをコピーしました