Running Linux with kernel 6.3 on Open Source Hardware board with ESP32-S3!

i
3 Votes


Few days ago I spotted on Twitter that there is possible to run Linux on ESP32-S3.

It was good timing as our new EUR 12.00 ESP32-S3-DevKit-Lipo board just hit the mass production, so I got one board and try to replicate the results.

  • ESP32-S3-WROOM1 with 8MB RAM and 8MB Flash
  • Reset and Boot buttons
  • USB-C port with USB-OTG for JTAG debugging and programming
  • USB-C port with CH340X for serial UART for programming and debugging
  • LiPo charger and battery connector
  • pUEXT connector for connecting UEXT modules
  • GPIOs available on dual row connector 0.1″ step

I used clean freshly installed Ubuntu 22.04LTS on small box and try to reproduce the script here.

I had to run it dozen of times and it always ended with this or that missing, then it seems to complete, but didn’t program anything to ESP32-S3.

Later I try this with the same result!

I asked on Twitter for help and Rudi (@eMbeddedHome) quickly built binary file just for flashing on ESP32-S3-DevKit-LiPo.

This time everything went smoothly and the board boot normally.

So I will have to keep digging what I do wrong.

1
$ free -m

reports 3MB free for user apps out of total 7MB

The access to the GPIO is possible via devmem direct write to ESP32-S3 registers:

1
2
3
4
5
6
7
8
devmem 0x60004020 32 1 
sleep 0.5
devmem 0x60004020 32 0
sleep 0.5
devmem 0x60004020 32 1
sleep 0.5
devmem 0x60004020 32 0
sleep 0.5

Also it seems micropython has “unix” version which could be run on this device!

https://github.com/micropython/micropython/tree/master/ports/unix

2 Comments (+add yours?)

  1. Jodaille
    Jun 29, 2023 @ 15:41:13

    Reply

Leave a Reply

%d bloggers like this: