GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - Overdrivr/Telemetry: Data visualization and communication with embedded devices

BranchesTags
Open more actions menu

Latest commit

 

History

274 Commits
274 Commits

Folders and files

NameName
Last commit message
Last commit date
docs
docs
 
 
gradle/wrapper
gradle/wrapper
 
 
src/telemetry
src/telemetry
 
 
test
test
 
 
tools/testvectorsgenerator/c
tools/testvectorsgenerator/c
 
 
.gitattributes
.gitattributes
 
 
.gitignore
.gitignore
 
 
BUILD.md
BUILD.md
 
 
CONTRIBUTING.md
CONTRIBUTING.md
 
 
LICENSE.md
LICENSE.md
 
 
README.md
README.md
 
 
appveyor.yml
appveyor.yml
 
 
build.gradle
build.gradle
 
 
gradlew
gradlew
 
 
gradlew.bat
gradlew.bat
 
 
pubsub_overview.png
pubsub_overview.png
 
 
telemetry_version.h
telemetry_version.h
 
 

Repository files navigation

Join the chat at  https://gitter.im/Overdrivr/pytelemetry Stories in Ready Build status Documentation

Current status Paused development for now, will restart once I find better ways of managing and distributing general-purpose embedded libraries. However, library is functional good stability & test coverage.

Overview

Telemetry enables easy communication and data visualization between a computer and any embedded platform, like ARM Mbed or Arduino.

Specifically, Telemetry is a communication protocol, implemented in C language.

Overview

Data is exchanged on named channels, called topics (ex : foo, bar and qux on the figure above).

Sending data is called publishing.

Telemetry TM;
int32_t i = 123;

TM.pub_i32("foo", i);

For receiving data, Telemetry lets you attach variables and functions to topics. When fresh data is received under a topic, attached variables will be updated and attached functions will be called.

Telemetry TM;
float thr;

TM.attach_f32_to("throttle", &thr);

for(;;) {
  TM.update();
}

Wrappers

Telemetry is written to be portable and general-purpose, and the core code is not tied to any hardware.

Wrappers for specific platforms are written to provide a plug-and-play manner to use Telemetry:

  • Arduino wrapper
  • Mbed wrapper (Available also on Mbed repository )
  • Yotta (package manager) - in process

Data visualization

As soon as a device publishes data, it is possible to leverage the power of the Pytelemetry Command Line Interface PyPI version.

This terminal application lets you interact with the device, using simple commands.

Opening a live plot is as simple as

:> plot someTopic

Plot example

Central documentation

  • Overview of the library
  • Protocol description
  • A non-exhaustive list of all the awesome features

All the information can be found from the Wiki Home.

About

Data visualization and communication with embedded devices

Topics

ccommunicationcppdata-visualizationmbedtelemetry

Resources

Readme
MIT license

Contributing

Contributing
Activity

Stars

138 stars

Watchers

15 watching

Forks

28 forks
Report repository

Releases

Packages

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.