Tetris For Game Boy Gets Online Multiplayer

Released in 1989, the Game Boy version of Tetris is notable for being the first game to support multiplayer via the so-called “Game Link Cable” accessory. So it’s fitting that, 32 years later, that same game is now playable with others over the Internet thanks to an open source USB adapter from [stacksmashing].

As explained in the video below, the adapter is essentially just a Raspberry Pi Pico paired with some level shifters so that it can talk to the Game Boy’s link port. That said, the custom PCB does implement some very clever edge connectors that let you plug it right into the Link Cable for the original “brick” Game Boy as well as the later Color and Advance variants. This keeps you from having to cut up a Link Cable just to get a male end, which is what [stacksmashing] had to do during the prototyping phase.

The DIY breadboard approach works as well.

Of course, the hardware is only one half of the equation. There’s also an open source software stack which includes a Python server and WebUSB frontend that handles communicating with the Game Boy and connecting players. While the original game only supported a two person head-to-head mode, the relatively simplistic nature of the multiplayer gameplay allowed [stacksmashing] to expand that to an arbitrary number of players with his code. The core rules haven’t changed, and each client Game Boy still thinks it’s in a two player match, but the web interface will show the progress of other players and who ends up on top at the end.

To be clear, this isn’t some transparent Link Cable to TCP/IP solution. While something like that could potentially be possible with the hardware, as of right now, the software [stacksmashing] has put together only works for Tetris. So if you want to battle Pokemon over the net, you’ll have to do your own reverse engineering (or at least wait for somebody else to inevitably do it).

The Link Cable port on the Game Boy, especially on the later versions of the hardware, is a surprisingly versatile interface capable of much more than just multiplayer gaming. While we’re certainly keen to see [stacksmashing] develop this project farther, we’re equally excited to see the non-gaming applications of such an easy to use computer interface for the iconic handheld.

Continue reading Tetris For Game Boy Gets Online Multiplayer”

TrueTape64 Is A PC Interface For Your C64 Datasette

Back in the distant past of the 1980s, software was distributed on audio tape. Ones and zeroes were encoded as tones of different frequencies, and tapes were decoded by specialised hardware which could then spit out raw digital data to an attached computer. While software methods now exist to simply record audio from old tapes and turn them into data, [Francesco] wanted to do it the hardware way, and built a PC interface for his Commodore 64 Datasette.

The TrueTape64, as it has been named, is built around an Atmel ATTiny2313 microcontroller. This interfaces with the original Datasette hardware which takes care of reading the analog tape output and turning it into digital data. From there, the microcontroller communicates with an FTDI232 serial-to-USB adapter to get the data into a modern PC, where it’s compiled into a TAP image file via some Python magic.

It’s a barebones build, which goes so far as to run the Datasette’s motor off the USB power supply via a boost converter; those facing issues with the tape mechanism might do well to look there first. However, it does work, and a done job is a good job at the end of the day. We’ve seen similar hacks before, too – it’s great to see the community keeping cassette software alive!

The ARMv9 ISA, And What It Can Do For You

The number of distinct ARM Instruction Set Architectures (ISA) versions has slowly increased, with Arm adding a new version every few years. The oldest ISA version in common use today is ARMv6, with the ARMv6 ISA (ARM11) found in the original Raspberry Pi SBC and Raspberry Pi Zero (BCM2835). The ARMv6 ISA was introduced in 2002, followed by ARMv7 in 2005 (start of Cortex-A series) and ARMv8 in 2011. The latter was notable for adding 64-bit support.

With ARMv7 being the first of the Cortex cores, and ARMv8 adding 64-bit support in the form of AArch64, what notable features does ARMv9 bring to the table? As announced earlier this year, ARMv9’s focus appears to be on adding a whole host of features that should improve vector processing (vector extensions, or SVE) as well as digital signal processing (DSP) and security, with its Confidential Compute Architecture (CCA).

In addition to this, ARMv9 also includes all of the features that were added with ARMv8.1, v8.2, v8.3 and so on. In essence, this makes an ARMv9-based processor theoretically capable of going toe-to-toe with the best that Intel and AMD have to offer.

Continue reading “The ARMv9 ISA, And What It Can Do For You”

Embedded Rust Hack Chat

Join us on Wednesday, May 12 at noon Pacific for the Embedded Rust Hack Chat with James Munns!

Programming languages, like fashion, are very much a matter of personal taste. Professional developers often don’t have much say in which language they’ll use for a given project, either for legacy or team reasons, but if they did have a choice, they’d probably choose the language that works best with the way they think. Some languages just “fit” different brains better than others, and when everything is in sync between language and developer, code just seems to flow effortlessly through the keyboard and onto the screen.

One language that consistently scores at the top of developers’ “most loved” lists is Rust. For a language that started as a personal project and has only existed for a little more than a decade, that’s really saying something. The emphasis Rust puts on safety and performance probably has a lot to do with that. And thanks to its safe concurrency, its memory safety, and its interoperability with C and other languages, Rust has made considerable in-roads with the embedded development community.

To learn more about Rust in embedded systems, James Munns will stop by the Hack Chat. James is an embedded systems engineer, with a history of working on software for a wide range of systems, including safety-critical avionics, and rapidly prototyped IoT systems. He’s a founding member of the Rust Embedded Working Group, as well as a founder of Ferrous Systems, a consultancy focused on systems development in Rust, with a specialty in embedded systems development. James also used to write for Hackaday, so he must be a pretty cool guy. So swing by the Hack Chat and find out where Rust might be able to help you out with your next embedded project.

