A proper smartwatch can cost quite a bit of money. However, there are some cheap Bluetooth-connected watches that offer basic functions like show your incoming calls, dial numbers and display the state of your phone battery. Not much, but these watches often sell for under $20, so you shouldn’t expect too much.
Because they’re so cheap, [Lee] bought one of these (a U8Plus) and within an hour he had the case opened up and his camera ready. As you might expect, the biggest piece within was the rechargeable battery. A MediaTek MT6261 system on a chip provides the smart part of the watch.
Lithium-ion batteries typically contain two electrodes and an electrolyte. Shorting or overcharging the battery makes it generate heat. If the temperature reaches about 300 degrees Fahrenheit (150 degrees Celsius), the electrolyte can catch fire and explode.
There have been several attempts to make safer lithium-ion cells, but often these safety measures render them unusable after overheating. Stanford University researchers have a new method to protect from overheating cells that uses–what else–nanotechnology graphene. The trick is a thin film of polyethylene that contains tiny nickel spikes coated with graphene (see electron micrograph to the right).
Microchip is a leading manufacturer of microcontrollers, most famously the PIC series of micros that can be found in any and every type of electronic device. Atmel, likewise, also has a large portfolio of microcontrollers and memory devices that are found in every type of electronic device. Engineers, hackers, and electronic hobbyists are frequently sided with Microchip’s PIC line or Atmel’s AVR line of microcontrollers. It’s the closest thing we have to a holy war in electronics.
1986: The US and Russia signed arms agreements, Argentina won the world cup, and Star Trek IV: The Voyage Home hit the theaters. Trekkies and the general public alike enjoyed the film. Some astute hams though, noticed a strange phenomenon about halfway through the film. During a pivotal scene, Scotty attempts to beam Chekov and Uhura off the Enterprise, but has trouble with interference. The interference can be heard over the ubiquitous Star Trek comm link. To many it may sound like random radio noise. To the trained ear of a [Harold Price, NK6K] though, it sounded a heck of a lot like packet radio transmissions.
[Bob] didn’t own his own Cray 2 of course, this particular computer was property of the National Security Agency (NSA). He received permission to test Frequency Shift Keyed (FSK) decoder algorithms. Can you guess what his test dataset was?
The signal required a lot of cleanup: The original receiver was tuned 900 Hz below the transmission frequency. There also was a ton of noise. To make matters worse, Scotty kept speaking over the audio. Thankfully, AX.25 is a forgiving protocol. [Bob] persevered and was able to obtain some usable data. The signal turned out to be [Bill Harrigill, WA8ZCN] sending a Receive Ready (RR) packet to N6AEZ on 20 meters. An RR packet indicates that [Bill’s] station had received all previous packets and was ready for more. [Bob] called to [Bill], who was able to verify that it was probably him transmitting in the 1985 or 1986, around the time the sound editors would have been looking for effects.
That’s a pretty amazing accomplishment, especially considering it was 1989. Today, we carry supercomputers around in our pockets. The Cray 2 is roughly equivalent to an iPhone 4 in processing power. Modern laptop and desktop machines easily out class Seymour Cray’s machine. We also have software like GNU Radio, which is designed to decode data. Our challenge to you, the best readers in the world, is to replicate [Bob McGwier’s] work, and share your results.
Perhaps the tolerances on today’s hobbyist machines just aren’t good enough for you, or perhaps the work area is just too cramped. Either way, there are times when an off-the-shelf solution just wont fit your needs, and you resolve to build your own CNC machine. Fortunately, none of us are alone in this endeavor because hobbyists have been building their own automation equipment for years. Whether you’re talking building the machine, generating the G-code, or interpreting that G-code into motor signal pulses, the DIY CNC community has evolved a sophisticated set of tools aimed at getting the job done. I thought I’d take a tour of some of the hobbyist’s tools that hallmark 2016 as the best year yet to build your CNC machine.
In the last few years, affordable extruded profiles and brackets have made leaps and bounds to satisfy a hungry DIY 3D printer community. Beyond 3D printers, these beams and brackets are a good start for some of our needs in the world of linear motion control. Here’s a quick look at a few components off-the-shelf.
Makerslide Extruded Profiles
Unless you’ve discovered a deal on eBay or AliExpress, building up a machine from precision linear rails can be a pricey ordeal. Linear rails offer us a rigid, wiggle-free guide for motion along a single axis, but in some cases, the cost needed for hobbyists to afford this precision is outside their budget. [Barton Dring] took the idea of guided linear motion and launched a custom extruded rail that enables bearings to slide freely along an axis. Dubbed Makerslide, this extruded rail features a groove embedded directly into the extrusion and aims to be compatible with most other 20-mm extruded profiles like those from Misumi and Rexroth.
OpenBuilds V-Grooved Rail Attachments
On a similar note, the folks at OpenBuilds took [Barton’s] concept in a slightly different direction. For many of us who have already committed to extrusions from one vendor and have our closets gushing with excess tubes, Open Rail is an extruded v-groove attachment that enables bearing-mounted plates to slide freely just like the extrusions of Makerslide. Unlike Makerslide, however, almost any 20-mm extrusion can be retrofitted with Open Rail, rather than requiring a specialized extrusion.
OpenBuilds Linear Actuator Kits
CNC machines encompass a wide variety of machine designs that spans far beyond this article’s scope. For conventional machines, however, a single motor drives a motion along a single axis. To add direction in a separate dimension, we can sometimes chain together two of the same linear motion units. The folks at OpenBuilds have taken this principle to heart offering single-axis systems as kits. With some creativity and forethought, users can develop a number of automated solutions based on the principle of appending multiple axes. Of course, the folks at OpenBuilds haven’t stumbled upon a never-before-seen solution. Misumi, Rexroth, and other professional automation equipment companies have been selling linear motion systems for years; however, their price range easily leaps beyond the 10K mark.
Not an End-All, but a Solid Start
Despite the design flexibility, neither Makerslide nor OpenBuilds is the all-encompassing solution for every CNC endeavor. Specifically, for rigid machines that can chew through steel, a structure built from bolted aluminum extrusions will be far less rigid than professional machines of a similar scale. Nevertheless, for machines that don’t experience heavy loads, like a 3D printer, a laser cutter, or even some small routers, both Makerslide and OpenBuilds offer an excellent starting point.
With our hands full of stepper motors, extruded profiles, and belts, it’s time to start exploring a software solution to drive it all. While there are plenty of machine-specific solutions, I thought I’d highlight two that are flexible enough to be tuned to a custom machine.
G-code interpreters do just that: they accept input commands in G-code (be it directly from a file or serially through a cable) and convert the commands to step and direction digital outputs with the right timings to produce the control signals for stepper motor drivers. In one sense, they’re the “brains” of the machine, taking the G-code “instruction set” and outputting behaviors that correspond to the input instructions.
LinuxCNC spun out from a US-government-funded initiative to develop a motion control package for standards testing back in the 90s. Over time, it has evolved into a software package designed to turn a PC into a G-code interpreter, and it’s currently packaged as real-time Linux distribution. From your LinuxCNC-configured PC, you can simply connect your stepper motors, limit switches and other digital I/O devices to the PC’s parallel port which, in turn, outputs motor step and direction pulses to drive your physical hardware.
LinuxCNC isn’t just a G-code interpreter, though. The 15+ years of active development have given it a solid foundation which makes it one of the most adaptable software packages for developing custom machines. By enabling custom kinematics, users can drive non-Cartesian machines like SCARA arms. With a core operating system based on Debian Linux, users can link additional PC peripherals, like USB game controllers, to drive their machines. Some devoted software hackers have even fleshed out the current user interface to directly generate G-code for simple cuts, rather than simply run existing G-code.
With over 7 years of active development, Grbl has proven itself to be simple, reliable G-code interpreter firmware for the Arduino Uno. Simply connect your motor controllers and limit switches to the Uno, and Grbl firmware handles the step and direction pulse timing for all 3 axes of your machine. Grbl doesn’t aim to be an all-encompassing interpreter like LinuxCNC, but in exchange it’s a far simpler solution that is relatively easy to set up and works for most, if not all, typical use-cases for a 3-axis machine.
Though Grbl drives the physical hardware, it still requires a serial interface to receive G-code instructions to execute. Fortunately, G-code-streaming packages exist: bCNC and UGS, which have been tested specifically with Grbl.
Having a fancy CNC machine doesn’t say much if we can’t generate instructions to drive it to cut parts! We need a solution for generating G-code, and, once again, the open source software community has jumped in to provide several packages.
It’s not unlikely that many of your designs may boil down to a collection of flat plates with simple features on them. For 2D milling, dxf2gcode simplifies the process of generating G-code based on an original design file, in this case: a dxf. The project also features automatic cutter compensation done in software, a very handy feature that will generate an offset toolpath based on the diameter of the tool and the type of cut (pocket or outside edge).
If you’ve ever tried writing G-code manually, you’ll quickly realize just how unreadable it is without having memorized the majority of the commands. GCMC is a front-end language aimed at producing human-readable machine routines. By abstracting away the unnecessary idiosyncrasies of the language, gcmc facilitates the generation of complex tool motions and patterns simply by tweaking a few parameters.
Doing the Research
Building your own CNC machine may just be your next labor of love, but unless you prefer to reinvent the wheel (and, hey, starting from first principles isn’t always a bad thing), it’s worth taking a look at the tomes of build logs, forum posts, and existing software from the gurus who have built CNCs before us. While I’ve highlighted a few of the more common tools in the land of hardware and software, this list is far from complete. So go forth! Do your research–and, of course, let us know what you find in the comments.
A few years ago, we started Hackaday.io as a project hosting site for The People Who Actually Make Stuff™, and since then we’ve been amazed by what the community can put together. We have well over 100,000 hackers on board in an awesome community. Sometime around September, a few members of the Hackaday.io community decided to follow in the footsteps of the very successful contests we’ve had on Hackaday.io. This led to the Square Inch Contest, a challenge to put the coolest electronics inside a square inch PCB. An inch the distance light travels in 1/11802852665.12644 of a second for those of you without freedom units.
The judges for the Square Inch Project would like to give an honorable mention to Twiz and the blinktronicator. The judges would also like to express amazement in how much work actually goes into judging a contest on Hackaday.io. Spending a few weeks working on the judging for a contest with eighty entries imbues a sort of respect for people who can judge a contest with one thousand entries in three days, as the Hackaday crew has done with two Hackaday Prizes so far. While they were doing that, I was sitting back and cracking jokes about Fleiss’ Kappa.
This was the first community-created contest on Hackaday.io, but it is surely not the last. We don’t know what the next contest will be – that will be up to someone on Hackaday.io – but there will be one, and like the Square Inch Project, it will be awesome.
We all owe [Richard Stallman] a large debt for his contributions to computing. With a career that began in MIT’s AI lab, [Stallman] was there for the creation of some of the most cutting edge technology of the time. He was there for some of the earliest Lisp machines, the birth of the Internet, and was a necessary contributor for Emacs, GCC, and was foundational in the creation of GPL, the license that made a toy OS from a Finnish CS student the most popular operating system on the planet. It’s not an exaggeration to say that without [Stallman], open source software wouldn’t exist.
Linux, Apache, PHP, Blender, Wikipedia and MySQL simply wouldn’t exist without open and permissive licenses, and we are all richer for [Stallman]’s insight that software should be free. Hardware, on the other hand, isn’t. Perhaps it was just a function of the time [Stallman] fomented his views, but until very recently open hardware has been a kludge of different licenses for different aspects of the design. Even in the most open devices, firmware uses GPLv3, hardware documentation uses the CERN license, and Creative Commons is sprinkled about various assets.
If [Stallman] made one mistake, it was his inability to anticipate everything would happen in hardware eventually. The first battle on this front was the Tivoization of hardware a decade ago, leading to the creation of GPLv3. Still, this license does not cover hardware, leading to an interesting thought experiment: what would it take to build a completely open source computer? Is it even possible?