Repository navigation
v0.2.5
色が入れかわるテープでも、正しい色で光るようになりました。
NeoPixel のブロックに 1 つ足しただけです。ほかの動きは何も変わっていません。
| 使い方 | 中身 | |
|---|---|---|
| Xcratch 版 | 下の URL を「拡張機能を追加 → Extension Loader」に入れる | インストール不要。Chrome か Edge が要る |
| デスクトップ版 | 同梱のインストーラを入れる | Scratch Desktop に組み込んだもの |
https://tarosay.github.io/scratch3-uiapduino/uiapduino.mjs
✅ 書き込み直しは要りません
プロトコルは 8 のままです。v0.2.3 / v0.2.4 の基板は、そのまま繋がります。
今回の修正は Scratch 側だけで、基板には一切触れていません。
🌈 NeoPixel の色が入れかわるときに(新規・1 個)
NeoPixel のテープやリングは、製品によって 1 画素 3 バイトの並びが違います。
これまでは 1 種類(GRB)でしか正しく光りませんでした。
NeoPixel は 赤が [赤 ▼] 緑が [緑 ▼] に見える
並びの名前を当てる必要はありません。見えた色を答えるだけです。
使い方
まず 2 個だけ光らせます。
NeoPixel を [12] 個 明るさ [50] % で始める
NeoPixel の [1] 番を 赤 [255] 緑 [0] 青 [0] にする
NeoPixel の [2] 番を 赤 [0] 緑 [255] 青 [0] にする
1 番と 2 番が何色に光ったかを、そのままブロックに入れて、
始める の上に置いてください。 これで残りの色もそろって直ります。
1 番が赤・2 番が緑に光ったなら、そのまま 赤 緑 を選びます
(今までどおりで合っている、という意味になります)。
⚠ 答えるのは このブロックを置く前 の見え方です。直った後の色ではありません。
⚠ 青だけ暗く見えるのは正常です。 WS2812B は素子の光度が青でいちばん低く、
目の感度も青で最も低いためです。故障ではありません。
商品説明の「RGB」はあてになりません
売り文句の「RGB」は、たいてい「フルカラー」の意味で、送信順のことではありません。
動作確認に使っている 12 連リングも、説明は RGB でしたが実際は GRB でした。
だからこのブロックは、並びを選ばせるのではなく、見えた色を聞く形にしてあります。
WS2812B が分かる方へ
「赤が赤、緑が緑に見える」場合は、GRB の順にデータを送信しています。
| 赤が | 緑が | テープの送信順 |
|---|---|---|
| 赤 | 緑 | GRB(既定。WS2812B の標準) |
| 青 | 緑 | GBR |
| 緑 | 赤 | RGB |
| 赤 | 青 | BRG |
| 緑 | 青 | BGR |
| 青 | 赤 | RBG |
3 文字は線に出すバイトの順(先頭が 1 バイト目)で、NEO_GRB などと同じ意味です。
選んだ結果は、ファームウェア側で NeoPixelmin(n, pin, NEO_GBR) と指定したのと同じに
なります。並べ替えは Scratch 側で行うので、基板の焼き直しは要りません。
既存の作品はそのままです
既定は今までと同じ GRB です。 ブロックを置かなければ、動きは一切変わりません。
並べ替えは基板へ送る直前だけで行うので、n 番の色・虹を出す・
色 [ ] 鮮やかさ [ ] 明るさ [ ]・ずらす・暗くする は、どれも今までどおり動きます。
⚠ デスクトップ版は入れ直してください
Xcratch 版は URL が同じなので、開き直すだけで新しくなります。
デスクトップ版は拡張機能をアプリに組み込んであるので、同梱のインストーラで
入れ直さないと新しいブロックが出ません。
同梱物
| ファイル | 内容 |
|---|---|
Scratch-UIAPduino-3.29.1-Setup.exe |
インストーラ |
Scratch-UIAPduino-3.29.1-portable.zip |
インストール不要版 |
スケッチは同梱していません。 拡張機能がスケッチを持っていて、ブロックがそれを焼きます。
v0.2.4 からの変更
- NeoPixel の色の並びに合わせるブロックを 1 つ追加(上記)
- ほかのブロックの動き・名前・引数は変更なし
- README に、自分のテープの並びの調べ方と、送信順の対応表を追加
制限
- Windows のみです。macOS / Linux 版はありません
- Chrome か Edge が要ります。 Firefox と Safari には WebHID がありません
- Linux で使う場合は udev のルール追加が要ります(README を参照)
- USB を抜いても自動では再接続しません。挿し直したら「!」をクリックするか、
「つなぐ」ブロックをもう一度実行してください
動作確認環境
Windows 11 / Node.js v16.20.0 / Electron 15.3.1 / Chrome・Edge(Xcratch 版)
ボードパッケージ UIAP_HID:ch32v 1.2.12。スケッチは変更していないので、
Flash 使用量は v0.2.4 と同じ 12040 / 16384 バイト (73%)、RAM は 744 / 2048 (36%) です。
WS2812B 12 連リング(GRB)で、6 通りの並べ替えが予告どおりに効くことを確認しています。