Iron man motorised faceplate electronics tutorial!!!

Wow some good sites there. Thank you very much!

I tried the photo paper. Got it to transfer great but ended up damaging the toner way too bad after soaking and scraping.
Finally got a good Usable transfer last night using magazine paper in my laser printer.
View attachment 444495
Got it etched and drilled. Can't wait to get time to test it!
Thinking of investing in the PCB "Fab in a Box" KIt and getting the lamination machine they recommend. Seams like a good process and many have had good success with it. also looked at the MG Chemicals Photo fabrication kit. It is a toss up for me as to which way I will go. One of the kits or sending out for fab. Having it NOW might win.


IMHO... once you send out for professionally made boards.. (you'll never go back to home brew again!) lol..

I mean it'll always be there... if you need it RIGHT NOW.. or just a one-off board/prototype......etc..

and you can order pcb's from the US.. if you want to pay a bit more.. and get them faster..

but if you plan ahead.. the wait shouldnt be that big of a deal.

invest in a $20 toaster oven, get some solder paste..... and make some professional boards! :)

when I want to do a home brew board.

I just:

1.) print out my 'design' on glossy (photo) paper.
2.) transfer it some copper clad board using a (clothing) IRON
3.) remove photo paper by rising under cold water.
4.) etch with whatever chemicals you prefer (I have a some kit form radio shack I still use as etchant)
5.) solder my components to it and be done.


but drilling and doing double sided boards or even more advanced designs/layouts that need to 2 layers..etc.. are best done by ordering professional pcb's.

- - - Updated - - -

I added relays to xl97's eyeblink code, attaching them to pins 7 and 8, and writing them high and low. The code compiles, but I haven't built the circuit yet. Any pointers with the code would be greatly appreciated.


huh?

what are 'relays' (thats isnt hardware related)?

in the code? what are you trying to do?

If the code compiles.. and you have -not- built the circuit... whats the problem? What are you expecting to happen?
 
I was trying to edit the code to connect to/close the relay before the servo rotates and disconnect it/open the relay after the sevo turns In attempt to use the relays for magnetic braking as described by xrobots. I have since built the circuit and the relay stays closed, never opens.
 
I was trying to edit the code to connect to/close the relay before the servo rotates and disconnect it/open the relay after the sevo turns In attempt to use the relays for magnetic braking as described by xrobots. I have since built the circuit and the relay stays closed, never opens.



Ahh..ok..


1.) I am not familiar with xrobots.. and what he did (or why)?
2.) I'm not sure the code is the same as mine.. nor how it be incorporated into my approach.

Can you explain what it is for? What it is supposed to be doing?

Braking.. for a slowed/tweened movement?

Is the original code and default circuit working for you?
 
