Skip to content

ETrobocon/etrobo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

709 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

etrobo all-in-one installer/builder/launcher environment

基本的には、ETロボコンのシミュレータ部門エントリークラスおよびフィジカル部門ベーシッククラス向けの開発環境です。アプライドクラス向けのRasPike-ARTは別途こちらからインストールしてください。

see INSTALL that is written by english language

注:ここでは、startetroboによってインストールされるファイル群を「etroboパッケージ」、startetroboによって起動する開発環境を「etrobo環境」と呼びます。

etrobo環境は、以下のソフトウェアおよび成果物の一部を利用し構成され、etroboパッケージはこれらを自動的に取得しインストールします。

インストール方法や環境の解説はetroboパッケージのWikiをご覧ください。

インストールがうまくいかなかった場合は、ターミナルのログを添えて 「やばい」ラベルで問題を報告してください。 特にMac版は環境による差が大きく、あまり広範なテストができていません。お気づきの点があればお気軽にIssueを立ててください。

主な特徴

  • Visual Studio Code(VSCode)以外のインストールを完全自動化
  • Windows/Mac/Linux/ChromeOSで同一の操作による開発を実現
  • SPIKEモード(デフォルト)では、RasPike-ART向けETロボコンSPIKE APIのコードをETロボコンシミュレータ向けのAthrill/ASP3にビルド可能
  • SPIKE-RTモードでは、SPIKE-RT向けETロボコンSPIKE APIのコードを実機向けにビルド可能
  • EV3モードでは、Mindstorms EV3実機向けのEV3RT/HRP3と、ETロボコンシミュレータ向けのAthrill/ASP3が、単一のソースで一度にビルド可能
  • NXTモードでは、Mindstorms NXT実機向けnxtOSEKアプリをビルド可能
  • USB接続のSPIKE Primeハブ向けユーティリティ、EV3RT App Loader向けユーティリティおよびNXT拡張ファーム向けアップローダを搭載、ビルド時に自動でプロジェクト名をファイル名として転送可能
  • ビルドからシミュレータの実行まで1コマンドで自動処理
  • サンプルコースとサンプルコードを同梱

注:ここに同梱されているシミュレータは、一般配布用の評価版です。大会で実際に使用するコースデータやシミュレータには、参加者限定で配布されるものを使用し開発してください。シミュレータの性能や走行体の挙動が異なります。

同梱されている評価版シミュレータのご利用は、以下の用途に限らせていただきます。

  • ETロボコンへの参加のため
  • ETロボコンへの参加を検討するため
  • ETロボコンの広報
  • ETロボコンに参加、協力していることを広報するため

(ご不明な点は、ETロボコン 本部事務局までお問合せください)

Copyright(C) 2020-2026 ETロボコン実行委員会, All rights reserved.

動作環境

Windows

  • x86-64アーキテクチャのCPU。SPIKE-RTモードはARM64アーキテクチャのCPUも利用可能
  • Windows 11
    • version 25H2、またはOSビルド26100.2605(December 2024 Update)以降のversion 24H2。
      • 2024年12月アップデートより前に手動インストールした24H2ではWSLが破壊され修復不可能であるとの報告もありますのでご注意ください。
    • Windows 10 Enterprise LTSC 2021での動作確認も行なっていますが、サポート対象外です。
    • インストールにWindowsの管理者権限が必要です。
  • wsl --installによりインストールされたUbuntuまたはUbuntu-24.04(WSL2)
    • Ubuntu-22.04・20.04・18.04・16.04、Debian(9/10/11/12/13)でも動作するようですが、サポート対象外です。なお、Debianにインストールする場合はまずsudo apt install wgetしてください。
    • Ubuntu-26.04に対しては、リリースされ次第対応を実施します。
    • WSL1での動作も引き続き問題ないと思われますが、サポート対象外です。
  • Visual Studio Code(「WSL」拡張機能)のインストール
  • 制限事項:MacのParallels Desktop上で動作するWindows 11では、WSLへのUSBパススルーが利用できないため、実機への転送ができません。ParallelsではDebianをご利用ください。

