Popup Headlight Wink With Arduino and Relay Board Featuring My Miata.





Introduction: Popup Headlight Wink With Arduino and Relay Board Featuring My Miata.

wiring up switches to make miata headlights wink is a pain, dont worry this is slightly less painful.

my goal of this project was to make the headlights wink or do other things using the factory switch. i thought it would be way cooler to make it look stock as possible but actually do more than stock. a sleeper build, if you will.

what this code does is one press of the headlight switch makes the drivers side headlight wink, a double click makes the headlights both go up or down, a short hold (1/2 second) puts one headlight up and the other down and a long hold (1 1/2 second) is for if some reason your motors get lost: it resets the variable to false and lowers the headlights.

i recommend the headlight switch modification in the second step but, it is not required.

this instructable can be used for almost any pop up headlight car, i have a miata so that will be the example i will use

everything will work with the headlights on or off.

[Play Video]


other than tools here is what i recommend to get

-arduino nano(~7$ebay)
-active high 5v 4 channel relay module(~6$ebay)
-at least 6 male/female pair shrouded connectors
-50 ft of 24 gauge wire of your choice
-a 12v in 5v out usb power supply
-2 butt connectors
-one of those breadboards that you have to solder or a solderless breadboard, soldered looks cleaner.
-2 ft of 28-30 gauge wire(if you chose a solder breadboard)
-a couple 6-32 screws with matching nuts
-a car with popup headlights

-im probably forgetting something, feel free to tell me in the comments.

Step 1: Take Out Your Center Console.

i forgot to take pictures so here is a guy who does a pretty good explanation

Step 2: The Optional Step

okay you know how your switch latches at the bottom after you press it, like a clicky pen?

yea, this is to make it not do that because it makes it a quadrillion times easier to use the arduino

the way this is achieved is by taking out the spring and tiny metal wire squiggly doo-dad from the switch. if you decide to do this, do it in a bucket/ tote because the springs like to make the connector, clips, contacts and springs go flying all over.

i did it in the garage and conveniently lost the parts for the headlight latch. dont follow my example.

A) take a little flat head screwdriver and wedge it between the connector and the housing, pop out the four little clips that hold the connector to the housing and then be ready for it to try and shoot off.

B) take out the little spring, not the big one. take out the little metal wire squiggly

C)put it back together

i wish i took pictures but i did this weeks before any of these other steps and neglected to do so.

if enough people want to do this step i will take it back apart and take pictures.

Step 3: Run Wires and Prep 'em

running wires from the switch connector to under the dash and from under the dash to each headlight motor

the wires for the motors and their colors by year


Step 4: Wire Up the Arduino

picture notes have all the information

Step 5: Upload the Code to the Arduino

if you dont know how to program the arduino, this is a good explanation.


if you know what you are doing with the code feel free to modify it and share it in the comment

EDIT: i modified the code a bit and made new double click the function the old short hold function and vice-versa. the miata headlight switch for some reason makes the double click un-reliable, also it makes it easier to get the headlights to flip back and forth this way.

Step 6: Put Everything Back Together and Clean Up

i am not responsible for any thing that happens to you or your car, positive or negative



    • Water Contest

      Water Contest
    • Creative Misuse Contest

      Creative Misuse Contest
    • Oil Contest

      Oil Contest

    30 Discussions

    Would this allow my 85 Z to have its lights on with the headlights down?


    Question 3 months ago

    what would you expect this entire project to cost start to finish?

    What did you enclose this all in when you were done?

    Is there an ability to code this to make "Sleepy eyes" with this as well, maybe by adding a timer?

    I'm looking to make one of these in the near future.


    1 year ago

    Awesome! :D I'm about to do this wish me luck. Also I watched your youtube video and Im wondering how you mount the LED light bars into the stock position and retained the motor functionality? I've seen LED's mounted there before but most of them are hard mounted and don't retain the up/down functionality.

    2 replies

    i had to make adjustable headlight linkages, stay tuned, ill have the designs up in a few weeks

    Awesome, looking forward to it!

    Hey. I have made a controller as per the above. However once the arduino is powered and running all four relays activate simultaneously and stay active. The headlights continuously go up and down until power is removed from either the nano or relay board. I removed the headlight motor control wires and powered the board again. When pressing the headlight switch it deactivates particular relays briefly then re energizes. would you have any idea of where i may have gone wrong. very new to everything arduino so any help would be appreciated.

    6 replies

    AH! you got an ACTIVE HIGH relay board, the code was designed for ACTIVE LOW relay boards. in the software change every use of the command LOW with HIGH and HIGH with LOW. when i get home i can send you an updated code for you that should work perfectly!

    I had a crack at altering the code as you suggested but the board is still playing up. They stopped constantly energizing after start up but are now randomly firing in odd sequences and I seem to have little to no control over the lights with the switch. Could the relay module potentially be a dud?

    check your connections and record the exact order of the relay firing if possible: it may help troubleshooting

    Hi Curly686,

    Id' also like a copy of the updated code if you'd be so kind?



    do you have a video demostrating the wink ?

    1 reply

    https://youtu.be/Iw2_0Dt-eI0 no idea why it didnt work in the instuctable

    https://youtu.be/Iw2_0Dt-eI0 i have no idea why the link wont work on the actual instructable

    hey looks awesome and exactly what im looking for, i have those same led bars ready to go in =, just wondering how you mounted them and also how you made them only come up to the half height? thanks!

    1 reply

    i used an adjustable headlight motor connector i made. ill be making an instructable coming up in the next couple months for how to make/ install them. ill also be selling them. contact me on instagram @corporalcabbage and i can keep you updated

    Nice instructable - and very useful for my project to do a similar thing with my Terrano roof spots.