2023/06/02 (金) に開催される Go Conference 2023 にて TinyGo で自作キーボードを作るハンズオンを開催します。 ハンズオンは、私を含む Umeda.go のスタッフにて実施/サポートします。
なお、当日 18:10 - 18:15 で TinyGo で作る自作キーボードの世界
という LT もするのでお楽しみに。
開催内容
TinyGo の USB HID に対応したマイコンボードを用いて、自作キーボードを作成するハンズオンを行います。 作成したデバイスは、パソコンなどに接続することで USB キーボードとして振舞うことができます。
Go 言語 (TinyGo) で自作キーボードのファームウェアが作れるので、 Go 界隈の人はとても楽にスタートすることができます。
TinyGo とは
マイコンや WASM などの Small Places 向けの Go Compiler です。 ここでは Go の文法でマイコン開発ができるもの、という程度の認識でよいです。
TinyGo については、技術書「基礎から学ぶ TinyGoの組込み開発」 (2022/11/12 発売) を執筆しました。 以下も参考になるので、是非確認してみてください。
過去に Go Conference で実施したハンズオンなどを参考になるかと思います。
Umeda.go とは
大阪近辺のプログラミング言語 Go ユーザーコミュニティ運営アカウントです。 プログラミング言語 Go に関するテックトークなどのイベントをやっています。 技術レベル・知識を問わず、Goを学びたい人が気軽に相談できるコミュニティ を目指しています。
Umeda.go の現在の運営スタッフは以下の 4 人です。
参加に必要なもの
必須
参加にあたっては、各自でマイコンボードを準備お願いします。 推奨は以下です。
- Wio Terminal
- https://akizukidenshi.com/catalog/g/gM-15275/
- 本体にボタンがたくさんあるのでそのままでも楽しめますが、後述の wiokey があるとより楽しめます
- XIAO RP2040
- https://akizukidenshi.com/catalog/g/gM-17044/
- 本体にボタンが無いため、後述の sgkey か外付けボタン等があったほうが良い
- Raspberry Pi Pico
- https://akizukidenshi.com/catalog/g/gM-16132/
- 本体にボタンが無いため、外付けボタン等があったほうが良い
- 現時点の TinyGo では BOOTSEL ボタンをボタンとして使用することは出来ません
一応、マイコンの種類が ATSAMD51 / ATSAMD21 / RP2040 / nRF52840 であれば問題ありません。 マイコンボード選びは以下の記事を確認いただくと良いですが、基本的には Wio Terminal がおすすめです。
wiokey : Wio Terminal 向けオプション
wiokey は Wio Terminal に 6 キー追加するためのボードです。 無くてもハンズオン可能ですが、wiokey があると自作キーボード気分が盛り上がると思います。
以下で基板単体、ハンダ付け済み完成品 (Wio Terminal は付属しません) を購入できます。
sgkey : XIAO RP2040 向けオプション
sgkey は XIAO RP2040 などの XIAO 系ボードに 6 キーと液晶を追加するためのボードです。 無くてもハンズオン可能ですが、 sgkey があると自作キーボード気分が盛り上がると思います。
以下で基板単体、ハンダ付け済み完成品 (XIAO RP2040 は付属しません) を購入できます。
開催日時
2023/06/02 当日、 1h 枠を 2 回、という形で開催します。 2 回とも参加されてもかまいませんし、当日は私および Umeda.go スタッフが捕まる限りはサポートを受けることができます。 途中で抜けるのも自由です。
- 2023/06/02 (金)
- 11:00 - 12:00
- 15:00 - 16:00
なお、当日以降についても、私のほうでサポート可能なので、気になる事があったら何でも聞いてください。
会場
Go Conference 2023 は reBako にて開催されます。 TinyGo で自作キーボードを作るハンズオンも reBako 内で開催します。 ということで、 connpass に表示される (であろう) URL から reBako に進み、ハンズオン会場に参加してください。 Umeda.go + TinyGo というブースを中央下段に構えています。
Floor Guide | Go Conference 2023
当日実施しようとしている内容 (調整中
まだ確定していませんが、以下で考えています。 環境構築もサポートしますので、自作キーボードは置いといて参加、ってのもありです。
- TinyGo 環境構築 + L チカ + hello world
- examples/hid-keyboard を書き込んで、 USB キーボード気分を味わう
- sago35/tinygo-keyboard を使って、より高度な USB キーボードを作る
3.まで実施できれば、後はボタンを増やしていけばより実用的な自作キーボードが出来上がります。 以下のようなキーボードが作れるととても楽しいですよ。
※遠くない未来に、上記の分割キーボードなども販売開始する予定
とりあえず Go Conference 2023 に申し込みを
何はともあれ、 Go Conference 2023 に申し込みをしないと始まらないので、まずは申し込みを。 (今見たら参加枠いっぱいになってるけど・・・)