Xrobots mechanism was linked by ShaunDark80 (https://www.youtube.com/watch?v=izr0zu-_Lyo) as a way to prevent the servos from humming and consuming current while at rest.

Relay magnetic lock_bb.jpg


The original code worked like a song, thank you for posting it. I attempted to modify your code by setting both relays as individual ints and the setting them high/low to turn them on/off before and after the servo moves.
 
Hmm..

I'm no pro or anything..

but I havent experienced a servo making any noise UNLESS:

I didnt have it connected correctly (ie: not connected to common GND with Arduino)..


or I am trying to move the servo to an angle that it cant get to.

example: if my faceplate will only open (say) 100 degrees.. before hitting the the rest of the helmet. I shouldnt be trying to go to 120 degree.. the servo keeps trying to move to the position even though, it physically cant. (hence the 'grinding' noise)

Also choosing the right servo is key... somethign that has metal gears, enough torque to lift and hold the faceplate..etc.

You shouldnt have these problems.

I havent visited that code in a LONG time..

but I'll see if I can work in your relay stuff.. (I have no clue on the wiring thats up to you ensure it is correct though)
 
when servos (faceplate) is in up/open position.. what state do the relays need to be in?

do the pins on the Arduino they connect to need to be high or low?

and then obviously reversed before the servo 'closes'.....right?
 
maybe putting it in the 'button' (state change) routine?.. and then after the SERVOUP?

I mean thats the only time you really care about it....right?

(might need some code tweaks if the relay is turned on before faceplate if fully up.)


Code:
// IronMan Helmet: eye blink sequence_v1.0
// created by:
// Movie Props, Costumes and Scale Models | the RPF thread:
// http://www.therpf.com/f24/iron-man-m...ml#post2647126


//import servo lib
#include <Servo.h>


//servo object names
Servo myservo; // create servo object to control a servo
Servo myservo1;


const int buttonPin = 2; // the pin that the pushbutton is attached to
int buttonState = 0; // current state of the button
int lastButtonState = 0; // previous state of the button
int pos = 0; // variable to store the servo positions
int pos1 = 180;


// led control pins (need to be PWM enabled pins for fading)
const int leftEye = 6; // the number of the left eye/pcb LEDs
const int rightEye = 3; // the number of the right eye/pcb LEDs


// relay control pins
const int myservoLock1 = 7;
const int myservoLock2 = 8;


unsigned long delaytime = 1;
unsigned long blinkspeed = 100;
unsigned long currentPWM = 0;
boolean isOpen = true;


#define S_IDLE 1
#define S_LEDON 2
#define S_WAITON 3
#define S_LEDOFF 4
#define S_WAITOFF 5
#define S_INITON 6
#define S_INITWAIT 7
#define S_BLINKON 8
#define S_SERVOUP 9
#define S_SERVODOWN 0






//FSM init vars
static int state = S_IDLE; // initial state is 1, the "idle" state.
static unsigned long lastTime; // To store the "current" time in for delays.




void setup() {
  // Set up serial port
  Serial.begin(9600);
  //start it off
  //state = S_BLINKON;
  Serial.print("INTIT STATE: ");
  Serial.println(state);

  myservo.attach(9); // attaches the servo on pin 9 to the servo object
  myservo1.attach(10); // attaches the servo on pin 10 to the servo object

  pinMode(buttonPin, INPUT); // initialize the button pin as a input
  digitalWrite(buttonPin, HIGH); //use interal pull up resistors
  
  pinMode(myservoLock1, OUTPUT); // Set up relays as outputs
  pinMode(myservoLock2, OUTPUT);
}


void loop() {
  switch (state)
  {
  case S_IDLE:
    // We don't need to do anything here, waiting for a forced state change...like button press.
    //check mian button state
    buttonState = digitalRead(buttonPin);


    // compare buttonState to previous state
    if (buttonState != lastButtonState) {
      //if button pressed/down
      if (buttonState == LOW) {
        //ie: pressed
        if (isOpen == true) {
          Serial.print("CLOSING FACE PLATE: ");
          Serial.println(isOpen, DEC);
          // Close relays, deactivate the lock
          digitalWrite(myservoLock1, HIGH); 
          digitalWrite(myservoLock2, HIGH);
          // State change
          state = S_SERVODOWN;
        }
        else {
          Serial.print("OPENING FACE PLATE: ");
          Serial.println(isOpen, DEC);          
          // State change
          //state = S_SERVOUP;
          state = S_LEDOFF;
        }
        isOpen = !isOpen;


      }
      else {
        //went from ON/HIGH to LOW/OFF..ie: released
        //Serial.print("RELEASE: ");
        //Serial.println(isOpen, DEC);
      }


    }
    // save the current state for next loop
    lastButtonState = buttonState;
    break;


  case S_BLINKON:
    Serial.println("init blink.........");
    //do blink routine here
    analogWrite(leftEye, 155);
    analogWrite(rightEye, 155);
    delay(blinkspeed);
    analogWrite(leftEye, 0);
    analogWrite(rightEye, 0);
    delay(10);
    /*
    analogWrite(leftEye, 155);
    analogWrite(rightEye, 155);
    delay(blinkspeed);
    analogWrite(leftEye, 0);
    analogWrite(rightEye, 0);
    delay(10);
    */
    currentPWM = 0;
    state = S_LEDON;
    break;


  case S_LEDON:
    Serial.println("increase........");
    lastTime = millis(); // Remember the current time
    analogWrite(leftEye, currentPWM);
    analogWrite(rightEye, currentPWM);
    state = S_WAITON; // Move to the next state
    break;


  case S_WAITON:
    // If one second has passed, then move on to the next state.
    if (millis() > lastTime + delaytime)
    {
      if (currentPWM < 255) {
        currentPWM += 5;
        state = S_LEDON;
      }
      else {
        Serial.println("@ 255 done........");
        state = S_IDLE;
        //state = S_LEDOFF; //no auto turn off.. set to idle state
      }
    }
    break;


  case S_LEDOFF:
    Serial.println("........decrease");
    lastTime = millis(); // Remember the current time
    analogWrite(leftEye, currentPWM);
    analogWrite(rightEye, currentPWM);
    state = S_WAITOFF;
    break;


  case S_WAITOFF:
    // If one second has passed, then move on to the next state.
    if (millis() > lastTime + delaytime)
    {
      if (currentPWM > 0) {
        currentPWM -= 5;
        state = S_LEDOFF;
      }
      else {
        Serial.println("@ 0 done........");
        state = S_SERVOUP; //leds off..raise faceplate
      }
    }
    break;


  case S_SERVOUP:    
    myservo.write(100);
    myservo1.write(100);
    state = S_IDLE;
    Serial.println("servo up.........");
    
    // Open relays, activate lock
    digitalWrite(myservoLock1, LOW); 
    digitalWrite(myservoLock2, LOW);
    break;


  case S_SERVODOWN:
    myservo.write(0);
    myservo1.write(0);
    delay(20); //wait to trigger the led flicker.. will remove delay() use in next revision
    state = S_BLINKON;
    Serial.println("servo down.........");
    break;

  default:
    state = S_IDLE;
    break;
  }
}
 
Thank you for your assistance, you sir are a gentleman and a scholar. I tweaked it slightly, testing the relay with an LED as I managed to fry my servo. I also missed a connection in my fritzing diagram. Currently the relay/LED turn on at the same time as the servo. I will test further when the cheaper servo arrives. How do you post the code so it is in its own window?

Relay magnetic lock revision_bb.jpg

// IronMan Helmet: eye blink sequence_v1.0
// created by:
// Movie Props, Costumes and Scale Models | the RPF thread:
// http://www.therpf.com/f24/iron-man-m...ml#post2647126




//import servo lib
#include <Servo.h>




//servo object names
Servo myservo; // create servo object to control a servo
Servo myservo1;




const int buttonPin = 2; // the pin that the pushbutton is attached to
int buttonState = 0; // current state of the button
int lastButtonState = 0; // previous state of the button
int pos = 0; // variable to store the servo positions
int pos1 = 180;




// led control pins (need to be PWM enabled pins for fading)
const int leftEye = 6; // the number of the left eye/pcb LEDs
const int rightEye = 3; // the number of the right eye/pcb LEDs




// relay control pins
const int myservoLock1 = 7;
const int myservoLock2 = 8;




unsigned long delaytime = 1;
unsigned long blinkspeed = 100;
unsigned long currentPWM = 0;
boolean isOpen = true;




#define S_IDLE 1
#define S_LEDON 2
#define S_WAITON 3
#define S_LEDOFF 4
#define S_WAITOFF 5
#define S_INITON 6
#define S_INITWAIT 7
#define S_BLINKON 8
#define S_SERVOUP 9
#define S_SERVODOWN 0












//FSM init vars
static int state = S_IDLE; // initial state is 1, the "idle" state.
static unsigned long lastTime; // To store the "current" time in for delays.








void setup() {
// Set up serial port
Serial.begin(9600);
//start it off
//state = S_BLINKON;
Serial.print("INTIT STATE: ");
Serial.println(state);


myservo.attach(9); // attaches the servo on pin 9 to the servo object
myservo1.attach(10); // attaches the servo on pin 10 to the servo object


pinMode(buttonPin, INPUT); // initialize the button pin as a input
digitalWrite(buttonPin, HIGH); //use interal pull up resistors

pinMode(myservoLock1, OUTPUT); // Set up relays as outputs
pinMode(myservoLock2, OUTPUT);
}




void loop() {
switch (state)
{
case S_IDLE:
// We don't need to do anything here, waiting for a forced state change...like button press.
//check mian button state
buttonState = digitalRead(buttonPin);




// compare buttonState to previous state
if (buttonState != lastButtonState) {
//if button pressed/down
if (buttonState == LOW) {
//ie: pressed
if (isOpen == true) {
Serial.print("CLOSING FACE PLATE: ");
Serial.println(isOpen, DEC);
// Close relays, deactivate the lock
digitalWrite(myservoLock1, HIGH);
digitalWrite(myservoLock2, HIGH);
// State change
state = S_SERVODOWN;
}
else {
Serial.print("OPENING FACE PLATE: ");
Serial.println(isOpen, DEC);
// State change
//state = S_SERVOUP;
state = S_LEDOFF;
}
isOpen = !isOpen;




}
else {
//went from ON/HIGH to LOW/OFF..ie: released
//Serial.print("RELEASE: ");
//Serial.println(isOpen, DEC);
}




}
// save the current state for next loop
lastButtonState = buttonState;
break;




case S_BLINKON:
Serial.println("init blink.........");
//do blink routine here
analogWrite(leftEye, 155);
analogWrite(rightEye, 155);
delay(blinkspeed);
analogWrite(leftEye, 0);
analogWrite(rightEye, 0);
delay(10);
/*
analogWrite(leftEye, 155);
analogWrite(rightEye, 155);
delay(blinkspeed);
analogWrite(leftEye, 0);
analogWrite(rightEye, 0);
delay(10);
*/
currentPWM = 0;
state = S_LEDON;
break;




case S_LEDON:
Serial.println("increase........");
lastTime = millis(); // Remember the current time
analogWrite(leftEye, currentPWM);
analogWrite(rightEye, currentPWM);
state = S_WAITON; // Move to the next state
break;




case S_WAITON:
// If one second has passed, then move on to the next state.
if (millis() > lastTime + delaytime)
{
if (currentPWM < 255) {
currentPWM += 5;
state = S_LEDON;
}
else {
Serial.println("@ 255 done........");
state = S_IDLE;
//state = S_LEDOFF; //no auto turn off.. set to idle state
}
}
break;




case S_LEDOFF:
Serial.println("........decrease");
lastTime = millis(); // Remember the current time
analogWrite(leftEye, currentPWM);
analogWrite(rightEye, currentPWM);
state = S_WAITOFF;
break;




case S_WAITOFF:
// If one second has passed, then move on to the next state.
if (millis() > lastTime + delaytime)
{
if (currentPWM > 0) {
currentPWM -= 5;
state = S_LEDOFF;
}
else {
Serial.println("@ 0 done........");
// OPen relays, activate lock
digitalWrite(myservoLock1, HIGH);
digitalWrite(myservoLock2, HIGH);
state = S_SERVOUP; //leds off..raise faceplate
}
}
break;




case S_SERVOUP:
myservo.write(100);
myservo1.write(100);
state = S_IDLE;
Serial.println("servo up.........");

// Open relays, activate lock
delay(20);
digitalWrite(myservoLock1, LOW);
digitalWrite(myservoLock2, LOW);
break;




case S_SERVODOWN:
myservo.write(0);
myservo1.write(0);
delay(20); //wait to trigger the led flicker.. will remove delay() use in next revision
state = S_BLINKON;
Serial.println("servo down.........");
// Open relays, activate lock
delay(20);
digitalWrite(myservoLock1, LOW);
digitalWrite(myservoLock2, LOW);
break;


default:
state = S_IDLE;
break;
}
}
 
Yeah you might have to tweak/change where you put those lines of code.. to ensure it 'locks' only after the servo has FINISHED going up.

and releases BEFORE trying to bring the servo down.

(locking it and then trying to move the servo wouldnt be a good idea) :)



