4 ms·
PJON is a very interesting project and I've used it in the past between a RPi and an Arduino to communicate. Atm I'm developing my own bus protocol since PJON
by zaarn 8y ago
PJON is a very interesting project and I've used it in the past between a RPi and an Arduino to communicate.
Atm I'm developing my own bus protocol since PJON was having some problems with the optocouplers I have (the line I need has almost a millisecond of lag and doesn't allow for a frequency beyond a couple kilohertz as it needs to get to several devices at different logic levels and has some longer lines with higher voltages that limit response times). Surprisingly there isn't a good bus protocol that can deal with symbolrates below 1000 per second, multi master and really bad line conditions and long timeouts.
- gioscarab 8y agoCiao Zaarn, that is cool compliments, which sort of encoding you chose?
- zaarn 8y agoSimple NRZ for both clock and data. Data integrity is provided by parity bits in various fields and CRC32 for the payload. I use token bus for media access control since it's fairly simple to implement and I don't need jam detection in any components. Token passing enables a far more simpler software for simply being a passive client (ie, a sensor doesn't need to be able to control the bus, it only needs to respond while someone else is controlling the bus) and the active masters (which can cleanly pass control of the bus). I don't mean any of this as offense to PJON either, it's an amazing protocol, the problems I have aren't solved by any product on the market. It's also a good engineering challenge.