Interfacing T200 with Arduino Nano

I am using an Arduino Nano IoT33 it generates a PWM to a basic ESC that connects to a T200 thruster. The ground of Arduino is connected to the black wire of the ESC (black and white pair) and are connected to the negative terminal of the battery. I believe the grounding of this experiment is correct. I run a simple program to run the motor. Although, I have not put any command to query for the serial communication, I notice that the ESC gives 4 beeps and does not give the last beep. Whenever, I connect the USB cord from the Arduino USB port to the laptop, the 5th beep comes out and the thruster runs normally. I thought it is a grounding issue, but the voltage difference between the negative terminal of the battery and the Arduino ground is 1.2mV

Hi @MahmoodAlimam -
Welcome to the forums!
What you describe sounds normal - when power is applied, the ESC makes the motor beep. When it receives a valid 1500us servo-style PWM pulse, it indicates the system is armed with an additional beep. No issues whatsoever, as mentioned in this guide.

1 Like

Thanks Tony,

Basically the problem had been fixed. The arming of the thruster didn’t take place because the stop signal (i.e. 1500us for duty cycle of the thruster) has been shifted to become 1450us. I ran a code that I found on your forum that allows me to slide the value of the duty cycle do different value. I kept on trying until I spot the correct arming timing. I don’t know why the stop signal had been shift, but by using the oscilloscope, I noticed whenever I connect the usb cable from the Arduino to my laptop, the stop signal shift back to 1500us! pretty strange..

Hi @MahmoodAlimam -
What’s likely going on is the clock frequency of the Arduino shifting as the supply voltage changes, from your USB port vs. whatever alternative method you are powering it from? Just a theory, glad you got things working!

Hi Tony,

That makes absolutely sense! Thanks for explaining