Neural network shown on original mac screen, handwritten 2 on left and predictions on right

Original Mac Limitations Can’t Stop You From Running AI Models

Modern retrocomputing tricks often push old hardware and systems further than any of the back-in-the-day developers could have ever dreamed. How about a neural network on an original Mac? [KenDesigns] does just this with a classic handwritten digit identification network running with an entire custom SDK!

Getting such a piece of hardware running what is effectively multiple decades of machine learning is as hard as most could imagine. (The MNIST dataset used wasn’t even put together until the 90s.) Due to floating-point limitations on the original Mac, there are a variety of issues with attempting to run machine learning models. One of the several hoops to jump through required quantization of the model. This also allows the model to be squeezed into the limited RAM of the Mac.

Impressively, one of the most important features of [KenDesigns] setup is the custom SDK, allowing for the lack of macOS. This allows for incredibly nitty-gritty adjustments, but also requires an entire custom installation. Not all for nothing, though, as after some training manipulation, the model runs with some clear proficiency.

If you want to see it go, check out the video embedded below. Or if you just want to run it on your ancient Mac, you’ll find a disk image here. Emulators have even been tested to work for those without the original hardware. Newer hardware traditionally proves to be easier and more compact to use than these older toys; however, it doesn’t make it any less impressive to run a neural network on a calculator!

Continue reading “Original Mac Limitations Can’t Stop You From Running AI Models”

Libogc Allegations Rock Wii Homebrew Community

Historically, efforts to create original games and tools, port over open source emulators, and explore a game console’s hardware and software have been generally lumped together under the banner of “homebrew.” While not the intended outcome, it’s often the case that exploring a console in this manner unlocks methods to run pirated games. For example, if a bug is found in the system’s firmware that enables a clever developer to run “Hello World”, you can bet that the next thing somebody tries to write is a loader that exploits that same bug to play a ripped commercial game.

But for those who are passionate about being able to develop software for their favorite game consoles, and the developers who create the libraries and toolchains that make that possible, the line between homebrew and piracy is a critical boundary. The general belief has always been that keeping piracy at arm’s length made it less likely that the homebrew community would draw the ire of the console manufacturers.

As such, homebrew libraries and tools are held to a particularly high standard. Homebrew can only thrive if developed transparently, and every effort must be taken to avoid tainting the code with proprietary information or code. Any deviation could be the justification a company like Nintendo or Sony needs to swoop in.

Unfortunately, there are fears that covenant has been broken in light of multiple allegations of impropriety against the developers of libogc, the C library used by nearly all homebrew software for the Wii and GameCube. From potential license violations to uncomfortable questions about the origins of the project, there’s mounting evidence that calls the viability of the library into question. Some of these allegations, if true, would effectively mean the distribution and use of the vast majority of community-developed software for both consoles is now illegal.

Continue reading “Libogc Allegations Rock Wii Homebrew Community”

Robodog Goes Free Thanks To Unofficial SDK

What’s better than a pretty nice legged robot? One with an alternate SDK version that opens up expensive features, of course. The author didn’t like that the original SDK only came as pre-compiled binaries restricted to the most expensive models, so rolled up their sleeves and started writing a new one.

The manufacturer’s SDK limits access to programmatic functions, but that needn’t stop you.

There are a number of commercially-available robotic quadrupeds that can trace their heritage back to the MIT Mini Cheetah design, and one of them is the Unitree Go1 series which sports a distinctive X-shaped sensor cluster on its “face”. The basic models are affordable (as far as robots go, anyway) but Unitree claims only the high-priced EDU model can be controlled via the SDK. Happily, the Free Dog SDK provides a way to do exactly that.

The SDK is a work in progress, but fully usable and allows the user to send various high level and low level commands to the Go1 robots. High level examples include things like telling the robot to perform pushups, turn 90 degrees, or walk. Low level commands are things like specifying exact positions or torque levels for individual limbs. With the new SDK, doing those things programmatically is only a Python script away.

Know any other robots that might be based on the same system? This SDK might work on them, too.

Raspberry Pi Pico W Now Supports Bluetooth

What’s the best kind of upgrade a piece of consumer technology can get? A free one that doesn’t require you to do anything other than accept a new version of the software it’s running.

That’s precisely what every current (and future) owner of the Raspberry Pi Pico W just got with the addition of Bluetooth support to SDK 1.5.1. This is possible because the CYW43439 radio chipset used on the wireless version of the Pi Pico has always had Bluetooth capabilities, they just weren’t officially accessible from the C or MicroPython environments until now. In a corresponding blog post, [Eben Upton] explains that part of the delay was due to difficulties in getting both WiFi and Bluetooth connections to work simultaneously over the three-pin SPI bus that links the two chips on the board.

