Archive for the ‘Projects’ Category

Pip Boy 3000 Build Log

As I posted on my blog yesterday, my brother Noel contacted me and asked me if I would help him build a fully-functional Pip Boy 3000! I’m totally psyched to do this.


Adafruit has a very detailed build here, and that links to the “pypboy” software here:

Update 2016.05.20: I have found there are two “main” versions of this project floating around the web. The second one being here: I call this the “second” because it appears to have more enhancements. (And, more importantly, because I presume Adafruit linked to the original – this may be incorrect!)

Important Note: Be warned that if you use the Adafruit feature to “add all to cart” you will get a different type of knob than the project expects! I got a full-blown rotary encoder, which is a much better option is and just the “rotor-switch” (or “multi-switch) type of knob that the script now expects. (I’m working on this.)

Repository for this project: (Update 2016.05.22) I found that I can easily import the “grieve” repository into GitHub. All I did was import the project and GitHub even preserved the complete history of the project! Apparently GitHub can import from any URL, as long as it contains a Git repository. Good to know! 😎👍

So this project now has a repository located here:

Update 2015.05.29 – I’ve decided to backtrack slightly. I thought that the grieve repository was newer, but I’ve found this is incorrect. The sabas1080 repository actually has the most recent commits. Not only that, there are no less than 15 forks on Github. So I am spending a little time reviewing all of these to get the most complete implementation. I will then fork that project (fork/clone). I hope to make some updates to this, too. The software appears to be well-written, but without all hardware connected, it does not function properly. At this point, I think the only “problems” may be the missing hardware. At least I want to get it connected before I start trying to “fix” anything.

Enough of that, now back to some plans…. 😇


Pip Boy 3000 from Fallout 3

Pip Boy 3000 from Fallout 3 and Fallout New Vegas

I have seen some builds on other sites as well. However, I have not seen a build like I plan to do! I am quite knowledgeable in Python and becoming so about the Raspberry Pi (RPi).

Since this is our hackerspace and we like to feature actual builds, I will not post details about future plans here, but rather keep this post strictly fact-based. (I always have loved a strong dose of nonfiction along with my sci-fi and fantasy desserts!)

For now, all I’ll say is this is the goal. And you can even click-through to read all about the Pip Boy 3000 on the Fallout Wiki! 😎

So far I have all of the electronics (assuming this touchscreen is big enough!) and the 3D print is scheduled to arrive Thursday, 2016.05.19! So I hope you’ll stay tuned! 

Update 2015-05-20: 3D print has arrived! This thing is awesome. Check this out:

2016.05.23: I found the py-gaugette works well almost as-is for a rotary encoder. If you want to use a rotary encoder, I found that it works well. There is another library by Bob Rathbone that is much more compact, but I found that it expected different GPIO connections than my rotary encoder has.

However… (and I apologize if you are subscribed to this post today… I’ll try to limit future updates), we have decided to go back to a rotary switch. This is actually what the script expects. After this part arrives and I get it wired-up, I’ll post some details about it, and of course a schematic when everything is finished.

2016.05.24: The rotary knob arrives today so I hope to get that soldered in place. It would be nice to complete enough of it that I could run my first test today. This may be a little optimistic, but we’ll see.

Meanwhile, I’ve already started the soldering job so I can share a photo of that progress, at least!

Several electronics parts soldered together

Soldering progress so far, along with a printout of the “schematic” from Adafruit.

Update 2016.06.25: LED Buttons!

I wanted to make the buttons function like they do in the game. However, after calls to both Mouser and Digikey, I found that there is no such thing “illuminated button” of any type that will fit inside the holes in this Pip Boy. (Drilling them larger is not an option because the 3D print contains a “lip” or flange that wraps around each LED.)

So, I had the idea to make my own using only an LED and a button. I would simply superglue the LED on top of the button and wire everything up through perfboard supporting them. Simple, right? Well,  it turns out to be much simpler in concept than in practice.

First of all the holes in the perfboard did not line up  exactly with the  holes in the Pip Boy. to solve that, I sort of tilted toward the outside two LEDs on each end. (It’s not terribly clear in the picture, but the one on the right side is a little more obvious in this picture.)

"Handmade" orange LED pushbuttons

This doesn’t give me much room on the bottom  for soldering! The two leads from the LEDs go down on either side of the switch (obviously) and then come out the perfboard just between the two leads for the button. But I’ve soldered things that were tighter than that before and got them to work, so I’m sure I can do this.

Note that the taller LEDs are required. (Some of them are shorter, and they would not fit up through the hole in the Pip Boy.) also, you don’t really have room for the  wire leads to fit up through the holes, so this might not work  for some builds.


Mojave Grass Detector

An update from Nero:

Hello Bot-Doctors,

I started working on the mow-bot project again and want to show-and-tell my current work.

