Welcome to UPM Python Documentation!

The UPM repository provides software drivers for a wide variety of commonly used sensors and actuators. These software drivers interact with the underlying hardware platform (or microcontroller), as well as with the attached sensors, through calls to [MRAA](https://github.com/intel-iot-devkit/mraa) APIs.

Programmers can access the interfaces for each sensor by including the sensor’s corresponding header file and instantiating the associated sensor class. In the typical use case, a constructor initializes the sensor based on parameters that identify the sensor, the I/O protocol used and the pin location of the sensor.

We endorse additions that implement the generic C and C++ interfaces provided with the libraries. Multiple sensor and actuator types have been defined, for instance:

  • Light controller
  • Light sensor
  • Temperature sensor
  • Humidity sensor
  • Pressure sensor
  • Gas sensor
  • Analog to digital converter

The developer community is welcome to submit feedback on existing categories or suggest new ones.

Building UPM

For building UPM, please follow this link.

Examples

Multi-sensor samples for the starter and specialized kits can be found in the iot-devkit-samples repository.

Individual sensor usage examples for Python are available here.

IDE Compatibility

While there is no official IDE provided with our Python libraries, we do recommend the web-based IDE Wyliodrin. It can be used with multiple programming languages, including Python. More information can be found on the Intel Developer Zone IDE page.

../docs/icons/wyliodrin.png

Making your own UPM Module

This link has more information on making a new UPM module.

There is also an example available for max31855 sensor.

Naming Conventions and Rules for New UPM Contributions

Before you begin development, please take a look at our naming conventions.

Also, please read the guidelines for contributions to UPM.

Don’t forget to check the documentation section.

Note

  • Make sure you add yourself as an author on every new code file submitted.
  • If you are providing a fix with significant changes, feel free to add yourself as a contributor.
  • Signing-off your commits is mandatory.

List of Available Sensors Drivers

Click on the library prefix below to expand the full list of sensors:

Other API Documentation

../docs/icons/c++.png ../docs/icons/java.png ../docs/icons/python.png ../docs/icons/node.png

Version Changelog

For our Version Changelog, please see here.

Known Limitations

For the List of Known Limitations, please see here.

Indices and tables