The main body of the handheld is constructed from attractive black and gold PCBs, and features a screen, some controls and an on/off switch. There’s also a microSD socket is on the board, which interfaces with cartridges which carry the microcontroller. Change the cart, and you can change the game.
[bobricius] has developed carts for a variety of common microcontroller platforms, from the Attiny85 to the venerable ATmega328. As the microSD slot is doing little more then sharing pins for the screen and controls, it’s possible to hook up almost any platform to the handheld. There’s even a design for a Raspberry Pi cart, just for fun.
Parallel processing is an idea that will be familiar to most readers. Few of you will not be reading this on a device with only one processor core, and quite a few of you will have experimented with clusters of Raspberry Pi or similar SBCs. Instead of one processor doing tasks sequentially, the idea goes, take a bunch of processors and hand out the tasks to be done simultaneously.
It’s a fair bet though that few of you will have designed and constructed your own parallel processing architecture. [BB] sends us a link which though it’s an old one is interesting enough to bring you today: [Michael] created a massively parallel array of Parallax Propeller microcontrollers back in 2008, and he did so on a breadboard.
The Parallax Propeller is an 8-core RISC microcontroller from the company that had found success in the 1990s with the BASIC Stamp, the PIC-based board that was all the rage before Arduino came into the world. In the last decade it was seen as an extremely exciting prospect, but high price and arcane development tools compared to a new generation of low-cost and easy to code competitors meant that it never quite caught on and remains today something of an intriguing oddity. So today’s value in this project lies not in something that you should run out and do yourselves, but instead in what the work tells us about the nuts and bolts of parallel processing architecture. It involves more than simply hooking up a load of chips and hoping for the best, and we gain some insight into the different strategies involved.
The Propeller certainly wasn’t the first attempt at a massively parallel microcontroller, and we doubt it will be the last. We’re certainly seeing microcontrollers with more than one core becoming more mainstream even in our community, but even with those how many of you have made use of the second core in your dual-core ESP32? Is a multicore microcontroller a solution searching for a problem, or will somebody one day crack it and the world will never be the same again? As always, the comments are below.
An ultrasonic knife is a blade that vibrates a tiny amount at a high frequency, giving the knife edge minor superpowers. It gets used much like any other blade, but it becomes far easier to cut through troublesome materials like rubber or hard plastics. I was always curious about them, and recently made my own by modifying another tool. It turns out that an ultrasonic scaling tool intended for dental use can fairly easily be turned into a nimble little ultrasonic cutter for fine detail work.
I originally started thinking about an ultrasonic knife to make removing supports from SLA 3D prints easier. SLA resin prints are made from a smooth, hard plastic and can sometimes require a veritable forest of supports. These supports are normally removed with flush cutters, or torn off if one doesn’t care about appearances, but sometimes the density of supports makes this process awkward, especially on small objects.
I imagined that an ultrasonic blade would make short work of these pesky supports, and for the most part, I was right! It won’t effortlessly cut through a forest of support bases like a hot knife through butter, but it certainly makes it easier to remove tricky supports from the model itself. Specifically, it excels at slicing through fine areas while preserving delicate features. Continue reading “Making An Ultrasonic Cutter For Post-processing Tiny 3D Prints”→
Alongside the Commodores, Ataris, Nintendos, and all the other game systems of the 80s, there was a single unique video game system that stood out from the pack. This was the Vectrex, a console with a built-in CRT meant to display vector graphics and only vector graphics. The video game crash of 1983 wasn’t kind to the Vectrex, but it still lives on with a reasonably popular homebrew scene. Still, these homebrew games are limited by the hardware itself. After thirty years, the Vectrex has an upgrade. The Vectrex32 is a coprocessor, designed for the Vectrex cartridge slot, that gives this ancient console better graphics and 32-bit capabilities.
There’s a whole site dedicated to this Vectrex add-on, and the hardware is pretty much what you would expect. There’s a fast PIC32 microcontroller on this cartridge, a USB port, and a dual-port memory chip that’s connected to the Vectrix’s native processor.
Since this add-on cartridge is effectively a computer itself, the Vectrex32 can operate as a BASIC interpreter for the Vectrex. That’s something the original hardware couldn’t have done, and makes homebrew development much easier.
You can check out a few videos describing the functionality of the Vectrex32 below, along with a few gameplay videos of new homebrew games written specifically for the Vectrex.
The review embargo is finally over and we can share what we found in the Nvidia Jetson TX2. It’s fast. It’s very fast. While the intended use for the TX2 may be a bit niche for someone building one-off prototypes, there’s a lot of promise here for some very interesting applications.
Last week, Nvidia announced the Jetson TX2, a high-performance single board computer designed to be the brains of self-driving cars, selfie-snapping drones, Alexa-like bots for the privacy-minded, and other applications that require a lot of processing on a significant power budget.
This is the follow-up to the Nvidia Jetson TX1. Since the release of the TX1, Nvidia has made some great strides. Now we have Pascal GPUs, and there’s never been a better time to buy a graphics card. Deep learning is a hot topic that every new CS grad wants to get into, and that means racks filled with GPUs and CUDA cores. The Jetson TX1 and TX2 are Nvidia’s strike at embedded deep learning, or devices that need a lot of processing power without sucking batteries dry.
Most of our beloved tools, such as Slic3r, Cura or KISSlicer, offer scripting interfaces that help a great deal if your existing 3D printing toolchain has yet to learn how to produce decent results with a five headed thermoplastic spitting hydra. Using scripts, it’s possible to tweak the little bits it takes to get great results, inserting wipe or prime towers and purge moves on the fly, and if your setup requires it, also control additional servos and solenoids for the flamethrowers.
This article gives you a short introduction in how to post-process G-code using Perl and Slic3r. Perl Ninja skills are not required. Slic3r plays well with pretty much any scripting language that produces executables, so if you’re reluctant to use Perl, you’ll probably be able to replicate most of the steps in your favorite language.
If you’ve taken any digital signal processing classes at a college or university, you’ve probably been exposed to MATLAB. However, if you want to do your own work, you might think about Linux and one of the many scientific computing applications available for it.
[David Duarte] recently published a three-part tutorial on using Octave to do scientific audio processing. The first part covers basic reading, writing, and playing of audio files. Part two covers synthesis of signals, plotting, and some basic transformations. Modulation is the topic of the third part. If you prefer your tutorials on video, you can check out the video below.
We’ve talked about MATLAB before in the context of message cracking. Then again, some of the best signal processing is done by humans. If you don’t like Octave, you might try Scilab, another Linux package that is similar. There’s also Freemat, Sage, and Spyder. Of course, you can also run MATLAB under Linux.