I wrap my code inside of code tags

[ code ] [ /code ] (no spaces)
 
Thanks again for your help, here is a sketch that works: opens relay before servo moves, closes after it is finished.

Code:
// IronMan Helmet: eye blink sequence_v1.0
// created by: x197
// relays added by Dread Lensman with assistance from creator
// Movie Props, Costumes and Scale Models | the RPF thread:
// http://www.therpf.com/f24/iron-man-m...ml#post2647126




//import servo lib
#include <Servo.h>




//servo object names
Servo myservo; // create servo object to control a servo
Servo myservo1;




const int buttonPin = 2; // the pin that the pushbutton is attached to
int buttonState = 0; // current state of the button
int lastButtonState = 0; // previous state of the button
int pos = 0; // variable to store the servo positions
int pos1 = 180;




// led control pins (need to be PWM enabled pins for fading)
const int leftEye = 6; // the number of the left eye/pcb LEDs
const int rightEye = 3; // the number of the right eye/pcb LEDs




// relay control pins
const int myservoLock1 = 7;
const int myservoLock2 = 8;




unsigned long delaytime = 1;
unsigned long blinkspeed = 100;
unsigned long currentPWM = 0;
boolean isOpen = true;




#define S_IDLE 1
#define S_LEDON 2
#define S_WAITON 3
#define S_LEDOFF 4
#define S_WAITOFF 5
#define S_INITON 6
#define S_INITWAIT 7
#define S_BLINKON 8
#define S_SERVOUP 9
#define S_SERVODOWN 0












