電子工作

M5StackCore2、M5Dialをトラックパットとして使う自作キーボードSparrowDialを作ったよ

tl;dr M5StackCore2、M5Dialはタッチパネルが付いていて、タッチパネルの精度がかなり良いよ これをトラックパッドとして使うために、I2Cトラックパッドデバイスファームウェアを作ったよ。I2Cトラックパッドの仕様は独自仕様だけど、QMK Firmwareに対応した…

GH60互換ケースを使ったレバーレスジョイスティック付きゲームコントローラSparrowG21を作った

tl;dr GP2040-CEというRaspberry Pi Picoを使ったゲームコントローラファームウェアで、レバーレスコントローラを作るのが流行っているようだよ GH60互換ケースを使って、GP2040-CEを使ったレバーレスを作ってみたよ ジョイスティック、RGB LED、OLED、Turbo…

ジョイスティックをマウスとして使うSparrow60Cキーボードの頒布版ができたよ

tl;dr ジョイスティックをポインタとして使うためのモジュールStickPointVを搭載したキーボードを作ったよ ケースが合った方が、操作が安定するのを感じるよ もう1年以上使っているけれど、マウスと併用して、活用しているよ キーケットで販売したよ、継続し…

M5StackCore2、M5Dialをトラックパッドデバイスにして、QMK Firmwareから利用する

tl;dr M5StackCore2とM5Dialには、タッチパッドを備えているよ QMK Firmwareには、カスタムにポインターデバイスをくみこむためのハンドラーがあるよ M5StackCore2とM5DialのPortA端子には、I2Cが使えるようになっているよ。QMK FirmwareのRP2040から、M5Sta…

ジョイスティックデバイスをQMK Firmwareに最適化させたStickPointを作った

tl;dr スライドタイプの小型ジョイスティックデバイスを、マイコンを使って、PIMORONI Trackball互換デバイスにしたよ KMK Firmwareで動かしていたけれど、QMK Firmwareで動かしたらめっちゃ移動量多くてチューニングしたよ Boothにてモジュール販売中 ジョ…

WCHのRISC-VマイコンCH32Vを公式SDKを使って、VS CodeのPlatformIOで開発する

CH32V203をPlatformIOで開発するときにやっていることをまとめたものです。 tl;dr WCHのRISC-VマイコンCH32Vシリーズは、STM32のペリフェラルをRISC-Vに移植したようなマイコンで、割と安価に購入できるよ。秋月でも取り扱いがあるよ。 組み込みファームウェ…

2023年の電子工作振り返り

メイン WCHのCH32V003との出会いがあり、開発ボードやガジェットに組み込んだよ 電子工作&自作キーボードのイベントに出展や参加したよ 技術書典でも電子工作をテーマに2冊書いたよ JLCPCB、WCHのおかげで、たくさんの電子工作を楽しんだよ CH32V003との出…

ch32v003funでCH32V003を便利に開発している話

tl;dr ch32v003fun は、コミュニティの CH32V003 用の開発ライブラリ、および開発環境だよ。 開発ライブラリと言っても、基本的にリファレンスマニュアル見ながらレジスタを操作するもので、各ペリフェラルを使いやすくするようなものではないよ。 でも exam…

Relayを使って、USB切り替え機能付きUSB Hubを安価に作った

tl;dr CH334を使うと、レギュレータなしの5V電源と、数個のコンデンサだけで、USB 2.0 Hubを作ることができるよ。 USBの切り替え機能もつけたくて、リレーを使ってDM/DPを繋ぎ替えてみたけれど、動いたよ。本来は、USB切り替えICを使うべきだよ。 リレーの制…

時々ハングするIoT機器を再起動させるUSBアダプタを作った

tl;dr GoogleHomeから操作できる家電リモコンが時々ハングして、使いたい時に限って使えないことがあったよ。電源を挿し直せば直るよ CH217 はスイッチ機能がついたUSB電源保護ICだよ。2Aくらい流せるのでWiFi機器でもいけそうだよ。 このICのENを、CH32V003…

USBデバイスの電源保護に、CH217、CH213を使う

注意、この記事は工業製品の電子回路設計のプロではなく、アマチュアの電子工作エンジニアが執筆しています。世の中には紹介するICより良いICがあるかもしれませんが、私にとって良さそうなものを見つけたとして、記事にしています。 tl;dr USBデバイスの工…

M5StackC3 と IR Unit で、HTTPで赤外線を送受信できる自宅 Web API を作る

tl;dr CircuitPython と ESP32 を使うと簡単に、HTTP Server を立てることができる。 CircuitPython の pulseio を使うと、制御が抽象化されて、簡単に信号制御ができる。 M5StampC3 と、IR Unit ならケースに入っているし、そのままお家にデプロイしても良…

CH32V003 の開発に ch32v003fun を使う

より詳細な記事を書き直しました。 74th.hateblo.jp tl;dr CH32V003 は秋月で40円から買える、安い割に機能が多く、必要な部品も少ないMCUだよ ch32v003fun はコミュニティベースの開発ライブラリおよび開発環境だよ。環境構築も簡単だよ。 ch32v003fun は開…

KiCad の公式プラグインリポジトリに、自作カラーテーマを追加してもらった

tl;dr 既存のカラーテーマに不満を持って、カラーテーマ Monokai High Contrast を作ったよ。 KiCad プラグインを公開するには metadata.json 、package.json、repository.json と書くものが複数あるよ。 OSSで公開されている https://github.com/pointhi/ki…

安価なプリヒーターで ESP32-C3-MINI-1 をリフローする