join-hack-chatOur Hack Chats are live community events in the Hackaday.io Hack Chat group messaging. This week we’ll be sitting down on Wednesday, May 12 at 12:00 PM Pacific time. If time zones have you tied up, we have a handy time zone converter.

Click that speech bubble to the right, and you’ll be taken directly to the Hack Chat group on Hackaday.io. You don’t have to wait until Wednesday; join whenever you want and you can see what the community is talking about.
Continue reading “Embedded Rust Hack Chat”

Apple AirTag Spills Its Secrets

The Apple AirTag is a $29 Bluetooth beacon that sticks onto your stuff and helps you locate it when lost. It’s more than just a beeper though, the idea is that it can be silently spotted by any iDevice — almost like a crowd-sourced mesh network — and its owner alerted of its position wherever they are in the world.

There are so many questions about its privacy implications despite Apple’s reassurances, so naturally it has been of great interest to those who research such things. First among those working on it to gain control of its nRF52832 microcontroller is [Stacksmashing], who used a glitching technique whereby the chip’s internal power supply is interrupted with precise timing, to bypass the internally enabled protection of its debug port. The firmware has been dumped, and of course a tag has been repurposed for the far more worthwhile application of Rickrolling Bluetooth snoopers.

The idea of a global network of every iDevice helping reunite owners with their lost possessions is on the face of it a very interesting one, and Apple are at great pains on the AirTag product page to reassure customers about the system’s security. On one hand this work opens up the AirTag as a slightly expensive way to get an nRF microcontroller for other applications, but the real value will come as the firmware is analysed to see how at the tag itself works.

[Stacksmashing] has appeared on these pages many times before, often in the context of Nintendo hardware. Just one piece of work is the guide to opening up a Nintendo Game and Watch.

South Australia Vs. Too Much Home Solar

Once upon a time, the consensus was that renewable energy was too expensive and in too sparse supply to be a viable power source to run our proud, electrified societies on. Since then, prices of solar panels have tanked, becoming more efficient along the way, and homeowners have been installing them on their rooftops in droves.

Where once it was thought we’d never have enough solar energy, in some cities, it’s becoming all too much. In South Australia, where solar output can be huge on a sunny day, electricity authorities are facing problems with grid stability, and are taking measures to limit solar output to the grid.

Isn’t More Usually Better?

The problem faced by South Australian utilities is one of how to properly control an electrical grid with many thousands of distributed power sources. Typically, in conventional modern power grids, voltage and frequency is controlled within set limits by carefully matching the supply from major power plants with the demand from users. Fast-response plants can be brought online to meet shortfalls, and switched off when demand drops, and everything hums along nicely.

Unfortunately, solar power isn’t so easy to throttle, and even less so when it’s coming from thousands of separate households each with their own rooftop install and an inverter to feed back into the grid. This has led to authorities contemplating measures such as charging homeowners to export energy to the grid in peak periods in an effort to slow the huge uptake of home solar systems. Export limits have also been proposed for suburbs with the highest concentration of home solar, as substations in certain residential areas struggle to cope under the huge inflows of energy. Continue reading “South Australia Vs. Too Much Home Solar”

Building An Oxygen Concentrator: It Isn’t Rocket Science

Back at the start of the pandemic, a variety of hacker designs for life-saving machinery may have pushed the boundaries of patient safety. There are good reasons that a ventilator must pass extensive safety  testing and certification before it can be attached to a patient, because were it to in some way fail, the patient would die. A year later, we have many much safer and more realistic ways to use our skills as part of the effort.

Probably one of the most ambitious projects comes from a coalition of Indian hackerspaces who are adapting a proven oxygen concentrator for local manufacture. Among them is Hackaday’s own [Anool Mahidharia], who hosts a Maker’s Asylum video (embedded below) explaining how the oxygen concentrator works and how they can be made safely.

The team have proven their ability in manufacturing over the past year, here showing off the M19 motorised air purifying respirator.
The team have proven their ability in manufacturing over the past year, here showing off the M19 motorised air purifying respirator.

An oxygen concentrator is both surprisingly simple and imbued with a touch of magic. At its center are two columns of zeolite, a highly porous aluminosilicate mineral that performs the task of a molecular sieve. When air is pumped into the column, the zeolite traps nitrogen, leaving the oxygen-enriched remnant to be supplied onwards. There are two such columns to allow each to be on an alternate cycle of enrichment or purging to remove the accumulated nitrogen.

The point of the video is to show that such a device can be constructed from readily available parts and with common tools; as the title says it isn’t rocket science. Concentrators produced by the hackerspace coalition won’t save the world on their own, but as a part of the combined effort they can provide a useful and reliable source of oxygen that will make a significant difference in a country whose oxygen distribution network is under severe strain.

We previously covered the Indian oxygen concentrator effort when they launched the project. Their website can be found on the Maker’s Asylum website, and their crowdfunding campaign can be found on the Indian crowdfunding platform, Ketto. They have already proved their ability to coordinate large-scale manufacturing with their previous PPE and respirator projects, so please consider supporting them if you can. Meanwhile, we can’t help a twinge of space envy, from the fleeting glimpse of Maker’s Asylum in the video.

Continue reading “Building An Oxygen Concentrator: It Isn’t Rocket Science”