-
Notifications
You must be signed in to change notification settings - Fork 246
Home
Ima Waltz edited this page Apr 11, 2022
·
306 revisions
PJON is a tool created to simplify network engineering and communication between devices. Choose the medium you prefer, build your own network of devices and make it work with few lines of code. There are 13 strategies available to communicate data with PJON on various media:
| Strategy | Physical layer | Protocol |
|---|---|---|
| SoftwareBitBang | Single Wire | PJDL |
| OverSampling | Radio | PJDLR |
| AnalogSampling | Light | PJDLS |
| ThroughSerial | Serial port | TSDL |
| ThroughLoRa | Radio | LoRa |
| EthernetTCP | Ethernet/WiFi | TCP |
| LocalUDP | Ethernet/WiFi | UDP |
| GlobalUDP | Ethernet/WiFi | UDP |
| DualUDP | Ethernet/WiFi | UDP |
| MQTTTranslate | Ethernet/WiFi | MQTT |
| ESPNOW | WiFi | ESPNOW |
| LocalFile | System memory | None |
| Any | Virtual inheritance, any of the above | Any |
| Device | AS | OS | SB | TS | ET | LU | GU | DU | TL | EN | LF |
|---|---|---|---|---|---|---|---|---|---|---|---|
| Arduino Duemilanove | βοΈ | βοΈ | βοΈ | βοΈ | βοΈ | βοΈ | βοΈ | βοΈ | βοΈ | β | β |
| Arduino Nano | βοΈ | βοΈ | βοΈ | βοΈ | βοΈ | βοΈ | βοΈ | βοΈ | βοΈ | β | β |
| Arduino Uno | βοΈ | βοΈ | βοΈ | βοΈ | βοΈ | βοΈ | βοΈ | βοΈ | βοΈ | β | β |
| Arduino Leonardo | β | βοΈ | βοΈ | βοΈ | βοΈ | βοΈ | βοΈ | βοΈ | βοΈ | β | β |
| Arduino Micro | β | βοΈ | βοΈ | βοΈ | βοΈ | βοΈ | βοΈ | βοΈ | βοΈ | β | β |
| Arduino Mega | βοΈ | βοΈ | βοΈ | βοΈ | βοΈ | βοΈ | βοΈ | βοΈ | βοΈ | β | β |
| Arduino Zero | β | β | βοΈ | βοΈ | β | β | β | β | β | β | β |
| Arduino Due | β | β | β | βοΈ | β | β | β | β | β | β | β |
| ATMega1284P | β | β | βοΈ | βοΈ | β | β | β | β | β | β | β |
| ATtiny84/84A | β | β | βοΈ | βοΈ | β | β | β | β | β | β | β |
| ATtiny85 | β | β | βοΈ | βοΈ | β | β | β | β | β | β | β |
| ESP8266 | β | β | βοΈ | βοΈ | β | β | βοΈ | βοΈ | β | βοΈ | β |
| ESP32 | β | β | βοΈ | βοΈ | β | βοΈ | βοΈ | βοΈ | β | βοΈ | β |
| STM32F103 | β | β | βοΈ | βοΈ | β | β | β | β | βοΈ | β | β |
| Nucleo L053R8 | β | β | β | βοΈ | β | β | β | β | β | β | β |
| Nucleo F401RE | β | β | β | βοΈ | β | β | β | β | β | β | β |
| Teensy 3.1 | β | β | βοΈ | βοΈ | β | β | β | β | β | β | β |
| Raspberry Pi | β | β | β | βοΈ | βοΈ | βοΈ | βοΈ | βοΈ | β | β | βοΈ |
| Zephyr | β | β | β | οΈβοΈ | β | β | βοΈ | β | β | β | β |
| Windows X86 | β | β | β | βοΈ | βοΈ | βοΈ | βοΈ | βοΈ | β | β | βοΈ |
| Linux | β | β | β | βοΈ | βοΈ | βοΈ | βοΈ | βοΈ | β | β | βοΈ |
| Mac | β | β | β | βοΈ | β | βοΈ | βοΈ | β | β | β | β |
| Android | β | β | β | β | β | βοΈ | β | β | β | β | β |
βοΈ compatible - β not compatible
For a simple test you can use a couple of Arduino boards, connect together their ground and pin 12.
Arduino UNO Arduino UNO
_________ wire _________
| || |_||___ | |
|| || | || ||
|| || | || ||
|| || |____|| ||
|_________| |_|_|__||_|
Flash on both arduinos the programs present in the BlinkTest directory. You should see the receiver device blinking every second.
- Update PJON 12.x to 13.0
- Addressing
- Configuration
- Data reception
- Data transmission
- Error handling
- IO pins setup
- Routing
- ATtiny interfacing
- ESP8266 interfacing
- Nucleo interfacing
- Raspberry Pi interfacing
- WINX86 interfacing
- Troubleshooting