tl;dr ESP32-C3-MINI-1 モジュールは、技適通っていて、ProMicroのように小さいガジェットに使えるけど、リフローでないと実装が難しいよ アリエクで$20以下で買えるプリヒーターがリフローに使えたよ ステンシル、フットプリントは Espressif の KiCad ライ…

はんだ実装の作業台としてガラスカッターマットを使う

最近ガラスカッターマットをはんだ実装時の作業台として使っています。 tl;dr ガラスカッターマットが、以下の点ではんだ作業台として使えます。 PCBをマスキングテープで留めて、固定できる 硬いため、部品もつまみやすい 熱に強く、ヒートガンを安心して使…

自作キーボードのスイッチソケットを、クリームはんだとヒートガンで実装する

自作キーボードには、スイッチを直接実装する代わりに、ソケット部品を実装してスイッチを交換可能にすることが行われます。 私の作っているキーボード Sparrow62v2 もソケットに対応しています。 しかし、2022年くらいから、新設計のソケットが出回るように…

ファームウェア書き込み用に、スルーホールに刺さるサンハヤト テストワイヤが便利

何か基板を作っていて、MCUにファームウェアを書き込むためにスルーホールでアクセスできるようにしておくことをします。 以前は、ここにブレッドボード用のワイヤを挿して、指でなどで押さえつけてのですが、最近はサンハヤト テストワイヤを使っています。…

技術書典14で新刊『マイコンさんに知らないプロトコルを喋らせる技術』を出します!

技術書典には、3からサークル参加をして新刊を出し続けています(12回目)。 当初は VS Code 関連本でしたが、ここ2回はハマっている電子工作の本を出しています。 74th.booth.pm 74th.booth.pm 今回も電子工作の本を出します。 74thの電子工作の課題意識 電…

MCU が正しく実装できているか確認するためのファームウェアを作った

RP2040 の開発ボードを作っていますが、目で見て大丈夫でも、0.5mm ピッチ VFQFN は手実装がうまくいかないのか、GPIO が動かなかったこともありました。 このために実装が上手くいっているかどうかを、チェックするためのファームウェアを作りました。 RP20…

Type-C ソケットのもげ対策に表側からもはんだをながす

Type-C ソケットを実装していて、最近小さいものを作ることが多く、ソケットの裏面にも部品が組み込める SMT タイプのソケットを使っています。 10個のUSB 3.1タイプCメスsmtソケット充電ポートpcbスナップコネクタ https://ja.aliexpress.com/item/10050048…

CH340X で小さな ESP32 Writer を作った

tl;dr CH340 は部品点数を減らせる便利な USB シリアル変換ICだよ ESP32 はGPIO0 を H にしながら、EN を H→L→H にしてリセットすると、UART でファームウェアを書き込みを受け付ける状態になるよ。MOSFETを2個使って、UARTの送信リクエストと同時にこの操作…

CH32V003 の ProMicro サイズ開発ボードをつくった

CH32V003 で遊んでいる中、ProMicro サイズの開発ボードを作ってみました。 ProMicroc 型にする利点は以下のようなところがあります。 小さいけど、ほどよい量の IO を持つ。 UART、I2C、5V、3V3 などの位置を揃えることで、新しいマイコンでも迷わず接続で…

USB Type-C ソケットテスターを作った

写真のUSB Type-Cソケットテスターを作った話です。 USB Type-C には凄くお世話になっています。 ありとあらゆる電子工作の作品には USB Type-C ソケットを持たせています。 主に私が使っているのは、以下の2つ種類のソケットです。 ミッドマウントタイプの…

手持ちの 0805 SMD LEDの眩しくない抵抗値

電子工作には、電源が正しく通っていることを確認するために、SMD 0805 サイズのLEDをよく使います。 この時に、GPIOやVCCに接続する時に、LEDと一緒に抵抗を挟みますが、この抵抗の値をいつも適当に1kΩとかを入れており、青色はいつも眩しいな、紫色は眩し…

CH32V003で、UARTで書き込みできるブートローダを書き込んで利用する

tl;dr CH32V003 には UART 経由で書き込めるようになるブートローダーのコードが公開されているよ ハードウェア WCH-LinkE、ソフトウェア WCH-LinkUtility を使ってブートローダーを書き込んだあとに、PC0を3V3にいれて電源を入れると、UART経由で書き込める…

CH32V003 のファームウェアのビルド環境を整える

WCH の RISC-V の安価なマイコン、CH32V003 のファームウェアのビルド環境を整えて、ビルドをする所まで持ってきました。 いくつかCH32Vの利用法についてまとめている所を見つけて、主にそれに従って準備しました。 github.com tl;dr https://github.com/ris…

スライドジョイスティックモジュールを、モジュール化して自作キーボードに取り込む

これまでの課題 去年、PSP用っぽいスライドジョイスティックモジュールを、ポインタデバイスにしたことを記事にしました。 74th.hateblo.jp この時、これを使い続けることができませんでした。それには複数の理由がありました。 PSPっぽいジョイスティックを…

STM32及び互換ピンアウトProMicroサイズ開発ボード X32Micro を作った

左:STM32F103C8T6、右:CH32V203C8T6 CH32V203 で遊ぶための ProMicro サイズ開発ボードを作りました。 74th.hateblo.jp よくよく考えたら STM32F のコピーの CH32F を、RISC-Vで置き換えた CH32V MCU のため、ピンアウトや機能は STM32F を置き換えられるよ…

RISC-V MCU の CH32V203 開発ボードを作った

RISC-V MCU の CH32V203 を使ったマイコン開発ボードを作りました。 CH32Vシリーズとは ARMコアを使ったマイコンには、STM32が有名ですが、これをなぞった中国製マイコンとして、 GigaDevice GD32 や WCH CH32 マイコンがあります。型番にも STM32F103C8T6 …