Show HN: PJON – Padded Jittering Operative Network

  • So, what the heck is PJON? I read the whole page, and don't know.. something to do with communication. Hardware? Software? Library? Somehow JSON related?

  • This PJON thing needs some rework...

    He requires a yearly renewal of a "bus id", otherwise he'll give yours to somebody else.

    I guess he's never heard of UUIDs, or public encryption keys, or MAC addresses or ...

    ... it doesn't matter, it's already DOA.

  • GitHub page has a much better introduction than this beautiful yet uninformative website.

    https://github.com/gioblu/PJON

    PJONâ„¢ (Padded Jittering Operative Network) is an Arduino compatible, multi-master, multi-media communications bus system. It proposes a Standard, it is designed as a framework and implements a totally software-emulated network protocol stack. 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 https://gitter.im/gioblu/PJON Donate

    Features

    * Configurable 2 level addressing (device and bus id) for scalable applications

    * Multi-media support with the data link layer abstraction or Strategy framework

    * Configurable strategies inclusion (for memory optimization)

    * 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

  • Ciao guys, I am sorry I was out for dinner, and I do not own a smartphone, so I lost your comments. Yes, you are all right, the website is beautiful but not informative, I will work on that. I still didnt have the time to dedicate a streak to that and add some info.

    PJON is the layer 2 of the network protocol stack and so its speed is directly related to the obtainable speed of the data link layer used.

    PJDL and PJDLR are the data link we propose, and their maximum speed is:

    Added by Esben Soeltoft - 09/03/2016 Transfer speer: 48.000kBd or 6.00kB/s Absolute communication speed: 6.00kB/s Data throughput: 5.00kB/s

    Obtained on Arduino Zero, the maximum cross-architecture speed: _SWBB_FAST mode: Transfer speed: 25.157kBd or 3.15kB/s Absolute communication speed: 2.55kB/s Data throughput: 2.13kB/s

    LIN has a max speed of 20kbit max operates at 12v, need a UART, max 8 bytes data frames PJON has a max speed of 5kByte/s operates with no additional hardware totally software emulated on the voltage level you prefer, max 65535 bytes packet.

  • Coincidentally, this is not the first embedded device communications protocol I've read about today. The LIN protocol was mentioned in the video corresponding to a Hack A Day article which came up in my feed.

    http://hackaday.com/2017/02/10/ikea-standing-desk-goes-dumb-...

  • How fast is that? What's the latency for initiating communication and the roundtrip after the communication is initiated? Because it always irks me with bluetooth and wi-fi, why does it takes ages to connect? Why not 100 msec?

    Is it Point-To-Point or Broadcast or both? Can you subscribe to a class of messages even if they aren't sent to you explicitly?

    What's with auth and encryption? Something cryptographically sound?

    Sorry for not diving into the docs because that's what I would like to see on that page. And please, no video.