This unusual 3D printed Rolling Robot by [ebaera] uses two tiny hobby servos for locomotion in an unexpected way. The motors drive the front wheel only indirectly, by moving two articulated arms in a reach-and-retract motion similar to a breaststroke. The arms are joined together at the front, where a ratcheting wheel rests underneath. When the arms extend, the wheel rolls forward freely. When the arms retract, the wheel’s ratchet locks and the rest of the body is pulled forward. It looks as though extending one arm more than the other provides for rudimentary steering.
The parts are all 3D printed but some of them look as though they might be a challenge to print well due to the number of small pieces and overhangs. A short video (embedded below) demonstrates how it all works together; the action starts about 25 seconds in.
The Nintendo VS. System was a coin-op arcade system based on the Nintendo Entertainment System (NES) hardware. By being so closely related to the home console, it made it easy to port games back and forth between the two. Being an arcade system, there was significant financial incentive to pirate the boards and games, and many years later such a pirate board landed on the desk of [kevtris], who decided to reverse engineer it for our viewing pleasure.
The board in question runs Super Mario Brothers, and rather than using actual Nintendo hardware it instead relies on a standard MOS 6502 to recreate all the functions of the of the original CPU. A Z80 is pressed into service to emulate the original audio hardware, too. With much of the functionality recreated in TTL logic chips, the board is power hungry, drawing a ridiculous 3 amps when powered up. We wonder as to the fire safety of such machines all crammed into a hot, sweaty arcade of yesteryear.
[kevtris] does a great job of reverse engineering the system, even providing a full PDF schematic for the bootleg board. An old SEGA controller is hand-wired into the board to provide both game controls and act as a coin switch to allow the game to be played.
We’d love to hear the story of how these machines actually came to be, and the design process involved, but for now that may remain one for the ages. Arcade piracy was something the big companies fought against for years, with varying success – and we’ve seen arcade DRM hacked before.
Wiring — as in plugging wires together and crimping connectors, not the Arduino IDE thingy — is an incredibly deep subject. We all know the lineman’s splice is the best way to solder two wires together, and NASA’s guide to cables and connectors is required reading around these parts. However, there’s a lot that can be said about connectors and cabling, and one of the best people to explain it all is Bradley Gawthrop. He spent the last ten years building pipe organs, and with that comes tens of thousands of relays, solenoids, switches, and valves. All of these parts are connected by thousands of miles of wire, and are arguably as complex as an old-school telephone exchange. If there’s someone you need to talk to about connecting hundreds of thousands of parts together, Bradley is your guy.
Bradley starts his Hackaday Superconference talk with a discussion of the modern prototyping process. We’re pretty far away from dozens of chips sitting around a breadboard with data and address lines these days, and now any sort of prototype is basically a development board with a constellation of modules studded around the perimeter. The best solution for connectors is right angle headers, not only for the reason that the wires stay flat, but also because right angle connectors allow you to probe each and every wire coming out of a board.
Of course, when it comes to wiring, it’s helpful to talk about the wire itself. Instead of having an entire warehouse of wire in every color, gauge, and insulation material hanging above his workshop, Bradley only needs a few options. Right now, he’s only dealing with three gauges of wire — small, medium, and large, or 24, 18, and 12 AWG. That’s one wire for small signals, one wire for a bit of current, and one wire for supply amounts of current. Not only does this cut down on workshop inventory, it also means Bradley only needs three sizes of crimpers and connectors. When it comes to strand count, solid core wire is highly underrated. Not only is it easier to strip and crimp, it can also support its own weight. That’s important, because it means connectors don’t have to bear the weight of the entire cable run.
If you’re looking for the minimal required toolset for running cables and crimping connectors, Bradley has a great little shopping list on his website. The best strippers he’s ever found come from Wiha, but they’ve been EOL’d by the manufacturer. Knipex makes some good strippers, though. You don’t need to spend big money on ferrule crimpers, and some cheapies from BangGood are good enough. Bradley has standardized on Molex SL and Molex KK interconnects, and wire can be sourced easily if you have Amazon Prime.
While the subject matter for Bradley’s talk sounds easy to overlook, connecting parts together in an assembly is a critical skill in itself. We’re glad Bradley could share his experience with us at the Hackaday Superconference.
If you are into vintage electronics or restoring antique radio equipment you may be very disappointed with the content offerings on AM broadcast radio these days. Fortunately there is a way to get around this: build your own short-range AM broadcast station and transmit curated content to your radios (and possibly your neighbors). There are several options for creating your own short-range AM broadcast station, and this gives you something fun to tune into with your vintage radio gear.
On the off chance you’re reading these words on an actual desktop computer (rather than a phone, tablet, smart mirror, game console…), stop and look at the speakers you have on either side of your monitor. Are you back now? OK, now look at the PC speakers and amplifier [Kris Slyka] recently built and realize you’ve been bested. Don’t feel bad, she’s got us beat as well.
The speaker and amplifier enclosures were painstakingly printed and assembled over the course of three months, and each piece was designed to be small enough to fit onto the roughly 4 in x 4 in bed of her PrintrBot Play. While limited print volume made the design considerably trickier, it did force [Kris] to adopt a modular design approach with arguably made assembly (and potential future repairs or improvements) easier.
The amplifier is made up of rectangular “cells” which are connected to each other via 3 mm threaded rods. For now the amplifier only has 4 cells, but this could easily be expanded in the future without having to design and print a whole new case. Internally the amplifier is using two TDA8932 digital amplifier modules, and some VU meters scored off of eBay.
Each speaker enclosure is made up of 10 individual printed parts that are then glued and screwed together to make the final shape, which [Kris] mentions was inspired by an audio installation at the Los Angeles County Museum of Art. They house 4″ Visaton FR 10 HM drivers, and are stuffed with insulation.
It’s a bit difficult to nail down the style that [Kris] has gone for here. You see the chunky controls and analog VU meters and want to call it retro, but it’s also a brass cog and sprocket away from being Steampunk. On the other hand, the shape of the speakers combined with the bamboo-filled PLA used to print them almost gives it an organic look: as if there’s a tree somewhere that grows these things. That’s actually a kind of terrifying thought, but you get the idea.
If your computer speakers were assembled by mere mortals, never fear. We’ve covered a number of interesting hacks and mods for more run-of-the-mill desktop audio setups which should hold you over until it’s time to harvest the speaker trees.
Here on Hackaday, we’re generally designers of hacks that live in the real world. Nevertheless, I’m convinced that some of the most interesting feats are at the mercy of what’s possible in software, not hardware. Without the right software, no 3D printer could print and no quadcopter could fly. The source code that drives these machines may take months of refinement to flesh out their structure. In a nutshell, these software packages are complicated, and they don’t happen overnight.
So how do they happen; better yet: how could we make that happen? How do we write software that’s flexible enough to coexist peacefully on all sorts of hardware variations?
What separates the big open-source software projects like ROS, LinuxCNC, and Multiwii from the occastional hackathon code are the underlying principles that govern how they’re written. In object-oriented programming, these principles are called design patterns. In the next couple posts, I’m going to crack the lid on a few of these. What’s more, I’ll package them into real-world examples so that we can see these patterns interact with real hardware. The next time you pop open the source code for a big open source hardware project, I hope you can tease out some of these patterns in the code. Better yet, I hope you carry these patterns into your next robot and machine project. Let’s get started.
For readability, all of the examples run in Python3. The snippets below are truncated for brevity, but the real examples in the repository will work if you’ve got a similar hardware setup.
When the Macintosh was released some thirty-odd years ago, to Steve Jobs’ triumphant return in the late 90s, there was one phrase to describe the simplicity of using a Mac. ‘It Just Works’. Whether this was a reference to the complete lack of games on the Mac (Marathon shoutout, tho) or a statement to the user-friendliness of the Mac, one thing is now apparent. Apple has improved the macOS to such a degree that all passwords just work. That is to say, security on the latest versions of macOS is abysmal, and every few weeks a new bug is reported.
The first such security vulnerability in macOS High Sierra was reported by [Lemi Ergin] on Twitter. Simply, anyone could login as root with an empty password after clicking the login button several times. The steps to reproduce were as simple as opening System Preferences, Clicking the lock to make changes, typing ‘root’ in the username field, and clicking the Unlock button. It should go without saying this is incredibly insecure, and although this is only a local exploit, it’s a mind-numbingly idiotic exploit. This issue was quickly fixed by Apple in the Security Update 2017-001
The most recent password flaw comes in the form of unlocking the App Store preferences that can be unlocked with any password. The steps to reproduce on macOS High Sierra are simply:
Click on System Preferences
Click on App Store
Click the padlock icon
Enter your username and any password
Click unlock
This issue has been fixed in the beta of macOS 10.13.3, which should be released within a month. The bug does not exist in macOS Sierra version 10.12.6 or earlier.
This is the second bug in macOS in as many months where passwords just work. Or don’t work, depending on how cheeky you want to be. While these bugs have been overshadowed with recent exploits of Intel’s ME and a million blog posts on Meltdown, these are very, very serious bugs that shouldn’t have happened in the first place. And, where there are two, there’s probably more.
We don’t know what’s up with the latest version of the macOS and the password problems, but we are eagerly awaiting the Medium post from a member of the macOS team going over these issues. We hope to see that in a decade or two.