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 × テプラ 〜リバースエンジニアリングを添えて〜 /micropython-ble-tepra
Search
Takumi Sueda
October 16, 2021
Technology
2
700
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
ルーターでプレゼンする
puhitaku
0
800
AST as Black Magic
puhitaku
0
69
次世代の足下を舗装するコミュニティ
puhitaku
5
1.5k
電子辞書で学ぶ Linux のサスペンド
puhitaku
0
430
USB PD で迎える AC アダプター大統一時代
puhitaku
2
2.4k
電子辞書のアイデンティティを消す方法
puhitaku
3
3.6k
リセットとフリーズで解析する電子辞書リバエン記 / reverse-engineer-e-dictionaries-with-reset-and-freeze
puhitaku
2
6k
詳解・電子辞書で Linux がブートするまで / boot-linux-on-sharp-brain-explained
puhitaku
5
3.6k
TEPRA Lite ではじめる BLE リバースエンジニアリング / tepra-lite-ble-reverse-engineering
puhitaku
9
5.8k
Other Decks in Technology
See All in Technology
Building Dashboards as a Hobby
egmc
0
280
IaCジェネレーターとBedrockで詳細設計書を生成してみた
tsukasa_ishimaru
3
430
Google Cloud Next '24でブログを10本書いた方法と勉強会を沸かせた方法
yasumuusan
0
310
GraphQL 成熟度モデルの紹介と、プロダクトに当てはめた事例 / GraphQL maturity model
mh4gf
7
1.4k
ServiceNow Knowledge 24の歩き方 EYストラテジー・アンド・コンサルティング
manarobot
0
200
R3のコードから見る実践LINQ実装最適化・コンカレントプログラミング実例
neuecc
2
570
AWS学習者向けにAzureの解説スライドを作成した話
handy
2
100
家族アルバム みてねにおけるGrafana活用術 / Grafana Meetup Japan Vol.1 LT
isaoshimizu
1
830
今年のRubyKaigiはProfiler Year🤘
osyoyu
0
190
On Your Data を超えていく!
hirotomotaguchi
2
700
障害対応をちょっとずつよくしていくための 演習の作りかた
heleeen
0
310
EMとして2023年度に頑張ったこと / What we did well in FY2023 as a EM
pauli
1
170
Featured
See All Featured
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
187
16k
Code Review Best Practice
trishagee
55
15k
How GitHub Uses GitHub to Build GitHub
holman
468
290k
Robots, Beer and Maslow
schacon
PRO
155
7.9k
Optimizing for Happiness
mojombo
370
69k
Navigating Team Friction
lara
178
13k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
322
20k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
357
22k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
30
6k
From Idea to $5000 a Month in 5 Months
shpigford
377
45k
Optimising Largest Contentful Paint
csswizardry
8
2.4k
5 minutes of I Can Smell Your CMS
philhawksworth
199
19k
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