toad.social is one of the many independent Mastodon servers you can use to participate in the fediverse.
Mastodon server operated by David Troy, a tech pioneer and investigative journalist addressing threats to democracy. Thoughtful participation and discussion welcome.

Administered by:

Server stats:

214
active users

#esp32s3

1 post1 participant0 posts today
diyelectromusic<p>More multi-SPI display messing around. This time using Waveshare Zero format boards, finding a common way to drive them from a RP2040, ESP32S3 or ESP32C3.</p><p>I hadn't realised SPI on the ESP32S3 was so complex!</p><p>(or that finding some common physical pins across the range required so much software messing about too).</p><p><a href="https://diyelectromusic.com/2025/07/20/arduino-with-multiple-displays-part-2/" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">diyelectromusic.com/2025/07/20</span><span class="invisible">/arduino-with-multiple-displays-part-2/</span></a></p><p><a href="https://mastodon.social/tags/WaveshareZero" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>WaveshareZero</span></a> <a href="https://mastodon.social/tags/RP2040" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>RP2040</span></a> <a href="https://mastodon.social/tags/ESP32C3" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ESP32C3</span></a> <a href="https://mastodon.social/tags/ESP32S3" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ESP32S3</span></a></p>
IT News<p>Volume Controller Rejects Skeumorphism, Embraces the Physical - The volume slider on our virtual desktops is a skeuomorphic callback to the volume... - <a href="https://hackaday.com/2025/07/09/volume-controller-rejects-skeumorphism-embraces-the-physical/" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">hackaday.com/2025/07/09/volume</span><span class="invisible">-controller-rejects-skeumorphism-embraces-the-physical/</span></a> <a href="https://schleuss.online/tags/digitalaudiohacks" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>digitalaudiohacks</span></a> <a href="https://schleuss.online/tags/peripheralshacks" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>peripheralshacks</span></a> <a href="https://schleuss.online/tags/digitalaudio" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>digitalaudio</span></a> <a href="https://schleuss.online/tags/3dprinted" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>3dprinted</span></a> <a href="https://schleuss.online/tags/esp32s3" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>esp32s3</span></a> <a href="https://schleuss.online/tags/fader" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>fader</span></a></p>
Thomas Cherryhomes<p><a href="https://oldbytes.space/tags/FujiNet" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>FujiNet</span></a> <a href="https://oldbytes.space/tags/Intellivision" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Intellivision</span></a> bring-up. Studying the PiRTOII <a href="https://oldbytes.space/tags/rp2040" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>rp2040</span></a> C code, alongside the GI CP-1600 databook, to understand things enough to extend it to add a communication method to the <a href="https://oldbytes.space/tags/ESP32S3" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ESP32S3</span></a>. <a href="https://oldbytes.space/tags/retrocomputing" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>retrocomputing</span></a> <a href="https://oldbytes.space/tags/retrogaming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>retrogaming</span></a></p>
Thomas Cherryhomes<p><a href="https://oldbytes.space/tags/FujiNet" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>FujiNet</span></a> WiFi Internet Peripheral for <a href="https://oldbytes.space/tags/Intellivision" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Intellivision</span></a> bring-up begins. A PiRTO II cartridge is used for prototyping, attaching the <a href="https://oldbytes.space/tags/ESP32S3" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ESP32S3</span></a> via USB. Once working, the two microcontrollers will be placed onto the same PCB. <a href="https://oldbytes.space/tags/retrogaming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>retrogaming</span></a></p>
diyelectromusic<p>An ESP32-S3 DevKitC prototyping board with MIDI, PWM audio output, potentiometers and its own power circuit.</p><p><a href="https://diyelectromusic.com/2025/05/25/esp32-s3-devkit-experimenter-pcb-design/" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">diyelectromusic.com/2025/05/25</span><span class="invisible">/esp32-s3-devkit-experimenter-pcb-design/</span></a></p><p><a href="https://mastodon.social/tags/ESP32S3" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ESP32S3</span></a> <a href="https://mastodon.social/tags/MIDI" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>MIDI</span></a> <a href="https://mastodon.social/tags/SynthDIY" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>SynthDIY</span></a></p>
Simple DIY Electronic Music Projects<p><strong>ESP32 S3 DevKit</strong></p><p>Having played a bit with ESP32-S3 now, in the of the <a href="https://diyelectromusic.com/2025/02/17/waveshare-zero-pimoroni-tiny-and-neopixels/" rel="nofollow noopener" target="_blank">Waveshare Zero</a> format boards, I’d quite like to have a version of the <a href="https://diyelectromusic.com/2024/12/07/esp32-wroom-mozzi-experimenter-pcb-design/" rel="nofollow noopener" target="_blank">ESP32 WROOM Mozzi Experimenter PCB</a> for the latest ESP32-S3 DevKitC board I’ve found.</p><p>This is the introductory post that is my “notes to self” as I get to know the boards.</p><p><em><strong>Warning!</strong> I strongly recommend using old or second hand equipment for your experiments.&nbsp; I am not responsible for any damage to expensive instruments!</em></p><p>If you are new to Microcontrollers, see the&nbsp;<a href="https://diyelectromusic.wordpress.com/getting-started/" rel="nofollow noopener" target="_blank">Getting Started</a> pages.</p><p><strong>ESP32-S3 DevKitC Boards</strong></p><p>There are a couple of ESP32-S3 official DevKits, in addition to the huge range of third party boards from the likes of Waveshare, Adafruit, and so on of course.</p><p>The main references for these boards are:</p><ul><li><a href="https://www.espressif.com/en/products/socs/esp32-s3" rel="nofollow noopener" target="_blank">ESP32-S3 SOC page</a><ul><li>ESP32-S3 datasheet</li><li>ESP32-S3 WROOM-1/1U/2 modules</li></ul></li><li><a href="https://docs.espressif.com/projects/esp-dev-kits/en/latest/esp32s3/esp32-s3-devkitc-1/index.html" rel="nofollow noopener" target="_blank">ESP32-S3 DevKitC-1</a> – based on the WROOM modules</li><li><a href="https://docs.espressif.com/projects/esp-dev-kits/en/latest/esp32s3/esp32-s3-devkitm-1/index.html" rel="nofollow noopener" target="_blank">ESP32-S3 DevKitM-1</a> – based on the Mini modules</li></ul><p>Note: although the C and M DevKits both have 44 pins and very similar functionality, the actual pinouts for the two boards are quite different. On the face of things, it looks like the pinout for the M version seems a bit more logical to me than the C version, but I’ve ended up with C boards, so that is what I’m going with! Much of what follows is applicable to both though.</p><p>It is also worth noting that I was looking at the ESP32-S3 as a possible replacement for the original ESP32 in my <a href="https://diyelectromusic.com/2024/05/07/educational-diy-synth-thing/" rel="nofollow noopener" target="_blank">Educational DIY Synth&nbsp;Thing</a>. But in terms of general features, the ESP32-S3 and ESP32 are actually pretty similar.</p><p>From the <a href="https://docs.espressif.com/projects/esp-idf/en/v5.0/esp32s3/hw-reference/chip-series-comparison.html" rel="nofollow noopener" target="_blank">comparison here</a>, here are some key features listed:</p>ESP32ESP32-S332-bit LX632-bit LX7single or dual coredual core240MHz (one variant at 160MHz)240MHz520KB SRAM512 KB SRAM448 KB ROM384 KB ROM0MB, 2MB, 4MB Internal Flash0MB, 8MB Internal FlashUp to 16MB External FlashUp to 1GB External FlashUp to 8MB External RAMUp to 1GB External RAM<p>Most of the peripherals are pretty similar too.</p><p>So the key difference is the switch from LX6 to LX7. As both support a single-precision floating point unit, and up to 240MHz operation in dual core modes, I’m not sure what the enhancement is at the moment.</p><p>One difference <a href="https://en.wikipedia.org/wiki/ESP32" rel="nofollow noopener" target="_blank">on Wikipedia</a> is that the LX7 has “added instructions to accelerate machine learning applications” and it appears that there is a specific library that makes use of these instructions: <a href="https://www.espressif.com/en/news/ESP-DL" rel="nofollow noopener" target="_blank">ESP-DL</a>. But I’ve not seen if any of this is likely to help me with audio.</p><p>I should also note that the original ESP32 is the only chip in the architectural family (as far as I can see) with an integrated DAC. There is certainly no DAC with the ESP32-S3.</p><p>I was determined to go with the official ESP32-S3 DevKitC board this time. But on my first attempt I managed to end up with a very close clone! I have now have two variants as shown below. The original is on the left and the clone on the right.</p><p>The clones are very similar to the original but seem to have the following differences.</p><p>Physical Differences:</p><ul><li>The clone is shorter and 2.54mm (i.e. a “pin row”) wider.</li><li>Buttons are in a different place.</li><li>USB-C ports in different place compared to the GPIO pins.</li></ul><p>Electrical Differences:</p><ul><li>The USB ports are swapped. The original has UART on the left, USB on the right. The clone is swapped.</li><li>Clone has a solder jumper on the rear for USB-OTG for the USB port. If soldered, this shorts a diode in the VBUS 5V line to allow the USB port to power an external device.</li><li>Original has an SK68xx LED (powered from 3V3), the clone has a WS2812 (powered from 5V), although they should be essentially the same code/protocol wise.</li><li>Original has the LED on GPIO38 (maybe – mine doesn’t). Clone has LED on GPIO48.</li><li>Clone has a solder jumper for the LED which is connected by default.</li><li>Original uses a CP2102N USB serial chip. Clone has a CH343P.</li><li>Original uses a SGM2212 regulator which has a 2.7-20V input range. Clone uses a CJ6107 with range 2.5-6V. Although in both cases the input is essentially 5V from USB VBUS.</li><li>The clone has an IN-OUT solder jumper. If soldered, this shorts a diode on header pin 21 (5V) to allow power to be fed into the board via the 5V pin.</li><li>The clone has a RX and TX LED.</li><li>The clone has the (strapping) pin 3 pulled HIGH to 3V with an additional 0R resistor in place in case that is not required.</li></ul><p>Documentation for the original board: <a href="https://docs.espressif.com/projects/esp-dev-kits/en/latest/esp32s3/esp32-s3-devkitc-1/user_guide.html" rel="nofollow noopener" target="_blank">https://docs.espressif.com/projects/esp-dev-kits/en/latest/esp32s3/esp32-s3-devkitc-1/user_guide.html</a></p><p>Documentation for the clone: <a href="https://github.com/vcc-gnd/YD-ESP32-S3/tree/main/5-public-YD-ESP32-S3-Hardware%20info" rel="nofollow noopener" target="_blank">https://github.com/vcc-gnd/YD-ESP32-S3/tree/main/5-public-YD-ESP32-S3-Hardware%20info</a></p><p>At least the pinouts for the two modules seem the same, apart from the fact that one module is one-pin-header-row wider than the other.</p><p><strong>ESP32-S3 DevKitC-1 GPIO Use</strong></p><p>Strapping pins are used to set the configuration of the ESP32-S3 on power up. For details of the strapping pins and their use, see Section 4 in the ESP32-S3-WROOM-1 guide. The summary, and default settings for the ESP32-S3, is as follows:</p>GPIO0BOOT modeWeak pull-up to 1SPI bootGPIO3JTAG signal sourceFloatingEFUSE_STRAP_JTAG_SEL=0; GPIO3 ignored.<br>EFUSE_STRAP_JTAG_SEL=1; GPIO3=1 USB; GPIO3=0 JTAG pins.GPIO45VDD_SPI voltageWeak pull-down to 0GPIO46ROM message printingWeak pull-down to 0<p>Working through the datasheets, schematics and online guides, as far as I can make out the following GPIO pins all have an expected use on the DevKitC-1 boards, which can limit their use for general projects.</p><strong>GPIO</strong><strong>Use</strong>0, 3, 45, 46ESP32-S3 Strapping pins as described above.15, 16Optional: can be used to connect an external oscillator – not used on these boards.19, 20USB OTG port data connection35, 36, 37Onboard SPI flash memory43, 44UART0 connection to USB serial chip47, 48If a N16R16VA module (16MB Flash, 16MB PSRAM) is used then these pins operate at 1.8V.38 or 48WS2812 compatible RGB LED<p>Taking account of all the above, this leaves the following GPIO pins probably available for use in projects:</p><strong>GPIO Range</strong><strong>#Pins</strong><strong>Notes</strong>1-22GPIO, Touch, ADC4-1613GPIO, Touch, ADC17-182GPIO, Touch, ADC, UART119-202GPIO, USB, ADC211GPIO381GPIO, LED on official board39-424GPIO, JTAG43-442GPIO, UART0471GPIO*481GPIO*, LED on clone board (can be disabled)<p>So this would hopefully give me access to 19 GPIO that could act as analog inputs and a further 7 GPIO in addition to two for RX/TX.</p><p>This assumes that GPIO 47 and 48 not operating with an SPI flash configuration that means they will run at 1.8V. For the modules I have I’m using a ESP32-S3-N16R8 module so this should be fine as this only applies to the N16R16VA variants of the modules.</p><p>In terms of functions, the way the ESP32-S3 supports GPIO multiplexing means that any of these could be configured for I2C or I2S, and they all support PWM outputs.</p><p>For a more detailed discussion of the restrictions, see <a href="https://github.com/atomic14/esp32-s3-pinouts" rel="nofollow noopener" target="_blank">https://github.com/atomic14/esp32-s3-pinouts</a></p><p><strong>EPS32-S3 and Arduino</strong></p><p><strong>Serial Ports</strong></p><p>There are several options for serial ports:</p><ul><li>Native USB (the “USB” USB port)</li><li>USB via UART0 (the “COM” USB port)</li><li>UART0 directly via TX/RX</li><li>UART1 via GPIO</li></ul><p>These map onto the following serial options in Arduino (see cores/esp32/HardwareSerial.h):</p>DeviceArduino DeviceArduino aliasNative USBUSBSerialSerial (if ARDUINO_USB_CDC_ON_BOOT set)USB via UART0Serial0Serial (if ARDUINO_USB_CDC_ON_BOOT not set)UART0Serial0UART1Serial1<p>There is a build option that determines whether the loaded code includes a USB comms device or not.</p><p>If this isn’t set (i.e. “disabled”) then Serial goes to UART0 and the serial monitor has to be connected to the “COM” USB port.</p><p>If this is set (i.e. “enabled”) then Serial goes to USBSerial and the serial monitor can be connected to the “USB” USB port.</p><p>Note: there is some ESP32 start-up debug information that will always go to UART0 on boot regardless of this setting.</p><p></p><p><strong>Analog Input</strong></p><p>One quirk of the ESP32 Arduino environment and the ADC mapping means that the ADCs are mapped as follows:</p><ul><li>ESP32 ADC1 peripheral: channels 0 to 9 = GPIO 1 to GPIO 10 = Arduino A0 to A9</li><li>ESP32 ADC2 peripheral: channels 0 to 9 = GPIO 11 to GPIO 20 = Arduino A10 to A19</li></ul><p>This can be seen in the board definitions file for the Arduino ESP32 core: <a href="https://github.com/espressif/arduino-esp32/blob/master/variants/esp32s3/pins_arduino.h" rel="nofollow noopener" target="_blank">https://github.com/espressif/arduino-esp32/blob/master/variants/esp32s3/pins_arduino.h</a></p><p><strong>Specific GPIO</strong></p><p>We can also see the following from pins_arduino.h:</p><ul><li>TX/RX = GPIO 43, 44 (as might be expected).</li><li>SDA/SCL = GPIO 8, 9</li><li>SPI = GPIO 10, 11, 12, 13</li></ul><p>We can also see a series of Tn pin definitions for the touch pins:</p><ul><li>T1-14 = GPIO 1-14</li></ul><p><strong>RGB and LED_BUILTIN</strong></p><p>Also, whilst perusing the same file, I noticed the following comment:</p><pre>// Some boards have too low voltage on this pin (board design bug)<br>// Use different pin with 3V and connect with 48<br>// and change this setup for the chosen pin (for example 38)<br>#define PIN_RGB_LED 48<br>// BUILTIN_LED can be used in new Arduino API digitalWrite() like in Blink.ino<br>static const uint8_t LED_BUILTIN = SOC_GPIO_PIN_COUNT + PIN_RGB_LED;<br>#define BUILTIN_LED LED_BUILTIN // backward compatibility<br>#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN<br>// RGB_BUILTIN and RGB_BRIGHTNESS can be used in new Arduino API rgbLedWrite()<br>#define RGB_BUILTIN LED_BUILTIN<br>#define RGB_BRIGHTNESS 64</pre><p>This is recognising that pin 48 was used by default for the RGB LED, but because of the possibility of pins 47 and 48 being configured for 1.8V operation for certain SPI flash memory configurations, means that it doesn’t work in some cases. Presumably this is why the official boards now use pin 38 for the RGB LED instead.</p><p>Note, I don’t know why LED_BUILTIN = SOC_GPIO_PIN_COUNT + PIN_RGB_LED, but I’ve seen elsewhere, in cores/esp32/esp32-hal-rgb-led.c:</p><pre>#ifdef RGB_BUILTIN<br> pin = pin == RGB_BUILTIN ? pin - SOC_GPIO_PIN_COUNT : pin;<br>#endif</pre><p>The provided BlinkRGB.ino example works fine with the official board and my clone. Both boards are configured as follows:</p><ul><li>Connect via USB port (not the COM port).</li><li>Board: ESP32S3 Dev Module</li><li>All other settings: Defaults</li></ul><p>And using Serial.print for PIN_RGB_LED confirms that the RGB is on GPIO 48 for both my boards.</p><p><strong>I2C GPIO</strong></p><p>In terms of I2C, it is possible to select which pins to use, if the defaults (8, 9) are not desired. to do this, just pass some pin numbers into the Wire.begin call as follows:</p><pre>Wire.begin(I2C_SDA, I2C_SCL);</pre><p>Note that this is different to how this is done on a RP2040 which has its own setSDA() and setSCL() functions. At least in the unofficial core. I don’t know if this is even possible with the “official” RP2040 Arduino core, but I’m getting off-topic…</p><p><strong>Closing Thoughts</strong></p><p>For some reason, from what I’d read I was expecting an obvious leap in performance moving from an ESP32 to a ESP32S3, but now I’m not so sure it will make much difference.</p><p>I’ll just have to give things a go and see what happens!</p><p>Kevin</p><p><a rel="nofollow noopener" class="hashtag u-tag u-category" href="https://diyelectromusic.com/tag/esp32/" target="_blank">#esp32</a> <a rel="nofollow noopener" class="hashtag u-tag u-category" href="https://diyelectromusic.com/tag/esp32s3/" target="_blank">#ESP32s3</a> <a rel="nofollow noopener" class="hashtag u-tag u-category" href="https://diyelectromusic.com/tag/ifdef/" target="_blank">#ifdef</a> <a rel="nofollow noopener" class="hashtag u-tag u-category" href="https://diyelectromusic.com/tag/pcb/" target="_blank">#pcb</a></p>
Gytis Repečka<p>My first WiFi based OBD-2 car diagnostic tool - <a href="https://www.meatpi.com/products/wican-pro" rel="nofollow noopener" target="_blank">WiCAN PRO</a>. It is based on ESP32-S3 platform and runs <a href="https://github.com/meatpiHQ/wican-fw" rel="nofollow noopener" target="_blank">open source firmware</a>.</p><p>As usual, testing on :obd2: simulator first :blobcatnerd:</p><p><a href="https://social.gyt.is/tags/automotive" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>automotive</span></a> <a href="https://social.gyt.is/tags/diagnostics" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>diagnostics</span></a> <a href="https://social.gyt.is/tags/obd2" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>obd2</span></a> <a href="https://social.gyt.is/tags/esp32" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>esp32</span></a> <a href="https://social.gyt.is/tags/esp32s3" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>esp32s3</span></a></p>
adingbatponder<p>Flashing <a href="https://fosstodon.org/tags/meshtastic" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>meshtastic</span></a> <a href="https://fosstodon.org/tags/firmware" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>firmware</span></a> onto the tiny <a href="https://fosstodon.org/tags/XIAO" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>XIAO</span></a> <a href="https://fosstodon.org/tags/ESP32S3" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ESP32S3</span></a> with <a href="https://fosstodon.org/tags/WioSX1262" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>WioSX1262</span></a> by pressing and holding the tiny button<br><a href="https://www.youtube.com/watch?v=ShZFMHxM6R0" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://www.</span><span class="ellipsis">youtube.com/watch?v=ShZFMHxM6R</span><span class="invisible">0</span></a> <a href="https://fosstodon.org/tags/node" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>node</span></a> <a href="https://fosstodon.org/tags/esp32s3" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>esp32s3</span></a> <br><a href="https://fosstodon.org/tags/bluetooth" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>bluetooth</span></a> <a href="https://fosstodon.org/tags/hat" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>hat</span></a> <a href="https://fosstodon.org/tags/seeedStudio" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>seeedStudio</span></a></p>
katzenjens<p>Der heutige <a href="https://social.tchncs.de/tags/haul" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>haul</span></a> aus dem Briefkasten...<br>Prüfplaketten, gefunden von <span class="h-card" translate="no"><a href="https://infosec.exchange/@masek" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>masek</span></a></span> Und wieder etwas Zeugs von AliExpress. <a href="https://social.tchncs.de/tags/ESP32C3" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ESP32C3</span></a> und <a href="https://social.tchncs.de/tags/ESP32S3" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ESP32S3</span></a> waren im Angebot. Und bei den Micro-SD Kartenslots konnte ich auch nicht nein sagen.</p>
Bill Minarik<p><span class="h-card" translate="no"><a href="https://mastodon.social/@todbot" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>todbot</span></a></span> That did the trick! Thanks! I'd been reading the datasheet and trying to modify the library. Note, in addition to 128x128, the display library also needs modification to flop left to right, so:<br>b"\x36\x01\x08" # Memory Access Control(36h) [Invert (mirror) Row order; changed x48 to x08]</p><p><a href="https://fosstodon.org/tags/CircuitPython" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>CircuitPython</span></a> <a href="https://fosstodon.org/tags/ESP32S3" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ESP32S3</span></a></p>
Arduino Libraries<p>OOCSI (1.5.15) for esp32/esp8266/samd/megaavr/mbed_nano/mbed_rp2040/rp2040/esp32s3 by Jort Band, Mathias Funk, Eden Chiang</p><p>➡️ <a href="https://github.com/iddi/oocsi-esp" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="">github.com/iddi/oocsi-esp</span><span class="invisible"></span></a></p><p>OOCSI client library for the development boards of ESP32 series, ESP8266 series, Arduino MKR Wifi 101, Arduino UNO Wifi, Arduino Nano 33 IoT, Arduino Nano RP2040, and Arduno Uno R4 WiFi</p><p><a href="https://fosstodon.org/tags/Arduino" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Arduino</span></a> <a href="https://fosstodon.org/tags/ArduinoLibs" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ArduinoLibs</span></a> <a href="https://fosstodon.org/tags/esp32" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>esp32</span></a> <a href="https://fosstodon.org/tags/esp8266" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>esp8266</span></a> <a href="https://fosstodon.org/tags/samd" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>samd</span></a> <a href="https://fosstodon.org/tags/megaavr" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>megaavr</span></a> <a href="https://fosstodon.org/tags/mbed_nano" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>mbed_nano</span></a> <a href="https://fosstodon.org/tags/mbed_rp2040" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>mbed_rp2040</span></a> <a href="https://fosstodon.org/tags/rp2040" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>rp2040</span></a> <a href="https://fosstodon.org/tags/esp32s3" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>esp32s3</span></a></p>
IT News<p>Supercon 2023: Teaching Robots How to Learn - Once upon a time, machine learning was an arcane field, the preserve of a precious... - <a href="https://hackaday.com/2024/09/03/supercon-2023-teaching-robots-how-to-learn/" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">hackaday.com/2024/09/03/superc</span><span class="invisible">on-2023-teaching-robots-how-to-learn/</span></a> <a href="https://schleuss.online/tags/reinforcementlearning" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>reinforcementlearning</span></a> <a href="https://schleuss.online/tags/2023hackadaysupercon" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>2023hackadaysupercon</span></a> <a href="https://schleuss.online/tags/machinelearning" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>machinelearning</span></a> <a href="https://schleuss.online/tags/algorithm" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>algorithm</span></a> <a href="https://schleuss.online/tags/arduino" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>arduino</span></a> <a href="https://schleuss.online/tags/esp32s3" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>esp32s3</span></a> <a href="https://schleuss.online/tags/cons" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>cons</span></a></p>
Tod Kurt (todbot)<p>I tried making a “dominant colors in an image” / “image summarizer” for JPEGs in CircuitPython this weekend. It kinda works! Here’s a little demo video: <a href="https://www.youtube.com/watch?v=dSR6IVxeaTg" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://www.</span><span class="ellipsis">youtube.com/watch?v=dSR6IVxeaT</span><span class="invisible">g</span></a> and the code if you want to try it yourself: <a href="https://gist.github.com/todbot/0bf32a6bf8dd21983a32bafc173b3223" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">gist.github.com/todbot/0bf32a6</span><span class="invisible">bf8dd21983a32bafc173b3223</span></a><br><a href="https://mastodon.social/tags/CircuitPython" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>CircuitPython</span></a> <a href="https://mastodon.social/tags/displayio" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>displayio</span></a> <a href="https://mastodon.social/tags/jpeg" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>jpeg</span></a> <a href="https://mastodon.social/tags/esp32s3" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>esp32s3</span></a></p>
Zorro Notorious MEB 😡<p><span class="h-card" translate="no"><a href="https://toot-lab.reclaim.technology/@djsundog" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>djsundog</span></a></span> Hmmm ... I just got 2x <a href="https://ravenation.club/tags/M5Stack" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>M5Stack</span></a> <a href="https://ravenation.club/tags/CardPuter" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>CardPuter</span></a> and now I think I want a <a href="https://ravenation.club/tags/Lilygo" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Lilygo</span></a> <a href="https://ravenation.club/tags/TDeck" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>TDeck</span></a> too!</p><p><a href="https://ravenation.club/tags/ESP32" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ESP32</span></a> <br><a href="https://ravenation.club/tags/ESP32S3" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ESP32S3</span></a></p>
Zorro Notorious MEB 😡<p>I finally got a smart fridge!</p><p><a href="https://ravenation.club/tags/M5Stack" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>M5Stack</span></a> <br><a href="https://ravenation.club/tags/CardPuter" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>CardPuter</span></a><br><a href="https://ravenation.club/tags/ESP32" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ESP32</span></a> <br><a href="https://ravenation.club/tags/ESP32S3" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ESP32S3</span></a></p>
DJ Sundog<p>the readme has not been updated and it is not marked in any way that I can see, but this repo:</p><p><a href="https://github.com/moononournation/Faux86-remake" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">github.com/moononournation/Fau</span><span class="invisible">x86-remake</span></a></p><p>is a fork of Faux86 reworked to run on <a href="https://toot-lab.reclaim.technology/tags/esp32s3" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>esp32s3</span></a> for this repo:</p><p><a href="https://github.com/moononournation/T-Deck/" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">github.com/moononournation/T-D</span><span class="invisible">eck/</span></a></p><p>to turn the <a href="https://toot-lab.reclaim.technology/tags/lilygo" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>lilygo</span></a> t-deck into a handheld PC XT simulation (see the <a href="https://toot-lab.reclaim.technology/tags/Arduino" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Arduino</span></a> sketch in <a href="https://github.com/moononournation/T-Deck/tree/main/esp32-faux86" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">github.com/moononournation/T-D</span><span class="invisible">eck/tree/main/esp32-faux86</span></a></p><p>(bonus project: TinyFake86 running on VGA32: <a href="https://github.com/rpsubc8/ESP32TinyFake86/blob/main/readmeEnglish.md" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">github.com/rpsubc8/ESP32TinyFa</span><span class="invisible">ke86/blob/main/readmeEnglish.md</span></a>)</p><p>do with that information what you will.</p>
LeRoy Miller<p>Woot! Woot! The <a href="https://mastodon.radio/tags/SeeedStudio" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>SeeedStudio</span></a> <a href="https://mastodon.radio/tags/LoRaGrove" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>LoRaGrove</span></a> board works with the <a href="https://mastodon.radio/tags/M5Stack" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>M5Stack</span></a> <a href="https://mastodon.radio/tags/CardComputer" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>CardComputer</span></a> with a small change to the <a href="https://mastodon.radio/tags/RadioHead" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>RadioHead</span></a> <a href="https://mastodon.radio/tags/Arduino" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Arduino</span></a> <a href="https://mastodon.radio/tags/Library" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Library</span></a> it can send and receive using the client / server example sketch. Now I just need to make a sketch that will display the information received on the screen. And hopefully be able to use the keyboard as a type of two way <a href="https://mastodon.radio/tags/LoRa" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>LoRa</span></a> communicator <br>Hopefully I can get it done tonight and test it a little while I'm out tomorrow.<br><a href="https://mastodon.radio/tags/ESP32" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ESP32</span></a> <a href="https://mastodon.radio/tags/ESP32S3" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ESP32S3</span></a></p>
Tod Kurt (todbot)<p>Spooky eyeballs in CircuitPython! Now with moving eyelids thx to <span class="h-card" translate="no"><a href="https://hackaday.social/@TreasureDev" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>TreasureDev</span></a></span> AND just ported to the ESP32-S3 Qualia board driving a 480x480 pixel display! It's so cool. I think I'm not configuring the display quite right but it's bananas being able to drive such a high-res display. <br><a href="https://youtu.be/BChu_KzVALs" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="">youtu.be/BChu_KzVALs</span><span class="invisible"></span></a><br>code: <a href="https://github.com/todbot/circuitpython-tricks/blob/main/larger-tricks/eyeballs/qteye_blink_qualia.py" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">github.com/todbot/circuitpytho</span><span class="invisible">n-tricks/blob/main/larger-tricks/eyeballs/qteye_blink_qualia.py</span></a><br><a href="https://mastodon.social/tags/CircuitPython" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>CircuitPython</span></a> <a href="https://mastodon.social/tags/ESP32S3" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ESP32S3</span></a> <a href="https://mastodon.social/tags/displayio" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>displayio</span></a> <a href="https://mastodon.social/tags/esp32" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>esp32</span></a> <a href="https://mastodon.social/tags/RGB666" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>RGB666</span></a></p>
LeRoy Miller<p>Note to self - DO Not buy any more <a href="https://mastodon.radio/tags/RP2040" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>RP2040</span></a> based <a href="https://mastodon.radio/tags/Microcontrollers" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Microcontrollers</span></a> - I simply don't see the appeal of them. I'll stick with the <a href="https://mastodon.radio/tags/ESP32" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ESP32</span></a> - but probably should extend my note to include <a href="https://mastodon.radio/tags/ESP32S2" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ESP32S2</span></a> devices, they are somewhat picky to work with as well. <br>But I like the <a href="https://mastodon.radio/tags/ESP32C3" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ESP32C3</span></a>, <a href="https://mastodon.radio/tags/ESP32" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ESP32</span></a>, and <a href="https://mastodon.radio/tags/ESP32S3" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ESP32S3</span></a> <br>I know this is probably going to be <a href="https://mastodon.radio/tags/controversial" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>controversial</span></a> <br><a href="https://mastodon.radio/tags/Note2Self" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Note2Self</span></a><br><a href="https://mastodon.radio/tags/Arduino" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Arduino</span></a></p>
Aria Burrell 🇨🇦<p>My little LCARS CO2 sensor display on a LilyGo T-AMOLED. Mostly I have no idea what to do with this ESP32-S3 device, but it's smöl and pretty as hell. <a href="https://xn--xxa.computer/tags/esp32" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>esp32</span></a> <a href="https://xn--xxa.computer/tags/esp32s3" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>esp32s3</span></a> <a href="https://xn--xxa.computer/tags/startrek" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>startrek</span></a></p>