Menu
JAQForum Ver 19.10.27

Forum Index : Microcontroller and PC projects : MMBasic Anywhere ESP32-S3 and ESP32 (CYD) Port

Posted: 12:52pm
16 Jun 2026
Copy link to clipboard
jvanderberg
Regular Member

MMBasic Anywhere ESP32-S3 and ESP32 (CYD) Port

A short demo: https://www.youtube.com/watch?v=zf4n1SS0AKc

I’ve spent the last month porting MMBasic to the ESP32-S3 and ESP32 classic. Both target the ESP-IDF. Because the IDF brings along its own framework and an RTOS, without PSRAM things get a bit tight. Most ESP32-S3s have PSRAM though, and it works well.

I’ve tested on the Freenove 2.8” LCD Capacitive touch (this is like a fancy CYD) and the Adafruit ESP32-S3 Metro. I can recommend the Freenove over just about any CYD, it’s about the same price, has much better sound, PSRAM, and better touch. The Adafruit Metro is a good general purpose dev board, but you’ll have to BYO display and sound.

Both ports support VGA out, though on the ESP32 classic bit depth is pretty limited because of memory constraints.

You can download these in the latest releases:
https://github.com/jvanderberg/PicoMiteAllVersions/releases/tag/latest

MMBasic-Anywhere-esp32-cyd-merged.bin
MMBasic-Anywhere-esp32-s3-octal-merged.bin
MMBasic-Anywhere-esp32-s3-quad-merged.bin

The octal/quad bifurcation is unfortunate. If you don’t get PSRAM working using the ‘octal’, try the ‘quad’.  Sadly this can’t be a runtime option, so I have to publish two images.
 
Posted: 03:03pm
16 Jun 2026
Copy link to clipboard
PhenixRising
Guru

Darn it...ANOTHER distraction    

I just happen to have the 7" CYD (ESP32-8048S070)
 
Posted: 05:03pm
16 Jun 2026
Copy link to clipboard
PhenixRising
Guru

Tried both S3 versions which loaded and verified and then connected via terminal but:

  Quote  invalid header: 0xffffffff


Do you have a particular loading procedure?
 
Posted: 06:11pm
16 Jun 2026
Copy link to clipboard
jvanderberg
Regular Member

  PhenixRising said  Tried both S3 versions which loaded and verified and then connected via terminal but:

  Quote  invalid header: 0xffffffff


Do you have a particular loading procedure?


Need a bit more detail. What were you trying to do? The readmes in the port directories for each have detailed flashing instructions.
 
Posted: 07:00pm
16 Jun 2026
Copy link to clipboard
PhenixRising
Guru

Been looking all afternoon for readmes....Really shouldn't be this hard. WTF!
 
Posted: 07:10pm
16 Jun 2026
Copy link to clipboard
jvanderberg
Regular Member

  PhenixRising said  Been looking all afternoon for readmes....Really shouldn't be this hard. WTF!


https://github.com/jvanderberg/PicoMiteAllVersions/tree/main/ports/esp32_cyd

https://github.com/jvanderberg/PicoMiteAllVersions/tree/main/ports/esp32_s3
 
Posted: 07:13pm
16 Jun 2026
Copy link to clipboard
JohnS
Guru

  PhenixRising said  Been looking all afternoon for readmes....Really shouldn't be this hard. WTF!

I expect they're in the ports directories

I don't know which you want but for example there's the esp32_s3

edit: both posting, great minds LOL

John
Edited 2026-06-17 05:16 by JohnS
 
Posted: 08:24pm
16 Jun 2026
Copy link to clipboard
PeteCotton
Guru


Wow! Very cool  
 
Posted: 07:52am
22 Jun 2026
Copy link to clipboard
Hawk
Senior Member


Wow, this is really cool.

I have loaded the EPS32 CYD build onto my FabGL board and have it outputing to a VGA screen.

OPTION VGA 22, 21, 19, 18, 5, 4, 23, 15


But I can only operate in Mode 3 because it doesn't have enough memory.

I need to know how to disable the WIFI.

I have tried;

OPTION WIFI

mm_options: loaded options from raw mmslots sector
Error : Syntax

I also need to know how to map the pins for the PS/2 keyboard.

I have tried;

OPTION KEYBOARD PINS 33, 32

mm_options: loaded options from raw mmslots sector
Error : Option not supported on this port

I've also tried configuring the SPI bus to connect an SD card but I get the following error;

OPTION SYSTEM SPI 14, 13, 2 and OPTION SYSTEM SPI 14, 12, 2

Both commands give the following result.

mm_options: loaded options from raw mmslots sector
Error : Invalid pin

Are you able to help me with this?  I don't need WIFI, but it would be great to have Mode 1 and Mode 2

Thanks,
Mike
Edited 2026-06-22 18:14 by Hawk
 
Posted: 08:12am
22 Jun 2026
Copy link to clipboard
dddns
Guru

Try OPTION WIFI "",""
 
Posted: 08:19am
22 Jun 2026
Copy link to clipboard
Hawk
Senior Member


Thanks for the suggestion.

option wifi "",""

Output in serial terminal:

mm_options: saved options to raw mmslots sector
phy_init: failed to load RF calibration data (0x1102), falling back to full calibration
 
Posted: 12:02pm
22 Jun 2026
Copy link to clipboard
jvanderberg
Regular Member

The option wifi “”,””

Should turn off WiFi. CYDs are very memory constrained. I have not tested with a fabgl board.  i haven’t tested ps/2 keyboard at all for these builds and my experience is that if I haven’t tested it it’s likely broken. Do you have a recommend fabgl board I could test with? It would be nice to create a profile for it.
 
Posted: 12:58pm
22 Jun 2026
Copy link to clipboard
Hawk
Senior Member


These are the cheapest ones around.

LilyGo FabGL Board

If you're just after the pin assignments, you can check here.

https://github.com/fdivitto/FabGL/blob/master/fabgl%20GPIOs%20assignment.txt
 
Posted: 01:55pm
22 Jun 2026
Copy link to clipboard
jvanderberg
Regular Member

Btw. Does your fabgl board have psram? I make the assumption these board don’t but it looks like some do.
 
Posted: 01:53am
23 Jun 2026
Copy link to clipboard
jvanderberg
Regular Member

I've ordered a FabGL (or two), seems these are popular enough that a dedicated configuration is called for, it will also give me a test for the PS/2 drivers, and a different VGA configuration.
 
Posted: 03:08pm
23 Jun 2026
Copy link to clipboard
Hawk
Senior Member


  jvanderberg said  Btw. Does your fabgl board have psram? I make the assumption these board don’t but it looks like some do.


From what I can see online, it has 4 or 8 MB PSRAM...I think.
Edited 2026-06-24 01:10 by Hawk
 
Posted: 07:11pm
23 Jun 2026
Copy link to clipboard
al18
Senior Member

The LilyGo FABGL board has 4 MB QSPI Flash according to https://lilygo.cc/products/fabgl-vga32

On the FABGL GitHub page, there’s an 8088 IBM PC emulator and you can run Windows 3.0 on it.
 


To reply to this topic, you need to log in.

The Back Shed's forum code is written, and hosted, in Australia.
© JAQ Software 2026