# The Basics The first `boot.py` will be executed when the interpreter starts. This file should contain only code associated with configuration. Then `main.py` will run. It is within this `main.py` that you will place your entry point code. ## Connecting to a micropython board using screen on a Mac ``` screen /dev/cu.SLAB_USBtoUART 115200 ``` To detach from a screen session first press `Ctrl-A` then `Ctrl-D`. To resume a detach session use: ``` screen -r ``` To kill a screen session press `Ctrl-A` then `k`. You will be prompted to confirm with `y\n` whether to kill the session or not. ## Memory Usage These two functions can help you determine approximate memory usage. ``` import gc import os def df(): s = os.statvfs('//') return ('{0} MB'.format((s[0]*s[3])/1048576)) def free(full=False): gc.collect() F = gc.mem_free() A = gc.mem_alloc() T = F+A P = '{0:.2f}%'.format(F/T*100) if not full: return P else : return ('Total:{0} Free:{1} ({2})'.format(T,F,P)) ``` # installing micropython on esp32 1. Delete flash ``` esptool.py --port /dev/cu.SLAB_USBtoUART erase_flash ``` For an ESP32-S3 ``` esptool.py --chip esp32-s3 --port /dev/cu.SLAB_USBtoUART erase_flash ``` 2. If you have external spi ram (4MB) you want to use the spiram bin. ``` esptool.py --chip esp32 --port /dev/cu.SLAB_USBtoUART --baud 460800 write_flash -z 0x1000 ./binaries/esp32-idf4-20210202-v1.14.bin ``` For an ESP32-S3 ``` esptool.py --chip esp32-s3 --port /dev/cu.SLAB_USBtoUART --baud 460800 write_flash -z 0x0000 ./binaries/GENERIC_S3_SPIRAM-20220117-v1.18.bin ```