//FSM init vars
static int state = S_IDLE; // initial state is 1, the "idle" state.
static unsigned long lastTime; // To store the "current" time in for delays.








void setup() {
  // Set up serial port
  Serial.begin(9600);
  //start it off
  //state = S_BLINKON;
  Serial.print("INTIT STATE: ");
  Serial.println(state);


  myservo.attach(9); // attaches the servo on pin 9 to the servo object
  myservo1.attach(10); // attaches the servo on pin 10 to the servo object


  pinMode(buttonPin, INPUT); // initialize the button pin as a input
  digitalWrite(buttonPin, HIGH); //use interal pull up resistors
  
  pinMode(myservoLock1, OUTPUT); // Set up relays as outputs
  pinMode(myservoLock2, OUTPUT);
}




void loop() {
  switch (state)
  {
  case S_IDLE:
    // We don't need to do anything here, waiting for a forced state change...like button press.
    //check main button state
    buttonState = digitalRead(buttonPin);




    // compare buttonState to previous state
    if (buttonState != lastButtonState) {
      //if button pressed/down
      if (buttonState == LOW) {
        //ie: pressed
        if (isOpen == true) {
          Serial.print("CLOSING FACE PLATE: ");
          Serial.println(isOpen, DEC);
          // Close relays, deactivate the lock
          digitalWrite(myservoLock1, HIGH); 
          digitalWrite(myservoLock2, HIGH);
          delay(10);// ensures that relay is closed before servo attempts to move
          // State change
          state = S_SERVODOWN;
        }
        else {
          Serial.print("OPENING FACE PLATE: ");
          Serial.println(isOpen, DEC);          
          // State change
          //state = S_SERVOUP;
          state = S_LEDOFF;
        }
        isOpen = !isOpen;




      }
      else {
        //went from ON/HIGH to LOW/OFF..ie: released
        //Serial.print("RELEASE: ");
        //Serial.println(isOpen, DEC);
      }




    }
    // save the current state for next loop
    lastButtonState = buttonState;
    break;




  case S_BLINKON:
    Serial.println("init blink.........");
    //do blink routine here
    analogWrite(leftEye, 155);
    analogWrite(rightEye, 155);
    delay(blinkspeed);
    analogWrite(leftEye, 0);
    analogWrite(rightEye, 0);
    delay(10);
    /*
    analogWrite(leftEye, 155);
    analogWrite(rightEye, 155);
    delay(blinkspeed);
    analogWrite(leftEye, 0);
    analogWrite(rightEye, 0);
    delay(10);
    */
    currentPWM = 0;
    state = S_LEDON;
    break;




  case S_LEDON:
    Serial.println("increase........");
    lastTime = millis(); // Remember the current time
    analogWrite(leftEye, currentPWM);
    analogWrite(rightEye, currentPWM);
    state = S_WAITON; // Move to the next state
    break;




  case S_WAITON:
    // If one second has passed, then move on to the next state.
    if (millis() > lastTime + delaytime)
    {
      if (currentPWM < 255) {
        currentPWM += 5;
        state = S_LEDON;
      }
      else {
        Serial.println("@ 255 done........");
        state = S_IDLE;
        //state = S_LEDOFF; //no auto turn off.. set to idle state
      }
    }
    break;




  case S_LEDOFF:
    Serial.println("........decrease");
    lastTime = millis(); // Remember the current time
    analogWrite(leftEye, currentPWM);
    analogWrite(rightEye, currentPWM);
    state = S_WAITOFF;
    break;




  case S_WAITOFF:
    // If one second has passed, then move on to the next state.
    if (millis() > lastTime + delaytime)
    {
      if (currentPWM > 0) {
        currentPWM -= 5;
        state = S_LEDOFF;
      }
      else {
        Serial.println("@ 0 done........");
        // Close relays, deactivate the lock
        digitalWrite(myservoLock1, HIGH); 
        digitalWrite(myservoLock2, HIGH);
        delay(10);// ensures that relay is closed before servo attempts to move
        state = S_SERVOUP; //leds off..raise faceplate
      }
    }
    break;




  case S_SERVOUP:    
    myservo.write(100);
    myservo1.write(100);
    state = S_IDLE;
    Serial.println("servo up.........");
     delay(400);// Delays relay locking until after servos have completed their travel
    // Open relays, activate lock
    digitalWrite(myservoLock1, LOW); 
    digitalWrite(myservoLock2, LOW);
    break;




  case S_SERVODOWN:
    myservo.write(0);
    myservo1.write(0);
    delay(20); //wait to trigger the led flicker.. will remove delay() use in next revision
    state = S_BLINKON;
    Serial.println("servo down.........");
    delay(400);// Delays relay locking until after servos have completed their travel
    // Open relays, activate lock
    digitalWrite(myservoLock1, LOW);
    digitalWrite(myservoLock2, LOW);
    break;


  default:
    state = S_IDLE;
    break;
  }
}

