How to control rc exhaust pipe smoke with arduino

i am in the need to use an rc rc exhaust pipe smoke with arduino

this is the model i got for 20 euro from a chinese ebay seller

it is powered with 7,4v and controlled by a control signal line as in this video

Any idea how i can replace the rc remote control with arduino in order to activate it and control the speed of smoke-fan?

thanks

Can we have a link to the device data so we can see how it works?

Weedpharma

umm... i can't find any more data other than instructions and video linked above

You gwan be rollin' coal in yo' RC?

maybe i should use the servo library and the servo.write instruction

"The signal pin should be connected to a digital pin on the Arduino board."

i should test a sketch like this one

/* Sweep
 by BARRAGAN <http://barraganstudio.com>
 This example code is in the public domain.

 modified 8 Nov 2013
 by Scott Fitzgerald
 http://www.arduino.cc/en/Tutorial/Sweep
*/

#include <Servo.h>

Servo myservo;  // create servo object to control a servo
// twelve servo objects can be created on most boards

int pos = 0;    // variable to store the servo position

void setup() {
  myservo.attach(9);  // attaches the servo on pin 9 to the servo object
}

void loop() {
  for (pos = 0; pos <= 180; pos += 1) { // goes from 0 degrees to 180 degrees
    // in steps of 1 degree
    myservo.write(pos);              // tell servo to go to position in variable 'pos'
    delay(15);                       // waits 15ms for the servo to reach the position
  }
  for (pos = 180; pos >= 0; pos -= 1) { // goes from 180 degrees to 0 degrees
    myservo.write(pos);              // tell servo to go to position in variable 'pos'
    delay(15);                       // waits 15ms for the servo to reach the position
  }
}

just tested the above code but doesn't turn on :frowning:

Have you tried using the potentiometer example in the library.

Sweep operates rather quickly, burning oil is likely to be slow.

Hi,

It looks like you are powering the unit from the UNO.

That unit is capable of consuming 1.3A when operating, you need a separate supply for it, do not use the UNO 5V pin.

Read the sheets you have posted.

Tom..... :slight_smile:

Missed that. The kit comes with a balance lipo connector, that has to be connected to a lipo directly .

It also looks as though you may be reverse powering the arduino as well which could damage it , not clear though

TomGeorge:
Hi,

It looks like you are powering the unit from the UNO.

That unit is capable of consuming 1.3A when operating, you need a separate supply for it, do not use the UNO 5V pin.

Read the sheets you have posted.

Tom..... :slight_smile:

nope, i am powering the unit from the same source of arduino, an external power supply 7,5v 2,1A

have you tried using a reciever to check that the device is functioning ?

Boardburner2:
have you tried using a reciever to check that the device is functioning ?

that i cant' check cause i haven't any receiver..

Hi,
I can see you have the gnd of the UNO and the gnd of the power supply leads connected, but do you have the signal gnd pin connected to UNO gnd.
It may need that connection for gnd reference for the control signal.

Tom.... :slight_smile:

I agree with tom also the + pin may need +4.7 V on it.
The servo decoder circuit may depend on a separate supply as this is normally supplied via the receiver this way.

i just connected the ground but not working

i am afraid to connect also the + of the board to the 5v of arduino

i think the + on the board it's a 5v power supply for an external receiver as stated on description:

Input power: 7.4V, max 1.3A
** Control signal input: front and back remote signal input (including 5V power supply)**
Battery low voltage protection: if the battery voltage is below 6.0V, the smoky exhaust pope will give out a short and a long flame signal and stop to give out smoke
Oil shortage overheating protection: when the oil is insufficient, the smoke will be thin; when the smoky exhaust pipe is overheating, the circuit will stop working and the smoky exhaust pipe will stop fuming. At the same time, the smoky exhaust pipe will give out slow-flashing flame signal until the temperature drops
Flame simulation: if the accelerator is larger, the flame flashing frequency is higher; when the generator is at idle, the flame flickering frequency is slow
Smoke simulation: if the accelerator is larger, there is smoke giving out; when in idle mode, only a little smoke is generated
It lasts 20 to 30 minutes when filling up the tank

Hi,

Have you got a DMM?

If you do, can you check and see what DC volts you have between gnd and the output pin of the UNO that has the servo signal on it.

If you don't, I would suggest you get one, even an el-cheepo $20.00 will do the job.

Tom.... :slight_smile:

onesky:
i just connected the ground but not working

i am afraid to connect also the + of the board to the 5v of arduino

i think the + on the board it's a 5v power supply for an external receiver as stated on description:

Possibly so you can check that with a meter on the pin

thanks to everyone
just checked the + on the smoke board and it showed almost 0 volts
so i connected the 5v of arduino to that pin and it's working! it's smoking! haha
:slight_smile:

i tought that was solved but not

i can't control the smoke engine with this code, it just do the job as showed in the video, a cycle of smoking and stop
my achievement is to make it smoke when a switch is pressed

/* Sweep
 by BARRAGAN <http://barraganstudio.com>
 This example code is in the public domain.

 modified 8 Nov 2013
 by Scott Fitzgerald
 http://www.arduino.cc/en/Tutorial/Sweep
*/

#include <Servo.h>

Servo myservo;  // create servo object to control a servo
// twelve servo objects can be created on most boards

int pos = 0;    // variable to store the servo position

void setup() {
  myservo.attach(9);  // attaches the servo on pin 9 to the servo object
}

void loop() {
  for (pos = 0; pos <= 180; pos += 1) { // goes from 0 degrees to 180 degrees
    // in steps of 1 degree
    myservo.write(pos);              // tell servo to go to position in variable 'pos'
    delay(15);                       // waits 15ms for the servo to reach the position
  }
  for (pos = 180; pos >= 0; pos -= 1) { // goes from 180 degrees to 0 degrees
    myservo.write(pos);              // tell servo to go to position in variable 'pos'
    delay(15);                       // waits 15ms for the servo to reach the position
  }
}

i think i will add a NPN transistor between 7.4v power supply and pump, it's the only way i see to control the on/off of it when a switch is pressed

wuth the servo code i can only turn on but can't turn off

i tested myservo.write with 0, 90, 180 ecc.. i can only turn down the power but not off