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.
Simple 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.
NRZ is easier to do on most devices since you simply put a high on the bus to send a one and a low on the bus to send zero, esp. if you use something like an Attiny. Also means I can basically plug-and-play it into the i2c connections I have setup.
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.