Read signals ( probablyPWM) from DJI controller

Hi guys,

I’m trying to read signals that seems to be PWM from a DJI drone controller. From the first picture, you can see that the DJI controller has three output pins (-,+,signal). The signal depends on the knob or switch control on a remote control (RC) . From the second picture, you can see that I have connected the signal pin to digital pin 3 and -ve output to the ground of Arduino. The purpose of I’m reading the signals from the controller is to write a program to control a pump to turn on by using the knob or switch on the RC. The code that I want to write would be something like this, If ( signal from controller) is HIGH, turn on pump.

I used the code below to read the signals from the controller to see what values are given out when the knob or switch is controlled. However, the values that are generated are around 300 to 350 and there is no changes in the values given when the knob or switch is controlled. I also tried the pulseIn function but the output is always 0. Is the way I connected the pins are wrong or my code is wrong ? This is the code and pics:

int value;

void setup() {


void loop() {

 value = analogRead(3);

// value = pulseIn(3, HIGH);
// Serial.println(value);


That's likely to be a standard servo signal, search for pulseIn and servo

Hi, I've tried pulseIn and servo, but it didn't really work and doesn't suit my needs.