Picture 1 mainly shows the grass counter, which is just a prototype.  The counter is constructed of 6 slats of wood glued to a 2×4.  The 6 slats make up 5 compartments.  Each compartment has a laser on one side and a light sensor on the other.  The design is simple.  The laser beams directly on the light sensor and sends a High to the Arduino.  When grass moves through the beam, a Low is sent.  The Arduino (a Nano located on the right side of the breadboard connected to the 2×4) counts the Lows for a small amount of time.  So, during that given amount of time, the compartments with the higher counts will have more uncut grass passing through them than the lower counts.  The 5 compartments’ counts are sent to the master board (located in the cardboard box) using I2C communication.

Also on the 2×4 breadboard is a 5v and 3.3 volt power supply module which is powered by the 9 volt battery.  The modules are very nice.  They are made to plug into the breadboard (in the positive and ground pins on both sides of the board) and have jumpers (on each side) that allow you to select 5 or 3.3 volts.  So you can power one rail of the board with 5 volts and 3.3 on the other or the same voltage on both sides.

Picture 2 is just a close-up of the 2×4 breadboard.  In the middle are the 5 ICs that convert the light signals to High/Lows and send the result back to a digital pin on the Nano board.  I bought the ready-made ICs on ebay for about $1 a piece.

Picture 3 shows a close-up of the master board (Arduino Mega) and the white breadboard.  The breadboard has a power supply just like the one used on the laser component.  This powers a Bluetooth module (tall rectangular thingy) and powers the 3-axis compass (small square).  The Bluetooth module communicates between my Windows cell phone and the Mega board using a serial connection, but the compass uses I2C.  So the compass and the laser use the same I2C connection.

My Windows phone’s app was created using Microsoft Visual Studio.  There’s a plug-in for cell apps, so it’s pretty nice that I can use MS Studio to design my interface.

I bought a higher dollar GPS a few weeks ago from SparkFun.  The GPS uses WASS which is supposed to give me up to 2.5 meter accuracy.  My old GPS was giving me around 10 meters, so I stepped up and paid $40 to get better positioning.  Hope it works.  The GPS has a tiny JST plug, so I need to fool with the wire before I can hook it up.  The code is ready to receive the GSP coordinates, but I’m waiting on my shipment of Nanos so I can have a dedicated processor to retrieve the results.  I2C communication will also be used to connect the GPS Nano to the Mega board.

Once I get the GPS communicating, I’ll start on the sonar module.  Actually, the sonar module is complete, but it was previously connected to a PIC 16F628 chip.  I’m done with the PIC chips, so I’ll connect it to a Nano when they arrive.   I’ll send more pics as I get more sensors connected in the future.

And another update:

I’m currently rebuilding the laser sensor housing.  The previous pics I sent showed the sensors embedded in a 2×4, but that was just for testing.  My little robot wouldn’t be able to carry the heavy 2×4, so I rebuilt the housing using balsa wood.  I’ve included the pics of the balsa version and plan on hooking it up to the robot this week.  I send pics of the monster when I get it all connected.

A Light Show with RPi

A friend of mine set up his Raspberry Pi to drive a mechanical relay based on MIDI input. He plans to use it with an FM transmitter to broadcast holiday music with synchronized light effects. They key piece of software is LightShowPi which converts audio frequencies to GPIO signals on the RPi.  These pins in turn drive the relay channels and ultimately the power to individual lights.

Raspberry Pi based security camera

Yes, I know there are a lot of projects like this on the net, but I had to investigate the options. I settled on using Linphone and writing a custom server script that detects motion, takes a photo and emails it, and also sends a chat message to a list of people that motion was detected. You can also connect to the camera with Linphone to monitor in real-time. However, you will not get email notices/photos while you are monitoring so it will be up to you to record those sessions, if you want them. (You must be recording from Linphone *before* an event happens for this to work.) For these reasons, this may work better as a “hands-off” solution because with the automated emails at least you’ll have proof all the time.

This project is checked into my personal Github repository, here: Raspberry-Pi-Security-Camera You should always find the latest executable code in this main branch (or the trunk). I want to use Github more so I encourage you to post your thoughts as issues, if you’re so inclined. I would appreciate the input and you might just get a feature for free! 😉

I intend to post a lot more about this project. But for now, you can find everything you’d need to build a device, by way of a Fritzing file in the project. However, the ePIR sensor I’m using in this version has been discontinued.

I am currently building one of these devices as a permanent circuit. (A “hardware device”.)  One thing I need to do is upgrade it to use either the ePIR or the very common PIR (Passive Infrared) sensor. So I plan to post pictures of the project, sloppy soldering and all. 🙂

For now, have a look at the project. The main Python file is only 314 lines (at last check). It’s amazing what I can do in such a small amount of code and I am already hooked on the Raspberry Pi. For later, check back here for more information on this fun project.

<later> As promised: sloppy soldering and all! BTW, I just finished testing everything so far. Do NOT solder with your multimeter underneath it! 😉

IMG_3991 IMG_3992

I’m excited to be using Adafruit products for this build. I won’t say who my customer is, but I already guaranteed my work so it must be good. So Adafruit was a very good choice, IMO. Economical quality and reliability. (Hey, they should pay me for this stuff! LOL)


UPDATE 2016.02.12:

It’s working! I will post some more pictures later and upload the code to Github because it is working with the new style of PIR sensor, not the discontinued ePIR SBC (module).

