このデバイスは2千円以下。bluetoothには繋がずにUSBケーブルでテストする。 SDL2のtestのcontrollermapなどで接続を確認した。Goのツールでは動作確認できなかった。cylonのツールを試したところgamepad/test.jsが動作した。この辺りを手がかりにテストを続けていく。
以下のページだと接続はできるようだ。でもその後どうするのかよくわからない。一番怪しいのが3つのモードを切り替えるというあたり。なんだそれは。
https://sekisuiseien.com/computer/10992/
接続されると/dev/input/js0 /dev/input/event11 として認識されている。これらはmouse, keyboardと似たようなもの。本来これでgobot, やcylonでコントロール可能になるはず。
sudo apt install jstest-gtk jstest /dev/input/js0
でスティックの状態、ボタンの状態が表示されるので、ほんらいgobotは動作しないほうがおかしい。ubuntuだからか?
go run gobot.io/x/gobot/platforms/joystick/bin/scanner.go
でちゃんと反応する。dualshock3をdualshock4に変えたとき動かないのはなぜかな。なぞ。一旦/dev/input/js0ができてると、ds4drvを動かさなくてもplaystatonボタンとshareの同時押しで青い接続ランプが連続点灯する。デバイスが使えるようになっているということ。
nodeの説明をgitで読んでると、/dev/usb/*に繋がってくるものを扱うとなってはいる。でもSDL(Simple Direct media Layer)を直接アクセスしているscanner.goはvaioのubuntuでは動いているので、そこからjoystick_dualshock4.goが動かない原因を追究していけばよさそう。
やり方としてはSDL2のtest/testjoystic.cをコンパイルして実行する。joystickデバイスの属性を出力してくれる。それを見るとvaioのkeyboardがなぜかjoystickデバイスになっていた。joystick_driver.goのコードを見るとjoystickデバイスの数が1以上だと0番デバイスに接続することになっている。これを1番デバイスにしてやるとjoystickライブラリが動作するようになった。一件落着。
と思ったが、macでは繋がらなかった。dellのvostroもだめ。macもSDLを使っている。SDLのtestjoystickはmacでもコンパイルして見たほうがよいのか。以下にds4のguidに関係する記述がある。 ds4のペアリングで青ランプを点けるのも手間取ることが多い。
https://github.com/gabomdq/SDL_GameControllerDB
プロキシでないネットワークにつなぐ。管理者でpowershellを立ち上げて、
choco install git choco install golang
またはgobotのべーじのmsi形式をダウンロードして実行する。
ユーザーのpowershellを立ち上げて
mkdir go setx GOPATH %USERPROFILE%\go get-childitem env:
ちゃんとGOPATHが定義されていることを確認したらいつものコマンドを打つ
go get -d -u gobot.io/x/gobot/...
パッケージ管理がchokoコマンドで簡単にできる。管理者としてpowershellを起動して
Set-ExecutionPolicy AllSigned Set-ExecutionPolicy Bypass -Scope Process -Force; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1')) choco install gnuplot
powershellを閉じて、普通のpowershellを立ち上げて
mkdir work mkdir work\gnuplot cd work\gnuplot gnuplot
このあと普通にplotコマンドなどで関数を描いたりファイルを作ったりする。
cmdを管理者で立ち上げる。
https://qiita.com/Koutaru/items/41a87ea4004fa685de55
に従って、chocolatelyをインストールする。cmdでpowershellと打って、powershellの状態にする。
choco install nvm -y refreshenv nvm install v8.16.0 nvm use v8.16.0 node --version
cd mkdir cylon cd cylon npm install cylon
cylonを入れようとするとエラーがでた。
python2.7当たりが必要。
https://qiita.com/AkihiroTakamura/items/25ba516f8ec624e66ee7
何とかコンパイルはできた。手順を記録しておく。ただしドライバーがよくないらしい。
zadigのドライバーを入れなさいとなっている。でもそうすると普通のbluetoothが使えなくなるので、その時は入れなおせと書いてある。実験的。それは面倒なので、そうじゃないのがあるらしい。
https://github.com/jasongin/noble-uwp
手元にwindows10でversion4がない。lenovoはversion3だった。asus x202e(windows8.1)でzaigもやってみたが動かなかった。シリアルUSBのところをいじって元に戻した。
FMV A8260にCSR8510A10のbluetooth USBを差し、windowsのドライバーをzadigのツールで変更した。設定は以下の通り。
https://qiita.com/mkoku/items/7458239f5bcca88eed49#%E7%92%B0%E5%A2%83%E6%A9%9F%E6%9D%90
windows8.1だがKB3172729でおかしなことになってた。「再構成できませんでした」で更新に時間がかかってあきらめるワンパターン。結局いつも失敗するその更新プログラムを右クリックで「非表示にする」ことで解決。非表示は一時的にスキップしておくことみたい。たぶん永遠にスキップしておくことになる。
一旦、windows10ではオフにしてから、起動して謎の手順でつながるらしい。windown8でもできるのか。
https://scribles.net/enabling-bluetooth-in-virtualbox/
全部焼け落ちたと思ったが、屋根のところだけだった。天井ボールトは尖塔部分だけ落下してた。直せそう。ノートルダムの意味はour ladyなんですね。原因はショートだと思う。電流の2乗で発熱するからすぐ発火する。ブレーカは落ちてもついた火は消せません。どんなに気を付けても火事は起きるという教訓です。幸いノートルダム大聖堂ぐらいになると存在そのものが保険。
https://www.youtube.com/watch?v=S_GVbuddri8
後ろが見えるとのコメントが若干聞き取りにくかった。