Skip to main content

A tool for building protocol services

Project description

polypacket_logo

Poly Packet is a set of tools aimed at generating protocols from embedded projects. Protocols are described in an YAML document which can be easily shared with all components of a system.

A python script is used to parse the YAML file and generate C/C++ code as well as documentation. The code generation tool can create the back end service, application layer, and even an entire linux utility app

Installation

The tools can be installed using pip:

pip3 install polypacket

To view an example protocol file:

poly-make -e

Live Protocol Interpreter

Once you have a descriptor file, you can run a live interface of the protocol using poly-packet

Open two terminals and connect them over udp to test it out:

terminal 1:

poly-packet -i sample_protocol.yml -c connect udp:8020

terminal 2:

poly-packet -i sample_protocol.yml -c connect udp:8010:8020

The terminal interface uses autocompletion, so hit tab to show available packet/ field types. to send a packet just type the packet name followed by comma seperated field names and values.

example:

Data sensorA: 45, sensorB: 78, sensorName: mySensor

Visit Wiki for more information

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

polypacket-1.0.60.tar.gz (35.8 kB view details)

Uploaded Source

File details

Details for the file polypacket-1.0.60.tar.gz.

File metadata

  • Download URL: polypacket-1.0.60.tar.gz
  • Upload date:
  • Size: 35.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.6.8

File hashes

Hashes for polypacket-1.0.60.tar.gz
Algorithm Hash digest
SHA256 2c9d3cf4a3fb3ce63948d19914ca5535340350a0024d9f8a9b773a8d15819a08
MD5 fcbb235a69cd5b14cbb858fb2bd8baaa
BLAKE2b-256 e91df666b3bda1452e44ad573f3d13422339939d81f82de27cb2afd6ed641b3d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page