ESC, speed of motor, Arduino

Hi guys! i have been testing out my brushless motor with 10A ESC with 11.1V lipo

and i have met with some problem

when i send a 1200 Pulse width to run the motor, it is spinning slow and after i changed the value from 1300-2000 the speed of the motor is rotating at a rather similar speed.

I hope you guys could check my code if i am coding it correctly

thanks in advance

Did you run the code examples, coming with your ESC?

A link to the data sheet were helpful.

DrDiettrich:
Did you run the code examples, coming with your ESC?

A link to the data sheet were helpful.

what code examples you referring to (?) the code that i attached above was a code i written to run my motor with the help of many post in the forum

the data sheet that i got with the 10A esc is similar to this:

A special start procedure may be required, see "Begin To Use Your New ESC".

For a basic arming sequence try putting the writeMicroseconds(1000) BEFORE the attach() in setup() and add a 1 second delay after attach(). After that the motor should respond normally.

But generally the easiest way to check the commands a normal ESC will respond to is to use the Knob example program from the IDE.

Steve

DrDiettrich:
A special start procedure may be required, see "Begin To Use Your New ESC".

Read up on that, i assume that is the arming (?)

slipstick:
For a basic arming sequence try putting the writeMicroseconds(1000) BEFORE the attach() in setup() and add a 1 second delay after attach(). After that the motor should respond normally.

But generally the easiest way to check the commands a normal ESC will respond to is to use the Knob example program from the IDE.

Steve

Sorry and just curious about it, Can i ask is there a particular reason why writeMicroseconds(1000) before the attach() ?

for the Knob example, i believe is with potentiometer and testing when the motor will start running when you turn the poteniometer (?)

if using that example do i still need to arm it first in the setup()?

Yes of course there is a reason. Do you want to know what it is?

When you do an attach() without first setting a value with write() the library sets the value to a default of 1500, centre for a servo but no use for an ESC which needs to be low (approx 1000).

You can use Knob exactly as it comes. Arming in that case just means the potentiometer must be turned right down when you start the program running.

Some of these things are a lot easier just to try and see for yourself instead of just asking questions.

Steve

slipstick:
Yes of course there is a reason. Do you want to know what it is?

When you do an attach() without first setting a value with write() the library sets the value to a default of 1500, centre for a servo but no use for an ESC which needs to be low (approx 1000).

You can use Knob exactly as it comes. Arming in that case just means the potentiometer must be turned right down when you start the program running.

Some of these things are a lot easier just to try and see for yourself instead of just asking questions.

Steve

I see, as i am new to arduino, i always though that you have to attach() first before allowing it to write() a value in it, (seem like i understand it all wrong) just a question that pop up in my mind, since you explained that the library sets the value to a default of 1500 , why does my motor still able to run then if it need to be low( approx 1000) for the ESC?

Thanks alot for the explanation, cleared much of my doubts with ESC and brushless motor! I will try with the potentiometer tmr!