Hey all, fairly new Arduino programmer here doing a project that requires the use of two motor controllers. I got two SyRen 10's because they were recommended to me and seemed to fit my specs well. I know I could throw an RC filter on a PWM input from the Arduino and control it with an analog, but ideally I would like to get it up and running with packetized serial. I think I understand the concept pretty well, but I can't get it to work, either with my code or some examples I found on the internet. When I run this code, the LED status light on the SyRen dims as I would expect, but the motor never turns on. I looked at the S1 input using a scope and I can see the packets that Arduino is sending out, and they seem to look ok (to me at least), so I'm a bit at a loss as to what the issue is (I've quadruple checked the jumper setups on the SyRen board). Anyway, here's the relevant section of my code (it's part of a much larger project outputting data to a LabView VI, which is why I need the computer to keep the hardware Serial connection. But I tried running the SyRen off the regular Serial port for debugging and still had no luck, so I don't think that's the issue...)

Not sure if it's the problem or not, but the NewSoftSerial command should be in the setup function I believe.

Interesting... it still seems to work, and some of the examples I saw online had it in the header...

Regardless though, the serial link doesn't seem to work even if I use the regular hardware serial (Serial.xx) interface and forget all about NewSoftSerial... Also, the scope shows that my NewSoftSerial pin (4) is outputting the wave packet I was expecting it to...

Show the code that is doing this. The code you originally posted is not.

For testing, I'm doing this physically. IE - start up the SyRen, then wait several seconds before turning on the Arduino. The code I have there should send the baud character during the setup portion of the Arduino boot process, I think?

I'd start by putting some Serial.print()s at the bottom of the writeTorque() func to ensure that your values are reasonable. You have to start eliminating possibilities.

Quote

then wait several seconds before turning on the Arduino.

This could produce garbage on the serial line that the SyRen interprets as the baud rate byte. Do you literally mean "turning on" or just resetting? If you are turning on then I'd try just holding the rest button while the SyRen powers up.______Rob