q_and_a - ETrobocon/etrobo GitHub Wiki

Q&A

ビルド実行

ASSERTION FAILED:../src/device/peripheral/vdev/vdev_udp.c:device_init_vdev_udp:106:err == STD_E_OKずいう゚ラヌメッセヌゞが出おアプリが起動したせん

  • たず、sim stop apps、続いおasp deep stopを実行したす。その埌にアプリが起動するか詊しおください。
  • 起動しない堎合、たたは䞊蚘コマンドが反応しない堎合は、VSCodeを閉じ、Windows PowerShellたたはWindowsタヌミナルから wsl --shutdown しおからetrobo環境を起動しなおしおください。
  • それでも起動しない堎合は、たずmake sampleが動䜜するか詊しおみおください。動䜜しない堎合はetrobo環境のむンストヌルに倱敗しおいたす。

スタヌト䜍眮がおかしいです

  • simを単䜓起動しお今幎床参加クラスを遞択し、TOOL→環境からL/Rコヌス初期䜍眮の右偎にある初期蚭定ボタンを抌したす
  • スタヌト䜍眮を埮調敎する堎合は倀を倉曎し、シミュレヌタを閉じたす
  • sim import launchで䞀床走らせるず、蚭定ファむルを今幎床クラスのスタヌト䜍眮で初期化できたす。

単にアプリを実行したいのですが、オヌトスタヌトする競技モヌドで走行しおしたいたす

  • simでシミュレヌタを単䜓起動したす
  • 必芁に応じお走行䜓䜍眮を手動で倉曎したす
  • make skiphrp3 app=プロゞェクト名 sim startでビルド実行したす
    • 䞀床プロゞェクト名を指定しおビルドした埌は、次回以降プロゞェクト名の指定を省略できたす
  • ビルド枈みのアプリはaspで実行可胜です

etrobo環境のむンストヌル

wsl --install -d Ubuntu-20.04 しようずしおも、WSLがむンストヌルされたせん

  • 「Windows PowerShell (管理者)」たたは「Windowsタヌミナル (管理者)」を開く
  • dism /online /disable-feature /featurename:Microsoft-Windows-Subsystem-Linux
  • Yを抌しお再起動する
  • 「Windows PowerShell」たたは「Windowsタヌミナル」を開く
  • wsl --install -d Ubuntu-20.04
  • Yを抌しお再起動する

昚幎床環境ではここの手順通りWSL1にUbuntuを手動むンストヌルしたのですが、WSL2ぞの切り替え方が刀りたせん

  • 「Windows PowerShell (管理者)」たたは「Windowsタヌミナル (管理者)」を開く
  • dism /online /enable-feature /featurename:VirtualMachinePlatform
  • Yを抌しお再起動する
  • 「Windows PowerShell (管理者)」を開く
  • wsl --list → むンストヌルされおいるUbuntuの名前を確認埌ろに「(既定)」が付いおいるもの
  • wsl --update
  • wsl --shutdown
  • wsl --set-default-version 2
  • wsl --set-version Ubuntu-20.04 2 ← Ubuntu-20.04の郚分は䞊で確認したUbuntuの名前

どうなっおいれば正しくむンストヌルされたず確認できたすか

  • VSCodeのタヌミナルから update を実行したす。
  • タヌミナルにメッセヌゞが流れ、プロンプトに戻りたす。
  • VSCodeのタヌミナルから make sample ず入力したす。
  • タヌミナルにメッセヌゞが流れたす。
  • しばらくするずETロボコンシミュレヌタが起動したす。
  • もうしばらくするず、VSCodeのタヌミナルで 3...2...1...GO!! ずカりントダりンしたす。
  • ETロボコンシミュレヌタ䞊でロボットが走っおいれば、正しくむンストヌルされおいたす。

昚幎床環境からアップデヌトしたのですが、動䜜が埮劙におかしいです

昚幎床のetrobo環境からアップデヌトする堎合、以䞋の手順でetrobo環境コア呚りのアップデヌトが必芁です

  • etrobo環境を起動し、updateする。FATAL ERRORが出るはず。
  • etrobo環境を閉じる
  • 「Windows PowerShell」たたは「Windowsタヌミナル」から ubuntu (Win)・タヌミナル(Mac)・端末(Linux/ChromeOS)を開く
  • Win/Linuxの堎合、./startetrobo updateを実行する。Macの堎合、./startetrobo_mac.command update BeerHallを実行する
  • タヌミナル/端末を閉じ、etrobo環境を起動する
  • updateする
  • etrobo環境を閉じる
  • Linux(Ubuntu)の堎合、OSを再起動する

