WiringPi has been deprecated, how important is it to the project?

Hey folks,

I’ve just gone to build a new release of LoRa Gateway OS and I’ve hit an error with installing WiringPi.

As recorded in https://github.com/brocaar/lora-gateway-os/issues/18 and https://github.com/agherzan/meta-raspberrypi/issues/473, along with the blog post at http://wiringpi.com/wiringpi-deprecated/, WiringPi will no longer be updated and should be considered as EOL.

I’m assuming (although I’ve not delved into the source code closely enough yet) that WiringPi is what enables the gateway OS to talk to boards such as the IC880A etc, so we probably need to find a solution to this issue rather than relying on a code base for which the only public mirror I can find is nearly 10 versions and over a year out of date.

Is there an alternative library that we could use, or am I OK to just remove the WiringPi library from my build?

There are some alternatives. rpi.gpio is one and another is PiGpio which runs as a daemon. I use this for more complex GPIO functions (eg High Speed Clocks etc to generate outputs from 0 to 2MHz). The Rasberry Pi Foundation also recently released GPIOZero and I guess this would be my recommendation.

Any idea where its used in the OS?

That’s the bit I’m struggling with right now.

It’s imported at https://github.com/brocaar/lora-gateway-os/blob/master/layers/targets/meta-raspberrypi/recipes-core/images/lora-gateway-os-base.bbappend#L1 but the image appears to build without it being included, I’m not able to test it yet though.