Robot Framework Library for interfacing GPIO pins on executing robot files on Raspberry Pi's.
For Library documentation you can visit; https://yusufcanb.github.io/robotframework-gpio/
Install RPi.GPIO with command below;
pip install RPi.GPIO
Then install GPIOLibrary with;
pip install robotframework-gpio
You can find example robot files in the /examples
directory.
*** Settings ***
Documentation Test LED is fully functional
Library GPIOLibrary
Suite Setup Begin GPIO Test
*** Variables ***
${LED_PIN} 17
*** Test Cases ***
LED Should On
Set Output Pin ${LED_PIN}
Set Pin High ${LED_PIN}
${pin_status}= Get Pin Status ${LED_PIN}
Should Be Equal As Integers ${pin_status} 1
LED Should Off
Set Output Pin ${LED_PIN}
Set Pin Low ${LED_PIN}
${pin_status}= Get Pin Status ${LED_PIN}
Should Be Equal As Integers ${pin_status} 1
*** Keywords ***
Begin GPIO Test
Set Mode BCM
Set Warnings Off
First install robotframework/PythonRemoteServer to Raspberry Pi;
pip install robotremoteserver
Then, start remote library server with following commands;
from robotremoteserver import RobotRemoteServer
from GPIOLibrary import GPIOLibrary
RobotRemoteServer(GPIOLibrary(), host='0.0.0.0')
Finally, you can execute the robot file below from any machine within the same network of Raspberry Pi.
*** Settings ***
Documentation Example robot file for using GPIOLibrary on a remote Raspberry Pi device
Library Remote http://${ADDRESS}:${PORT}
Library Dialogs
Suite Setup Begin GPIO Test
*** Variables ***
${ADDRESS} raspberrypi.local
${PORT} 8270
${LED_PIN} 17
*** Test Cases ***
LED Should On
Set Output Pin ${LED_PIN}
Set Pin High ${LED_PIN}
Execute Manual Step LED is on?
LED Should Off
Set Output Pin ${LED_PIN}
Set Pin Low ${LED_PIN}
Execute Manual Step LED is off?
*** Keywords ***
Begin GPIO Test
Set Mode BCM
Set Warnings Off