Resolved: JeeNode serial problem

Added by skaterdad about 7 years ago

I’ve got a project that I first prototyped on a genuine Arduino Duemilanove using pins 2,3 as a 115200 software serial connection to another embedded device based on an Atmel AT91SAM9261. The 91SAM9261 RXD pins are directly connected and have an external 1k pullup. I got the connection to work just fine.

Now, transfer over to Jeenode using the serial pins on the PSIX connector. I can’t get it to work: the AT91SAM9261 is non responsive… it’s like there is no connection. The 91SAM device should at least produce an error.

I’ve checked the serial lines with a scope, and I can see the bits toggling cleanly, however the timing ‘appears’ to be a bit different.

Are there any known issues, or anyone seen problems with the JeeNode with respect to…
Timing a 115200 serial connection?
Voltage differences?

Anything special I need to do other than a Serial.begin(115200) just like I did with the Duemilanove? Any other pointers?

Replies (5)

Jeenode serial problem - Added by martynj about 7 years ago

skaterdad, what voltage swing is the 91SAM9261  the device expecting?  The Duemilanove was interacting a 0-5V, the JeeNode uses  0-3.3v logic levels.

RE: Jeenode serial problem - Added by skaterdad about 7 years ago

martynj, Thanks for the response. Yeah, I thought of that. I am seeing a larger swing on the Duemilanove of course, but the 91SAM is a 3.3v part. Technically I was violating the maximum ratings of the SAM part by driving it with 5v but maybe the 1K to 3.3v rail saved the 91SAM’s serial input port. Note: the Jeenode is running from the 3.3v AT91SAM voltage rail; and the BUB II is not attached when operating.

I don’t think I damaged the 91SAM unit (putting the Duemilanove back in makes it work again, I get proper responses to polling). Also, I tried the JeeNode with another identical device that had never had the Duemilanove attached and had identical results.

On the old Fluke ScopeMeter with the 91SAM + JEENODE I see a nice clean swing from right around 3.3v down to zero for the bits. It sits at 3.3v when no transmission is occuring.

RE: Jeenode serial problem - Added by JohnO about 7 years ago

Have you tried reversing TX/RX?

RE: Jeenode serial problem - Added by skaterdad about 7 years ago

Yes; I have tried reversing TX and RX before I brought in the scope. The only other difference is that the Duemilanove was using pins 2,3 instead of 1,2 for serial therefore it was the ‘software serial’ libraries. I have not tried moving to other pins on the Jeenode and using software serial but not sure if this is worthwhile excercise.

RE: Jeenode serial problem - solved (maybe) with SoftwareSerial - Added by skaterdad about 7 years ago

Right, got it working with SoftwareSerial(4,5). Still not sure why it’s not working on the hardware serial port, very odd. Must be some subtle difference with the hardware UART (do the voltages not swing as much? timing at 115200?). But broke through this little issue. I hope that SoftwareSerial is robust enough to handle 115200 and also manage to co-exist with the Rfm12b code. On to the next programming challenge…