M5Stack
since 2018-04-25
ESP32 + OLED + スピーカー + 拡張性。
https://macsbug.wordpress.com/2017/09/15/m5stack/
私が買ったのは M5Stack Faces
- 9軸センサMPU9250搭載のM5Stack Grayに、キーボード、テンキー、ゲーム機風のインターフェイス・パネルを揃えたポケットコンピュータ
micropython が起動する状態で届いた。ビルドの日付が 2017-12-23 になっている。
Qwerty キーボードをつけると REPL で文字入力できる。
電源を切るには、USB 給電していない状態で、電源ボタンを2回押す。
ポケコンの状態で、マグネットでホワイトボードにくっつく。
<html> <blockquote class="twitter-tweet" data-lang="ja"><p lang="ja" dir="ltr">M5Stack やっぱり買ってしまった <a href="https://t.co/YXdAD8lVvQ">pic.twitter.com/YXdAD8lVvQ</a></p>— にしもつ (@24motz) <a href="https://twitter.com/24motz/status/984330769106522112?ref_src=twsrc%5Etfw">2018年4月12日</a></blockquote> <script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script> </html>
入出力
http://www.m5stack.com/assets/docs/
- MPU9250 SDA = GPIO21
- MPU9250 SCL = GPIO22
MicroPython ファームの更新
オンライン版とオフライン版がある
オンライン版だと Web IDE が使える。
https://github.com/m5stack/M5Cloud/tree/master/firmwares/OFF-LINE
http://mag.switch-science.com/2018/02/28/getting-started-with-m5stack/
https://qiita.com/inachi/items/d23b9e39551836cddb09
Windows コマンドプロンプトで:
> py -2 -m virtualenv venv > venv\Scripts\activate.bat > python -m pip install esptool > esptool version esptool.py v2.3.1 2.3.1
M5Stack を PC に接続して TeraTerm で COM6 から見えることを確認。
元のファーム
https://github.com/m5stack/M5-hardware/blob/master/FACES/m5stack-micropython-tft-repl.bin
> esptool --chip esp32 --port COM6 erase_flash > esptool --chip esp32 --port COM6 write_flash --flash_mode dio -z 0x1000 m5stack-micropython-tft-repl.bin
LoBo MicroPython
OFFLINE ファームをためす
m5stack-20180419-v0.3.9.bin
本体 OLED にはブート方法の説明しか出てこないが TeraTerm で REPL できる
MicroPython ESP32_LoBo_v3.2.11 - 2018-04-16 on M5Stack with ESP32 Type "help()" for more information. >>>
https://github.com/m5stack/M5Cloud
https://github.com/loboris/MicroPython_ESP32_psRAM_LoBo/wiki
https://github.com/loboris/MicroPython_ESP32_psRAM_LoBo
from m5stack import * lcd.font(lcd.FONT_DejaVu24) lcd.print('hello') lcd.clear() lcd.rect(0, 0, 100, 100, lcd.WHITE, lcd.RED) speaker.volume(0.005) speaker.tone(440,50)
speaker.volume(2) とか書かれているけど大きすぎてびっくりする