Asked
Resolved Resolved by DJ Sures!

What Causes Dropping USB Connection 0?

What causes a USB connection on connection #0 to drop after 5-10 seconds?   I am connecting a Nano loaded with the UNO firmware. This is a new ARC project with no skills or scripts in it.  The board is plugged into the USB port on the PC and the Nano.  The device manager sees the port as COM3 baud rate is 57600 ARC is also set the same.

User-inserted image

If I connect to 1,2,3,4,5   It stays connected with no issues at all

User-inserted image

Can you.tell me how I can fix the issue with 0 connection note all connection setting are the same but only location #0 drops connection.


Related Hardware Arduino Genuino Uno

ARC Pro

Upgrade to ARC Pro

Subscribe to ARC Pro, and your robot will become a canvas for your imagination, limited only by your creativity.

PRO
Canada
#1  

The issue you're experiencing with the USB connection dropping on connection #0 could be due to several factors. Here are some steps to troubleshoot and potentially resolve the issue:

  1. USB Cable and Port: Ensure that the USB cable you are using is in good condition and properly connected. Try using a different USB cable and a different USB port on your computer to rule out any issues with the cable or port.

  2. Driver and COM Port: Verify that the correct driver for the Arduino Nano is installed on your PC. The device manager should recognize the Arduino Nano without any yellow exclamation marks. Also, ensure that no other applications are trying to use COM3, as this could cause conflicts.

  3. Power Supply: Insufficient power can cause the connection to drop. Make sure that the Arduino Nano is receiving adequate power. If you're using a USB hub, try connecting the Nano directly to the computer or using a powered hub.

  4. Firmware: Double-check that the Nano is correctly flashed with the UNO firmware and that there are no issues with the firmware itself. You might want to re-flash the firmware to ensure it's not corrupted.

  5. ARC Configuration: In ARC, make sure that the baud rate and other settings match the configuration of the Nano. Since you mentioned that connections 1-5 work without issues, replicate those settings for connection #0.

  6. Interference from Other Skills: Although you mentioned that the project has no skills or scripts in it, ensure that there are no background processes or other robot skills that might be interfering with the connection.

  7. Hardware Issue: There could be a hardware issue with the Arduino Nano itself. If possible, test with another Nano to see if the problem persists.

  8. ARC Bug: There might be a bug in ARC that specifically affects connection #0. Check the Synthiam community forums or contact support to see if this is a known issue and if there are any updates or patches available.

  9. Debugging: Use the debug features in ARC to monitor the connection and see if any specific error messages indicate why the connection is dropping.

  10. Computer's Power Management: Sometimes, the computer's USB ports can be turned off by the power management system to save energy. Check your computer's power settings to ensure that it's not turning off the USB port after a period of inactivity.

By systematically going through these steps, you should be able to identify the root cause of the connection drop and apply the appropriate fix. If the issue persists after trying these solutions, consider reaching out to the Synthiam community or support for further assistance.


I am a customer support GPT-powered AI and still learning. If you have doubts about my response, please use the support documentation to verify my answer.
PRO
Synthiam
#3  

It's not an ARC bug. The error is directly in the message in your screenshot. "timeout"

The Nano is browning out and the connection is stopping. Therefore, you received "timeout"

This can be caused by one of two things

  1. not enough power to the nano and it is browning out while trying to move servos or too many sensors. Consider powering it from something other than USB

  2. the usb hub is overloaded with too many devices

#4  

DJ, I am sorry but I have to disagree the usb cable is connected to the PC no hub is being used nothing is connected to the Nano other than the usb cable.  This only happens for connection zero.  If this was the case it should happen for all of them not just 0 connection.

PRO
Synthiam
#5  

Computers have an internal hub, so you have more than one USB port.

But, there's one of two reasons, as I said. It could be either. This can be caused by one of two things...

  1. There is not enough power to the nano, and it is browning out while trying to move servos or too many sensors. Consider powering it from something other than USB

  2. The USB hub is overloaded with too many devices

For you to understand why it's not a "Bug," I will explain further.

The communication uses Serial or WiFi. In your case, it is Serial. Both WiFi and Serial use what is called a stream (Click to learn). A stream is an object wrapped by a library and created by the operating system. A stream may allow reading, writing, or both. A stream generates errors if there's an issue with reading or writing. Those errors are generated within the operating system calls, not the program.

This means the error "timeout" is generated by the operating system that Microsoft Windows creates. The error is because a library within the operating system is timing out. And that timeout is from a device driver. In your case, a USB device driver.

So, the error has not originated in ARC. The error is from an operating system library or device driver, which Synthiam does not create. I'm explaining that "Time Out" is not from ARC. There is no such thing as an error in ARC for "Time Out" because it uses API calls to lower system operations. The word "time out" is an exception error raised by the operating system API or device driver. All ARC is doing is showing you the error.

There could be a few reasons for being EZB Index #0.

  1. If it's a hub saturation issue, that single port is being disabled or affected internally

  2. If it's a power issue, that single port is being affected

  3. Lastly, it could "could" be your program if it's using i2c or uart calls on the ezb that aren't connected to any devices.

I don't have enough information to point you in a specific direction because you haven't mentioned anything about what's connected to the Arduino, how they are powered, how your program works, etc... But if I were to guess, it's power-related. But that's only my guess because it's the most common issue people have.

PRO
Synthiam
#6  

Oh, I should add a timeout can be generated by either reading or writing to the stream. The error message you pasted shows that it timed out READING from the stream.

ARC did not receive the 12 bytes it was expecting. The 12 bytes of data that was requested did not make it from the Arduino to the USB port. The USB port stream, which was instructed to read 12 bytes, did not read the 12 bytes. So, it generated an error.

By the error, expect 12 bytes. I would assume you were attempting to read from a UART or i2c. Because all other reads for IO are 1 or 2 bytes. What script do you think is running that is reading the 12 bytes?

#7  

DJ, I have no clue as it was a blank project first thing I did was try to connect to the Nano and it would not stay connected in position 0 so I don't know what to tell you.  I have tried another knock off Nano and it works without issue on position 0 while the Arduino Nano has issues on position 0.  I can't explain it and I do want to waste anymore of your time.   I am just moving forward.

PRO
Synthiam
#8  

It’s not a waste of my time if you learned something new :)

#9  

DJ, your help is valued and much appreciated!   Yes you have helped me learn a lot about this hobby to the point it inspired me to make the XR-1.