Skip to content

Halytskyi/PJON-gRPC

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

67 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PJON-gRPC

PJON-gRPC is a client-server application for linux-based machines for communication with remote devices like Arduino, ATtiny, ATmega, ESP8266, etc.

Components

PJON™ (Padded Jittering Operative Network) is an Arduino compatible, multi-master, multi-media communications bus system created and mantained by Giovanni Blu Mitolo [email protected] https://github.com/gioblu/PJON

gRPC is a modern open source high performance RPC framework that can run in any environment https://github.com/grpc/grpc

Server features

  • Receive requests from application located on RPi/PC (via gRPC, for example pjon_grpc_client.py) and send back responses from devices (like Arduino) connected with RPi through PJON ThroughSerial strategy.
  • Receive and forward messages to application located on RPi/PC from devices through PJON ThroughSerial strategy (via gRPC, for example pjon_grpc_clientserver.py)
  • Communication between RPi/PC and devices (like Arduino) through any PJON strategies via router

For maximum stability and performance recommended to use separated modules for transmit-receive and receive only operations with separated physical busses. With this configuration wasn't detected any issues while sending/receiving messages each 0.2 seconds. See examples two routers

My projects using PJON and PJON-gRPC: SmartThings

Tested (compatible) with

PJON version: 13.0
Device: Raspberry Pi 3
OS: Raspbian buster

Video for example described under two routers

https://youtu.be/R4MZhWncfPs