Go Conference 2023 にて TinyGo で自作キーボードを作るハンズオンを開催します

2023/06/02 (金) に開催される Go Conference 2023 にて TinyGo で自作キーボードを作るハンズオンを開催します。 ハンズオンは、私を含む Umeda.go のスタッフにて実施/サポートします。

なお、当日 18:10 - 18:15 で TinyGo で作る自作キーボードの世界 という LT もするのでお楽しみに。

gocon.jp

開催内容

TinyGo の USB HID に対応したマイコンボードを用いて、自作キーボードを作成するハンズオンを行います。 作成したデバイスは、パソコンなどに接続することで USB キーボードとして振舞うことができます。

Go 言語 (TinyGo) で自作キーボードのファームウェアが作れるので、 Go 界隈の人はとても楽にスタートすることができます。

TinyGo とは

マイコンや WASM などの Small Places 向けの Go Compiler です。 ここでは Go の文法でマイコン開発ができるもの、という程度の認識でよいです。

tinygo.org

TinyGo については、技術書「基礎から学ぶ TinyGoの組込み開発」 (2022/11/12 発売) を執筆しました。 以下も参考になるので、是非確認してみてください。

sago35.hatenablog.com

過去に Go Conference で実施したハンズオンなどを参考になるかと思います。

github.com

Umeda.go とは

大阪近辺のプログラミング言語 Go ユーザーコミュニティ運営アカウントです。 プログラミング言語 Go に関するテックトークなどのイベントをやっています。 技術レベル・知識を問わず、Goを学びたい人が気軽に相談できるコミュニティ を目指しています。

umedago.connpass.com

Umeda.go の現在の運営スタッフは以下の 4 人です。

参加に必要なもの

必須

参加にあたっては、各自でマイコンボードを準備お願いします。 推奨は以下です。

一応、マイコンの種類が ATSAMD51 / ATSAMD21 / RP2040 / nRF52840 であれば問題ありません。 マイコンボード選びは以下の記事を確認いただくと良いですが、基本的には Wio Terminal がおすすめです。

sago35.hatenablog.com

wiokey : Wio Terminal 向けオプション

wiokey は Wio Terminal に 6 キー追加するためのボードです。 無くてもハンズオン可能ですが、wiokey があると自作キーボード気分が盛り上がると思います。

以下で基板単体、ハンダ付け済み完成品 (Wio Terminal は付属しません) を購入できます。

sago35.booth.pm

sgkey : XIAO RP2040 向けオプション

sgkey は XIAO RP2040 などの XIAO 系ボードに 6 キーと液晶を追加するためのボードです。 無くてもハンズオン可能ですが、 sgkey があると自作キーボード気分が盛り上がると思います。

以下で基板単体、ハンダ付け済み完成品 (XIAO RP2040 は付属しません) を購入できます。

sago35.booth.pm

開催日時

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

当日実施しようとしている内容 (調整中

まだ確定していませんが、以下で考えています。 環境構築もサポートしますので、自作キーボードは置いといて参加、ってのもありです。

  1. TinyGo 環境構築 + L チカ + hello world
  2. examples/hid-keyboard を書き込んで、 USB キーボード気分を味わう
  3. sago35/tinygo-keyboard を使って、より高度な USB キーボードを作る

3.まで実施できれば、後はボタンを増やしていけばより実用的な自作キーボードが出来上がります。 以下のようなキーボードが作れるととても楽しいですよ。

※遠くない未来に、上記の分割キーボードなども販売開始する予定

とりあえず Go Conference 2023 に申し込みを

何はともあれ、 Go Conference 2023 に申し込みをしないと始まらないので、まずは申し込みを。 (今見たら参加枠いっぱいになってるけど・・・)

gocon.connpass.com