8-bit Computer Made Solely From NAND Gates

As an electronics rookie, one of the first things they tell you when they teach you about logic gates is, “You can make everything from a combination of NAND gates”. There usually follows a demonstration of simple AND, OR, and XOR gates made from NAND gates, and maybe a flip-flop or two. Then you move on, when you want a logic function you use the relevant device that contains it, and the nugget of information about NAND gates recedes to become just another part of your electronics general knowledge.

Not [Alexander Shabarshin] though. He’s set himself the task of creating an entire CPU solely from NAND gates, and he’s using 74F00 chips to give a hoped-for 1MIPS performance.  His design has an 8-bit data bus but a 4-bit ALU, and an impressive 2-stage pipeline and RISC instruction set which sets it apart from the computers most of us had when 74-series logic was a much more recent innovation. So far he has completed PCBs for a D-type flip-flop and a one-bit ALU, four of which will work in parallel in the final machine

Unsurprisingly, we have maintained a keen interest in TTL computers here at Hackaday for a very long time. You might say that we have featured so many for the subject to deserve a review article of its own. There is the ASAP-3, the Magic-1, the Duo Basic, the Apollo181, the unnamed CPU made by [Donn Stewart], the BMOW, and a clone of the Apollo Guidance Computer. But what sets [Alexander’s] project aside from all these fine machines is his bare-metal NAND-only design. The other 74-series CPU designers have had the full range of devices such as the 74181 ALU at their disposal. By studying the building blocks at this most fundamental level a deeper understanding can be gained of the inner workings of parts normally represented just as black boxes.

One of the briefs for writing a Hackaday article is that if the subject makes the writer stop and read rather than skim over it then it is likely to do so for the reader too. This project may not yet have delivered a working CPU, but its progress so far is interesting enough for an in-depth read. Definitely one to watch.

Anti-Cogging Algorithm Brings Out The Best In Your Hobby Brushless Motors

Cheap, brushless motors may be the workhorses behind our RC planes and quadcopters these days, but we’ve never seen them  in any application that requires low-speed precision. Why? Sadly, cheap brushless motors simply aren’t mechanically well-constructed enough to offer precise position control because they exhibit cogging torque, an unexpected motor characteristic that causes slight variations in the output torque that depend rotor position. Undaunted, [Matthew Piccoli] and the folks at UPenn’s ModLab have developed two approaches to compensate and minimize torque-ripple, essentially giving a cheap BLDC Motor comparable performance to it’s pricier cousins. What’s more, they’ve proven their algorithm works in hardware by building a doodling direct-drive robotic arm from brushless motors that can trace trajectories.

Cogging torque is a function of position. [Matthew’s] algorithm works by measuring the applied voltage (or current) needed to servo the rotor to each measurable encoder position in a full revolution. Cogging torque is directional, so this “motor fingerprint” needs to be taken in both directions. With these measured voltages (or currents) logged for all measurable positions, compensating for the cogging torque is just a matter of subtracting off that measured value at any given position while driving the motor. [Matthew] has graciously taken the trouble of detailing the subtleties in his paper (PDF), where he’s actually developed an additional acceleration-based method.

Hobby BLDC motors abound these days, and you might even have a few spares tucked away on the shelf. This algorithm, when applied on the motor controller electronics, can give us the chance to revisit those projects that mandate precise motor control with high torque–something we could only dream about if we could afford a few Maxon motors. If you’re new to BLDC Motor Control theory, check out a few projects of the past to get yourself up-and-running.

Continue reading “Anti-Cogging Algorithm Brings Out The Best In Your Hobby Brushless Motors”

Waiting For China To Re-Open, From Huaqiangbei

The Chinese New Year is something we keep in mind at least half of the year, and probably still don’t plan for properly. In case you’re new to the situation: The Chinese New Year celebration empties out Shenzhen of its more than 12 million residents for the better part of a month. It’s the one time of year that manufacturing sector workers (and everyone that supports that ecosystem) travels home to visit family.

For those involved in manufacturing goods in Shenzhen, this part of the year leaves us cut off from one of our vices and we count the days until our tracking numbers and order confirmations start to show signs of life. It’s an inconvenience of an entirely different nature if you are one of the lonely few that stays in the city during the holiday. [Ian] over at Dangerous Prototypes wrote a blog post from his office in Huaqiangbei which is a sub-district of Shenzhen, China to share the experience with us.

Shenzhen is uniquely a migrant-worker city, and when emptied of the factory employees there are not enough people to patronize local services like markets and restaurants so they also shut down. But an empty city offers its own interesting entertainment like wicked fireworks sessions. As always, [Ian] does a great job of sharing this peculiar part of Shenzhen culture. He also kindly points out some of the offensive offers that come through the inter-webs from desperate customers who have poorly planned around the holiday.

Bench Testing A Switch Mode Drop In Replacement For The LM7805

