Skip to content

mainenlab/pymata-aio

 
 

Repository files navigation

logo

pymata_aio is a high performance, non-blocking, Python asyncio client for the Firmata Protocol that supports the complete StandardFirmata protocol.

Join the chat at https://gitter.im/MrYsLab/pymata-aio

Major features

  • Python 3.5+ compatible for Linux and macOS.
    • Implements PEP 492
    • Applications developed with version 1.x of pymata_aio are backward compatible without modification.
  • Python 3.7+ compatible for Windows.
  • Implemented using the high efficiency Python asyncio library.
  • Choose From 3 Included APIs
    • pymata_core - a pure asyncio method call API.
    • pymata3 - a pymata_aio plugin implementing a method call API that acts as a proxy for pymata_core. It shields the user from the details of the asyncio library.
    • pymata_iot - a pymata_aio plugin API that implements Websocket server, and uses JSON messaging for application communication.
  • Implements 100% of the StandardFirmata Protocol (StandardFirmata 2.5.3).
  • Auto-detects Arduino COM ports.
  • FirmataPlus (enhanced StandardFirmata sketch) included with distribution. It adds support for:
    • HC-SR04 Ultrasonic Distance Sensors using a single pin.
    • Stepper Motors.
    • Piezo Tone Generation.
    • 2 Pin Rotary Encoder Support.
  • FirmataPlusRB (enhanced StandardFirmata sketch to control a SparkFun Redbot) is included with the distribution. It adds support for:
    • Piezo Tone Generation.
    • Wheel encoders.
    • RedBot Accelerometer.
    • Check out rbDashBoard for a web interface to the RedBot.
    • Check out rb4s, a Scratch Program to control the RedBot.
  • Ability to automatically capture and time-stamp user specified analog and digital transient input events on a per-pin basis.
  • All 3 APIs support callback as well as a polled interface.

Detailed package information can be found on the pymata_aio wiki.

Change log can be found here.

This project was developed with Pycharm logo

About

This is the second generation PyMata client.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 100.0%