Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up for free
MicroPython × BLE × テプラ 〜リバースエンジニアリングを添えて〜 /micropython-ble-tepra
Takumi Sueda
October 16, 2021
Technology
1
490
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
USB PD で迎える AC アダプター大統一時代
puhitaku
2
1.9k
電子辞書のアイデンティティを消す方法
puhitaku
3
3k
リセットとフリーズで解析する電子辞書リバエン記 / reverse-engineer-e-dictionaries-with-reset-and-freeze
puhitaku
2
5.1k
詳解・電子辞書で Linux がブートするまで / boot-linux-on-sharp-brain-explained
puhitaku
5
3.1k
TEPRA Lite ではじめる BLE リバースエンジニアリング / tepra-lite-ble-reverse-engineering
puhitaku
9
5.1k
勢いあるハックと勢いあるコミュニティの試行
puhitaku
0
670
ハックの学び方、の学び方
puhitaku
21
9k
プレゼンの作り方
puhitaku
3
750
フォーク、ナイフ、ものづくり
puhitaku
3
1.6k
Other Decks in Technology
See All in Technology
OpenShiftでスポットVMを使おう.pdf
jpishikawa
1
260
ChatGPT for Hacking
anugrahsr
0
4.1k
Airdrop for Open Source Projects
epicsdao
0
560
Astroで始める爆速個人サイト開発
takanorip
12
8.5k
20230121_BuriKaigi
oyakata2438
0
180
OCI技術資料 : ロード・バランサー 詳細 / Load Balancer 200
ocise
2
7.2k
PCI DSS に準拠したシステム開発
yutadayo
0
300
PHPのimmutable arrayとは
hnw
1
150
SPA・SSGでSSRのようなOGP対応!
simo123
2
150
SRE Lounge 2023/SRE Lounge 2023
lmi
0
140
API連携に伴う規制と対応 / Regulations and responses to API linkage
moneyforward
0
150
Cloudflare Workersで動くOG画像生成器
aiji42
1
480
Featured
See All Featured
Why You Should Never Use an ORM
jnunemaker
PRO
49
7.9k
What’s in a name? Adding method to the madness
productmarketing
12
1.9k
Pencils Down: Stop Designing & Start Developing
hursman
114
10k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
10
1.3k
jQuery: Nuts, Bolts and Bling
dougneiner
57
6.6k
Designing for Performance
lara
600
65k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
109
16k
A designer walks into a library…
pauljervisheath
199
16k
Building an army of robots
kneath
301
40k
Bash Introduction
62gerente
601
210k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
224
50k
Put a Button on it: Removing Barriers to Going Fast.
kastner
56
2.5k
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