and here is a fritzing diagram for anyone who is interested:

Faceplate Base relay lock_bb.jpg

I used an LED connected to the relay to calibrate the delays.
 
hi people I have a problem with the code.
the led lights permanet and the servos move not to the millimeter.


what is wrong with the code not?
I have now about 20 times tried it exactly as shown in the photo.
but something is wrong with the code for arduino


would be great if anyone can help me I despair slowly

#include <Servo.h>

Servo myservo; // create servo object to control a servo
Servo myservo1;

const int buttonPin = 2; // the pin that the pushbutton is attached to
const int ledPin = 5; // the pin that the LED is attached to

int buttonState = 0; // current state of the button
int lastButtonState = 0; // previous state of the button
int ledState = 0; // remember current led state
int pos = 0; // variable to store the servo positions
int pos1 = 180;

void setup()
{
myservo.attach(9); // attaches the servo on pin 9 to the servo object
myservo1.attach(10); // attaches the servo 1 on pin 10 to the servo object
pinMode(buttonPin, INPUT); // initialize the button pin as a input
pinMode(ledPin, OUTPUT); // initialize the button pin as a output
}

void loop()
{
buttonState = digitalRead(buttonPin); // read the pushbutton input pin
if (buttonState != lastButtonState) // compare buttonState to previous state
{
if (buttonState == 1)
{
if(ledState == 1)
{
delay(30); ledState = 0;
for(pos = 0; pos <= 180; pos += 10) // goes from 0 degrees to 180 degrees
{ // in steps of 10 degrees
myservo.write(pos); // tell servo to go to position 'pos'
}
for(pos1 = 180; pos1 >= 0; pos1 -= 10) // goes from 180 degrees to 0 degrees
{ // in steps of 10 degrees
myservo1.write(pos1); // tell servo to go to position 'pos1'
}
delay(15); // waits 15ms for the servo to reach the position
}
else
{
delay(30); ledState = 1;
for(pos = 180; pos >= 0; pos -= 10) // goes from 180 degrees to 0 degrees
{
myservo.write(pos); // tell servo to go to position 'pos'
}
for(pos1 = 0; pos1 <= 180; pos1 += 10) // goes from 0 degrees to 180 degrees
{
myservo1.write(pos1); // tell servo to go to position 'pos1'
}
delay(1000);
}
}

lastButtonState = buttonState; // remember the current state of the button
}
// turns LED on if the ledState =1 or off if ledState = 0
digitalWrite(ledPin, ledState);
myservo.write(pos); // goes from 0 degrees to 180 degrees
myservo1.write(pos1); // goes from 180 degrees to 0 degrees

delay(20);
}
 
