This is a summary post about my Mini NES build. This project is a derivative of the original efforts of DaftMike. I used his 3D print files and basic source code, then reverse engineered the circuit from his Electronics Kit that allows the Raspberry Pi to talk to a NFC reader and an Arduino to control power. Improving on the design with added features such as Fan Control and NFC Writing. While also fixing bugs including lost Controller Configuration, Bad Power, and allowing Out of Order Assembly.
If you are interested in making one of these, you can checkout my build instructions here:
Beyond all that, I run several small businesses. This post is a quick summary of the services I provide for my communities.
Electronic Circuit Commissions
Since 2008, I have designed and assembled at scale runs of many circuits. From light and sound ghostbuster and halo props, to writing software for a full graphic display for nerf with RFID lockout. I also design lasertag gear, including a handheld IR programmer (host station).
Most of my circuit projects, I post about on this website. You can browse around to preview my work. If you would like me to make something for you, send me an email and we can work on the details. firstname.lastname@example.org
Laser Tag Parties and Rentals
I have a sub-domain that I run my lasertag business from, party.westaby.net. This is a mobile lasertag company, we bring the fun of larger lasertag arenas to your local park, school, church, or even backyard~!
On facebook. I run a help page for buying and installing antennas. Antenna reception is difficult / expensive in my town. I offer free advice to people in the Platteville area on basic antenna selection, mounting, and aiming strategies. I have a success rate of 90%. Which is why I also offer a more personal service where I visit a client’s home with a temporary antenna mount and scan for channels you can actually receive. Saving them from going through all the trouble themselves.
Proton Packs are special for me. A proton pack was the first costume prop I ever made and was very much a junk build. Working light and sound circuits and only the alice frame is screen accurate. I worked on mine in parallel with my brother, so we could both be Ghostbusters for Halloween 2008. I have been making props and commission circuits ever since.
My original proton pack took me 3 months to research and construct, start to finish. So when my wife told me she wanted to be Ghostbusters for Halloween 2016, my reaction was to skip the proton pack for her costume. Stick to the jumpsuit and arm patches, then she can borrow my PKE meter for the night. But as the wedding date came and went, I found a youtube video by indy mogul of a junk build. That was all the inspiration I needed. Some quick research on gbfans in the Reboot Pack parts identification thread and I was able to complete my wife’s proton pack in 8 days.
If you would like to make one of these. All my plans, references, part lists, source code, etc… are on Google Drive.
In 2015, I did a run of EMF readers with an updated design using an upgraded sound effects circuit. This is an assembly guide for making that EMF reader. For my older EMF Reader design that is not dependent on custom parts, see here.
There are two custom parts that you can purchase from me, email me for details: email@example.com
Tools Needed: Electrical Tape, Scissors, Glue, Solder Iron, Solder, and a Wire Cutter.
Parts Needed: Needle Graphic, Meter Parts, 6x Washers
Instructions: Take apart the meter and remove the plastic wheel. You can now de-solder the potentiometer from the meter’s circuit board. Set aside. Next, cut the wires to the meter’s needle assembly leaving enough length to re-attach to the emf circuit. The needle assembly is screwed down and beneath the clear plastic housing that is also screwed down. Remove both. Be VERY careful with the needle assembly, it is fragile. Re-use the two screws from the needle to help align with the emf reader holes. You can use 6x washers to add some spacing between the needle assembly and the circuit board. This helps provide clearance and allows free movement of the needle. But be careful, as the washers are magnetic.
Instructions: Make room in the battery box for the screws in the battery box by removing a bit of plastic from behind the switch. No cutting needed, the plastic pops out. Align the battery box cover with the circuit board. Make two marks in the cover with your pencil. Make 1/8 inch holes with the drill in the marked spot. Use the washers as follows: SCREW |== (WASHER) |PCB| (WASHER) ==POST== (WASHER) |COVER| ==| SCREW
Assembly is now complete, calibrate and learn how to use your emf reader below.
Adding new sound effects to the EMF Reader is simple. Just plug into the usb port to a pc. The EMF Reader will mount as flash storage on the pc. Drag and drop the new .wav or .ogg file, then “eject” to safely remove the usb device.
Next step is selecting the new sound on the EMF Reader. The EMF Reader reads the first 5 files in storage and maps them.
To select the new sound, turn on the EMF Reader then move the mode select toggle switch to the center position. There is no center position, so you will have to balance it there. When you have correctly set the center position, the light on the back of the reader will rapidly flash.
With the EMF Reader in setup mode; press the button on the back to cycle through any of the first 5 files. When the correct file plays, flip the toggle switch to exit setup mode.
EMF Reader Outline
Get to know your EMF reader. Note the numbered arrows in the picture.
Needle Calibration Screw Wheel, Sets high position
Toggle Switch: Mode selection.
Hidden Button: Located on the back of the EMF Reader, use this button to override normal EMF operation and force a “ghost” event.
Left blue screw wheel calibrates the analog meter needle high position. Place the EMF Reader in interactive mode, and hold the hidden button. This will hold the meter needle high. While holding the button, use a screwdriver to adjust the needle’s high position.
Modes of Operation
How to Enter
Change toggle switch to the right position.
Pressing the hidden button will activate the sound and light pattern.
Sound and light pattern will run in a loop, cycling between high and low readings.
Change the toggle switch to the left position.
Press the hidden button to activate the meter. Meter and lights stay high until the button is released.
EMF Reader will always read as high until the hidden button is pressed.
*Hold the hidden button while power cycling to enter an alternate mode.
**In modes that do nothing until the button is pressed, lights will blink every few seconds to indicate the meter is on.
Meter does not sweep or sweeps too high
Needle is touching the back. Use a tweezers to push away, bending slightly out.
Meter potentiometer needs calibration. See Meter Calibration above.
Debris has gotten stuck in the meter’s electromagnet. Gently spin the magnet and ensure that it doesn’t “catch” anywhere. Even something as small as a hair can prevent free spinning.
Sound is garbled and sounds bad
Voltage to the speaker amp is too low. Replace the batteries.
Not all sound files sound great on the small speaker, experiment with other sounds.
Note: Be sure to use good batteries. Recommend: Energizer Ultimate Lithium.
Howdy folks, quick announcement from Robert Bontrager (Windjammer) and myself (thatdecade). Windjammer recently reached out to me asking if I would fully take over our team developments. I agreed and intend to breath some life into some old projects. Details to come!
Summary: Some old insights are still true. Hardware has almost 2000 times more transistors in each chip comparing 1995 to 2015, but steadily increasing software demands of hardware have given us slower and slower systems. A basic task on a 1995 machine completes only slightly faster on a modern machine. Our computers are not 2000 times better or make us 2000 times more productive.
I was reading a press release from Intel on the feasibility of chip advancements after the next gen 10nm chips. Ideas do exist, but nothing will gain the power and speed that the brute force method of “make it smaller with more transistors” approach has for the last 60 years.
Got me thinking about the end game. We have been privileged to sit back and enjoy ever increasing gains from improvement to chip hardware. However, the nature of exponential growth means we have to hit a limit at some point. That point is fast approaching. Could be 2017 or 2020, doesn’t matter, we are already there.
We hit that limit around 2006. That was the point where chip manufacturers could no longer double the number of transistors per chip every 2 years. Instead, Intel and others began making chips with 2+ cores. The guts of two chips inside of one chip casing. You could consider this cheating. These new multi core chips needed special software to run in parallel. Software does not run faster simply by adding more cores. The multicore overhead limits gains like this. For example, the jump from 2 cores to 4 cores was 200% the number of transistors, but only 20% faster running the same multicore software.
Where do we go next after the completion of moore’s law and the end of brute force improvements to hardware? Optimizing what we already got. There are still improvements remaining to be made to hardware, but nothing that will deliver us any magnitude improvements of what we already have. Instead, software engineers are going to have to save the day.
Modern software won’t run very well on chips from 2006, but you can look at similar software available at that time to do a comparison. The scary thing? With the boom of parallel processing, software has gotten slower.
Software bloat is the real reason for computers slowing as time trenches on. Is a concept worth a read on wikipedia. I will summarize some of the causes:
1. Lazy software engineers. As hardware has been improving 100s of fold since 1990s. Software folks have been enjoying making new generations of software that are not very efficient but is hidden by the faster hardware speeds.
2. Change in software tools. Prior to the 1990s, software engineers were limited in memory and speed. By necessity, they had to work much harder to create the most efficient solution. Often this meant writing code in assembly, the machine language. Today’s software folks use high level debugging tools. Are useful sure, but are far removed from the actual code that runs on the chip.
3. Software has become huge. No single person understands every part of what has been cobbled together. How could they? The modern operating system is developed by hundreds and thousands of individual people contributing millions of pages of code.
Many futurists will talk about something called the technological singularity. The point where a computer can design a better version of itself. Rewriting better and faster versions of itself, at a incomprehensible speed. Leading to an explosion of powerful computers that humans no longer understand. Too late…
I have offered ammo counter kits for nerf dart guns for a while now. With a tweak to the ammo counter software’s min time between fire events and the addition of a photo sensor, you can install my ammo counter kit on a nerf gun and keep track of shots remaining in your clip even while full auto firing.
What allows this to work is a light break sensor. The part number I recommend is the OPB100Z. It comes with an IR LED and a Phototransistor. The LED creates a beam of light, and the phototransistor acts as a switch. When the light shines on the sensor, the transistor conducts and the ammo counter reads voltage. However, when a shadow is cast on the sensor the circuit is broken and the ammo counter fire input is grounded.
Below is how to wire the light break sensor into an ammo counter. The wire leads on the light break sensor are color coded, follow the colors in the diagram below. Place the sensor and light on your barrel so each dart fired creates a shadow between the sensor and light.
During your install and testing, you will be unable to see the light with your eyes. Your human eyes are not sensitive to IR light. Instead, point a camera or smartphone at the light and you should see the white/blue light on the screen.
I do not currently sell light break sensors, but do tell me when purchasing a kit that you intend to use one. I will program with special software and include the extra two resistors seen in the diagram.
Places to buy a light break sensor, part number OPB100Z:
What is XBConnect? It was an online gaming service for the original Xbox. This was before Xbox Live was popular. XBConnect used the system link mode built into many Xbox games, basically hijacking the network traffic and rerouting over the internet. XBC stayed relevant through the years due to two factors: 1. it was free and 2. it was compatible with the “new” xbox 360 which used the same system link as the original xbox.
XBConnect was a great service for broke college kids who had access to non-dial-up internet. After writing several help guides, I was invited to be a moderator and eventually an admin of the forums from 2004 – 2014. You can still find some of the guides I wrote, hosted here:
As of last year, XBConnect went offline for good, and it’s sad. The downfall started when the software was abandoned by the original author, leaving only a copyrighted closed source to the remaining team to keep the servers running. They had permission to add new games to the gamelist, but no new features or bug fixes were possible.
What’s left? There are some cool people that still know what XBConnect was on facebook, and run a fan page. facebook.com/XBConnect
Other than that, is not much. The website is gone, the servers turned off. You have to scrounge the internet wayback machine to find any mention of XBC.
XBConnect doesn’t even appear in the english wikipedia, here is a finnish one: https://fi.wikipedia.org/wiki/XBConnect
If you are making a Boba Fett costume, the display on the chest piece can be especially troubling. Outside of a one or two available on thedentedhelmet.com, there isn’t a lot available. Leaving a builder to come up with alternate displays. Such as using a decal or placing a light behind a printed graphic on transparency sheet. Cheap and it looks ok, but is not animated. An animated display is much more appealing.
In this guide, we will go over how to create an animated display for the boba fett’s chest armor. You will need at least beginner soldering skills to complete the circuit. All the parts add up to less than $40.
Once you have gathered all the parts, you can begin putting it together. Start with the bargraph board.
Examine a bargraph display part and look for the small notch in one corner, this marks the anode side.
Examine the bargraph display PCB. With the bargraph picture side facing you and the 6pin connector on the left, the top is the anode and the bottom is the cathode.
Solder the two bargraphs into place, being careful to install right side up. They will not function is installed upside down.
Next is to solder the rear parts on to the main board.
The row of ten resistors at the top are labeled 1k and 50. The part list does not include 50 ohm resistors. Instead any value from 33 to 47 may be used, lower is brighter.
Solder on the 5 x 1k ohm resistors to the spots marked with 1k.
Solder on the 5 x 47 ohm resistors to the spots marked with 50.
The next row down are the transistors. Orient the transistors so the flat side faces the same way as pictured. Solder them in place.
Optionally, after inserting each transistor into the board, you can fold it down flat against the board before soldering. Thinner circuit is easier to install in your chest piece.
The remaining two parts are the capacitor and 10k resistor. Solder in place where indicated.
Clean up. Turn the board around and clip the excess leads off.
Now to solder the front parts on the main board.
Examine a digit display part, look for the small notch. This marks the orientation.
Insert each of the 5 displays, but do not solder down yet. Double check that they are inserted right side up. They will not function is installed upside down.
You may now solder the displays. The solder points are between the resistors on the other side. Use the solder wick to clean up any unintentional solder connections.
The final part to go on the front of the main board is the chip. Again, note the notch for the orientation.
Last is to wire the two boards together and power up.
Figure how much space you need between the two displays.
Examine the area on each board labeled display connector. The line next to one of the pins indicates orientation.
Cut 6 wires to cover the distance between the connectors adding an extra inch for positioning.
Solder each of the six wires, positioning pin 1 to pin 1, pin 2 to pin 2, and so on
Connect the battery pack, the wires are color coded. Red goes to +, Black goes to -. Do not mix these up, you will destroy the chip.
You can use other arduinos or switch and display choices. The linked ones were chosen for number of pins and size. This project uses 16 IO pins from the arduino and the trinket is the smallest arduino that can be programmed over usb.
If you get a different display, it must have the following traits:
Common Cathode, the common pin is ground (do not want Common Anode)
Two Single Digit 7 segment displays, with 10 pins on the back EACH.
- OR -
One Dual Digit 7 segment display that is non-multiplexed, with 18-20 pins on the back (multiplexed only has ~10 pins)
Wire Display to Arduino:
Get out your solder iron, wire strippers, and some note paper.
Wire display digits 1 and 2 as shown below, diagram only shows one digit for simplicity.
The common pin (CC) goes to ground.
The period (DP) can be left unwired.
Each segment is wired to a unique pin on the arduino, can use any arduino pin marked as D or A.
The exact pins wired to are important, write them down for later. To run the software without modification, use the default pinout table below.
Diagram shows resistors between the display and the arduino. When using the 3.3 volt version of the arduino trinket, no resistors are needed.
Default Arduino Pinout
Digit 1, Segment E
Digit 1, Segment D
Digit 1, Segment C
Digit 2, Segment E
Digit 2, Segment D
Digit 2, Segment C
Digit 2, Segment B
Digit 2, Segment A
Digit 2, Segment F
Digit 2, Segment G
Digit 1, Segment B
Digit 1, Segment A
Digit 1, Segment F
Digit 1, Segment G
Finish Wiring Assembly:
Wire the fire switch to a digital pin and ground.
Wire the reload switch to the reset pin (RST) and ground
Wire in the trinket to a 3.3 – 5 volt battery pack, blue and white color displays requires minimum of 3.2 volts.
You will need a micro usb cable. No batteries needed yet, the trinket is powered by the usb for now.
If you get the error message, make sure to press the button on the Trinket to activate the bootloader before trying again.
Optional Software Changes
With the source code open on the codebender.cc website, find and click the edit button to make changes to the software. After you have made changes, click Verify Code and resolve any issues, proceed to ‘Run on Arduino’ when the website indicates ‘Verification successful!’
If you did not use the default pinout, you must update the pinMap list with where you wired each display segment. Use the pin numbers you wrote down
If you want to use a different starting ammo count or firing types, scroll down and update ‘Starting Values’.
shotmode can be set to CONT for full auto or BURST for semi auto
burst_value is the number of ammo shot in each burst, default is 1.
counter_value is the starting ammo value.
shotmode = BURST; burst_value = 1; counter_value = 99; is used for paintball or nerf
shotmode = CONT; burst_value = 1; counter_value = 60; is used to match a Halo AR MA5B
shotmode = BURST; burst_value = 3; counter_value = 36; is used to match a Halo BR55
On startup, you will see the starting count of MODE1. Press the fire button and the number will go down 1 tick until 0. The LED (pin 13) goes dark when the counter reads 00.
Press the reload button and the display will go blank, and then reset to the starting count.
Hold the fire button down while pressing reset, this will change between modes. Display will report the mode number as F1, F2, F3, and so on.
Feel free to play with the software further to tweak the features to your liking. Have fun :)