Myxa B0Z not connecting to Windows thru USB

I have 2 Myxa B0Z units that I am powering with 22 VDC. I originally connected to them thru the serial debug port with a Teensy, but realized I had forgotten to perform the motor ID step. I disconnected the serial port and attempted to interface with them using Kucher on Windows 11.

When I plug them in, the status LED first shows solid blue then goes to blinking green. So they’re in standby.
I then plug in the USB cable, but it does not show up in Kucher. I don’t see it in the device manager either. It’s as if the USB cable isn’t connecting at all. This problem is identical with both Myxas.

For a sanity check I tried the exact same setup with another older Myxa B2 and it shows up immediately without issue. So Windows, Kucher, and the USB cable all seem to be fine.

Thanks for the help Pavel.

It sounds like you’re running Telega v1, which does not support USB by design. The USB port is already removed in newer hardware revisions.

You should instead use CAN as described here: Yakut CLI tool - Telega v1.0 Reference Manual

Ah. I didn’t realize the Myxas were shipping with a different firmware version now.

We are currently controlling the myxa using the serial debug port. Changing that is in the backlog, but for now we’d like to continue doing so. Does V1 support that?

Is Yakut CLI the easiest way to initialize the ESC/motor?

If you need the old serial protocol, you will need to downgrade the firmware to v0.x. That’s easy to do, and it is also described in the tutorial I linked.

Good to know. When we order more can we specify that they come with V0 firmware?

Yes, there is actually a drop-down on the product page that allows you to specify that. If you have any other special requests, you can always leave a note with the order at checkout as well.

Bummer I totally missed the firmware dropdown.

I’m having trouble installing Yakut to downgrade the firmware. What can I do to troubleshoot the yakut installation?

Finally got it going. Yakut had installed in a strange location. I didn’t realize until I attempted to pip uninstall it.

I’m trying to downgrade to com.zubax.telega-1-0.6.cd758ab7.compound.bin

I’m using y --verbose file-server --plug-and-play allocation_table.db . --update-software

It stops here. How can I force the software update?

> 2025-04-17 13:52:20 0028812 INF yakut.cmd.file_server: Node 125 info: uavcan.node.GetInfo.Response.1.0(protocol_version=uavcan.node.Version.1.0(major=1, minor=0), hardware_version=uavcan.node.Version.1.0(major=1, minor=2), software_version=uavcan.node.Version.1.0(major=1, minor=0), software_vcs_revision_id=2187630895419027378, unique_id=[70, 0,49, 0, 2,80,49,71,72,50,48,32, 0, 0, 0, 0], name='com.zubax.telega', software_image_crc=[7652891267415001969], certificate_of_authenticity='\x15\xf7\xa4)\x97H\x9bs\xdbA\xd3+\xa72\xc3\xc1\xa6+nb\xfb\xe2 \xf3\xa3\x9b\xaa"\xa5\x01\xdbYl:\x81[f\x91q\xbc2\xc3\xc7\r\xf5\xa8\x1d\xf9K\xf5@\x87\xea\t\xdb\xcf\xca\x9fl_\xe3\xb0\xcc\xd9\xa7\x90\xe1\xba\xc9\x04gU\xd3\xb1|\xb9\xa0Y\x88\xaf\x16!\xe2J\x07\xea!\xd2\xc7\xc7\xd5o\xe1r<E\x01\xf3\xc4\x01`\r\xce5\xa3>L\x11\xcd\x1an\xaf\x0e\xc6\x8f\xb4T\xc2=\xa6\xd9\x13\xe8\x9f\x10\xcf*\x153\xbc\x01g\x86\xc4e:\x8d\xf4\xd0/m\xc6\xc0smc&\xbe\x9dS\x15\r\x18\xb9\x82zb\x87\x97\xc9\x0fN\x81\x87\xb7\xff\x04\'\xd7K\xda \x8b\xd0~\xcc\xd1\xd2\x1a\xa5>^\x7f\xafU\xdc;\x8b\xdf\x16\xb7Y\xdcu\xdb\x1b[\xbe\x90\xc8^\xaa\xd5L\x1c\xe7\xf2:\xd2\x18+\'\xef%\x9ehv\x96\xef\x93\xa11')
> 2025-04-17 13:52:20 0028812 INF yakut.cmd.file_server: Checking if node 125 requires a software update...
> 2025-04-17 13:52:20 0028812 WAR yakut.cmd.file_server: Node 125 does not require a software update.
  1. Add the node ID after the --update-software option, like --software-update=125
  2. Use the .application.bin image, not the compound one

Same issue.

