GR-SAKURAII というマイコンボードと開発キットを入手しました。
Oculus QUEST2
VRゲーム
Oculus QUEST2
2年ほど前から構想していたVR環境の構築
メインとなるVRゴーグルをようやく購入しました
Oculus QUEST2
Oculus QUEST2は 内部に高性能なSoCを持ち
PCに接続しなくてもVRゲームを楽しめます
使われているのは Snapdragon XR2 という
専用のCPUで ハイエンドのスマートフォン並
の処理性能を持ちます
ついでにフェイスガードも買いました
ゴーグル本体を保護しつつ 顔へのフィット感
が高まると考えたため
次の写真は パッケージの裏面
現時点で遊べる 代表的なコンテンツが紹介
されています 具体的な例が書かれてると
期待感が高まります ファミコンの箱も
そんな感じでした
外部装置が不要なモーショントラッキング
により 頭の動き 手の位置や向き 指の一部
の動きを認識できるほどセンサも高性能です
さらに解像度について 片眼1832×1920ドット
と十分な情報量でリアルなVR体験が可能と
なってます
写真のゴーグルの下にあるのは眼鏡サポート
で眼鏡を付けたままゴーグルをかぶることが
できます
充電器やUSBケーブルもついてますが
基本PCへ接続して Steam VR を遊ぶので
あまり使わない
USBケーブルも短すぎるため 別途購入する
ことになります
USB3.1規格が必須で 通信速度が必要です
次に可能なら 3m以上のケーブル長が理想
ただ2021年初頭では 秋葉原にありません
2mのケーブルで当面無理くりすることに
あとフェイスガードを装着した本体は
次の写真のような感じです
Oculus QUEST2 の一番の利点は
10万円台のゴーグルに迫る性能ながら
価格を安く抑え 3万円台から購入できる
敷居の低さにあります
おかげで 2020年は QUEST2のゴーグルが
良く売れて VR元年と呼ばれているとか
PCに接続するには Oculus Linkなるソフト
が必要です 無料で配布されています
QUEST2は PCがなくても自前で ストア含む
システムを持っていて 単体でも遊べます
スタンドアロン型というそうです
ハンコンと VRゴーグルが手に入ったところで
やはり アクセル ブレーキ クラッチ が欲しく
思い付きで自作することにしました

Steamで購入したこの「アメリカントラックシミュレータ」
をとことん VRで楽しみたいためです

YAMAHAの電子ピアノ用のペダルが アクセルなどに
流用できそうということで早速購入

クラッチ用の FC3A ペダル 踏みやすいデザインが
さすが YAMAHAといった感じ

アクセルブレーキ用の FC7 というペダルです
使ってみて初めて分かったのですが 踏み込んだ後
自動で戻らず踏み込み具合を維持してしまうので
ちょっと自動車と感覚が違ってしまいます
2個買いました

キーとなるデバイスがこの REVIVE USB ADVANCE
アナログ入力やデジタル入力を USB入力に変換してくれます
キーボード マウス ジョイパッド として認識してくれます

ケースを自作中の様子
また インターネットで提供されている専用ツールで
各ペダルの踏み込み具合の感度を調整し
アナログ入力として認識するようにしました

完成した状況
あとは アメリカントラックシミュレータのキーコンフィグ
でアナログ入力を割り当てるだけです
やはり VRだと 顔の操作と視界が連動していることもあり
没入感が段違いでした
なお 勢いで購入して 総額2万円近くするので
簡単におすすめできるものではありませんが
コントローラを自作できるというのは
楽しみを広げてくれます
ESP32 の紹介
ESP32
2017年に日本でも発売されるようになった マイコン向けCPU です

有名な Arduino の後継に位置づけられますが
後述のようにパワーアップしています

半年ほどすると 図のような完成キットも発売され 通常こちらを使います
PC接続するための 電源 兼 USBシリアル通信用 microUSB端子 が付いてます
リセットスイッチ や 起動モード選択スイッチ も表面に実装されています
ESP-WROOM-32 | ESP-WROOM-02 | |
---|---|---|
CPU | Tensilica LX6(32bit) 160MHz/240MHz デュアルコア |
Tensilica LX106(32bit) 80MHz/160MHz シングルコア |
メモリ | RAM:520KiB フラッシュROM:4MB |
RAM:80KiB フラッシュROM:2MB/4MB |
無線LAN | 802.11b/g/n/d/e/i/k/r 2.4GHz帯 WPA/WPA2/WPA2-Enterprise/WPS AES/RSA/ECC/SHA |
802.11b/g/n 2.4GHz帯 WPA/WPA2 WEP/TKIP/AES |
Bluetooth | v4.2 | なし |
プロトコル | IPv4/IPv6/SSL TCP/UDP/HTTP/FTP/MQTT |
IPv4 TCP/UDP/HTTP/FTP |
インターフェース | I2C/I2S SPI/UART PWM GPIO SDIO ADC 10bit |
I2C/I2S IrDA PWM GPIO SDIO ADC 10bit |
能力的には 1990年前半の家庭用PCクラスです
ESP32マイコンを製作する
2017年の初旬は CPU単体でしか売られていなかったので
少なくとも USBシリアルコンバータ を別途調達してきて
マイコンの形にすることが必要です
丁度公式サイトで サンプル回路図 が公開されていて
秋葉原で部品を揃えれば作れそうだったので試してみました

