UIAPduino Pro Micro CH32V006 V1.1Beta
このページはまだ日本語のみです。Sorry, still only Japanese language on this page. このページは最終的に日本語と英語とで分割されます。This page will eventually be splitted Japanese and English.
V1.1はベータ版であり、ハードウェアに欠陥がある可能性があります。既知の問題点:
- 裏面PC2のシルクに見えづらい部分があります。読み取れない場合はボードイメージを参照してください。
- CUT2付近のチップ部品にフィレット不良のある個体があります。機能上の問題はありません。
- Windowsではデバイスマネージャでの認識が不安定になる可能性があります。
- USBケーブルが1m以下だと通信が安定します。4m以上だと通信が安定しません。
いずれの不具合も現時点では致命的ではなく、意図通りに動作するケースが確認されています。
特定少数へ配布する評価サンプルボード(2026/03/04ロット40ボードおよび2026/08/04ロット40ボード、合計80ボード)にのみ言及した注釈はV1.1のままGeneral Availabilityへ移行する場合に削除されます。
はじめる
この動画はスタートアップガイドではありません。ボードを動作検証した動画です。
動作確認済み環境
- OS: Windows 11 / Ubuntu 22.04 LTS / Ubuntu 24.04 LTS / Ubuntu 26.04 LTS
- USBホストコネクタ: USB 2.0 Type-A / USB 3.2 Type-C
- 書き込みツール: minichlinkのみ (Arduino IDE未対応、PlatformIO未対応)
ドキュメント
ボードレイアウトはSparkFun Qwiic Pro Micro - USB-C (ATmega32U4)とおおよそ互換します。
回路とボード
評価サンプル80ボードにのみ言及した注釈
- Q2には回路図記載のG2N7002X/C5258971ではなく2SK3019/C41349573が実装されています。これは正常に機能し、部品調達の都合によるものです。
- U2のCH32V006K8U6(動作環境温度:-40℃~85℃、CH32V006 Datasheet V2.0から廃止)はGeneral AvailabilityリリースでCH32V006K8U7(動作環境温度:-40℃~105℃)に変更されます。
工場出荷時設定
評価サンプル40ボード(2026/03/04ロット)にのみ言及した注釈
- プログラマのVID PIDを変更するとminichlinkから操作できない不具合がありました。そのため、工場出荷時設定ではなくrvswdio programmerのデフォルトのVID PIDが書き込まれています。
- minichlinkでの操作例は
-c 0x1209b806 -C funprogを除去して理解してください。 - ボードへ給電するとCH32V006の250msのBlinkが実行されます。別のプログラムを書き込む前にminichlinkでの操作を練習し、挙動を十分に把握してください。
- V006がPC0を操作すると、オンボードV003デバッガはリセットをトリガされて動作しなくなります。
オンボードV003デバッガ復旧手順(手順を全て一読してから操作してください)
- 外部デバッガを用意します。WCH-LinkE(推奨)やV003ボードデバッガを使用できます。
- 外部デバッガのファームウェアを最新にします。古いと一部のロットのチップを誤認識します。
- ボードをUSB接続せず、外部デバッガの5V端子をPWR6に接続し、V006チップに給電します。
- V006直近のMLCC電圧を測定し、5Vが給電されていることを確認します。給電されずにデバッガのSWIOが接続されると、V006の入力ポートの絶対最大定格を超過してチップが破損します。
- 外部デバッガのSWIOをV006のPD1(24ピン)へ接続してPC0を操作しないバイナリを書き込みます。
- 外部デバッガのSWIOをV006のPD1(24ピン)から外した後に5V給電を停止します。
- ボードをUSB接続してオンボードV003デバッガの復旧を確認します。
- 復旧したボードをマークします。この手順で意図しない誤操作が内部を部分破損する可能性があるため、復旧したボードで動作不良が生じたさいに破損可能性のないボードと比較するためです。
オンボードV003デバッガのリセットをGPIOにする(PC0誤操作でのリセットトリガ防止)
- オンボードV003デバッガ復旧手順の1と2を実施します。
- ボードをUSB接続せず、外部デバッガの5V端子をボードの5V端子に接続し、ボードに給電します。
- 外部デバッガのSWIOをV003のPD1(17ピン)へ接続して
minichlink -DでNRSTをGPIOにします。 - 外部デバッガのSWIOをV003のPD1(17ピン)から外した後に5V給電を停止します。
- 誤操作でのリスク低減のためにオンボードV003デバッガのリセットをGPIOにするを強く推奨します。
- 書き込みが不安定な場合はCH32V003ボードのトラブルシューティングも参照してください。
rvswdio programmerをベースとしたカスタムデバッガ(VID PID: 0x1209 0xB806)が書き込まれています。これは製品区別のためです。また、ボード中央のオレンジ色LEDが ろうそく のように点灯するユーザプログラムが書き込まれています。
断片的な開発情報
デバイスの導入
Linuxでudevルールにデバイスの権限を付与します。Windowsでは不要な操作です。
# Do this command after UIAPduino board was installed.
sudo wget -O /etc/udev/rules.d/99-minichlink-uiap.rules https://raw.githubusercontent.com/YuukiUmeta-UIAP/ch32fun/3bfa603f11d493710f2a811b5a2dfad905d9425c/minichlink/99-minichlink-uiap.rules
# Reboot or do this command if needed.
sudo udevadm control --reload-rules && sudo udevadm trigger次のようにminichlinkのコマンドで操作します。-c 0x1209b806と-C funprogの順序は入れ替えできません。また、-C esp32s2chfunと同様に使用できる-C funprogが新設されました。
minichlink -c 0x1209b806 -C funprog # Check the device with specifying rvswdio programmer using VID PID.
minichlink -c 0x1209b806 -C funprog -3 # Supply power to CH32V006, not '5' option
minichlink -c 0x1209b806 -C funprog -b # Run CH32V006
minichlink -c 0x1209b806 -C funprog -t # Stop power to CH32V006, not 'f' option重要事項
- 最新コードを新しいgcc(13推奨、14は一部バグあり)でビルドしたminichlinkを使用してください。
- Windows向けにはビルド済みのminichlink.exeとlibusb-1.0.dllもありますが、ビルドを推奨します。
内蔵LEDでBlink
最新のcnlohr/ch32funからexamples/blinkのblink.cとMakefileを次のように変更します。
評価サンプル40ボード(2026/03/04ロット)にのみ言及した注釈
blink.cを変更せずにビルドして書き込むとオンボードV003デバッガはV006のPC0でリセットをトリガされて動作しなくなります。その場合はオンボードV003デバッガ復旧手順を参照します。なお、オンボードV003デバッガのリセットをGPIOにしてあれば無関係です。
#include "ch32fun.h"
// Define the built-in LED port
#define LED_BUILTIN PC3
int main()
{
SystemInit();
funGpioInitAll(); // Enable GPIOs
funPinMode( LED_BUILTIN, GPIO_Speed_10MHz | GPIO_CNF_OUT_PP ); // Set PC3 to output
while(1)
{
funDigitalWrite( LED_BUILTIN, FUN_HIGH ); // Turn on
Delay_Ms( 250 );
funDigitalWrite( LED_BUILTIN, FUN_LOW ); // Turn off
Delay_Ms( 250 );
}
}all : flash
TARGET:=blink
TARGET_MCU?=CH32V006
include ../../ch32fun/ch32fun.mk
flash : cv_flash
clean : cv_cleanmake clean && make buildしてminichlink -c 0x1209b806 -C funprog -w blink.bin flash -bでBlinkします。
ハードウェア検証状況
リファレンス
CH32V006
- 64K-Flash Multi-function General-purpose MCU CH32V006 - Nanjing Qinheng Microelectronics Co., Ltd.
- openwch/ch32v002_004_005_006_007: The SDK and HDK for RISC-V MCU CH32V002_004_005_006_007
開発スタック
USBで
Arduinoで
Pro Micro
- Pro Microとそのバリエーション
- Arduino互換ボード「Pro Micro」の情報まとめ #Arduino - Qiita
- Pro Micro - 5V/16MHz - DEV-12640 - SparkFun Electronics
- SparkFun Qwiic Pro Micro - USB-C (ATmega32U4) - DEV-15795 - SparkFun Electronics
- Qwiic Connect System - SparkFun Electronics
USB
- Document Library | USB-IF
- USB Cheat Sheet
- はじめてのUSB [USB発展の歴史と基礎知識] | テクニカルスクエア | 丸文株式会社
- パケットのフォーマットからプロトコルの詳細まで
- USBの通信プロトコル
- USB Type-C コネクタに必要な終端抵抗 – Community Translated (JA... - Infineon Developer Community
- Replacing Standard USB 3.0/2.0 Connector with Type... - Infineon Developer Community
- pcb - How to connect USB Connector shield? - Electrical Engineering Stack Exchange
- 01signal: Resetting a USB device on Linux (and maybe control its power supply)
以前のバージョン
コントリビュータ / Contributor
ハードウェアレビュー / Hardware Review
- CNLohr community members
- TAKUMIIII (takumiiii.)
- UIAP community members
- hsgw (hsgw)
- inajob (inajob)
- MOS (53175ddd)
- pokibon (k_ohe)
提案 / Suggestion
- CNLohr community members
- biemster (biemster)
- bogdanthegeek (bogdanthegeek)
- cnlohr (cnlohr)
- max (.pseud0)
- montemonte (montemonte)
- Sky (skkeye)
- uni the cat (uni1975)
- willmore (willmore)
- yspacelabs (yspacelabs)
- UIAP community members
- けけゆう (krafts_kustoman)
ソフトウェア実装 / Software Implementation
- CNLohr, and his community members
注意事項
UIAP製デバイスはホビー用品です。UIAP製デバイスを生命や安全に影響する可能性のある用途には絶対に使用しないでください。これらに使用して生じた全ての損害についてUIAPは一切責任を負いません。
全数検査は不良品のないことを保証するものではありません。また、UIAP製デバイスの保護素子や保護回路は接続されたデバイスを破損しないこと保証するものではありません。
UIAP製デバイスは、データシート等の関連資料に記載された絶対最大定格および仕様の範囲内で使用してください。誤接続、過電圧の印加、ショート、改造など、使用者の誤用や不適切な取り扱いによって生じた発熱、発火、破裂、およびそれらに起因する全ての損害についてUIAPは一切責任を負いません。
UIAP製デバイスを組み込んだアプリケーションは使用者の責任で利用、配布、製造、販売、輸出入してください。
本資料はUIAP製デバイスの動作例や応用例を説明するものです。本資料の情報を使用する場合、使用者の責任でクローン・フォーク・アプリケーションを設計・製造してください。本資料の情報を使用して生じた全ての損害についてUIAPは一切責任を負いません。
本資料またはUIAP製デバイスの不明点について、正確な情報が必要な場合はUIAPへ直接お問合せください。
本注意事項は予告なく変更され、変更されても通知されません。また、本資料またはUIAP製デバイスの使用は、使用者が本注意事項を理解しているとみなされることに同意するものとします。

