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
790
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
120
知育おもちゃの遊び方 Lv. 999
puhitaku
4
2.3k
ルーターでプレゼンする
puhitaku
1
4.6k
AST as Black Magic
puhitaku
0
110
次世代の足下を舗装するコミュニティ
puhitaku
5
1.7k
電子辞書で学ぶ Linux のサスペンド
puhitaku
0
560
USB PD で迎える AC アダプター大統一時代
puhitaku
2
2.5k
電子辞書のアイデンティティを消す方法
puhitaku
3
3.8k
リセットとフリーズで解析する電子辞書リバエン記 / reverse-engineer-e-dictionaries-with-reset-and-freeze
puhitaku
2
6.4k
Other Decks in Technology
See All in Technology
品質マネジメントで抑えておきたい2つのリスクを見分けて未来に備えよう #yapcjapan
makky_tyuyan
0
130
塩野義製薬様のAWS統合管理戦略:Organizations設計と運用の具体例
tkikuchi
0
220
テストコードの品質を客観的な数値で担保しよう〜Mutation Testのすすめ〜
ysknsid25
12
3.7k
SageMaker学習のツボ / The Key Points of Learning SageMaker
cmhiranofumio
0
220
【完全版】Dify - LINE Bot連携 考え方と実用テクニック
uezo
2
620
JAWS PANKRATION 2024 配信システムの紹介
yoshimi0227
0
110
Unlearn Modularity
lemiorhan
6
200
Castor - Le Task Runner PHP qui simplifie votre Workflow
lyrixx
1
320
Webセキュリティのあるきかた
akiym
32
11k
ガバメントクラウド開発と変化と成長する組織 / Organizational change and growth in developing a government cloud
kazeburo
4
1.1k
パートナー企業のテクニカルサポートエンジニアとして気になる、より良い AWS サポートの利活用について
kazzpapa3
0
110
CData Virtuality を活かせるキーシナリオと製品デモ
cdataj
0
350
Featured
See All Featured
Designing for humans not robots
tammielis
249
25k
It's Worth the Effort
3n
183
27k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
159
15k
Statistics for Hackers
jakevdp
796
220k
The World Runs on Bad Software
bkeepers
PRO
65
11k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
26
2k
Adopting Sorbet at Scale
ufuk
73
9k
VelocityConf: Rendering Performance Case Studies
addyosmani
325
23k
Fantastic passwords and where to find them - at NoRuKo
philnash
50
2.8k
Build The Right Thing And Hit Your Dates
maggiecrowley
32
2.3k
No one is an island. Learnings from fostering a developers community.
thoeni
19
2.9k
Happy Clients
brianwarren
97
6.7k
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