2025-04-17 14:29:49 0006232 INF yakut.cmd.file_server: Node 125 info: uavcan.node.GetInfo.Response.1.0(protocol_version=uavcan.node.Version.1.0(major=1, minor=0), hardware_version=uavcan.node.Version.1.0(major=1, minor=2), software_version=uavcan.node.Version.1.0(major=1, minor=0), software_vcs_revision_id=2187630895419027378, unique_id=[70, 0,49, 0, 2,80,49,71,72,50,48,32, 0, 0, 0, 0], name='com.zubax.telega', software_image_crc=[7652891267415001969], certificate_of_authenticity='\x15\xf7\xa4)\x97H\x9bs\xdbA\xd3+\xa72\xc3\xc1\xa6+nb\xfb\xe2 \xf3\xa3\x9b\xaa"\xa5\x01\xdbYl:\x81[f\x91q\xbc2\xc3\xc7\r\xf5\xa8\x1d\xf9K\xf5@\x87\xea\t\xdb\xcf\xca\x9fl_\xe3\xb0\xcc\xd9\xa7\x90\xe1\xba\xc9\x04gU\xd3\xb1|\xb9\xa0Y\x88\xaf\x16!\xe2J\x07\xea!\xd2\xc7\xc7\xd5o\xe1r<E\x01\xf3\xc4\x01\r\xce5\xa3>L\x11\xcd\x1an\xaf\x0e\xc6\x8f\xb4T\xc2=\xa6\xd9\x13\xe8\x9f\x10\xcf*\x153\xbc\x01g\x86\xc4e:\x8d\xf4\xd0/m\xc6\xc0smc&\xbe\x9dS\x15\r\x18\xb9\x82zb\x87\x97\xc9\x0fN\x81\x87\xb7\xff\x04'\xd7K\xda \x8b\xd0~\xcc\xd1\xd2\x1a\xa5>^\x7f\xafU\xdc;\x8b\xdf\x16\xb7Y\xdcu\xdb\x1b[\xbe\x90\xc8^\xaa\xd5L\x1c\xe7\xf2:\xd2\x18+'\xef%\x9ehv\x96\xef\x93\xa11’)
2025-04-17 14:29:49 0006232 INF yakut.cmd.file_server: Checking if node 125 requires a software update…
2025-04-17 14:29:49 0006232 INF yakut.cmd.file_server: com.zubax.telega-1.2-1.0.1e5c06b5751eefb2.6a34880f9af5cb71.app: Checking if com.zubax.telega-1-0.6.00000000cd758ab7.app is equivalent…
2025-04-17 14:29:49 0006232 INF yakut.cmd.file_server: com.zubax.telega-1.2-1.0.1e5c06b5751eefb2.6a34880f9af5cb71.app: No, the software version does not match.
2025-04-17 14:29:49 0006232 INF yakut.cmd.file_server: com.zubax.telega-1.2-1.0.1e5c06b5751eefb2.6a34880f9af5cb71.app: Checking if this app should be updated to com.zubax.telega-1-0.6.00000000cd758ab7.app…
2025-04-17 14:29:49 0006232 INF yakut.cmd.file_server: com.zubax.telega-1.2-1.0.1e5c06b5751eefb2.6a34880f9af5cb71.app: The applications appear to be compatible – an update would not break the node. Looking further…
2025-04-17 14:29:49 0006232 INF yakut.cmd.file_server: com.zubax.telega-1.2-1.0.1e5c06b5751eefb2.6a34880f9af5cb71.app: CRC is identical or not defined, checking the version information…
2025-04-17 14:29:49 0006232 INF yakut.cmd.file_server: com.zubax.telega-1.2-1.0.1e5c06b5751eefb2.6a34880f9af5cb71.app: No, the other application is older.
2025-04-17 14:29:49 0006232 WAR yakut.cmd.file_server: Node 125 does not require a software update.`

You seem to have invoked Yakut incorrectly. Alternatively, you can just change the version number in the file name you’re trying to upload to anything greater than 1.0.

I just used:

yakut --verbose file-server --plug-and-play allocation_table.db . --update-software=125

I wonder what I could have done wrong.

Well, changing the name of the file got the software update to actually run. However now the myxa just blinks red and I cannot communicate with it via the babel cf1.

I changed the name to com.zubax.telega-1-1.1.cd758ab7.application.bin.

video of blinking

I take it back! I tried y mon --plug-and-play allocation_table.db and it seemed to connect. So I tried the USB cable with Kucher and the device showed up. I’ll try to downgrade the other myxa then see if I can get them to run a motor ID in Kucher.

Thanks again for the help Pavel.