back

by voxadam·8y ago·view on hn ↗
What are your bandwidth and latency requirement? More than once I've pondered 6LoWPAN over RS485 using token passing.
1 comments
My biggest problem is software stack performance--not physical layer performance. Most protocol stacks in the embedded space other than TCP/IP are mind-blowingly bad.

Being able to obliterate USB, CAN, and RS-232 (to a lesser degree--RS-232 is really reliable but the problem is generally in frequency drift if you don't have a crystal anywhere) in all of my designs and replacing it with ethernet will dramatically improve the reliability of my hardware. The only places I don't currently have ethernet in my designs are where I'm limited to a single pair of wires.

As for RS485, it doesn't really offer me anything that I don't already get with CAN.

What do you work on?
Lots of industrial stuff related to various types of testing. Performance matters some, but I'm not hard real-time.

However, everything has to work, reliably, in less than ideal environments--mostly high-voltage spikes caused by differences in ground potentials.

USB is a PITA because while data is differential, connection detection is not. So, spikes cause USB disconnects and drivers never cope with that.

CAN is a PITA because it is limited to 8-bytes per message. Good for transducers and 8 bit microcontrollers--not so good for complex control and 32-bit microcontrollers.

Ethernet hits a really great sweet spot of fully-differential and nice single packet size for a 32-bit microcontroller--program like it's 1989, baby.

I absolutely agree that Ethernet is ideal and the correct solution for modern systems. Have you worked with EtherCAT at all?