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
MicroPython × BLE × テプラ 〜リバースエンジニアリングを添えて〜 /mic...
Search
Takumi Sueda
October 16, 2021
Technology
2
950
MicroPython × BLE × テプラ 〜リバースエンジニアリングを添えて〜 /micropython-ble-tepra
PyCon JP 2021 オンライン
Takumi Sueda
October 16, 2021
Tweet
Share
More Decks by Takumi Sueda
See All by Takumi Sueda
組み込みLinuxの時系列
puhitaku
4
1.7k
電子辞書にステータスバーを実装する
puhitaku
0
280
知育おもちゃの遊び方 Lv. 999
puhitaku
5
3k
ルーターでプレゼンする
puhitaku
1
5.9k
AST as Black Magic
puhitaku
0
150
次世代の足下を舗装するコミュニティ
puhitaku
5
1.8k
電子辞書で学ぶ Linux のサスペンド
puhitaku
0
690
USB PD で迎える AC アダプター大統一時代
puhitaku
2
2.7k
電子辞書のアイデンティティを消す方法
puhitaku
3
4.1k
Other Decks in Technology
See All in Technology
Snowflake Intelligenceで実現できるノーコードAI活用
takumimukaiyama
1
270
成立するElixirの再束縛(再代入)可という選択
kubell_hr
0
470
ObsidianをMCP連携させてみる
ttnyt8701
2
130
上長や社内ステークホルダーに対する解像度を上げて、より良い補完関係を築く方法 / How-to-increase-resolution-and-build-better-complementary-relationships-with-your-bosses-and-internal-stakeholders
madoxten
13
7.9k
実践! AIエージェント導入記
1mono2prod
0
110
脅威をモデリングしてMCPのセキュリティ対策を考えよう
flatt_security
5
1.8k
新卒3年目の後悔〜機械学習モデルジョブの運用を頑張った話〜
kameitomohiro
0
350
自分を理解するAI時代の準備 〜マイプロフィールMCPの実装〜
edo_m18
0
110
DB 醬,嗨!哪泥嘎斯基?
line_developers_tw
PRO
0
270
ユーザーのプロフィールデータを活用した推薦精度向上の取り組み
yudai00
0
430
エンジニア採用から始まる技術広報と組織づくり/202506lt
nishiuma
8
1.7k
讓測試不再 BB! 從 BDD 到 CI/CD, 不靠人力也能 MVP
line_developers_tw
PRO
0
270
Featured
See All Featured
Building Flexible Design Systems
yeseniaperezcruz
328
39k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
Done Done
chrislema
184
16k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.2k
Reflections from 52 weeks, 52 projects
jeffersonlam
351
20k
Building an army of robots
kneath
306
45k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
45
7.4k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Automating Front-end Workflow
addyosmani
1370
200k
Thoughts on Productivity
jonyablonski
69
4.7k
The Language of Interfaces
destraynor
158
25k
Transcript
MicroPython × BLE × PyCon JP 2021 @puhitaku
TEPRA 2
https://twitter.com/ejo 090 /status/ 425 52 334 04 306 96 448
3
https://twitter.com/okayan 08 /status/ 7 972 55 664 46 460 10
89 4
https://twitter.com/okayan 08 /status/ 5 658 60 495 74 418 43
22 5
https://www.kingjim.co.jp/products/tepra/sr 37 0 .html 6
TEPRA Lite LR 30 TEPRA Lite LR 3 0 https://www.kingjim.co.jp/sp/lr
3 0 / 7
TEPRA Lite LR 30 https://www.kingjim.co.jp/sp/lr 3 0 / 8
TEPRA Lite LR 30 9
TEPRA Lite LR 30 https://www.kingjim.co.jp/products/tepra/sr 37 0 .html 10
TEPRA Lite LR 30 11
TEPRA Lite LR 30 12
13
Bluetooth Low Energy (BLE) https://www.kingjim.co.jp/sp/lr 3 0 /feature/index.html 14
Switch Science Bluefruit LE Sni ff er 15
Wireshark 16
BLE 17 💻 ⚡
PC Bluetooth 2 Bluetooth Bluez Linux BT Python BLE 18
😇
PC Bluetooth API Wi-Fi BLE 🥰 BLE (ESP 3
2 ) 19 ESPr® Developer 32 https://www.switch-science.com/catalog/ 3 21 0 /
MicroPython × BLE × 20
MicroPython × BLE × Python json, time, asyncio (uasyncio), zlib
batteries included CPython (REPL) MicroPython machine GPIO MicroPython 21
MicroPython × BLE × BLE bluetooth bluetooth.BLE IRQ API gattc_discover_services
Service discovery prop_write_without_response Characteristic MicroPython BLE 22
MicroPython × BLE × 0x180f Battery Service … 0x2a19 Battery
Level Characteristic 0xfff0 TEPRA Lite Service 0xfff1 TEPRA Lite Char. … Notify (RX) 0xfff2 TEPRA Lite Char. … Write Without Response (TX) ESP 3 2 Service Characteristic 23 Characteristic
MicroPython × BLE × 0xfff2 24 0 5
MicroPython × BLE × 25 f0 5c = 00 03
00 00 00 00 00 00 = 1 00 03 00 00 00 00 00 00 = 2
MicroPython × BLE × f0 5c 26
MicroPython × BLE × 1 27
MicroPython × BLE × 28
PC Wi-Fi ESP 3 2 29 💻 ⚡
MicroPython × BLE × 30 0 5 REST API zlib
/prints POST
MicroPython × BLE × 31 0 5 CLI Pillow QR
REST API https://github.com/hugokernel/micropython- nanoweb asyncio Flask API Web API nanoweb
32
MicroPython × BLE × https://github.com/puhitaku/tepra-lite-esp32 33 GitHub
MicroPython BLE MicroPython 34
None