Mac

  • Apple Silicon、またはx86-64アーキテクチャのCPU
    • 動作確認は、以下のMacで行っています:
      • MacBook Air (M1, 2020) 8GB-7GPU / macOS Tahoe 26.3.1(a) / Xcode CLT 26.3.0
  • macOS Sonoma(14.0)以降
    • HomeBrewの動作環境に準じます。これ以前のmacOSでも動作する可能性は高いですが、サポート対象外です。
    • 環境のインストールに管理者権限が必要です。
  • Apple Silicon機の場合、Rossetaのインストール
  • Xcode(Command Line Tools)のインストール
  • Visual Studio Codeのインストール

Linux (Debian系)

  • x86-64アーキテクチャのCPU。SPIKE-RTモードはARM64アーキテクチャのCPUも利用可能
  • Debian GNU/Linux 13 (trixie) または Ubuntu 24.04
    • 環境のインストールにはsudoers権限の付与が必要です。
    • Ubuntu-26.04に対しては、リリースされ次第対応を実施します。
    • Debian 12/Ubuntu 22.04以前でも引き続き動作するものと考えていますが、サポート対象外です。
  • Visual Studio Codeのインストール

ChromeOS

  • x86-64アーキテクチャのCPU。SPIKE-RTモードはARM64アーキテクチャのCPUも利用可能
    • Chrome OSでの動作確認は以下の環境で行っています:
      • ASUS Chromebook C223NA (babymega/coral)
      • Chrome OS 126.0.6478.222 (Official Build)
      • Debian GNU/Linux 13 (trixie) x86-64
    • SPIKE-RTモードの動作確認は以下の環境で行なっています:
      • ASUS Chromebook Detachable CZ1 (katsu/kukui)
      • Chrome OS 146.0.7680.169 (Official Build)
      • Debian GNU/Linux 13 (trixie) aarch64
  • ChromeOS 102以降
    • 80以降のChromeOS/ChromiumOS/ChromeOS Flexでも、Debianをtrixieにアップグレードすることで動作するものと考えていますがサポート対象外です。
  • 「Linux開発環境」のインストール
    • 教育委員会等によって無効化されている場合は素直に諦めてください。
    • trixieへのアップグレードが必要です。
    • etroboパッケージのインストール手順等はLinux版をご覧ください。
  • Visual Studio Codeのインストール
    • Linuxにインストールがエラーになる場合は、ダウンロードファイルをLinuxに移動し、sudo apt install ダウンロードファイル名でインストールしてください。
  • 制限事項:ChromeOS 101以前のDebian 10向けLinuxコンテナにて、 Crostini GPU Support有効の状態ではETロボコンシミュレータが起動しません。 ChromeOS 102以降のDebian 11向けLinuxコンテナでは有効にできますが、それでも実用的なパフォーマンスは期待できません。 EV3実機向けの開発環境としては充分です。
  • 制限事項:SPIKE-RTモードでのSPIKE Primeハブとの接続は、DFUモードおよびHubOSモードでのみUSBパススルーが可能なため、Pybiricksモードでの接続はできません。アプリのアップロードやダウンロードは可能ですが、デバイス接続設定のリセットが必要だったりUSBハブとの相性があったりなど接続にかなりクセがあり、その点はサポート対象外です。

Raspberry Pi OS

※ SPIKE-RTモードにのみ対応します

  • Raspberry Pi OS (64bit)がインストールできるRaspberry Pi
    • 動作確認は、以下の環境で行っています:
      • Raspberry Pi Zero 2 W Rev 1.0
      • Raspberry Pi OS (64bit) - Debian GNU/Linux 13 (trixie)
  • Raspberry Pi OS (64bit) - Debian GNU/Linux 13 (trixie)
  • Visual Studio Codeのインストール

動作確認&主なコマンドの説明

etrobo環境が起動しましたら、ターミナルを開いて(Windows:Ctrl+@・Mac/Linux:Ctrl+Shift+@)、とりあえず make sample と入力してENTERキーを押してください。各環境での動作確認ができます。SPIKEモードの場合、サンプルプログラムのビルドからシミュレータの起動まで自動で行います。SPIKE-RT/EV3/NXTモードの場合、サンプルプログラムのビルドから実機への転送まで行います。

