Roadrunner technical documentation Buy

Manage the GPIO lines using the Microchip Peripheral I/O Python Package

MPIO is a package that provides easy access to various hardware peripherals found on Microchip AT91/SAMA5 processors. The API is clean, consistent, flexible, documented, and well tested to make navigating and exercising even the most complex hardware peripherals a trivial task.

This article explains how to install it on Raspbian distribution on RoadRunner

Installing MPIO

sudo apt update
sudo apt install python-pip
pip install mpio

Examples

Set hi PA25 line for 1 sec

import mpio
import time

gpio = mpio.GPIO(25, mpio.GPIO.OUT)
gpio.set(True)
time.sleep(1)   
gpio.set(False)

Read PA25 line state

import mpio

gpio = mpio.GPIO(25, mpio.GPIO.IN)
print gpio.get()

Pin name to Kernel GPIO ID conversion table

// 0  ~ 31  PA0 -> PA31
// 32 ~ 63  PB0 -> PB31
// 33 ~ 95  PC0 -> PC31
// 96 ~ 127 PD0 -> PD31

to convert the MCU pin name to Kernen GPIO id use this function:

def pin2id(pinname):

    """
    Return the Kernel ID of any Pin using the MCU name
    or the board name
    """

    offset=None
    if pinname[0:2]=="PA":
        offset=0
    if pinname[0:2]=="PB":
        offset=32
    if pinname[0:2]=="PC":
        offset=64
    if pinname[0:2]=="PD":
        offset=96

    if offset==None:
        return None
    else:   
        return offset+int(pinname[2:4])

example of use (add pin2id function in the following code):

import mpio
import time

gpio = mpio.GPIO(pin2id("PA25"), mpio.GPIO.OUT)
gpio.set(True)
time.sleep(1)   
gpio.set(False)

Prepare RoadRunner for Suspend To Ram

import mpio

mpio.DevMem.write_reg(0xfc040018,0x300)

then to enter in Suspend To Ram for 5s:

sudo rtcwake -m mem -s 5

Links

Related products

RoadRunner D2

Features Index Buy

Low-power Linux System On Module
  • CPU Microchip SAMA5D27
  • Cortex A5 @ 500 MHz
  • Low power consumption:
    Suspend to RAM mode 10mW
    Full speed: 396mW
  • Debian, Buildroot and Yocto Linux
  • Fully open source drivers
H10

Features Index Buy

Single Board Computer based on RoadRunner Linux SOM (Included)
  • Low power consumption
  • Two USB Host 2.0 ports (one configurable as USB client on the USB-C connector)
  • One 10/100 Mbit/s Lan port
  • 2 Acme Sensor ports
  • Huge set of GPIOS, SPI, I2C and serial lines

Features Buy

Evaluation board for RoadRunner SOM
  • All the circuitries you need to test the RoadRunner SOM
  • USB host, USB device, Ethernet port, MicroSD socket
  • Test points for power consumption measurements
  • All the Roadrunner signals exposed on 2.54mm pitch pins
  • On-board supercap for RTC and backup memory circuit

Home page Roadrunner technical documentation Buy