Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Program using USB cable #3

Open
rappbledor opened this issue Mar 18, 2024 · 6 comments
Open

Program using USB cable #3

rappbledor opened this issue Mar 18, 2024 · 6 comments

Comments

@rappbledor
Copy link

Great work; I was able to use your example code without issue but I wanted to share that it's possible to program this board without soldering on the FTDI serial programmer, instead I was able to use the USB-A port.

To put the board into Download mode, I simply bridged the 2 pads near the MicroUSB port, then plugged the board into my PC using a USB A to A cable. It should be possible to program the board using the MicroUSB port in the same way, but I was not able to achieve this and used the A to A cable instead.

HD-WF1-bridge

My board is rev 7.0.1-1 and it comes with an ESP32-S2 with 4MB flash and no PS Ram.

@mrcodetastic
Copy link
Owner

Thank you for this information. I just tested the same and it works (although as I did not have a USB-A to USB-A cable I soldered a micro usb to the underside exposed pins).

I'll update the README with your commentary.

The micro usb does not seem to connect to GPIO's 19 and 20 of the ESP32-S2 at all, so I don't think that can ever be used for programming. I think it's only useful for powering the device.

image

@voidmageprogramer
Copy link

"Hello, can you help me? I managed to put the circuit in download mode and upload some programs, but I've noticed that the serial port only works in download mode. When I try to use serial communication with my PC while the program is running, it doesn't work; it only works in download mode. However, the program doesn't run in download mode."

@mrcodetastic
Copy link
Owner

"Hello, can you help me? I managed to put the circuit in download mode and upload some programs, but I've noticed that the serial port only works in download mode. When I try to use serial communication with my PC while the program is running, it doesn't work; it only works in download mode. However, the program doesn't run in download mode."

When compiling you need to enable USB_CDC and then the serial output should be directed to the USB device. I have updated the platformio.ini in this GitHub repository to fix this.

However, if you use Arduino you need to Enable "USB CDC On Boot".

@raulzanardo
Copy link

raulzanardo commented Jul 21, 2024

Are you guys having really slow flashing speeds?

EDIT. I solved by changing the FLASH chip.

esptool.py v4.5.1
Serial port /dev/cu.usbmodem01
Connecting...
Chip is ESP32-S2 (revision v1.0)
Features: WiFi, No Embedded Flash, No Embedded PSRAM, ADC and temperature sensor calibration in BLK2 of efuse V2
Crystal is 40MHz
MAC: 68:67:25:cd:4e:8c
Uploading stub...
Running stub...
Stub running...
Changing baud rate to 2000000
Changed.
Configuring flash size...
Flash will be erased from 0x00001000 to 0x00004fff...
Flash will be erased from 0x00008000 to 0x00008fff...
Flash will be erased from 0x0000e000 to 0x0000ffff...
Flash will be erased from 0x00010000 to 0x00050fff...
Compressed 14848 bytes to 10310...
Writing at 0x00001000... (16 %)
Writing at 0x00001c5f... (33 %)
Writing at 0x000027a1... (50 %)
Writing at 0x000032d1... (66 %)
Writing at 0x00003c3e... (83 %)
Writing at 0x000049ab... (100 %)
Wrote 14848 bytes (10310 compressed) at 0x00001000 in 1.0 seconds (effective 120.3 kbit/s)...
Hash of data verified.
Compressed 3072 bytes to 146...
Writing at 0x00008000... (100 %)
Wrote 3072 bytes (146 compressed) at 0x00008000 in 0.2 seconds (effective 114.0 kbit/s)...
Hash of data verified.
Compressed 8192 bytes to 47...
Writing at 0x0000e000... (100 %)
Wrote 8192 bytes (47 compressed) at 0x0000e000 in 0.5 seconds (effective 121.5 kbit/s)...
Hash of data verified.
Compressed 265744 bytes to 153332...
Writing at 0x00010000... (1 %)
Writing at 0x000113b8... (2 %)
Writing at 0x00012b85... (4 %)
Writing at 0x00013f10... (5 %)
Writing at 0x000158bd... (6 %)
Writing at 0x00017381... (8 %)
Writing at 0x0001879b... (9 %)
Writing at 0x00019ea7... (10 %)
Writing at 0x0001c1c1... (12 %)
Writing at 0x0001e973... (13 %)
Writing at 0x0001fef7... (14 %)
Writing at 0x00020b73... (16 %)
Writing at 0x000216f1... (17 %)
Writing at 0x000220e1... (18 %)
Writing at 0x00022b69... (20 %)
Writing at 0x00023536... (21 %)
Writing at 0x00024084... (22 %)
Writing at 0x00024b5e... (24 %)
Writing at 0x0002561a... (25 %)
Writing at 0x00026108... (26 %)
Writing at 0x00026ab4... (28 %)
Writing at 0x0002749e... (29 %)
Writing at 0x00027e36... (30 %)
Writing at 0x00028812... (32 %)
Writing at 0x00029216... (33 %)
Writing at 0x00029cad... (34 %)
Writing at 0x0002a80c... (36 %)
Writing at 0x0002b217... (37 %)
Writing at 0x0002bb42... (38 %)
Writing at 0x0002c5fc... (40 %)
Writing at 0x0002cfcd... (41 %)
Writing at 0x0002dab5... (42 %)
Writing at 0x0002e5a3... (44 %)
Writing at 0x0002f01e... (45 %)
Writing at 0x0002fae2... (46 %)
Writing at 0x000304c0... (48 %)
Writing at 0x00030ec9... (49 %)
Writing at 0x00031969... (50 %)
Writing at 0x00032343... (52 %)
Writing at 0x00032c89... (53 %)
Writing at 0x000336c0... (54 %)
Writing at 0x00034130... (56 %)
Writing at 0x00034cde... (57 %)
Writing at 0x00035843... (58 %)
Writing at 0x00036272... (60 %)
Writing at 0x00036dc5... (61 %)
Writing at 0x00037983... (62 %)
Writing at 0x00038eca... (64 %)
Writing at 0x00039971... (65 %)
Writing at 0x0003b362... (66 %)
Writing at 0x0003d453... (68 %)
Writing at 0x0003ddfa... (69 %)
Writing at 0x0003e75b... (70 %)
Writing at 0x0003f5c0... (72 %)
Writing at 0x00040cb3... (73 %)
Writing at 0x00042d33... (74 %)
Writing at 0x00043f9d... (76 %)
Writing at 0x000449fb... (77 %)
Writing at 0x00045465... (78 %)
Writing at 0x00045f59... (80 %)
Writing at 0x000469a4... (81 %)
Writing at 0x000472f7... (82 %)
Writing at 0x00047dc9... (84 %)
Writing at 0x00048869... (85 %)
Writing at 0x0004944d... (86 %)
Writing at 0x0004a044... (88 %)
Writing at 0x0004a9b6... (89 %)
Writing at 0x0004b37c... (90 %)
Writing at 0x0004be57... (92 %)
Writing at 0x0004c94d... (93 %)
Writing at 0x0004d403... (94 %)
Writing at 0x0004e091... (96 %)
Writing at 0x0004eea4... (97 %)
Writing at 0x0004f8b4... (98 %)
Writing at 0x00050326... (100 %)
Wrote 265744 bytes (153332 compressed) at 0x00010000 in 17.1 seconds (effective 124.4 kbit/s)...
Hash of data verified.

Leaving...
Hard resetting via RTS pin...

@voidmageprogramer
Copy link

Hi me again is posible make it work with 4 panels in gruop of (2X2)??

@mrcodetastic
Copy link
Owner

VirtualMatrix class does that? Please look at the DMA library documentation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants