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

USB doesn't properly enumerate #1

Open
davidgs opened this issue Aug 9, 2021 · 13 comments
Open

USB doesn't properly enumerate #1

davidgs opened this issue Aug 9, 2021 · 13 comments

Comments

@davidgs
Copy link

davidgs commented Aug 9, 2021

Plug the MORPEsp32 in to USB and ...

 % ls -l /dev/*usb*
crw-rw-rw-  1 root  wheel    9,   5 Aug  9 17:45 /dev/cu.usbmodem01
crw-rw-rw-  1 root  wheel    9,   4 Aug  9 17:45 /dev/tty.usbmodem01
% 

But those are not ports that esptool can work with.

esptool.py v3.0-dev
Serial port /dev/cu.usbmodem01
Connecting....Traceback (most recent call last):
  File "esptool.py", line 3969, in <module>

  File "esptool.py", line 3962, in _main
  File "esptool.py", line 3552, in main
  File "esptool.py", line 519, in connect
  File "esptool.py", line 499, in _connect_attempt
  File "esptool.py", line 438, in sync
  File "esptool.py", line 402, in command
  File "serial/serialutil.py", line 368, in timeout
  File "serial/serialposix.py", line 326, in _reconfigure_port
serial.serialutil.SerialException: Could not configure port: (6, 'Device not configured')
Failed to execute script esptool
An error occurred while uploading the sketch

Also, not having a board definition available for Arduino makes programming this board rather hard. Any plans to actually support this board properly?

@ccadic
Copy link
Owner

ccadic commented Aug 10, 2021

Hi. It s philippe. Hope I can help you.0
Florian has send me the information. I am out of any linux computer until the end of my vacation (august the 23rd)
The board was mainly tested with windows and mac. We are not experts with linux and HID/USB linux recognition. Which linux distribution ? Which version ? Which kerbel version ? Any usb modification to the kernel ? Which arduino IDE for linux version ? Any update with the ESP32s2 card package ? Which one ? I can then install the same dzv environment when back.

What to you mean by "board definition" ? Can you point me to an example of such document . Maybe I call it something else. As the boarf is recognized with no issue we probably did no dig in this direction

With windows and mac it is sometimes requested to press the reset/boot buttons to switch the mprphesp240 to sketch upload mode (on windows, there is a sound to confirm the switch from one mode to the other. Then we can select the COM port in arduino IDE). Maybe it is necessary to do the same with linux.

I trying to get return from the community from backers who are using the board with linux. And find a way to help.

@ccadic
Copy link
Owner

ccadic commented Aug 10, 2021

We already have some returns.
When it is connected on usb a "sudo dmesg" gives the necessary information..

@ccadic
Copy link
Owner

ccadic commented Aug 10, 2021

To flash : press left button - press/release right button / release left button

@ccadic
Copy link
Owner

ccadic commented Aug 10, 2021

With Kernel 5.13.9

@davidgs
Copy link
Author

davidgs commented Aug 10, 2021 via email

@morpheans
Copy link

Hi,
Take contact with this man :
https://twitter.com/4hackrr?s=21

He works on Mac, and already parameter the MorphEsp 240 with MacOS.

@daviddata1
Copy link

When I put the board into boot mode, it doesn't mount the USB on a Win 10 machine. I get the yellow diamond with the exclaimation point inside it in the Device Manager.

Says ESP32-S2 for the device name

Code 28, the drivers for this device are not installed.

When I try to update them, they're not found.

Any ideas?

@daviddata1
Copy link

When I put the board into boot mode, it doesn't mount the USB on a Win 10 machine. I get the yellow diamond with the exclaimation point inside it in the Device Manager.

Says ESP32-S2 for the device name

Code 28, the drivers for this device are not installed.

When I try to update them, they're not found.

Any ideas?

Got it figured out through much GoogleFu and experimentation.

Here's the overview:

  1. Attach to USB, Put the board into download mode. Hold down left push button, Press and hold right button, release right button after a sec or two, release left button...

  2. Get the zadig driver tool from https://zadig.akeo.ie

Download version 2.5

Run it. Install the drivers (USB ID was: 303a 0002). It'll pause for a few seconds - it's not hung up. Wait. It'll start downloading and installing the drivers.... takes a while (I did this on an HP laptop w/an i7 CPU 4GHz, 16GB RAM, 512GB SSD).

  1. Drivers install. Check "Device Manager" in control panel. You'll no longer see the ESP32-S2 in the "Other Devices" section, it'll show up in the USB Devices section...

I dumped the firmware to a file before fooling with other sketches.

dfu-util -v -U MorphESP240_OriginalDFU.bin

The first time I ran it, it threw an error about being in runtime mode and detaching.

I ran it again, and it worked the 2nd time. Copied 4194304 bytes...

dfu-util is available at: https://dfu-util.sourceforge.net/releases

I used the dfu-util-0.9-win64.zip

More info at:

https://docs.espressif.com/projects/esp-idf/zn_CN/latest/esp32s2/api-guides/dfu.html

[some of it's in chinese, but you should be able to make it out... break out Google Translate if you need to]

Hope this helps save someone some time... For a device that's supposedly out in "Production" this should have already been documented. No, I'm not opposed to hacking or playing with things, but when I buy something I'd like to know if it's "Beta" beforehand in case I just need it to work. Because I needed this for a particular use case and wasn't sure it was going to actually work, I purchased an m5Stack Core2 from a vendor in the UK, it showed up in the US in a few days, and I had it working immediately. As a gentle suggestion, if you want to have another successful crowd campaign, please do a better job of documenting.

Note also that the board is a different revision than what you see in the 3D renderings on the website and Crowdsupply. The battery switch is relocated to the lower-right of the screen, and there's two push buttons on the bottom on either side of the USB connector (left, by the battery connector for RESET), and right (BOOTLOADER)...

@morpheans
Copy link

morpheans commented Aug 13, 2021 via email

@daviddata1
Copy link

daviddata1 commented Aug 14, 2021 via email

@davidgs
Copy link
Author

davidgs commented Aug 14, 2021

Seems to be a moot point now as board number 1 will no longer power on at all, and board number 2 is DOA.

¯_(ツ)_/¯

@morpheans
Copy link

Embarrassing situation ...
Do you think this is due to the material?

@daviddata1
Copy link

I suspect there's something wrong with this board. Also, the LED screen overlay seems to have separated from the backlight - glue went bad or something...

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