Making roads safer

Similar projects worth following
We attempted to find an easy and cheap solution to limit drunk driving. Our project consist in a box, that will contain your keys and is locked by an electromagnet connected to a breathalyser. Once you blow into the breathalyser, if positive, it will remain closed. Otherwise the box will open itself.

Components we needed: capteur MQ -3 alcohol gaz sensor switch 3 or 2 positions,3 LED blue yellow and green, 3 resistor 270 ohms, arduino micro, micro servo 5g, cables, 3D Printer, Soldering iron and tin, glue-gun with glue sticks.



With our box finally printed, we can finally start arranging all the components inside!

MPEG-4 Video - 1.42 MB - 06/14/2018 at 10:02



Pierre soldering the cables on our nano card

MPEG-4 Video - 3.20 MB - 06/14/2018 at 10:01


  • 1 × capteur MQ -3 acohol gaz sensor
  • 1 × switch 3 or 2 positions
  • 3 × LED blue yelow and green
  • 3 × resistor 270 ohms
  • 1 × arduino micro

View all 10 components

  • 07/06/18

    Pierre06/14/2018 at 11:23 0 comments

    The 3D printer had finished printing our box and it was perfect. We started putting the different objects in the box to see if everything fitted well.

     Furthermore, we started working on our presentation, we thought it was best to do a DIY

    video explaining how to make reproduce our project.

    We also had to solder cables to our new card and also attempt to finally make our program work with the breathalyser.    

  • 28/05/18

    Pierre06/14/2018 at 11:22 0 comments

    We worked on solid works to make our final box so that we can print it with the 3D printer. Using solid works was a way to have the most precision and the measures, especially with the holes made in the box, which were tricky to do.

     We also had to solder the cables on the new arduino card.

  • 14/05/18

    Pierre06/14/2018 at 11:22 0 comments

    To diminish as much as we could the size of our box we had to find smaller components. Thus we tried to use a smaller card ( arduino nano) and attempted to make it work. Soldering was also needed to be done on this card. 

  • 07/05/18

    Pierre06/14/2018 at 11:21 0 comments

    We researched programs to use the seven-segment display on arduino and the breathalyser, which took us quite some time since some codes were wrong, but we also had problems with the cable connections. Pierre had to redo the soldering since the connections didn’t correspond. Pierre Emmanuel and Emily searched for the codes and how to connect the breathalyser to the arduino as well.

     We also continued to work on the modelling of our box using solid works.

  • 30/04/18

    Pierre06/14/2018 at 11:21 0 comments

    We received most of the elements we needed for our project and now had to put everything together. First of all Pierre took care of the soldering part.

    Emily did a first prototype of the box using cardboard. We measured with all the different objects including car keys to see how big and thick the box had to be.

    And last of all, we started to build our own breathalyser.

  • 09/04/18

    Pierre06/14/2018 at 11:20 0 comments

    We defined our project as officially being the alcohol test and searched for all the possible things we would need to make our project by respecting the demanded budget. We first looked at car keys that we could personalize but rapidly saw that it would be too difficult and illegal.

    We then looked at the steering wheel locks but they were too expensive for our budget.

    We then chose to use a basic ethyl test to help us with our arduino .

View all 6 project logs

  • 1
    Code for the box

    #include Servo monServomoteur; int mq3_analogPin = A2; // connected to the output pin of MQ3 int value; void setup(){ Serial.begin(9600); // open serial at 9600 bps monServomoteur.attach(9); monServomoteur.write(100); pinMode(8,OUTPUT);//blue led for saying you are too drunk try again later pinMode(6,OUTPUT);//green led for saying you are negative you can drive pinMode(4,OUTPUT);//yellow led for saying please wait digitalWrite(8,LOW); digitalWrite(6,LOW); digitalWrite(4,HIGH); delay(5000); digitalWrite(4,LOW); } void loop() { value = analogRead(mq3_analogPin); Serial.print("alcool value:"); Serial.println(value); delay(1000); //Just here to slow down the output if ((value > 70) and (value < 110)) { // range des valeurs pour ouvrire la boite monServomoteur.write(10); digitalWrite(6,HIGH); delay(15000); digitalWrite(6,LOW); } if (value > 120); { monServomoteur.write(100); digitalWrite(8,HIGH); delay(1000); digitalWrite(8,LOW); } }

View all instructions

Enjoy this project?



Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates