Introduction: HackerBoxes 0001: Robotic Smart Car, NodeMCU, 3D LED Christmas Tree
This instructable shares the basics of working with HackerBoxes #0001. HackerBoxes is the monthly subscription box service for electronics hobbyists, makers, and hackers. If you would like to receive a box like this right to your mailbox each month, you can SUBSCRIBE HEREanytime. We hope subscribers to HackerBoxes will use this instructable to make the most of their box contents. Of course, this instructable is for non-subscribers too. Box contents are fully described so that anyone can join in the fun with their own components and modules. Where possible, we include links to online merchants where the items may be purchased individually. Also, extra HackerBoxes (if available) will be in the online store at HackerBoxes.
Contents of HackerBoxes #0001:
- 3D LED Holiday Tree Kit with Battery Pack (buy at Amazon)
- USB Power Supply for 3D LED Tree
- 2WD Robotic Smart Car Chassis Platform (buy at Amazon)
- NodeMCU v2 – Lua-based ESP8266 Development Board (buy at Amazon)
- NodeMCU L293DD Motor Shield (buy on Amazon)
- USB Cable: Male-A to Mini-B (buy at Amazon)
- “Open Source Hardware” Logo Decal
Step 1: 3D Tree: Schematic, Parts List, Theory of Operation
3D Holiday Tree Parts List:
- R1, R3, R5 : 10K ohm resistors
- R2, R4, R6 : 1K ohm resistors
- R7 : 2K ohm resistors
- C1, C2, C3 : 47uF capacitors
- Q1, Q2, Q3 : 9014 transistors
- D1-D6 : Green LEDs
- D7-D12 : Red LEDs
- D13-D18 : Yellow LEDs
- D19 : Red LED
Each of the 10K resistors and 47uF capacitors forms an RC oscillator that periodically pushes the associated transistor on. The three RC oscillators are cascaded in a chain to keep them cycling out of phase which makes the blinking appear random around the tree. When the transistor is "on" current passes through a bank of 6 LEDs and their 1K current limiting resistor causing that bank to blink on.
Here is a nice explanation of the basic concept using a single stage (one oscillator and one transistor).
Step 2: 3D Tree: Resistors
Begin soldering by stuffing the resistors. Resistors are not polarized in anyway, which means that you can insert them in either direction.
Use a resistor color code chart or app to identify the different resistor values and make sure to insert them into the correct holes.
In some of 3D Christmas Tree kits, a couple of the 1K resistors are replaced with 330 ohm resistors. When available, the 330 ohm resistors should be used for R2 instead of the specified 1K resistor. According to the numbering system that we have used, R2 is the current limiting resistor for the green LED bank (D1-D6). Using this lower resistance allows the green LEDs to glow a tiny bit brighter, which can mitigate the fact that green LEDs often appear a little dimmer than the red and yellow LEDs.
In the end, the value of the current limiting resistors (R2, R4, R6, and R7) is somewhat forgiving and can anywhere around 300 ohms to 3K.
The value for R7 is specified on the higher end (at 2K) because R7 is the current limiting resistor for the red LED D19 at the top of the tree. Since D19 does not blink, it may appear much brighter, so the higher 2K resistance balances the brightness a bit with respect to the other LEDs.
Are you new to soldering? There are a lot of great guides and videos online about soldering. Here is one example. If you feel that you need additional assistance, try to find a local makers group or hacker space in your area. Also, amateur radio clubs are always excellent sources of electronics experience.
Step 3: 3D Tree: Transistors
When soldering in the transistors, be sure to align the flat side of the transistor to the flat side of the white outline on the printed circuit board (PCB). This ensures that the transistor is wired in the correct direction.
Hey Wikipedia, what is a bipolar junction transistor?
Step 4: 3D Tree: Capacitors
Solder in the electrolytic capacitors. These are definitely polarized. There is usually a "-" marking along one side of the can and also the longer lead is positive while the shorter lead is negative. Be certain that the positive and negative terminals are matched to the indications on the PCB silk screen printing. As a double check, the solder pad for the positive pin is often square, while the negative pad is round. The square pad is sometimes called the "pin one indicator" and this applies to multi-lead packages like DIP integrated circuits as well. Leave enough slack in the leads to be able to bend the capacitor over onto its side once it is soldered into place.
Step 5: 3D Tree: LEDs
Diodes (including LEDs) are also polarized. Be certain to observe that the long lead is positive and the short is negative. Again observe the silk screen printing on the PCB or that the positive solder pad is square. When soldering the LEDs, be sure the keep the same colors grouped together with a common resistor and transistor as show in our schematic and parts list. If you attempt to drive mixed color LEDs with the same current limiting resistor and switching transistor, you will likely find that one color glows brighter and the other color doesn't light up at all or only very dimly.
When soldering the LEDs into place, leave slack in the leads so that the LED can be bent off to the side once it is attached. Note that we have not yet soldered in the D19 LED at the very tip of the tree.
Step 6: 3D Tree: Test Each PCB
Once each of the Tree PCBs are fully populated (except for the D19 LED at the tip), they can be tested by placing about 5VDC onto the "+" and "-" pads at the very bottom of the tree. For example, you can place some AA batteries into the battery housing and touch the wires to the correct pads on the PCB. The LEDs should blink and cycle with colorful holiday goodness. If they do not, check the polarities (directions) of the power wires, the LEDs, the caps, and the transistors. If you were careful with all of the polarities while soldering, there should be no problems.
Step 7: 3D Tree: Base PCB
Solder the power button and the power terminal onto the Base PCB. When inserting the power button, the notched side of the button should face the nearest edge of the PCB as shown. A piece of resistor lead that was trimmed off earlier may be wrapped around the power terminal and soldered to the PCB as a stain relief to make the connector more robust while inserting the power plug.
The battery pack can be bolted into the base PCB as shown. The wires from the battery pack can be fed up into the PCB trimmed and soldered to the power pads.
Step 8: 3D Tree: Final Assembly
Slide the two tree halves into one another being careful to bend any of the components (such as the transistors) our of the way if they catch onto one another. Once the sides are aligned, solder the pads together where the halves touch. Now the top LED (D19) can be attached and trimmed. Lastly, insert the tree into the base PCB being careful to observe the "+" and "-" designations on all three PCBs. Solder the tree to the base PCB.
Step 9: 3D Tree: Enjoy an LED-powered Holiday Wonderland
Your 3D LED Tree can be powered from the battery pack OR the power terminal USB adapter. When the power terminal is inserted, the batteries are out of the circuit, so it is fine to leave the batteries installed while using the USB power adapter.
WARNING: Some hobbyists have found that these low-power USB adapters do not work well with adapters to non-US power mains. If you are using the 3D Tree kit outside the US, please exercise caution. You can power the USB plug from a computer, power pack, or phone charger as well to avoid using the low-power adapter. Where ever you use the 3D Tree, and no matter which power supply you use, please be cautions and do not leave the 3D Tree operating unattended.
Step 10: Robotic Smart Car: Introduction
The Robotic Smart Car is based upon a common 2WD hobbyist chassis. The chassis supports two 6V gear-reduced motors and one caster "wheel." The controller for the Robotic Smart Car is a NodeMCU WiFi board along with a motor driver shield. The code and hardware are all open source and readily hackable.
Step 11: Robotic Smart Car: Assembly
Assemble the Robotic Car Chassis according to the included instructions. Then use the included hardware to mount the battery pack over the caster "wheel" and the motor driver shield opposite the battery pack as shown.
Step 12: Robotic Smart Car: Wiring
Solder hookup wire to the motors and attach to the motor controller by tighten down the terminal screws. The motors cannot be damaged by reverse wiring since they are bidirectional. If the motor controller is working backwards later, just reverse the wires for that motor at the screw-down terminals.
Connect the battery pack to the power terminals of the motor shield. Putting the jumper in place allows the controller and the motors to run off the same batteries. The positive (red) lead from the battery pack may be wired to pass through the switch allowing the power to be cut off at the source.
Step 13: Robotic Smart Car: NodeMCU Controller
NodeMCU is an open source IoT platform using the Lua scripting language. NodeMCU modules are based on the ESP8266. The boards include the SoC Processor, a USB to Serial adapter, a surface-mount LED, and a voltage regulator. Here is an Instructable showing how to get started with the ESP8266 and NodeMCU.
Step 14: Robotic Smart Car: NodeMCU Mobile App
Step 15: Hack the Planet
After these examples, what else can you make? Let us know by sharing in the comments on this instructable, through social media, videos, or even make your own instructable. We'd also love to see a nice unboxing video. Be sure to share links with us and the other subscribers. If we're truly impressed, we may be compelled to reward you with a free month added on to your HackerBoxes subscription. Thank you for being part of this adventure. Please keep your suggestions and feedback coming. HackerBoxes are your boxes. Let's make something great!