From 7b448c18070976fb9922066a5f34c7df754c5726 Mon Sep 17 00:00:00 2001 From: Yurii Soldak Date: Tue, 21 Jan 2025 11:33:12 +0100 Subject: [PATCH] nrf: fix adc read near zero --- src/machine/machine_nrf52xxx.go | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/machine/machine_nrf52xxx.go b/src/machine/machine_nrf52xxx.go index 2d3545b7a9..927458f543 100644 --- a/src/machine/machine_nrf52xxx.go +++ b/src/machine/machine_nrf52xxx.go @@ -183,7 +183,12 @@ func (a *ADC) Get() uint16 { resolutionAdjustment = 4 // 12bit } - return rawValue.Get() << resolutionAdjustment + value := int16(rawValue.Get()) + if value < 0 { + value = 0 + } + + return uint16(value << resolutionAdjustment) } // SPI on the NRF.