Versions Compared


  • This line was added.
  • This line was removed.
  • Formatting was changed.
Table of Contents


The GPIO Pull Up (Low Energy) driver is used to detect the level of a digital signal on a selected pin on devices in Ultra Low Energy mode. The selected digital pin includes an internal pull-up resistor and internal button debouncing can be selected optionally.

Driver Parameters

The GPIO driver for Digital Inputs has two parameters that have to be configured:


This is the pin sensing the input, any of the GP pins is suitable for this selection if not already used for other drivers.



What is Debouncing

Pushbuttons often generate spurious open/close transitions when pressed, due to mechanical and physical issues. These transitions may be read as multiple presses in a very short period of time which can fool the program. Debouncing puts a physical delay between the readings so it insures that the button is really pressed again. Without debouncing, pressing the button once may cause an unpredictable result.

Possible Configurations

Debouncing Enabled:

Debouncing Disabled:


Debouncing Enabled

The pin is debounced and pulled down internally





Used Pins

Used Pins


GP0 (can be any GP pin)

This pin reads the digital level and is pulled up internally


This pin provides the low level


Debouncing Disabled

Just like the circuit above. The button is not debounced internally as described in the parameter description

Debouncing Disabled with External debouncing

The pin is pulled up internally and debounced externally with an RC low pass filter




Used Pins

Used Pins


Any GP pin

This pin reads the digital level and is pulled up internally


This pin provides the low level

 How to write an App

Navigate to the App Builder and create a new application. You can find the “Digital In” code object under the “Hardware” Tab in the object drop down menu on the left, or you can also use the search bar.



Drag the “Digital In” Object onto the canvas.





Next, locate the “Switch” Object under the “Interface” tab and drag it onto the canvas.



Finally, connect the “State” port from the Digital In Object to the “State” port on the Switch Object, and save your application.


How to create a firmware

Navigate to the Firmware Builder and create a new firmware file.

Click the “+ Add Hardware” button which will open a modal window. Scroll down in the list to find the “Generic” section and select the “Digital In” hardware option.

Give your device a name, and click “Add Device”




Next, select the “GPIO w/Pull Up Low Energy” driver under the driver dropdown menu, set the Pin and Debouncing options.

For this example we select:

  • Pin: GP0

  • Debouncing: Disabled




You may now save your firmware file and upload it to one of your clients.



Supported Hardware

  • Buttons

  • Contact sensors

  • Anything providing a digital signal



View file
nameDigital In App.json


View file
nameDigital In LE Firmware.json


View file