Project tutorial
MK 85 Iron Man Electronic Faceplate

MK 85 Iron Man Electronic Faceplate © GPL3+

3D-printed Mark LXXXV Iron Man Helmet from Thingiverse. The faceplate can be remotely opened using an IR remote. Powered by an Arduino Nano.

  • 6,724 views
  • 3 comments
  • 17 respects

Components and supplies

Fairchild semiconductor tip120 image
Darlington High Power Transistor
TIP 120
×1
7.2V Battery
7.2V RC battery with 2400 mAh
×1
MG996R
MG996R Servo
×1
Mfr 25frf52 1k sml
Resistor 1k ohm
×2
Mfr 25fbf52 2k21 sml
Resistor 2.21k ohm
×1
E switch eg1218 image 75px
Slide Switch
×1
Ard nano
Arduino Nano R3
×1
CHQB 3 Pin IR Sensor
I got mine from an LED night light from dollar store. It comes with a remote.
×1
LED light for Eyes
×1
3D Printed L Hinge
×4

About this project

I built an Iron Man MK VI helmet (from Iron Man 2) using Pepakura and Body Filler. I automated it back then using an Arduino Nano with two separate battery packs (one for the Nano, one for the Servos (4 SG90’s). The servos were on all the time when in operation and had a manual switch to turn it off. This lead to the servos being powered all the time which drained my servo battery.

The helmet was heavy due to the batteries and the material (Bondo).

I recently got a 3D printer so I decided to print a MK 85 helmet from Avengers: Endgame. I wanted to make the faceplate go up like the previous helmet but I couldn’t find a good hinge system for it online so I decided to remix an existing hinge system for the Mark 6 helmet to fit the 85. Since the design was different, I had to modify the hinges.

Step One: Print the Helmet

Print the free Mark 85 helmet from Thingiverse.

Step Two: Print the Hinges

Print the free MK VI hinges from Thingiverse. You will need to print the following stl's:

  • FaceMount
  • FlatTop
  • HingeArm
  • HingeBrackets
  • SecondHinge
  • SecondHingeMount

Step Three: Print the Custom L Hinge

Print the free custom L Hinge I remixed on Thingiverse.

Step Four:

Attach the following as shown:

Hint:

With the faceplate fully closed, flip the helmet upside down so you can see the inside. Attach the facemount that's attached to the servo and find the sweet spot. I found mine as shown in the photo. Test the hinges by moving the faceplate up and down and see if it reaches your desired position.

For the side hinges, attach the mount to the faceplate first. Then find the sweet spot when the helmet is closed.

Step Five: Wiring

Wire the electronics according to the attached diagram.

Step Six: Enjoy

Code

Arduino CodeC/C++
Download the IRremote library by shirriff
#include <IRremote.h>
#include <Servo.h> 

int servoPin = 10; 
int servoPower = 8; 
int eyes = 4; 
int Button = 11;
int ButtonPower = 12;
int eyedelay = 200;
int state = HIGH;   
int lightstate = LOW;   
int reading;         
int previous = LOW;
long time = 0;
long debounce = 200;
Servo Servo1; 
const int ledPin =  LED_BUILTIN;

int RECV_PIN = 7;
IRrecv irrecv(RECV_PIN);
decode_results results; 

#define CIRCLE 0x9614E178
#define MINUS 0x56484D64
#define SUN 0xCB18E2E4
#define MINUTE 0x3C51AEF8

//------------------------------------------------------------

void setup()
{
  Serial.begin(9600);
  irrecv.enableIRIn(); // Start the receiver
  pinMode(ButtonPower, OUTPUT);
  digitalWrite(ButtonPower, HIGH);
   pinMode(eyes, OUTPUT); 
   pinMode(servoPower, OUTPUT);
   pinMode(Button, INPUT);
   Servo1.attach(servoPin); 
   pinMode(ledPin, OUTPUT);
}

void loop()
{
  if (irrecv.decode(&results))
  {
    if (results.value == CIRCLE) //open and close helmet with LED, NORMAL OPERATION
    {
      Serial.println("CIRCLE 0x9614E178");
      if (state == HIGH){
      state = LOW; //system start helmet closed /ON
      digitalWrite(servoPower, HIGH);
      Servo1.write(80);
      delay (100);
      eyenimation();
      delay (1000);
      digitalWrite(servoPower, LOW);
      Serial.println("HELMET CLOSED");
    }
    else{ //helmet open
      state = HIGH;
      digitalWrite(servoPower, HIGH);
      digitalWrite(eyes, LOW);
      Servo1.write(170);
      delay (2000);
      digitalWrite(servoPower, LOW);
      Serial.println("HELMET OPEN");
    }
    time = millis();
    }
    else if (results.value == MINUS)
    {
      Serial.println("MINUS 0x56484D64 ");
    }
    else if (results.value == SUN) //eye light
    {
      Serial.println("SUN 0xCB18E2E4 ");
      if (lightstate == LOW){
      lightstate = HIGH; //system start helmet closed /ON
      digitalWrite(ledPin, HIGH);
      Serial.println("EYE ON");
    }
    else{ //helmet open
      lightstate = LOW;
      digitalWrite(ledPin, LOW);
      Serial.println("EYE OFF");
    }
    time = millis();
    }
    else if (results.value == MINUTE)
    {
      Serial.println("MINUTE 0x3C51AEF8");
    }
    else {
      Serial.println("Unknown Code Received");
    }
    irrecv.resume();
  }
}

void eyenimation(){
digitalWrite(ledPin, HIGH);
digitalWrite(eyes, HIGH);
delay (eyedelay);
digitalWrite(eyes, LOW);
digitalWrite(ledPin, LOW);
delay (eyedelay);
digitalWrite(eyes, HIGH);
digitalWrite(ledPin, HIGH);
delay (eyedelay);
digitalWrite(eyes, LOW);
digitalWrite(ledPin, LOW);
delay (eyedelay);
digitalWrite(eyes, HIGH);
}

Custom parts and enclosures

L Hinge
Print 4 of these.

Schematics

MK 85 Schematic
Electrical Schematic
Mark 85 schematic l758emo6me
Fritzing Schematic
Schematic fritz o1gjqtj6ma

Comments

Similar projects you might like

Spider-Man Mask with Servos and Bluetooth Control

Project tutorial by iiMc204

  • 8,784 views
  • 4 comments
  • 22 respects

Avenger Assembled: Iron Man Helmet & Arc Reactor

Project tutorial by Gregory O. Voronin and Phil V

  • 11,739 views
  • 6 comments
  • 31 respects

Smartphone-Controlled Helmet with LED Turn Indicators

Project showcase by Kristjan Berce

  • 3,313 views
  • 1 comment
  • 10 respects

How to Make a RC Controller

Project tutorial by MisterBotBreak

  • 2,154 views
  • 0 comments
  • 9 respects

Asi (Anansi) Robot Companion

Project tutorial by Jorvon Moss

  • 15,405 views
  • 14 comments
  • 161 respects

Exoskeleton for Paralytic Arm

by somrkmv1997

  • 8,782 views
  • 9 comments
  • 57 respects
Add projectSign up / Login