Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
数百円から始めるRuby電子工作
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Tarosa
July 18, 2026
Programming
150
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
数百円から始めるRuby電子工作
関西Ruby会議09のLT資料です。
Tarosa
July 18, 2026
More Decks by Tarosa
See All by Tarosa
AIで宇宙甲子園 缶サット部門 近畿大会のテーマソングを作る
tarosay
0
44
mrubyとWakayama.rb ~mrubyと共に歩んだ10年~
tarosay
0
160
【THETA撮影会 in 大阪】建築・照明デザイナーとエンジニアのための視環境設計 #4
tarosay
0
260
評価画像変換の簡単な説明
tarosay
0
200
建築・照明デザイナーとエンジニアのための視環境設計
tarosay
0
290
模擬人工衛星DangoSatプロジェクト
tarosay
0
290
全方位色彩解析ソフト REALAPS Omni Colorのマニュアル
tarosay
0
210
だんごサットの紹介
tarosay
0
210
Tellusで、串本のおいしいお刺身を!
tarosay
1
510
Other Decks in Programming
See All in Programming
「人を評価する AI」の設計と実装
ryoyanara
0
200
Claude CodeとAgentCore Gatewayを繋ぐ際の認証認可 / Authentication and authorization when connecting Claude Code with AgentCore Gateway
har1101
2
270
これって Effect でできたのでは? / TSKaigi Mashup Kansai #2
susisu
0
240
為什麼你並不需要ViewModel / No, you don't need a ViewModel
lovee
1
500
ITヒヤリハットを整理してみた ~ライフサイクルと原因から考える再発防止策~
koukimiura
1
140
PostgreSQL 18で考えるUUID主キー
kazuhiro1982
0
470
仕様駆動開発へのトライを機に チームに適合する手法を模索し続けている話
freee
PRO
0
500
Built Our Own Background Agent at LayerX
layerx
PRO
10
5.5k
進化を続けるGo toolsの現在地 / The Current State of Ever-Evolving Go Tools
hond0413
0
220
React本体のコードリーディング
high_g_engineer
1
140
Terraform標準の組織で AWS CDKをどう使うか
mu7889yoon
1
510
複数の Claude Code が"放置"されてしまう問題をCLI ダッシュボードを自作して解決した話
sumihiro3
1
680
Featured
See All Featured
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
1
2.3k
How Software Deployment tools have changed in the past 20 years
geshan
1
34k
Code Review Best Practice
trishagee
74
20k
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
1
240
How to Talk to Developers About Accessibility
jct
2
510
Building AI with AI
inesmontani
PRO
1
1.1k
Are puppies a ranking factor?
jonoalderson
1
3.8k
Documentation Writing (for coders)
carmenintech
77
5.4k
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
RailsConf 2023
tenderlove
30
1.5k
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.7k
First, design no harm
axbom
PRO
2
1.2k
Transcript
関西Ruby会議09 Lightning Talk 数百円から始める Ruby電子工作 UIAPruby — ブラウザだけで完結する マイコン ×
Ruby 環境 たろサ / Wakayama.rb(和歌山発Rubyコミュニティ) 1
Rubyで電子工作、始めようとすると… ボードが高い 入門ボードでも数千円。 気軽には壊せない 環境構築が重い クロスコンパイラや 専用ツールの準備が必要 mrubyはビルドが必要 Ruby +
rake が前提。 Arduino IDE だけでは 完結しない 「やってみたい」の前に、ハードルが 3つ。 2
UIAPruby — ハードは約600円 ¥290 UIAPduino 本体 CH32V003(RISC-V)搭載 + ¥300 microSDカードアダプタ(目安)
Flash 16KB / RAM 2KB 「え、それでRubyが?」 → 動きます(工夫は後ほど) あとは Chrome / Edge だけ • インストール不要 • クラウド不要 • コンパイルも転送も • すべてブラウザの中で完結 3
大事なことを、先に言っておきます Official Party で 15名様 にプレゼント! 関西Ruby会議09 特別版(左:裏面 microSD /
右:表面) 7/18(土)19:00〜 Official Party THE CALENDAR(大津駅前)にて ただし、条件がひとつ PicoRubyKaigi 2026 Assemble (10/31(土)浅草橋)に、UIAPruby を 使った作品を出してください! トーク / ショーケース 応募〆切:8/31(月) 4
しくみ — 書いて、押して、挿すだけ 1. Rubyを書く ブラウザのエディタで。 サンプルもワンクリック → 2. ブラウザ内
コンパイル @ruby/prism (WASM) で AST解析 → .urb バイトコードへ変換 → 3. WebHIDで SDへ転送 USBを挿して ワンクリックで書き込み → 4. TinyVMが実行 main.urb なら 電源ONで自動実行 マイコン上で Ruby VM は動かさない — 実行するのは軽量バイトコード 5
mruby の rake を、ブラウザに移した mruby のやり方 • mrbgems を選んで構成を書く •
rake でビルド(Ruby 必須) • クロスコンパイラ環境も PC に用意 → Arduino IDE だけでは完結しない UIAPruby のやり方 • Webでコンポーネントを選ぶだけ • 必要な機能だけ入りの単一 .ino が生成 • Arduino IDE でそのまま書き込み → ビルド環境の構築ゼロ コンポーネント選択 = mrbgems 相当。 ブラウザが rake になる。 6
ふつうの Ruby 文法で書ける # LED を 0.2 秒ごとに点滅 led =
GPIO.new(2, GPIO::OUT) loop do led.on sleep(0.2) led.off sleep(0.2) end コンパイル後はわずか数十バイトの .urb に 使える機能(コンポーネント) GPIO / ボタン Tone(ブザー) PWM(モーター) ADC(アナログ) 超音波 HC-SR04 I2C 通信 乱数 rand 小数(Q16.8) 仮想メモリの実装 $count 電源を切っても消えない変数(SDに永続保存) 7
例えば、こんなものが作れます 作例 — ラッキーおみくじマシーン 超音波センサが目、サーボモーターが針 — すべて UIAPruby で動作 使うのは
4 コンポーネント 超音波 Us(目)/ PWMサーボ Pw(針) 乱数 Rn(運勢)/ 小数演算 Q1 遊び方は、一礼するだけ おみくじマシーンにお辞儀をすると start 針が 2 往復したあと、ランダムな角度で 止まって「今日の運勢」を指します 実機あります。休憩・懇親会にぜひ遊んでください! 8
Flash 16KB に詰め込む工夫 Flash 使用量(BASE構成) 12,816 / 16,384 bytes(78%) Q16.8
固定小数点 小数演算を int32 で。 1.0 = 256。FPU なしでも g = 0.1 * 0.5 が動く ラムダはインライン 展開 コンパイル時に呼び出し先へ 展開 — 実行時コストゼロ、 追加 Flash ゼロ コンポーネント選択 式 使う機能だけを組み込み。 Tone +1008B、ADC +328B と 数百バイト単位で加算 VM を丸ごと載せるのではなく、「Ruby の最大の魅力である書き心地」だけを持ち込む 9
今日から試せます tarosay.github.io/uiap-hid-web/uiapruby.html 「UIAPruby」で検索でもたどり着けます デバイス接続は Chrome / Edge のみ WebHID API
を使用するため。 Firefox / Safari は非対応 コンパイルとダウンロードは どのブラウザでも OK .ino / .urb の生成・保存は WebHID 非対応でも動きます 10
数百円のマイコン + ブラウザで、Rubyがそのまま動く rake の役割はブラウザへ — 環境構築ゼロ Wakayama.rb 発、GR-CITRUS に続く「二つ目の扉」
ご清聴ありがとうございました たろサ / Wakayama.rb 11