One thing that struck us as particularly interesting here is the use of BlueKitchen’s BTStack to provide support for both Bluetooth Classic and Low Energy profiles. This library is released under a modified version of the BSD 3-Clause license that otherwise specifically forbids commercial usage. That would be a problem for anyone who wanted to sell a gadget built around the Pico W, so Raspberry Pi Ltd negotiated — and presumably paid for — a special dispensation so commercial use is in the clear.

We should note that technically Bluetooth support was available in a beta state previously, albeit without this new license agreement made with BlueKitchen. Though anyone with a keen eye knew Bluetooth support was coming well before that, our own [Elliot Williams] called it when he first set eyes on the Pi Pico W back in 2022.

Wordle Comes To The Nokia N-Gage Thanks To New SDK

You probably never imagined you’d be reading about new software getting developed for Nokia’s infamous N-Gage handheld game system in 2022, and we certainly never thought we’d be writing about it. But here we are. Of course, we aren’t talking about a commercial title — this is an unofficial port of Wordle by “taco phone” superfan [Michael Fitzmayer].

[Michael] tells us that this first version is pretty simplistic, and currently uses a single word list with all 2,309 terms in the New York Times version. Translations to Finnish, Russian, and German are in the works, though interestingly it looks like the effort is currently stymied by the fact that the code doesn’t support words with hyphens in them; meaning it’s possible to find yourself in an unwinnable situation if you’re playing in Russian. We’re sure that’s just a coincidence and not meant as any kind of political commentary, but still…you can’t make this stuff up.

In Soviet Russia, N-Gage plays you!

So how does one go about developing a new game for a failed console from the early 2000s? The answer is by using the modern N-Gage SDK that’s is currently in development, which lets you write code for the system using popular tools and libraries like Visual Studio 2022, CMake, and SDL. But [Michael] isn’t just a user of this new SDK, he’s also the brains behind the operation.

The hope is this new development platform will lead to something of a renaissance for the maligned device, and he’s even started a Discord server to discuss the past, future, and present of sidetalkin’. If you’re surprised to find yourself looking up what a used N-Gage goes for on eBay these days, join the club.

An SDK For The ESP8266 WiFi Chip

The ESP8266 is a chip that turned a lot of heads recently, stuffing a WiFi radio, TCP/IP stack, and all the required bits to get a microcontroller on the Internet into a tiny, $5 module. It’s an interesting chip, not only because it’s a UART to WiFi module, allowing nearly anything to get on the Internet for $5, but because there’s a user-programmable microcontroller in this board. If only we had an SDK or a few libraries…

The ESP8266 SDK is finally here. A complete SDK for the ESP8266 was just posted to the Expressif forums, along with a VirtualBox image with Ubuntu that includes GCC for the LX106 core used in this module.

Included in the SDK are sources for an SSL, JSON, and lwIP library, making this a solution for pretty much everything you would need to do with an Internet of Things thing. As far as LX106 core is concerned, there’s example code for using the spare pins on this board as GPIOs, I2C and SPI busses, and a UART.

This turns the ESP8266 into something much better than a UART to WiFi module; now you can create a Internet of Things thing with just $5 in hardware. We’d love to see some examples, so put those up on hackaday.io and send them in to the tip line.

Controlling Chromecast: AirCast APK Released

[Koush] is at it again, this time releasing AirCast, an Android app that’ll push videos to the Chromecast from Dropbox, Google Drive, and your phone’s Gallery. Astute Hackaday readers will recall that AirCast has been around for a few weeks now, but limited to only his whitelisted Chromecast. As [Koush] explains it, he had to reverse engineer the protocols and now he simply avoids the Chromecast SDK entirely. If you’re lucky enough to have a Chromecast, you’ll want to hurry and grab the APK (direct download link) and have some fun with it before it self-destructs. [Koush] isn’t ready to release it for more than a 48 hour period, but we encourage you to take advantage of AirCast and contribute to his call for feedback, bugs, and crash reports. You have a little under a day left.

See “AllCast” work its magic in the video below. No, that’s not a typo. Apparently [Koush] has been struggling with available names for the app, and you’ll hear him call it “AllCast” in the Youtube video. That name was taken for some other product, though, and “AirCast” has now replaced it. If you suddenly regret not immediately ordering a Chromecast and are sitting this one out, go read [Mike’s] rant and get psyched up for when they’re back in stock.

Continue reading “Controlling Chromecast: AirCast APK Released”