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
実用toio
Search
yabe_z
November 22, 2019
Programming
0
180
実用toio
yabe_z
November 22, 2019
Tweet
Share
Other Decks in Programming
See All in Programming
AI Agent 時代的開發者生存指南
eddie
4
2.2k
NIKKEI Tech Talk#38
cipepser
0
310
What's new in Spring Modulith?
olivergierke
1
180
ALL CODE BASE ARE BELONG TO STUDY
uzulla
28
6.8k
GC25 Recap: The Code You Reviewed is Not the Code You Built / #newt_gophercon_tour
mazrean
0
130
3年ぶりにコードを書いた元CTOが Claude Codeと30分でMVPを作った話
maikokojima
0
690
他言語経験者が Golangci-lint を最初のコーディングメンターにした話 / How Golangci-lint Became My First Coding Mentor: A Story from a Polyglot Programmer
uma31
0
470
なんでRustの環境構築してないのにRust製のツールが動くの? / Why Do Rust-Based Tools Run Without a Rust Environment?
ssssota
14
47k
社会人になっても趣味開発を続けたい! / traPavilion
mazrean
1
110
pnpm に provenance のダウングレード を検出する PR を出してみた
ryo_manba
1
160
CSC509 Lecture 07
javiergs
PRO
0
250
contribution to astral-sh/uv
shunsock
0
550
Featured
See All Featured
Building Adaptive Systems
keathley
44
2.8k
Git: the NoSQL Database
bkeepers
PRO
431
66k
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
2.9k
How to train your dragon (web standard)
notwaldorf
97
6.3k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
658
61k
The Invisible Side of Design
smashingmag
302
51k
jQuery: Nuts, Bolts and Bling
dougneiner
65
7.9k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.7k
Done Done
chrislema
185
16k
The Power of CSS Pseudo Elements
geoffreycrofte
80
6k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
127
54k
Transcript
実用 toio PowerPointコントローラーを作ってみる
自己紹介 矢部 和宏 (やべ かずひろ) 組み込み系でコンピューターをガチャガチャやっている人 二児の父
うどんが好き
本日のおはなし キューブでパワーポイントコントローラーを作った キューブを パワーポイント 操作リモコンにしてみました
toioのキューブといえば 白くて四角い超小型ロボット! マットを使った絶対位置検出! ビジュアルプログラミングもできるよ! APIが公開されているよ!
node.js ライブラリ(https://github.com/toio/toio.js/)が 超便利だよ!
なのですが。。
今回は そういった 楽しい要素は 使いません
Rust × toio
これでいきます
構成 つかうもの toio コアキューブ 1個 Windows10 PC
1台 Rustコンパイラ stable版
やること キューブでパワーポイントを操作 基本操作 スライド送り スライド戻し
スライドに戻る おまけ機能 時間が余ったら考える
やること キューブでパワーポイントを操作 基本操作 スライド送り ← キューブをひっくりかえした状態でボタン押し
スライド戻し ← キューブを横にした状態でボタン押し スライド先頭に戻る← ボタン長押し おまけ機能 時間が余ったら考える
どうやって ボタン押しでスライドを操作するの? キューブからのNotifyを受けたら 対応する Windows のキーイベントを出すだけ 入力イベント発行モジュール (enigo)
があったので 使わせてもらいました
ところで Rust で Bluetooth 通信できるの? 頑張ればできる Windows 側のAPIを呼び出せるモジュール
(winrt-rust) が あったので使わせてもらいました 使えない機能があり、回避実装が大変でした 作者に質問したら「ごめんまだ作ってない(超意訳)」との返事
デモ
デモ すでにお察しの方もおられるかと思いますが
デモ すでにお察しの方もおられるかと思いますが この発表スライドの操作は
デモ すでにお察しの方もおられるかと思いますが この発表スライドの操作は 出来上がったパワーポイントコントローラで 行われています
デモ
まとめ Rustでもキューブ制御できるよ! いろんな言語でキューブ動かしてみよう! 今回のソースコードはGitHubに公開します https://github.com/kaz399/rs_toio_cube
ご清聴 ありがとうございました