実際買った ESP-WROOM-32がこれ
ちゃんと日本で使える技適マーク付き 当時 700円 今 550円 くらいで安い

これが今回の秘密兵器 L型2列ピンヘッダ
CPUパッケージのピッチが 1.27mm ですが これを一般的な 2.54mm の
ブレッドボードや回路基板に挿せるようにするために配置変換させます

ピンヘッダの L字の部分をペンチで加工します
加工時の安定性確保のために 2列ピンソケットに挿した状態で 曲げていきます

加工中を横からみたところ ピンヘッダの上の段と下の段 が交互に
半ピッチずつずれて折り重なるようにします 上下段で 1.27mm ピッチになります
こうやって合計 38ピン 分の L型2列ピンヘッダを作ります

ピンヘッダ と ESP-WROOM-32 を はんだ付けする直前の状態
このように L型ピンヘッダを一旦 基盤に挿し込んで固定します
ESP-WROOM-32 をピン間に挟み込んで固定します
ピッチが合っていることを十分確認してから はんだ付けします
はんだの載りを良くするためフラックスも塗った方がよいです
CPUを熱で壊さないように冷ましながら はんだ付けします
マイコン化する
CPU部分は ユニバーサル基盤にはんだ付けられるようになりました
残り Arduino相当にするために必要なのは
- GPIO各ポートの ピンソケット
- 安定電源を供給するレギュレータ
- USBシリアル
ESP32 DevKitC
ESP-WROOM-32を利用した マイコンキットとして ESP32 DevKitC があります
USBコネクタ USBシリアル レギュレータ などを備え Arduino IDEと連携して
IoT開発をすぐに始められます

USB接続した PCからのノイズが原因なのか 個体により Arduino IDEのビルド書き込み時に
自動リセット + 書き込みモード 起動がかかりづらいことがあります
対策として EN-GND 間に 1μF程度のコンデンサを挟むとよいようです

Auraboxで遊ぶ
Auraboxの改造
まだ具体的な機能追加などできてませんが Aurabox の改造をしてみたレポートです


Auraboxとは 主要機能としては Bluetoothスピーカですが
ところがもう一歩進んでいて「攻めた」機能を持っています
スマートフォンと連動しプログラマブルな表示ができる LEDディスプレイ
マイク や 温度センサ や バッテリなど独自の作り込みが行われています

パッケージの中身です 黒で統一されています
化粧箱もがっちりとした強度で 実はこちらも気に入っています
中にマイコンが入っていて IoTデバイスとしての使い方もできるのでは? と思い立ち
中身の調査をすることにしました

まず本体を覆っているゴムのような材質のカバーを慎重に取り外し

プラスチックケースをこじ開けます スイッチ類のところからが比較的開けやすいです
左下の丸いものは実は マイクで間違ってドライバを突っ込んで壊してしまいました

何とか開きました 基盤 大きなスピーカ バッテリが見えます

バッテリ や スピーカ に接続しているケーブルを外しました
ここから部品構成を確認していこうと思います

Auraboxのインターフェース部分です
操作用のスイッチと 左下に(壊してしまいましたが)スピーカ そして
スイッチの上に見える突起は温度センサでしょう

ディスプレイの丁度背面にあたる部分の基盤です ICが4つくらい見えます
中央のは STM8 と刻印されています LEDディスプレイ制御用の 8bitマイコンですね
残りの 3つは型番を調べたところ LEDコントローラです

