So we have had two instances of Spark Maxes killing USB ports on our team now and I was wondering if there were any other cases with this. Today I was plugged into a Spark Max with the included USB-C to USB-A cable and no 12v power to the motor controller. My computer was charging over USB-C if that helps at all. The controller possibly had a gate fault so I was trying to reflash the firmware on it, however, the firmware flash failed about three times before I unplugged the cable and plugged it back in. When I plugged it back in there was no longer any data being sent and the Spark Max would not turn on. I tried plugging in my mouse to the same port and had no response from it.
The second case of this happening was about 9 months ago. Someone had plugged into a Spark Max while charging on USB-C, however this time the motor controller was turned on with 12v power and connected to the CAN Bus, which is what we were trying to test. The second he plugged into the controller, his computer gave an overcurrent protection warning and the Spark Max immediately died. This instance seemed to kill all USB ports on his right side and messed up the ones on the left side which would now kill any device that had its own power source that was plugged in. His computer ended up killing 2 ESCs on his drone from the left side that was plugged into his drone battery, however, they were heavily limited on current and could not have pulled enough to die from their own battery.
We are not sure why this has happened now that this is not a one-off. We have had other computers have USB ports die but no direct evidence that they were caused by Spark Maxes.
If anyone has any ideas or suggestions I would be happy to hear them.
Of note, I’ve seen the gate error while plugged over usb c before but it should go away if you just apply 12v to the sparks. It seems to show when you connect over usb and the robot is powered off.
I am the second case in question, I think that it could possibly be due to the charging passthrough feature of the USB Power Delivery Spec as both laptops were charging over USB at the time. I am wondering if anyone has any ideas regarding this.
I have contacted customer service, however, this has happened on multiple occasions on different spark maxes. Is there any way to defend against this from happening because this is not a cheap problem that keeps happening?
Fortunately these will be available for at least 2 more years /s
Realistically, sounds like Sparks deserve a hardware rev to fix both this and the issue where they die when plugged into a “bad” NEO with the thermistor to phase short. Probably as simple as adding a smaller polyfuse for a former and a railing diode for the latter.
I have never experienced this but thanks for the heads up on the potential. A cost mitigation measure may be using a cheap USB hub to save the ports on your computer.
One bad spark max doing this seems odd but multiple is more problematic. Is it only spark maxes or does the pdh do it to? If the pdh is safe you can check on the maxes through the can on the pdh.
I haven’t tried configuring any spark maxes through the pdh. My personal experience with rev hardware client has been not great though and I have seen it before where flashing a spark max over the can network has corrupted every single Spark Max on the can bus and we had to put each one in recovery mode and re-flash individually anyways. What I had been telling the team to do with Spark Maxes was turn the robot off, and connect individually and configure there. That has provided the best results for configuring the Maxes but I don’t know what to do anymore now that this is a potential risk to be concerned about.
I find it strange that we haven’t heard about this before. I’m curious if it would happen without the laptop being charged over type C at the same time
USB-C power delivery is pretty involved: https://hackaday.com/2023/01/09/all-about-usb-c-power-delivery/. It’s not that hard to imagine something being off here, but most parts that would be used in something like SPARK MAX should handle most of this independent of SPARK MAX. Probably the best approach here is “don’t do that” if this is only happening when USB-C charging is in use.
If there is an issue, it’s possible a F/W update could address it.
When it happened to me the USB port and spark max died, however, the other USB ports on my computer continued to function after. Later when I attempted to configure the flight controller on my drone, however, it killed the flight controller and every single electronic connected to the data lines on that flight controller. Even those with no power rails connected. Do you have any ideas as to why or how that would happen?
If the spark killed the USB port then it would make sense that the port could kill other things. Maybe it smoked the step-down regulator on the port, allowing it to send 12v over USB.
Yes, I configured many flight controllers, including that one on it before with no issues. It was only after that became a problem. The esc’s on my drone literally caught on fire when I plugged it in. And I had a 200ma for 50ms current limit on the battery so it wasn’t even from that.