Hobby servos are nifty and useful for a wide range of projects. There’s nothing stopping you from building your own servos though, and you can even give them nifty features like 360-degree rotation In fact, that’s exactly what [Aaed Musa] did!
The servo relies on 3D printed gears in a 3D printed housing. The design makes prodigious use of threaded inserts to hold everything together nice and tight. A DC motor is charged with driving the assembly, as with any regular servo motor. However, in the place of a potentiometer, this design instead uses an AS5600 magnetic rotary position sensor to read the servo’s angle, via a magnet mounted in the servo’s gear. An Arduino is used to determine the servo’s current position versus the desired position, and it turns the motor accordingly with a BTS7960 motor driver.
The result is a sizeable and capable servo with an easily-customizable output, given it’s all 3D printed. If you’d rather just mod some servos instead, we’ve covered some great work in that area, too. Video after the break.
That big grandfather clock in the library might be an impressive piece of mechanical ingenuity, and an even better example of fine cabinetry, but we’d expect that the accuracy of a pendulum timepiece would be limited to a sizable fraction of a minute per day. Unless, of course, you work at CERN and built “the most accurate pendulum clock on the planet.”
While we’re in no position to judge [Daniel Valuch]’s claim, we’re certainly inclined to believe him, mainly because the 1950s-era Czechoslovakian pendulum clock his project was based on, the Elektročas HH3, was built specifically as a master clock for labs, power plants, and broadcast use. The pendulum of this mid-century beauty is made of the alloy invar, selected for its exceptionally low coefficient of thermal expansion. This ensures the pendulum doesn’t change length with temperature, but it still only brings the clock into the 0.1 second/day range.
Clearly that’s not good enough for a clock at CERN, the European Laboratory for Nuclear Research, where [Daniel] works as an RF engineer. With access to a 10-MHz timebase from a cesium fountain atomic clock — no less a clock than the one that’s used to define the SI second, by the way — [Daniel] looked for ways to sync the clock up to it. Now, we know what you’re thinking — he must have used some kind of PLL to give an electromagnetic “kick” to the bob to trim the pendulum’s period. Good guess on the PLL, but the trimming method is a little cruder — [Daniel] uses a stepper motor attached to the clock’s frame to pay out or retract a length of fine chain into a cardboard dish attached to the pendulum’s rod. The change in mass changes the pendulum’s center of gravity, which changes its effective length, and allows the clock to be tuned a couple of seconds per day.
It seems like [Daniel] is claiming that his chain-corrected clock won’t drift more than a second from the cesium clock for 158 million years. Again, we’ll take his word for it, but it’s a wonderfully ad hoc approach to tuning the clock, and we appreciate its simplicity.
Despite being integral to aviation for more than a century, propellers have changed remarkably little since the Wright Brothers. A team at MIT’s Lincoln Lab has developed a new propeller shape that significantly reduces the noise associated with drones. [PDF via NewAtlas]
Inspired by some of the experiments with “ring wings” in the early 20th Century, researchers iterated on various toroidal propeller geometries until arriving at one that significantly reduces the sound produced by the rotors, particularly in the range of human hearing. The team suspects the reduction in noise is due to vortices being distributed over the whole propeller instead of just the tips.
Experiments show the drones can get twice as close before becoming a nuisance for human ears which should be great news for anyone hoping to launch Skynet commercial drone deliveries. Since the rotors are easily fabricated via 3D printing they should be easy to adapt to a number of different drones.
The toroidal propeller, one of the Lab's @RD100Awards winners, has a unique, closed-form propeller design that makes it a significantly quieter alternative to common multirotor propellers on commercial uncrewed aerial vehicles. https://t.co/hgda3NgYIzpic.twitter.com/5XkIxNVPHd
If you own a 3D printer, CNC router, or basically anything else that makes coordinated movements with a bunch of stepper motors, chances are good that it speaks G-code. Do you?
If you were a CNC machinist back in the 1980’s, chances are very good that you’d be fluent in the language, and maybe even a couple different machines’ specialized dialects. But higher level abstractions pretty quickly took over the CAM landscape, and knowing how to navigate GUIs and do CAD became more relevant than knowing how to move the machine around by typing.
Strangely enough, I learned G-code in 2010, as the RepRap Darwin that my hackerspace needed some human wranglers. If you want to print out a 3D design today, you have a wealth of convenient slicers that’ll turn abstract geometry into G-code, but back in the day, all we had was a mess of Python scripts. Given the state of things, it was worth learning a little G-code, because even if you just wanted to print something out, it was far from plug-and-play.
For instance, it was far easier to just edit the M104 value than to change the temperature and re-slice the whole thing, which could take an appreciable amount of time back then. Honestly, we were all working on the printers as much as we were printing. Knowing how to whip up some quick bed-levelling test scripts and/or demo objects in G-code was just plain handy. And of course the people writing or tweaking the slicers had to know how to talk directly to the machine.
Even today, I think it’s useful to be able to speak to the machine in its native language. Case in point: the el-quicko pen-plotter I whipped together two weekends ago was actually to play around with Logo, the turtle language, with my son. It didn’t take me more than an hour or so to whip up a trivial Logo-alike (in Python) for the CNC: pen-up, pen-down, forward, turn, repeat, and subroutine definitions. Translating this all to machine moves was actually super simple, and we had a great time live-drawing with the machine.
So if you want to code for your machine, you’ll need to speak its language. A slicer is great for the one thing it does – turning an STL into G-code, but if you want to do anything a little more bespoke, you should learn G-code. And if you’ve got a 3D printer kicking around, certainly if it runs Marlin or similar firmware, you’ve got the ideal platform for exploration.
Does anyone else still play with G-code?
This article is part of the Hackaday.com newsletter, delivered every seven days for each of the last 200+ weeks. It also includes our favorite articles from the last seven days that you can see on the web version of the newsletter.
Want this type of article to hit your inbox every Friday morning? You should sign up!
Some careful measuring and a little extra effort can be all that separates what looks like a hack job from a slick end product, and that is apparent in [Eric Sorensen]’s classy retrogaming rig, complete with ports for original console controllers.
[Eric] likes his vintage gaming, and was terrifically pleased with MiSTer, an open-source project that recreates various classic computers, game consoles and arcade machines using modern FPGA-based hardware. Of course, what makes retro gaming even better is using a platform’s genuine original controllers, which just takes a little extra hardware and wiring.
But [Eric] found that all the required accessories and peripherals started to look awfully cluttered. He solved this issue by packing everything carefully into a specialty PC case called the Checkmate A1500 Plus, which gives off a strong 80s design vibe. As a bonus, the front panels are all removable and that’s where [Eric] decided to house the custom controller ports.
First [Eric] carefully measured each controller connector to create CAD models, then designed matching front panels to house the connectors and 3D printed them. Once that was done, post-processing the panels was a long process of apply Bondo, sand, paint, and repeat as needed. The results looks fantastic, and this project is a prime example of how aesthetics and finish can matter.
If [Bob Dylan] had seen [Pgeschwi]’s bike chain clock, it might have influenced the famous song. The clock uses a stepper motor and a bike chain to create a clock that has a decidedly steampunk vibe. Despite the low-tech look, the build uses 3D printing and, of course, a bike chain.
The clock doesn’t just show the time. There is a contraption to show the day of the week, and a pendulum shows the current phase of the moon. The visible wiring is all old-school brass wire on the wood base. [Pgeschwi] is considering changing out all the 3D printed parts for brass ones, so this may be just an early prototype of the final product, but it still looks great.
The design used common tools, including Tinkercad and an online gear generation tool. There are a lot of details you wouldn’t suspect until you tried to build something like this yourself. For example, making the chain reliably go in both directions required a timing belt to synchronize the top gears. Getting the numbers on the chain to pass by the gears.
It is hard to tell from the picture, but there’s an LED under the 10-minute marks that shows the unit’s digits of the time. There are no markings for it yet, but in the picture, the time is actually 4:09.
Wolfenstein 3D and Doom are great examples of early FPS games. Back in that era, as Amiga was slowly losing its gaming supremacy to the PC, Apple wasn’t even on the playing field. However, [Chris Tully] has used the 90s HyperCard platform to create an FPS of his own, and it’s charming in what it achieves.
If you’re not familiar with it, HyperCard was a strange combination of database, programming language, and graphical interface system all rolled into one. It made developing GUI apps for the Macintosh platform simpler, with some limitations. It was certainly never intended for making pseudo-3D video games, but that just makes [Chris’s] achievement all the more impressive.
At this stage, [Chris’s] game doesn’t feature any NPCs, weapons, or items yet. It’s thus more of a First Person Walker than First Person Shooter. It features four small rooms with perpendicular, vertical walls, rendered either greyscale or 8-bit color. Now that he’s got the basic engine running, [Chris] is looking to recreate a bit of a Doom RPG experience, rather than copying Doom itself. He hopes to add everything from monsters to weapons, lava, and working HUD elements. If you want to dive in to the code, you can – HyperCard “stacks”, as they’re known, are made up of readily editable scripts.
[Chris] built the project to celebrate the aesthetic and limitations of the original Mac platform. While it could technically run on original hardware, it would run incredibly slowly. It currently takes several seconds to update the viewport on an emulated Mac Plus with 4MB of RAM. Thankfully, emulation on a modern PC can be sped up a lot to help the framerate.