狠狠撸

狠狠撸Share a Scribd company logo
What's new in MicroPython
2021-07-28
西本卓也
@nishimotz / @24motz
9月11日
? Python Charity Talks in Japan 2021.09
? https://pyconjp.connpass.com/event/218154/
日本語ドキュメント
? https://micropython-docs-ja.readthedocs.io/ja/latest/
原文
? ドキュメント
? https://docs.micropython.org/en/latest/
? リリース
? https://github.com/micropython/micropython/releases
? 最新は 1.16
pyboard.py
? デバイスでスクリプトを手軽に実行
? デバイスのファイルシステムにアクセス
? REPL対応デバイス(PyBoard 以外にも)対応
? pyboard.py --device /dev/ttyACM0 -c 'print(1+1)'
mpremote
? コマンドラインからデバイスをリモートで制御
? Linux Windows Mac で pip3 install mpremote
? https://pypi.org/project/mpremote/
? 内部で pyboard.py が使われているらしい
? WSL2 がダメだったので winget install python3
(venv39) >mpremote
Connected to MicroPython at COM4
Use Ctrl-] to exit this shell
print("hello")
hello
>>> import micropython; micropython.mem_info()
stack: 492 out of 7936
GC: total: 192064, used: 4656, free: 187408
No. of 1-blocks: 48, 2-blocks: 11, max blk sz: 64, max free sz: 11679
>>> import machine
>>> led = machine.Pin(25, machine.Pin.OUT)
>>> led.value(1)
参考
https://tkrel.com/14899
mpremote
mpremote a1
mpremote connect /dev/ttyUSB0 repl
mpremote ls
mpremote a1 ls
mpremote exec "import micropython; micropython.mem_info()"
mpremote eval 1/2 eval 3/4
mpremote mount .
mpremote mount . exec "import local_script"
mpremote ls
mpremote cat boot.py
mpremote cp :main.py .
mpremote cp main.py :
mpremote cp -r dir/ :
Windowsポート
? 実は以前からあった
? unixポートと同等
? mingw-w64
? Debian/Ubuntu でクロスコンパイル
? Cygwin
? MSYS2
? VisualStudio はコツがいるらしい
MicroPython 1.10 (2019年1月)
? Python文法対応改善
? PEP515 数値リテラルのアンダースコア
? ure.sub
? uhashlib.md5
? ucryptlib
MicroPython 1.11 (2019年5月)
? mpy v4
? javascriptポート (Emscripten)
? lightsleep / deepsleep
MicroPython 1.12 (2019年12月)
? バイトコードサイズ削減
? 演算子 @
? スクリプトをファームウェア化(マニフェスト)
? ADC.read_u16()
? esp32 SDCard / RMT (赤外線)
? 行動規範
MicroPython 1.13 (2020年9月)
? uasyncio
? コルーチンごとにTaskオブジェクト
? BLE
? unixポート + USB BT
? gap_scan()
? PEP526 変数注釈
? PEP572 セイウチ演算子
? esp8266 フラッシュメモリ容量
? littlefsv2 (esp32 / esp8266)
MicroPython 1.14 (2021年2月)
? rp2ポート追加
? インラインアセンブラ対応
? ubluetooth BLEイベントなど
? ドキュメント Google Season of Docs 成果
? I2C / SPI クラス
? SoftI2C / SoftSPI 導入
? REPL raw paste モード
? sys モジュールが usys に変更
MicroPython 1.15 (2021年4月)
? CMake
? rp2
? uos.urandom()
? machine.freq()
? uasyncio 改良
? aioble
? asyncio で ubluetooth を wrap している
? https://github.com/micropython/micropython-lib/tree/master/micropython/bluetooth/aioble
MicroPython 1.16 (2021年6月)
? エラーメッセージなしで MicroPython をコンパイルできる
? REPL改善
? プライベートメソッドがTab補完されなくなった
? import で組み込みモジュール名がTab補完
? 相対インポートの例外
? ImportError になった(以前は ValueError だった)
? esp32
? IDF v4.1 以降で LAN サポート
? WLAN STA 再接続オプション
つづき
? mimxrt
? VFSファイルシステム
? 浮動小数点
? これはなに?
? i.MX RT1060 EVK
rp2 (Raspberry Pi picoなど)
? machine.RTC 対応
? SparkFun などのボードに対応する定義ファイル
考察
? 1.14 あたりからリリースが頻繁に?
? Raspberry Pi Pico 効果?

More Related Content

210728 mpy