Throwing a 5V regulator like the LM7805 at our projects can become habit forming, after all they’re dirt cheap and the circuit is about as basic as they come with only two external components, an input and output cap. As this is a good enough solution to most of our 5V circuits we can come into some issues if we aren’t paying attention. Linear regulators can only dissipate so much power in the form of heat before they need a heat sink and/or active cooling. Even if they can produce a cleaner output, in an embedded system, large power losses to heat are less than ideal to say the least.

[Daniel] needed an efficient solution to use in the place of an LM7805, after looking at the drop-in replacement switching solutions available on Adafruit’s website, he headed to DigiKey for a similar and less expensive part. [Daniel] collected some data and found the regulator to be 92% efficient with a 12V input, which is not quite the claimed 97% but a good solution nonetheless.

Switching voltage regulators are nothing new, so don’t even act like we just jumped on this switch-mode bandwagon! But it pays to give a little thought to your power supply. And while you’re in the mood, have an extremely thorough look inside the LM7805.

Nerf Turret Controlled By Slack

What happens when you give a former Navy weapons engineer some development boards and ask him to build “something cool”? What happens when you give a kid finger paints? [Seb] obviously built an IoT Nerf Turret Gun controlled via a team communication app.

The weapon was a Nerf Stampede which was hacked so it could be fired electronically. The safety switch was bypassed and a relay provided the firing signal. The electronics stack consists of an Intel Galileo, a motor shield and a relay shield. The turret assembly was built using off the shelf structural parts from Actobotics. Stepper motors provide motion to the turret. The fun begins with how the software is implemented. An iBeacon network detects where people sit at in the office. So when you type in the name of your target in a messaging app, it knows where they’re sitting, aims at them, and pops a nerf dart at them.

The lessons learned are what makes such projects worth their while. For example, USB is a standard. And the standard says that USB cables be not more than 1.8 m long. [Seb] was reminded of this when his electronics worked on his workbench, but refused to work when placed in-situ and connected via a 3m long cable – the serial link just wouldn’t work.

Mounting the gun such that it was nicely balanced was another challenge. Eventually, he had to use a couple of AA cells taped to the front of the gun to get it right. This could be useful though, since he plans to replace the dead weights with a sighting camera. One last hack was to zip tie heat sinks to the motor drivers, and he had a good reason to do that. Read more about it in his blog. And check out the video as someone takes aim and shoots a target via SLACK, the team messaging application.

Continue reading “Nerf Turret Controlled By Slack”

Open Sesame, From A Galaxy Far, Far Away.

[TVMiller]’s description of his project is epic enough to deserve a literal copy-paste (something our readers often praise us about). In his own words,  “Having discovered several spare Midichlorians in my liquor cabinet, I trained and applied them to opening a large cumbersome gate. The FORCE motion travels through my inner what-nots and is translated by the Pebble Classic accelerometer toggling a command sent to the (Particle) Cloud (City) which returns to the Particle Photon triggering a TIP120 to fire a button on an existing RF transceiver. May the ridiculous hand gestures be with you, always.” Thus was born the Gate Jedi , and you’ll need exactly 47 Midichlorians, and some other trivial parts, to build one.

The Pebble watch hooks up to his android smart phone. A Pebble (android) app sends the accelerometer data to the Particle (previously called Spark) cloud service. From there, the data is pushed to the Photon IoT board which runs a few lines of code. Output from the Photon turns on a TIP120 power transistor, which in turn triggers the existing RF trans receiver that opens the Gate.

This looks way cooler than the Light Sabre hacks. Check out the video of him summoning the Force. And if you’d like to do more, try integrating gesture controls with this Pebble Watch hack that turns it into a home automation controller.

Continue reading “Open Sesame, From A Galaxy Far, Far Away.”

Brushed DC Servo Drive

Brushless DC motors, and their associated drive electronics, tend to be expensive and complicated. [Ottoragam] was looking for a cheaper alternative and built this Brushed DC motor servo controller and the results look pretty promising. Check out the video after the break.

He needed a low cost, closed loop drive for his home-brew CNC. The servo drive is able to supply a brushed DC motor with up to 7 A continuous current at up to 36 V which works out to about 250 W or 1/3 HP. It does closed loop control with feedback from a quadrature encoder. The drive accepts simple STEP and DIRECTION signals making it easy to interface with micro controllers and use it as a replacement for stepper motors in positioning applications. All of the control is handled by an ATmega328P. It takes the input signals and encoder data, does PID control, and drives the motor via the DRV8701 full bridge MOSFET driver. There’s also some error detection for motor over-current and driver under-voltage. Four IRFH7545 MOSFETs in H-bridge configuration form the output power stage.

This is still work in progress, and [Ottoragam] has a few features pending in his wish list. The important ones include adding a serial interface to make it easy to adjust the PID parameters and creating a GUI to make the adjustment easier. The project is Open Source and all source files available at his Github repository. The board is mostly surface mount, but the passives are all 0805, so it ought to be easy to assemble. The QFN footprint for the micro controller could be the only tricky one. [Ottoragam] would love to have some beta testers for his boards, and maybe some helpful comments to improve his design.

Continue reading “Brushed DC Servo Drive”