3D Printer CS:GO bomb

Wrapping up the CS:GO bomb project

The making of

In the last post about the project I left you off with a picture of the yet to be finished 3D print of the bottom of the case. I’m glad to tell you that the bomb has been finished, and works perfectly!
If you haven’t read the last (and first) post about this project, I highly suggest having a look at the post here.

So: at this point all the parts have been 3D-printed. It was time to see if everything fits in the bottom part of the case! Remember, I designed (or rather: remixed) this model on my own, so there was a great chance that the dimensions would be a bit off. Luckily, everything fit together nicely at the first print. The most critical holes were the defuse-button hole, the XT60-shaped hole and the hole for the battery voltage indicator. The other 2 holes for the wires and the battery strap weren’t really that critical, since it’s fine if there’s a little wiggle room.

Fitting all parts in the bottom of the case for the first time.

As you can see from the picture, I have also soldered the D1 mini board to some perfboard, with lots of connectors on it and once single resistor (which is a pull-up resistor for the defuse button).

Closeups of the perfboard.

The block-terminals are used for power (+5v and ground), data pins (LEDs and beeper) and the button connectors. The male pin-headers are used for the keypad and the LCD screen. The D1 mini board is also installed using female pin-headers, so the board can be removed if needs be.

After hot-gluing the 5v buck converter and the custom-made perfboard in place, it was time to place the buzzer and lots of LEDs on the outside of the bomb. The LEDs are individually addressable WS2812B LEDs, so I can easily control each LED while only using one data wire. In the end I did not add any code to control each LED independently, but I can add this in the future if I want to.

After wiring and gluing the LEDs and beeper to the outside, the bomb was done! Well, the physical side of it at least. The firmware still needed some changes, more on this later.

Photos of the finished product.

Like I said, the firmware still needed some adjustment. I wanted to be able to change the time after which the bomb would explode, and I also wanted to be able to change the defuse time on the fly. I thought about making these changes over the air using my laptop, but I have an LCD and a keypad on the bomb.. Might as well use it! So I made a little menu with which I can change a couple of parameters. These values are stored in the built-in EEPROM of the ESP8266.

And with this, the project is done. With the web server the bomb is hosting, I can write a program on my laptop to keep track of the state of the bomb. This way I can play certain audio files when, for example, the bomb explodes. I could connect my laptop to a big audio installation and a subwoofer, for example, to make it sound like an actual bomb exploded!

Bill of materials (BOM)

A full BOM for the bomb (get it?). I bought almost all parts from Banggood, but I’m sure the parts can also be found on websites like Amazon. I had most parts laying around at home which made it a bit cheaper for me.

Possible revision 2

There are a couple things that I could have done better. If there will ever be a rev. 2 of my bomb design, these are the things I would change:

  • Built-in battery with a charging circuit to allow charging from a USB port. I used a drone battery, battery strap and XT60 connector to save cost because these are things I have laying around at home;
  • Change the loudness of the beeper in the menu, the beeper I got can’t be adjusted in loudness;
  • Use a microcontroller with more pins. I would love to have controlled the LED in the defuse button through the microcontroller as well, but I couldn’t because there are simply not enough pins on the D1 mini board;
  • Make a case design using the real bomb model in the game. I found the model of the in-game bomb here, but my design skills are simply not good enough to make changes to a model this complicated.


Case design:
Arduino code:

And now..

The project is done! Now I’ll have to start finding something else to make.. However, we can start playing some CS:GO matches in our garden using laser guns!

It was a lot of fun to make a CS:GO bomb simulation in hardware, in real life. I learned a lot, especially how to do more advanced 3D model design. I hope you’ve enjoyed reading these 3 blog posts as much as I did making the bomb!

3 replies on “Wrapping up the CS:GO bomb project”

I really like what you have done. Great BLOG and source code!

The only thing that would be nice that you add is a video of your device working. Unfortunately the only way to hear the sound your device makes is to build it from scratch.

PS. Thanks for patching the code on github.

Leave a Reply

Your email address will not be published. Required fields are marked *