Почему digitalRead рандомно возвращает HIGH?
Используйте стягивающие/подтягивающие резисторы, что бы не ловить помехи.
стягивающий:
Есть нажатие: Vout = Vcc
Нет нажатия: Vout = 0
подтягивающие:
Есть нажатие: Vout = 0
Нет нажатия: Vout = Vcc
у меня тоже что то похожее было, оказался не digital read, а схема подключения