Last edited:
whos code are you using?

and whos wiring diagram are you following.

its important you use the correct ones for BOTH..


please wrap your code inside of [ code ] [ /code ] tags (no spaces).. it makes it easier for everyone to read)
 
whos code are you using?

and whos wiring diagram are you following.

its important you use the correct ones for BOTH..


please wrap your code inside of [ code ] [ /code ] tags (no spaces).. it makes it easier for everyone to read)



I use the code and diagram from 7sinzz.
and nothing goes.
 
then post a pic of your actual wiring..

are the ground connected?

Have you set up anything else before this? to ensure a working Arduino?

the leds do nothing? the servos do nothing??
 
20150309_141612[1].jpg20150309_141606[1].jpg20150309_141618[1].jpg20150309_141624[1].jpg20150309_141630[1].jpg

thas the diagram from 7sinzz and the code from 7 sinnz
the led is permanet on and the servos have no reaction.
i press the switch an nothing goes the led is permanet on an no servoreaction

whats is the problem?
the arduino goes i have tested with a simple sketch

tge gnd is connectecd
 
Last edited:
I see you have updated your reply..

what power/battery source are you using?

its also hard to see how everything is wired up in those pics..

Are you using a voltage regulator anywhere?

did you try rotating your switch? to ensure it is inserted correctly?
 
Dude i use the same parts who 7sinzz
I use the same diagram who 7 sinzz
I use the same code who 7sinzz
I have build exact the same who 7sinzz
Only the code goes bot.
I have a 9v battery and a 6volt batzery box.
And inly the led flashs
Have you a whatsapp number?
The switch is correct connected.
 
I used the same sketch and code .. It does work. Double check all your wiring. It's hard to check your wiring in those photo's. Using the same color wires is making it hard for us to check.
 
Back
Top