Issue Reading Current Sense Output (IS0_0) on BTT6030 Shield (24V Protected Switch Shield v1.2) with Arduino Uno

I’m currently using the 24V Protected Switch Shield (Version 1.2) based on the BTT6030 in combination with an Arduino Uno. I’m controlling OUT0 via IN0_0 using PWM from Arduino pin D3 (analogWrite). This part works perfectly – the load (a coil) is switching correctly, and the setup follows the official documentation.

The issue is with current sensing via the IS0_0 output.

IS0_0 is connected to the Arduino’s analog input A0. When I measure the voltage at A0 with a multimeter, I get a solid reading, so there definitely is a signal.

However, when I try reading it in code using analogRead(A0), it constantly returns 0 – regardless of the PWM duty cycle (tested with values like 128 and 255). All GNDs are properly connected via the shield.

Given that OUT0 is switching correctly and the coil is drawing current, I would expect a readable voltage on A0 in the Arduino code. But something seems off, and I’m a bit stuck at this point.

Has anyone experienced something similar or could offer any ideas?
I’d really appreciate your help – it’s a bit urgent for my project.

Thanks in advance!

My suggestion would be to read the forum guide in the sticky post at the top of the forum section, instead of relying on the forum member's psychic powers :slight_smile:

I assume the shield in question is 24V_SHIELD_BTT6030 - Infineon Technologies

If the signal is not DC, then the multimeter may be presenting an average value. OTOH, the ADC may be reading "instanteous" value.

The SENSE signal is somewhat complicated, I would check the BTT6030 datasheet for full description. Also I would look at the Infineon sample code to see how they use the signal.