Skip to content

leopollini/Project-ESP

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Remote Micropython Terminal

This project aims towards the creation of a general purpose remotely controlled micropython executor board, specifically created for an esp32c3 with builtin 0.42inch oled display (from Aliexpress)

Features

  • utils.py: contains some utility functions and common variables. Is used by other scripts
  • connect.py: importing this file connects to the specified wifi network using the esp32
  • sh1106_oled.py: importing this file initialized the oled display (modified this code for the 0.42 inch display)
  • Timeout.py: reimplements asyncio's timeout() macro, since it is missing in micropython's asyncio
  • boot.py: if present does nothing, but ensures that no other boot.py is executed
  • main.py: runs connect and starts server
  • WIFI_CODES.json: contains ssid and password of the wifi network.
Sample WIFI_CODES.json
{
	"your_wifi1": ["passcode"],
	"two_wifis_with_same_ssid": ["password_for_1st_wifi", "password_for_2nd_wifi"]
}

Each time the esp tries to connect it has a 15s timeout before trying the next password or the next connection.

Useful infos

My board implements this version of Micropython.

The connection port for the remote (unsecure) shell is 22. NetCat is fine for connecting and interacting with the terminal, althou you cannot use arrows/signals (a nice client terminal will be implementent to automatically connect to the esp).

The ip address of the esp32 is printed both on the serial terminal and on the mini oled display.

Inside utils.py::vars you can set some useful variables, such as AUTOSTART_SERVER or AUTORESTART_SERVER

About

esp32c3 Remote Micropython Terminal, with client script and upload functions

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages