I’m setting the baud rate of my TReX using the configurator 1.0. When I try to set the TReX to 38400 bps it ends up set to 19200 bps. When I try to set it to 28800 bps it ends up set to 14400 bps. The rest of the rate presets in the drop-down menu work fine.
I would like to set my TReX to 38400 bps so I can daisy-chain it with a uSSC, so I guess it’s time for me to read the configuration protocols.
Hmm, snooping on the serial line, the bytes generated by the configurator for 38400 bps look correct:
Is it possible that this is a problem with the TReX firmware, or what might I be doing wrong?
P.S. For now the servo controller seems happy with 57600 BPS, but I’m a little wary of leaving it out of spec like this for important demos or such.
I haven’t heard of a problem with this before. I’ll look into it and see if I can figure out what’s going on.
Yup, it’s a firmware issue. I’ll try to get a fix released tomorrow.
I’m surprised the bug survived this long in the wild. I guess those just aren’t popular baud rates? Until I wanted to add the uSSC to the same bus I was quite happily using 115200 bps.
The fix to the firmware was simple, but fitting it in wasn’t (that MCU is packed!). I’ll release it as soon as I can test the TReX to make sure the changes didn’t break anything else.
Thanks! I see you’re pulling a late night too.
There’s no particular rush for me, that project is active but on the back burner for right now I probably won’t get back to it for at least a week. It seems to work fine at the current baud rates anyway, I just want the added protection of staying explicitly in-spec!
Ok, I have a firmware update available:
This firmware fixes the bug with the 38.4 and 28.8 kbps baud rates, and it adds a configuration parameter that lets you optionally delay the TReX’s serial responses by 1ms (so that slower microcontrollers like the Basic Stamp don’t miss the first byte of the response). I haven’t rigorously tested all of the original features of the TReX to make sure the changes didn’t introduce some obscure new bug, so for the moment I consider this a beta release. When you have a chance to try it out, please let me know how it goes, especially if you notice anything strange.
I have also updated the TReX Configurator:
It fixes a potential firmware-update bug (the old configurator could transmit firmware update data more quickly than the TReX’s MCU could handle when using certain USB-to-serial adapters), and it adds support for the new v1.2 configuration parameter. If you have an old version of the TReX Configurator installed, you should manually uninstall it before installing this new version.
I haven’t tested it super-extensively, but every function we’re interested in using seems to be working fine in this version at any baud-rate.
P.S. Here’s what we’re doing with the TReX, and here are some neat videos about it.
Thanks for the update, Adam.
That’s an awesome project!