見出し画像

Arduinoをもらったらオリジナルキーボードを作りたくなった話

「トランジスタ技術」(トラ技)という雑誌をご存じでしょうか?買って読んだことはなくても名前ぐらいは皆さんご存じだと思います。

筆者は、高校生から大学生ぐらいにかけて頻繁に買って読んでいたのですが、会社に通い始めて、仕事の内容が少しトラ技の内容と離れてしまったのと、趣味的な興味の方向が、どちらかというとハードウェアよりはソフトウェア寄りになってしまったので、購入する機会もすっかり少なくなってしまいました。

とはいえ、やっぱりトラ技の情報は気になるので𝕏(旧Twitter)で、トラ技のアカウント(@toragiCQ)をフォローしていました。

で、先日、何気に𝕏(旧Twitter)を見ていたら、こんなツイートが……


Arduino Uno R4がもらえる!?

Arduino Uno R4がもらえる
無料オンデマンド・セミナをルネサスが開催中です!
トラ技でも紹介したのですが、スゴい!
https://renesas.com/jp/ja/support/training/seminar/individual/mcu-seminar/m109?toragi

https://twitter.com/toragiCQ/status/1734400014758367736 より

実は、Arduinoとか、Raspberry Piとか、この手の単語が気になりつつもなかなか手を出せずにいました。

そんなところに、つい、「Arduino Uno R4がもらえる」という文言に反応してしまい、早速、セミナーの申し込みをしました。

Arduino Uno R4が届きました

すると、約一週間後、Arduino Uno R4が届きました!

他の方にはトラ技が付いていたようですが……

筆者にはArduino Uno R4とUSBケーブルのみ。

もちろんトラ技が無くても、Arduino Uno R4とUSBケーブルでけでもありがたいので全然大丈夫。

セミナー受講

別途ルネサス エレクトロニクスからeメールでオンデマンドセミナーの案内が届いているので、早速、こちらに記載のURLからテキスト(PDF)をダウンロードして、動画の視聴を始めます。

動画の内容はArduino IDEのダウンロード&インストールから始まって、LEDチカチカ(Lチカ)から、各種Arduinoライブラリーのインストール、更には、基礎的な組み込みプログラミングの説明と、それをArduinoに実装して実際に動作させるまでが思いのほか詳しく解説されていて、なかなか盛りだくさん。

Arduino Uno R4にはルネサス製のRA4M1マイコンが搭載されており、おそらくはRA4M1マイコンの宣伝を兼ねているのだと思うのですが、それにしては太っ腹。(なるほどな事情は【追記】参照)

ひとまず動画の流れに沿ってArduino IDEをインストールして、ルネサスからの荷物に同梱されていたUSBケーブルでPCとArduino Uno R4をつないでLチカをやってみました。

お題は500msでLEDが点灯と消灯を繰り返すというものでしたが、動画にするとなんとなく間延びしている気がしたので、ここに上げている動画では100msでチカチカさせています。

Arduinoというプラットホームや、USBという電源と通信の両方を備えた規格が普及したおかげもあるのでしょうが、こんなに簡単に開発環境の立ち上げからマイコンの動作テストまで出来るようになっているなんて驚きです。

その昔、H8で工作していた頃は、テスト用の実装済み基盤を買ってきても、直流電源を用意して、H8用にCコンパイラの環境を作って、シリアルケーブルでフラッシュにプログラムを書き込んで、え~っと、なんで動かないんだ???と、そこそこ面倒なことをやっていました。
こんなオジイサンにとっては、いまのハードルの低さにビックリです。マイコン開発の世界も入り口は驚くほど入りやすくなっているのですね。

申し込み締め切りは、2024年2月29日(木) 17:00ということなので、まだまだ間に合います。なんとなくArduino気になってるんだよね~っていう方は、絶対申し込んでみるべきだと思います。

遊んでみる

Arduino IDEは使いやすく、Arduinoのプログラム(スケッチ)開発はこのIDEがあれば十分。中でもすごいなと思ったのは、IDEをインストールすると、一緒に開発の参考になるスケッチの例がたくさんインストールされること。
ざっと眺めて何が出来るのか確認しておくだけでも面白い。

セミナー動画でも「各種デモ」としてこれらの中から面白そうなものが紹介されています。
中でも気になったのが「HID(USBのキーボードやマウスの代わり)サンプルのデモ」というもの。
動画の中では、シリアルモニタから文字を入力するとマウスカーソルが動く "KeybosrdAndMouseControl" というスケッチが紹介されていました。
([ファイル]⇒[スケッチ例]⇒[09.USB]の下にあります)

筆者が気になったのは、[09.USB]の下の「Keyboad」の下にある "KeyboardSerial" というスケッチ。
シリアルモニタから文字を入力すると、入力した文字のASCIIコードの次のコードをキーボード出力として返してくるというもの。

USBキーボードとして文字コードが返せるのなら、Arduinoを使えば結構簡単に自作キーボードが作れるんじゃないか!? と思ったわけですが、そう思って検索し始めると、Arduinoを使って自作キーボードを作っている人が大勢いることがわかりました。
なるほど、そりゃそうですよね。公式IDEに、ここまでしっかりサンプルが載っているのにみんなやりたくないますよね。

キーボード

実は、普段は自作のデスクトップPCで仕事をすることが多いのですが、筆者の机はあまり広くないので、というか片付いていないので、できるだけコンパクトなキーボードを使いたいのです。

少し前までは、HHKB Lite2というキーボードを使っていました。

ファンクションキーとテンキーがないぶんコンパクトで使いやすく、結構長い間使っていたのですが、実はこのキーボード。文字を打つたびにカチャカチャ、カチャカチャうるさいんです。

リモートワークで家で仕事をするようになると、キーボードのカチャカチャ音が気になって気になって。

静音タイプのHHKB Professional HYBRID Type-Sが発売されたのを機に買い替えようかとも思ったのですが、価格がちょっと厳しいかなーという感じで手が出ませんでした。

いろいろ探して、結局、いまはロジクールのMX Keys Miniを使っています。

ノートPCで作業することが多かったので、ストロークの浅いキーボードにも慣れていて、そこに対しては問題ないのですが、これでもやはり少し縦に長すぎるんですよね。
できれば、VORTEX COREのようなファンクションキーと数字キーをオミットした、いわゆる40%キーボードを常用したい。

ただ、この手のキーボードは自分用にキー配列をカスタマイズしないと使いにくい。となると、どこまでカスタマイズできるかは買ってみないとわからないし……

なら、いっそのこと自作してしまいたいなと、漠然と思っていたこともあったんです。
ただ、USBの仕様とか調べないといけないのかな、ちょっと面倒だな……と、思ってなかなか手が出せませんでした。

それが、手元にArduinoがあるだけで、なんとなくできそうだなという気になってきましたよ。

見た目から入るタイプ

で、キーボードレイアウトエディターを使って自分好みのキーボードをデザインしてみました。

こんな感じ。

自分キーボード

日本語108の配列をベースに、普段よく使う文字がFnキーを使わずに入力できるようにしながらできるだけコンパクトにして、MX Keys Miniを使ってみて便利だった特殊キーを追加した感じ。

なんかいいかも。

さて、こんなキーボードを本当に作ることができるのか。
年明けから、ちまちまテストをしてみようかな。


【追記】

なるほど、こういう事情があったわけですね。

面白くなってきたじゃないですか。

頂いたサポートは今後の記事作成のために活用させて頂きます。