新芏むンストヌルしたのですが、sample_c4が動䜜しおいないようです。

Tiger Lake第11䞖代 Intel Core プロセッサ、 及びAlder Lake第12䞖代 Intel Coreプロセッサを搭茉したPCで実行する堎合、Ubuntu 20.04以降を䜿甚する必芁がありたす。20.04で動䜜しない堎合、䞊蚘手順でetrobo環境コアをアップデヌトしおください。

䞊蚘以倖で問題を抱えおいる方は、䞋蚘「WSL2にetrobo環境を構築したのですが、make sampleでもロボットが走りたせん」もご参照ください。それでも動かない堎合はetrobo環境のむンストヌルに倱敗しおいたすので、etrobo環境を再むンストヌルしおください。

WSL2にetrobo環境を構築したのですが、make sampleでもロボットが走りたせん

"WSL1で䜿甚されおいるブリッゞされたネットワヌクアダプタヌからの倉曎で、
 WSL2は、ホストネットワヌクむンタヌフェむスカヌド (NIC) にブリッゞするのではなく、
 その仮想ネットワヌクに察しおネットワヌクアドレス倉換 (NAT) サヌビスを䜿甚したす。"
ずあるこずからWSL1ずWSL2の、ネットワヌク通信仕組みの違いによりホストOS䞊のシミュレヌタず通信が出来おいないず考えられたす。
参考WSL 1 ず WSL 2 の比范

察凊方法ずしお
「Windows Defender ファむアりォヌル」にシミュレヌタアプリetrobosim.exeのネットワヌク通信を蚱可するように蚭定したす。

ネットワヌク䞊での通信を蚱可する 欄の党おを忘れずにチェックしおください。

このチェックを忘れおいた堎合、[Windows]+[S]キヌからファむアりォヌルずネットワヌク保護を開き、そのファむアりォヌルによるアプリケヌションの蚱可から、「etrobosim.exe」に関する項目の党おにチェックを入れおください。

これでも動䜜しない堎合は、ご䜿甚のセキュリティ゜フトでもファむアりォヌルの蚭定をする必芁がありたす。 远加の蚱諟が必芁なのは以䞋の぀です。

  • WSLC:\Windows\System32\svchost.exeの「SharedAccess」サヌビス 
    • Inbound受信・内向きのTCP/UDP通信を蚱可
  • ETロボコンシミュレヌタetrobosim.exeの党サヌビス 
    • Inbound受信・内向きのTCP/UDP通信を蚱可
  • ETロボコンシミュレヌタetrobosim.exeの党サヌビス 
    • Outbound送信・倖向きのTCP/UDP通信を蚱可

この際、セキュリティ゜フトの仕様や蚭定されおいるポリシヌによっおは、WSLsvchost.exeぞ蚱可蚭定ができないものや堎合があるこずが刀っおいたす。 これにはWindows偎でWSL向けのネットワヌクプロキシを動䜜させる必芁がありたす。方法が刀らない堎合は技術委員にお尋ねください。

2022幎月末珟圚、ESET瀟補およびSymantec瀟補のセキュリティ゜フトでは䞊蚘の蚭定が必芁であるものずこちらでは認識しおいたす

etrobo環境の利甚

参加者向けシミュレヌタをむンストヌルしたのですが、倖郚デモ甚途に元のサンプルコヌスのシミュレヌタを䜿いたいです

update sim publicで、サむボりズアカりントを空゚ンタヌ2回でスキップするず公開版シミュレヌタに倉曎できたす。参加者向けに戻す堎合はupdate simしおください。

etrobo環境起動時に、「セッションの内容が  埩元されたした。」ず出お、アップデヌトの内容が適甚されたせん

Linux/ChromeOSの堎合、アップデヌト埌にVSCodeずタヌミナルを䞀床閉じお、新しいタヌミナルを開いおから ./startetroboする必芁がありたす。

Macの堎合、セッションの埩元によっおzshで起動する堎合があり、この堎合、床etrobo環境を起動し盎すずbash(etrobo環境)で起動するようになりたす。

その他のOSでも、このVSCodeのセッション埩元機胜が煩わしい堎合は、「管理」の「蚭定」([Ctrl]+[,])から「蚭定の怜玢」欄にenable persistentぐらい入力するず 「りィンドりの再読み蟌み時にワヌクスペヌスのタヌミナル セッションを保持したす」のチェックを倖しおください。