Not M5Stack product but 'family' ESP32-S3-Box MSFS2020 GPSout GPRMC and GPGGA data to 'esp-box'
-
The Espressif ESP32-S3-Box is a product that looks like some M5Stack products. I own quite a bunch of M5Stack products. When the Espressif ESP32-S3-Box (V 2.5) came out, I bought it. It was my intention to port my ongoing MSFS2020 GPSout project to the 'esp-box' (the (nick)name that Espressif uses for this device). It was until last weekend when through @Neradoc and @hathach, the maintainer of Adafruit tinyuf2 bootloader repo, on my request, had added the 'esp-box' to the list of boards compatible for the tinyuf2 bootloader. From that moment I was able to build a tinyuf2 bootloader firmware for the 'esp-box'. When that was done, I was able to copy the latest version of CircuitPython (V8.0.0-beta.2) to the device. Finally I was able to port my project to the 'esp-box'.
That is why I created this post here so you can read about the existance of my project. See my repo on Github.
Below some REPL output:
soft reboot Auto-reload is on. Simply save files over USB to run them or enter REPL to disable. code.py output: ]0;🐍Wi-Fi: off | code.py | 8.0.0-beta.2\ loop(): my_machine= "ESP32-S3-Box-2.5 with ESP32S3" MSFS2020 GPS GPRMC data reception decoder script by @PaulskPt. Number of loops in this run: 99 ........................ Start of loop 1 ck_uart(): nr of bytes= 120 ck_uart(): rcvd data: bytearray(b'$GPRMC,215807.00,A,5837.7935,N,13810.7771,W,164.0,319.8,161022,18.2,E*72\r\n$GPGGA,215807.00,5837.7935,N,13810.7771,W,1,05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00') ck_uart(): nr of bytes= 33 ck_uart(): rcvd data: bytearray(b',0.0,4266.7,M,0.0,M,0.0,0000*51\r\n810.7771,W,164.0,319.8,161022,18.2,E*72\r\n$GPGGA,215807.00,5837.7935,N,13810.7771,W,1,05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00') ck_uart(): nr of bytes= 153 ck_uart(): rcvd data: bytearray(b'$GPRMC,215811.00,A,5837.9408,N,13811.0171,W,164.0,319.6,161022,18.2,E*76\r\n$GPGGA,215811.00,5837.9408,N,13811.0171,W,1,05,0.0,4266.7,M,0.0,M,0.0,0000*5B\r\n\x00\x00\x00\x00\x00\x00\x00') ck_uart(): * at -11, $GPRMC at 0, $GPGGA at 74, n4 =114 loop(): characters rcvd: 153 loop(): split_types() result = True is_ac_stopped(): value of gs = 164.0, len(gs) = 5 is_ac_stopped(): value of v_gs = 164 loop(): handling msg nr: 01 lcd_pr_msgs(): Duration rx -> lcd: 241 mSecs loop(): gc.mem_free()= 8148128 Waiting for serial com line to become available... End of loop 1 ........................
Note: because the 'terminalio.font' doesn't have a glyph for the 'degrees' character I used the caret '^' instead,
until I have added a font that can display the degrees character.For some other microcontroller i have ports of the same project on Github.