Arduino UNO でダウンロードに失敗

UbuntuArduino IDE からプログラムのダウンロードに失敗する。

原因1:シリアルポートへのアクセスが許可されていない

ユーザを dialoutグループのメンバにする。

sudo usermod -a -G dialout `whoami`

再起動するか一旦ログアウトすれば設定が有効になる。

原因2:スケッチファイルを直接開いている

(アップロードではなく、コンパイルに失敗している)

スケッチファイルが属するディレクトを開いて、エクスプローラからスケッチファイルを開く。

ROS Industrial Training

ROS Industrial Training というサイトがあります。
VirtualBoxVMイメージ が準備されていて、実際に動かしながら学習が進められそうです。
以下は、学習を進めた際のメモです。

1.自動的に画面サイズを変更できるようにする

下記のページを参照してください。Ubuntu18.04 向けの記事ですがUbuntu16.04 でも上手くいきました。
qiita.com

2.Ubuntu のキーボード設定を変更

VMイメージが英語版Ubuntuのようで、日本語キーボードでは、希望の文字が入力できないキーがあります(':' を押すと'''、'*'を押すと'"'というように)。
このような場合は、以下の手順でキーボードレイアウトを日本語に変更できます。

  1. デスクトップの右上に表示されている[En]アイコンをクリック。
  2. 「テキスト入力設定...」メニューアイテムをクリック。
  3. 立ち上がった「テキスト入力」ウィンドウの左側の「使用する入力ソース」リストの下の方にある「+」ボタンをクリック。
  4. 立ち上がったウィンドウのリストから「日本語」を選択して、「追加(A)」ボタンをクリック。ウィンドウの左上の「x」ボタンを押して、ウィンドウを閉じる。
  5. 再びデスクトップの右上に表示されている[En]アイコンをクリック。
  6. プルダウンしたメニューに「Ja 日本語」にチェックを入れる。
  7. [En] ボタンが [Ja] ボタンに代っていれば変更完了。

VMware ゲストにDS4を接続してみた (Bluetooth編)

VMware にインストールした Ubuntu1.04 にDS4 (Sony DualShock4) を接続してみました。今回はBluetoothで接続した際のメモです。

下記のようなブログもあります。

1.動作環境
2.確認

接続されているUSBデバイスを確認する

$ lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 003: ID 0e0f:0002 VMware, Inc. Virtual USB Hub
Bus 002 Device 002: ID 0e0f:0003 VMware, Inc. Virtual Mouse
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
$

上記のように Bluetooth インターフェスが接続されていなければ
「Player(P)」メニュー →「管理 (M)」→ 「仮想マシン設定 (S)」をクリック

f:id:ky2018041:20201004213334p:plain
仮想マシン設定

ポップアップした仮想マシン設定ダイアログの「USBコントローラ」をクリックして、「Bluetoothバイス仮想マシンと共有 (B)」のチェックを外し、[OK]をクリック。

f:id:ky2018041:20201004213624p:plain
仮想マシン設定ダイアログ

再度接続されているUSBデバイスを確認する。2行目がBluetoothインタフェースの模様。

Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 004: ID 04c5:14b9 Fujitsu, Ltd 
Bus 002 Device 003: ID 0e0f:0002 VMware, Inc. Virtual USB Hub
Bus 002 Device 002: ID 0e0f:0003 VMware, Inc. Virtual Mouse
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
$

接続されている Bluetoothバイスを確認すると、

$ hciconfig 
$ 

何も接続されていないので、UbuntuBluetoothバイスを接続する。
[Player(P)]メニューの[取外し可能デバイス(R)] → [Fujitsu Bluetooth Radio] → [接続 (ホストから切断) (C)]

f:id:ky2018041:20201005203458p:plain
ホストから切断し仮想マシンに接続

仮想マシンへの接続を確認するダイアログがポップアップするので、[OK] をクリック。

f:id:ky2018041:20201005203838p:plain
仮想マシンへの接続確認ダイアログ

接続されている Bluetoothバイスを確認。

$ hciconfig 
hci0:	Type: Primary  Bus: USB
	BD Address: 80:78:71:1B:59:C3  ACL MTU: 1021:6  SCO MTU: 255:12
	UP RUNNING PSCAN 
	RX bytes:779 acl:0 sco:0 events:59 errors:0
	TX bytes:3241 acl:0 sco:0 commands:59 errors:0

$ 
3.ペアリング

Bluetoothインタフェースが接続されたので、DS4 をペアリングする。

$ sudo ds4drv
[sudo] ...... のパスワード: 
[info][controller 1] Created devices /dev/input/js0 (joystick) /dev/input/event5 (evdev) 
[info][bluetooth] Scanning for devices

DS4 の[SHARE] ボタンと 二つのジョイスティックの間にある [PS] ボタンを、LEDが点滅するまで同時押し。ペアリングが完了すると、ターミナル・ウィンドウに下記のようなメッセージが出力される。

[info][bluetooth] Found device A4:AE:12:9A:8D:AC
[info][controller 1] Connected to Bluetooth Controller (A4:AE:12:9A:8D:AC)
[info][bluetooth] Scanning for devices
[info][controller 1] Battery: Fully charged

別のターミナル・ウィンドウを立ち上げて([Ctrl] + [Alt] + [T])、/dev/input ディレクトリをチェックしてみる。

$ ls /dev/input
by-id    event0  event2  event4  js0   mouse0  mouse2
by-path  event1  event3  event5  mice  mouse1
$ 

js0がジョイスティク、あとマウスとイベントが追加されている。

4.動作確認

jstest-get を起動してDS4 の動作を確認する 。

$ jstest-gtk 

下記のウィンドウがポップアップするので、ジョイスティックのアイコンが表示されているメニューアイテムをダブルクリックする。

f:id:ky2018041:20201005205909p:plain
Joystick Preferences ダイアログ

下記のようなウィンドウがポップアップするので、DS4のボタンやジョイスティックを操作して、表示が変化すれば確認終了。

f:id:ky2018041:20201005210343p:plain
ゲームコントローラ動作確認ウィンドウ

VMware ゲストにDS4を接続してみた (USB編)

VMware にインストールした Ubuntu1.04 にDS4 (Sony DualShock4) を接続してみました。今回はUSBで接続した際のメモです。

下記のようなブログもあります。

1.動作環境
2.接続前

接続されているUSBデバイスを確認する。

$ lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 003: ID 0e0f:0002 VMware, Inc. Virtual USB Hub
Bus 002 Device 002: ID 0e0f:0003 VMware, Inc. Virtual Mouse
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
$
3.接続

DS4をUSBポートに接続すると下記のダイアログがポップアップ。「仮想マシンに接続」にチェックを入れ、仮想マシン(ここではUbuntu18.04)を選んで「OK」をクリック。

f:id:ky2018041:20200928213221p:plain
USBデバイスの接続先選択
4.接続後

再度接続されているUSBデバイスを確認する。

$ lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 005: ID 054c:09cc Sony Corp.
Bus 002 Device 003: ID 0e0f:0002 VMware, Inc. Virtual USB Hub
Bus 002 Device 002: ID 0e0f:0003 VMware, Inc. Virtual Mouse
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
$

"Sony Corp." というデバイスが 追加されている。これが DS4 の模様。

5. 動作確認

jstest-gtk を起動する。

$ jstest-gtk
f:id:ky2018041:20200926212940p:plain
ジョイスティク選択ウィンドウ

ジョイスティックのアイコンが表示されているエリアをダブルクリックすると下記のウィンドウがポップアップ。DS4のボタンやジョイスティックを操作した結果が反映されるのを確認する。またDS4の中央上部のパッドに触れながら指を動かすとUbuntu GUI のカーソルが移動する(マウスとして機能している)。

f:id:ky2018041:20200926214808p:plain
DS4テスト用ウィンドウ