🚄

IoTデバイスを利用するための開発環境(IDE)まとめ

2021/12/25に公開

初めての投稿です。新たな開発環境やデバイスの追加などに対応して内容は随時更新していきます。

IDEとは

Integrated Development Environmentの略で日本語では「統合開発環境」と訳されています。
開発・書き込み・デバッグなどがこのソフトひとつでできるようになっています。

はじめに

IoTなどで様々なデバイスをつかう必要が発生する事もあると思います。
マイコンやSBCの開発を行う上で、IDE(開発環境)の選択は重要です。
現在のターゲットデバイスごとの開発環境・作動するOSの表を示します。

開発環境・利用PCの決め方

ターゲットボードと使うプログラミング言語を選ぶと概ね開発環境が決まりますので、使う PC(OS)の選択肢が絞れてきます。
あとはお財布と相談して決めるのもありだと思います。
特に若い人にはサーバー系で使われている OSであるLinuxの勉強をする意味でもRaspberry Piを使った開発を経験しておいて頂きたいと思います。Raspberry Pi 4Bなら下手な低価格PC並の性能はあると感じます。予算的にはモニター含まず1.5万円程度です。

所感

こうやって表にしてみるとWindowsの対応の広さは(解っていたけど)強力な一方、LinuxもPSoC Creatorでは対応ができていなかったもののCypressがInfineonに買収された後のModus Tool Boxでは対応できている事がわかります。
またApple Silicon MacはまだNative対応しているIDEが少なくRosetta2を使った開発になる可能性があることを理解しておく必要もあると思います。

今後の展開(予告編)

Webでよく見かけるのは、開発環境を固定した各種デバイスの使い方の記載です。次回以降ではデバイスを固定して各開発環境・ターゲットボードで動かす方法を記載していきたいと思います。

まとめ

ターゲットボード・開発環境とOSをまとめました。
ここに記載のないターゲットボードや開発環境でリクエストがありましたら教えてください。

IDE Target Board Language Win Mac(Intel) Mac(Apple Silicon) RPi Ubuntu Linux(rpm) Note
Arduino arduino C Yes Yes Yes Yes Yes Yes
Arduino RPI Pico C Yes Yes Yes Yes Yes Yes
Arduino ESP8266 C Yes Yes Yes Yes Yes Yes
Arduino ESP32 C Yes Yes Yes Yes Yes Yes
Arduino Spresence C Yes Yes Yes Yes Yes Yes
MicroPython RPi Pico Python Yes Yes Yes Yes Yes Yes
arm mbed arm devices C Yes Yes Yes Yes Yes Yes web環境なので OSには影響しない(はず)
mbed studio arm devices C Yes Yes No Yes Yes Yes
PSoC Creator PSoC C Yes No No No No No
Modus Tool Box PSoC C Yes Yes No Yes Yes Yes PSoC Creatorの後継IDE
STM32CubeMX STM32 C Yes Yes No Yes Yes Yes 初期化コードジェネレータ
STM32CubeIDE STM32 C Yes Yes Yes Yes Yes Yes 開発環境
Visual Studio Code - Verious Yes Yes Yes Yes Yes Yes
Google Colaboratory - Python Yes Yes Yes Yes Yes Yes web環境なので OSには影響しない(はず)
anaconda - Python Yes Yes Yes Yes Yes Yes 2022.05でApple Silicon対応しました(2022/5/21追記)
Thonny - Python Yes Yes Yes Yes Yes Yes
以下はリモート接続
RDP (Microsoft) - Yes Yes Yes Yes Yes Yes LinuxではRemminaの利用を推奨(VNCも利用可能)
VNC Viewer - Yes Yes No Yes Yes Yes

Discussion