Auraboxのメイン基盤です
特に左側の青い基盤はマイコンとなっていて 3つの大きな ICが載ってます
写真中央右の大きめのICは オーディオアンプです
写真右のチップは 電源制御関連と思われます
ICの刻印をネットで調べながら 次の構成が見えてきました
AK1050 | 安凱微電子(ANYKA)製 ARM926EJ-Sプロセッサ ARMv5TE(32bitARM+16bitThumb) 192KRAM |
STM8S003K3 | STM8 8bitCPU |
25Q16CS1G | 2MB Flashメモリ |
MBI501* | LEDコントローラ 2つ |
MBI502* | LEDコントローラ |
HT6818 | 3.3W Ultra Low-EMI Anti-Clipping ステレオD級オーディオアンプ |
MT5036 | 6.6A 800kHz 96%変換効率 バッテリコントローラ |
REALTEK8761AT | Bluetooth2.1~4.0LE UART制御コントローラ |
ほとんど中国製の部品で作られています
今回写真の部品を取り付けました
壊してしまったマイクとシリアル用のコネクタです
シリアル用のコネクタは Auraboxのフラッシュメモリを直接外から読み書きできるよう
外出しするためのものです フラッシュメモリを書き換えられれば自由に制御できるかなと…
フラッシュメモリに線をはんだ付けして外だしします 写真の右の方です
こうしてどうにか マイクを交換し シリアルコネクタを取り付けました
一応元の機能のまま Auraboxは動作しています
フラッシュメモリのデータ吸い出しなどは まだできていません (2017-12)
GitHubには こんなプロジェクト も見つけられます
時間を見つけて試してみたいですね
Raspberry Pi関連
Raspberry Piで IoT開発
関連記事: デジタル関連写真
関連記事: IoT関連
関連記事: PICマイコン関連
関連記事: FPGA関連
最近 IoT関連がマイブームです
Raspberry Pi関連のブログも書いていきます
Raspberry Pi 4
ついに Raspberry Pi 4 が発売になりました
秋葉原では潤沢に出回ったようで 発売直後に手に入れることができました

ケースやヒートシンクも買いました
ファンなどの放熱対策も必須です 放熱しないとCPUのパフォーマンスも落ちます

GrovePi
Grove という 4ピンのコネクタの規格があります
ピンアサインは GND 電源(通常5V) GPIO GPIO で 信号として使えるのは 2ピンです
アナログ I2C シリアル などの通信にも対応できるため使い勝手は良いです
コネクタも安く手に入り センサも Groveコネクタ対応のものが多く売られています
Raspberry Pi で Grove対応センサを活用する場合 GrovePi というボードがあります
Groveコネクタが GPIO用 7本 アナログ用 3本 I2C用 3本 搭載されています
(詳細説明は割愛しますが 隣り合うコネクタで GPIOのピンを共有しているため
実際に使用できるコネクタの数には制限がつきます)
中央に ATmega328P が載っており このマイコンが Groveモジュールへアクセスします
Raspberry Pi からは I2Cにより ATmega328P と通信できるようになっているため
I2C経由の通信コマンドという形で Groveモジュールと情報のやり取りを行います
実際に LCDと 温湿度センサを接続したのが次の写真です
湿度の表示が少しおかしいですが 手軽に IoTを組み立てるには選択肢になります
7インチ専用LCDタッチパネル
RaspberryPi の基板にある DISPLAYインターフェースに直結できる LCDモニタです
タッチパネルとしても機能します Voice Kit につなげて使うために購入しました
2019年10月購入で 11000円くらい

7インチサイズ 解像度は 800×480 と若干物足りない感じです
ただ電源は (推奨されてないが) RaspberryPi の GPIO 5Vからとることができるので
デバイスをコンパクトにまとめることができます

モニタの画面 モニタ自体は薄く扱いやすそうです
フラットケーブルは写真のとおり短く 必要に応じて長いのを買い足す必要あります
ピンソケットケーブルは RaspberryPiの GPIOに挿すためのものです
インターフェース基盤の USBに 5Vを供給しない場合 RaspberryPiの 5Vに接続します
また残り 2本は I2Cの SDA/SCL用ケーブルですが これは RaspberryPi1 など
SDA/SCL信号を持たない古い機種用なので RaspberryPi2以降は不要です

モニタの裏面 マウント用のネジ穴などあります
また RaspberryPiと接続するためのインターフェースボードがあります
Google AIY Voice Kit
Googleから 2017年ごろに発売された Google AIY(AI + DIY)プロジェクトの成果物
Voice Kitを購入して ようやく組み立てました (2年くらい寝かせてた…)

AIY Voice Kit の外箱です
AI(の音声認識) を手軽に体験できて 3500円くらいでなかなか良心的と思います

箱の中身は スイッチボタン スピーカ ケーブル ケース箱 に加えて
キーパーツとなる Voice Hat と ステレオマイク のカスタム基板が付いてます
これで ボタンを押して話しかけられる 音声アシスタントのデバイスが作れます
ただし Raspberry Pi が別途必要です
Raspberry Pi 1 では動きませんでした Raspberry Pi 3 が推奨のようです
これは 別途大阪日本橋で購入した アクリルケースです
割引して売られていたので Voice Kit の組み立てに弾みをつけるため購入
さらに組み立てを進め LCDタッチパネルを接続したところ
将来カメラを接続する予定なので カメラ用のフラットケーブルも今のうち挿します
別の角度から 基盤を眺めたところ
下から LCDタッチパネルインターフェース RaspberryPi本体 VoiceHat の 3段重ねです
一旦組み立てて動作させてみたところです
5V 3A の USB電源で問題なく動作しています
モバイルバッテリでは ディスプレイに雷マーク(電力不足)が表示されました