Where I don’t need an analogue input I’m now using naked pi zeros. No hat required, just the GPIO pins and a simple python script as follows:
from gpiozero import Button
from time import sleep
print ("doorbell pressed")
print ("call_lift pressed")
print ("permit pressed")
b_doorbell = Button(2)
b_call_lift = Button(3)
b_permit = Button (4)
print ("Starting up button reading!")
so GPIO pins 2, 3 and 4 trigger openhab items buttonpi_doorbell, buttonpi_call_lift and buttonpi_permit, and a command is sent every 60 seconds to buttonpi_heartbeat (so I can use the expire binding to notify me if the pi goes down)
The pi is hidden in the wall and powered from a 15V line that powers the entryphone, via a DC-DC converter (https://www.amazon.co.uk/gp/product/B07DYP6L35/ref=ppx_yo_dt_b_search_asin_title?ie=UTF8&psc=1) to take it down to 5V. The converter and pi barely get warm.
Perhaps I should have made this a tutorial? But if it’s useful to someone that will be great.