etrobo環境は様々なコマンドを提供していますが、これらは原則としてetrobo環境の初期ディレクトリ(~/etrobo)上で発給してください。 もしも迷子になった場合は、cd "$ETROBO_ROOT"でどこからでも戻ることができます。

動作モードはデフォルトではSPIKE(RasPike)モードになります。環境が起動したら、 touch SPIKE_RT と入力して環境を再起動すると、以降SPIKE-RTモードに切り替わります。同様に、 touch EV3 と入力して環境を再起動するとEV3モードに、 touch NXT と入力して環境を再起動するとNXTモードになります。

初期ディレクトリ直下のworkspaceシンボリックリンクは、それぞれのモードに応じて適切なworkspaceにリンクを張ります。

Re-HackSまたはHackSPiの実機をお持ちの方は、Bluetoothボタンを押しながらUSBケーブルでPCに接続してDFUモードにし、 make sampleまたはmake app=sample_c5 upと入力してください。これだけでapp=の値をファイル名としたモジュールのビルドと転送ができます。この時、USB関係の操作にsudoers権限が必要であるため、たまにパスワードを聞かれます。その時はログインパスワードを入力してください。

同様に、HackEVの実機をお持ちの方は、USBポートにさして電源を入れ、make app=helloev3 upと入力してみてください。

一度app=を指定してビルドすると、2回目以降はこれを省略し、make upだけでビルドと転送が可能です。

  • SPIKE Primeハブオートマウント機能は、複数接続されている場合にはOSが認識している一番最初のものを使用します。

  • EV3オートマウント機能は、EV3(SDカード)のボリューム名が「EV3RT」から始まるものでなければ動作しません

    • Windows - エクスプローラのPCからドライブを選択し、ボリューム名部分をクリックして変更
    • Mac - デスクトップのドライブアイコン下のボリューム名部分をクリックして変更
    • Linux - mlabelコマンドで変更できますが、Windows/Mac上で行った方が速いと思われます
  • EV3に挿入されているSDカードに、EV3RTのアプリケーションローダがインストールされている必要があります。

Athrill/ASP3(シミュレータ環境)向けビルドは、同じく~/etroboから動かずmake app=sample_c4 sim upとすると、起動までしてくれます。これも2回目以降はmake sim upだけで構いません。

Athrill/ASP3向けも、あえてEV3RT/HRP3向けのビルドも行っています。そもそも自分のソースに問題があるのか、シミュレーション環境が対応していないのか切り分けるためです。EV3RT/HRP3向けのビルドが失敗した場合、Athrill/ASP3向けビルドと実行は行いません。

シミュレータとアプリを別々に起動する場合、simでシミュレータのみ起動、make sim startでビルド後にアプリの起動のみを行います。

このように、~/etroboから使用するmakeコマンドには特殊な仕様が仕込まれていますが、それ以外のディレクトリで叩くmakeは通常通り動作します。

make nxt app=helloworld upとすると、nxtOSEK上でビルドを行い、Mindstorms NXTにバイナリを転送します。

etrobo環境の無効化/有効化

etrobo環境はログインシェルで起動すると自動的に読み込まれます。しかし、サンドボックスを組んでいるMac版は大丈夫ですが、Windows(WSL)/Linux版では他の用途で利用する時に不都合が生じる可能性も高いので、そのような場合には無効化してください。

$ETROBO_ROOT(通常~/etrobo)内にdisableという名前のファイルがあると、ログインシェル起動時にetrobo環境を読み込みません。touch $ETROBO_ROOT/disableなどで設定してください。ログインシェルを開きなおす必要があります。

再度有効化するにはrm $ETROBO_ROOT/disableなどしてファイルを削除してください。startetroboの起動でも自動的に有効化されます。

About

ETロボコンのシミュレータ/SPIKE/EV3/NXTに対応するRTOS開発環境です。

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors