Digital communication framework for IOT. Compatible with Arduino, ESP8266 and Teensy.
C++ C Objective-C
Latest commit 20e95a7 Jan 20, 2017 @gioblu committed on GitHub Merge pull request #114 from fredilarsen/master
Changed min+max to constrain to avoid conflict with ESP header file


PJON v6.2

PJON™ (Padded Jittering Operative Network) is an Arduino compatible, multi-master, multi-media communications bus system. It proposes a Standard and it is designed as a framework for digital communication. It is a valid alternative to i2c, 1-Wire, Serial and other Arduino compatible protocols. Visit the Wiki, Documentation and Troubleshooting wiki pages to know more about the PJON Standard.

Get PJON bus id Video introduction Join the chat at Donate


  • Configurable 2 level addressing (device and bus id) for scalable applications
  • Multi-media support with the data link layer abstraction or Strategy framework
  • Configurable 1 or 2 bytes packet length (max 255 or 65535 bytes)
  • Master-slave or multi-master dynamic addressing
  • Configurable synchronous and/or asynchronous acknowledgement of correct packet sending
  • Collision avoidance to enable multi-master capability
  • Selectable CRC8 or CRC32 table-less cyclic redundancy check
  • Packet manager to handle, track and if necessary retransmit a packet sending in background
  • Optional ordered packet sending
  • Error handling

PJON Protocol layer specification

Padded jittering data link layer specification

Compliant tools

PJON™ is a self-funded, no-profit project created (in 2010) and mantained by Giovanni Blu Mitolo with the support ot the internet community if you want to see the PJON project growing with a faster pace, consider a donation at the following link:

PJON™ and its brand are unregistered trademarks, property of Giovanni Blu Mitolo