This is sorta funny because I built an entire circuit board yesterday and tested the continuity of each solder point to make sure I had no shorts, so I was puzzled. I thought that if I got a good night’s sleep, I would figure it out. So this morning I arose determined to figure it out and the first thing I checked was the problem! I had the GPIO cable backwards! I know… I’m lucky i didn’t fry the Pi, or parts of it, by doing this. But fortunately my script is fairly simple as far as the circuit board goes and it did not cause any problems. (Whew!)

And if you’ve been paying attention you’ll notice the fact that I started another circuit board yesterday. That’s because I had started the first one with the Pi T-Cobbler, which will not work with the Raspberry Pi 2/B/B+ because they have 40 pins and this breakout is for the older number of pins. (I forget right off, was it 28 pins?) Except that if I want to use one of the PiTFT screens, I do need the smaller breakout because it plugs into the back of the screen and not the GPIO header because that’s where the screen is! (Am I rambling yet? :D) Read more

Activity Update

First, I apologize for the lack of updates of late. Hacking, for most of us, is a spare-time activity, and I am no exception. If I recall I left off, more or less, around the first of the year with PocketWatch at an alpha version. It works, but there are a few bugs and missing features. Since then I got married, changed jobs and remodeled the house. Now I’m back! I’m not sure if I will put much more effort into PocketWatch. I’d like to but other interesting projects await. Stay posted for info on a BeagleBone Black / ROS quad-copter project lead by Boogieman. In the meantime, check out this video of the T.E.A.L., a robot built by students from my high school for the annual BEST robotics competition. They’ve done a great job! Can’t wait till they finish the claw!! 🙂

Mjolnir – Project Complete

Section9 is proud to announce that we have finally completed the Mjolnir project! This has been our most ambitious project to date, but it was well worth the effort and we are pleased with how it turned out. Although it’s not official, we are currently in the early stages of designing a second version of the robot which will include significant upgrades to the power system, operating software, and processing power. Stay posted for more announcements. Until then, enjoy the video.

Project Update – Go Me Sudoku!

Due to lack of interest, we have decided to discontinue the Go Me Sudoku! project. Go Me Sudoku! was our first attempt to create a game and so we pull the plug with some reluctancy. Unfortunately, it was designed as a web application for Facebook. In the short amount of time that we worked on it, we discovered that the Facebook API is subject to change somewhat dramatically with little notice and a more effort than we care to commit is required for maintanance. This is true of web applications in general as they sit on the very top of a dynamic and fluctuating ecosystem of technologies and with HTML5 now so close, we see little reason to continue investing in something that is already obsolete.

So it goes…

Mjolnir – Update

I apologize for the recent inactivity here at section9. We’ve been very busy wrapping up the loose ends of the Mjolnir project. I suppose I’m a sucker for scope creep cool new features so things are running a little behind schedule, but I’d like to give you an update and talk about some of the features.

First, the last couple months have been spent rewriting the android client (now called Mjolnir Control Panel) to be modular and forward compatible with a BeagleBoard controller, which is how we see the project evolving. Also we’ve spent a lot of time migrating the robot navigation code (SARC) from the Arduino IDE to Eclipse. This is a particularly cool aspect of the project that allows us to develop collaboratively from any platform using one of my favorite development environments. Not that Arduino IDE isn’t cool, but it’s nice to have Git integration, auto-completion, code-folding, syntax highlighting and all the other benefits that Eclipse provides.

We’ve also added a history feature which tracks all navigation activity and will activate whenever the client connection is lost. This works as a “return to base” function but can also be used as rewind/fast forward. We’re not totally sure what we’ll do with this but we hope to eventually support a self-driving mode and may use it with future AI routines.

Support was also added for LCD debug output and Xbee wireless communication.

Anyway, we are working out the last few kinks in the latest version of the SARC code. Once that is done, the rest is just documentation.

Stay posted hackers!

Mjolnir – Progress Update

Project Mjolnir is nearing completion! Here is a quick preview of the latest changes.


  • /dev/tty/ACM0 – The serial output of the Arduino device which runs the navigation subsystem.
  • MjolnirClient – The Android client app for driving the robot (running on an android virtual device).
  • IP Address – The user configurable IP address of the Mjolnir robot.
  • The live video feed from the Mjolnir IPCam.
  • The debug console. Displays all data sent from the Navigation subsystem.
  • SensorSimulator – Third party utility by OpenIntents for simulating sensor data in an android virtual device.
Check out the following video to see a little more of what we’ve been working on!

Mjolnir Preview

Here is a quick preview of the first Mjolnir demonstration. The prototype shown below is running the beta1e version of the SARC driver software. Currently all hardware requirements are fully functional including Wifi remote access, IPCam video feed, and Aduino servo control. We still need to tweak the SARC configuration variables a bit and the power supply circuit requires significant optimisation, but overall things are going well and the project is back on track to complete near the end of December. Stay posted for more updates and enjoy!

Return top


Section9 is a hackerspace based out of the Springfield Missouri area. For more information, please see the About Us page or find us on Facebook.
%d bloggers like this: