Editing GameCube Memory With A Raspberry Pi

[James] has been working with GameCubes, emulators, and Animal Crossing for a while now, and while emulators are sufficient, he’d like to play on real hardware. This means he needs to write to a GameCube memory card. While there are a few options to do this, they either require a Wii or hardware that hasn’t been made in a decade. The obvious solution to this problem is to reverse engineer the GameCube memory card to read and write the memory with a Raspberry Pi.

There’s an incredible amount of unofficial documentation for every console, and [James] stumbled upon a GC-Forever forum post that describes the electrical signals inside the GameCube memory card. There’s your standard compliment of power and ground pads, along with a DI, DO, CS, Clk, and an INT pin. [James] broke out the magnet wire and soldered up a pin header to these cards. Data was then captured with a Salae logic analyzer, and lo and behold, it looked like a standard SPI protocol.

With the low-level protocol worked out, [James] checked out the Yet Another GameCube Documentation to get the main functions allowed through the SPI bus. The ‘read block’, for instance, starts off with 0x52 and an address offset. A little bit of Python on a Raspberry Pi meant [James] could read and write the entire GameCube memory card. Right now the code is a little rough, but all the work is available should you want to edit your Animal Crossing save with a Raspberry Pi.

This work follows [James]’ earlier work on getting into the debug menu of Animal Crossing, allowing him to add items to his inventory. With this latest advancement, it’s only a matter of time before we plug Raspberry Pis directly into a GameCube.

A Raspberry Pi Has This Pool Covered

Far from being a tiled hole in the ground with a bit of water in it, a modern swimming pool boasts a complex array of subsystems designed to ensure your morning dip is as perfect as that you’d find on the sun-kissed beaches of your dream tropical isle. And as you might expect with such complex pieces of equipment in a domestic setting, they grow old, go wrong, and are expensive to fix.

[DrewBeer]’s pool had just such a problem. A decades-oldwired controller had failed, so rather than stump up a fortune for a refit, he created his own pool controller which exists under the watchful eye of a Raspberry Pi. The breadth of functionality is apparent from his write-up. In addition to the pump and heater you’d expect, he as a salt water system, environmental monitoring, and even an RTL-SDR to pull in readings from an RF floating temperature probe. It’s all exposed via a node.js API, and thus far has been running for over 6 months without mishap.

From where this is being written in the gloom of a damp November in a Northern Hemisphere maritime climate we can only envy [Drew] his pool and imagine it as perpetually deep blue and sparkling, invitingly cool against the heat of a summer’s day. If you have similar pool automation woes. perhaps you’d also like to look at this ESP8266 pool monitor, or another automation project using a Raspberry Pi.

Arcade1up Cabinet Solderless Upgrade With A Side of Raspberry Pi

Upon announcement of the Arcade1up replica arcade cabinets earlier this year, many laid in waiting for the day they could see a teardown. A four foot tall cab with an LCD outputting the proper 4:3 aspect ratio and the simple construction of IKEA furniture certainly seemed appealing. In theory, it wouldn’t take long to customize such a piece of hardware provided the internals lent themselves to that sort of thing. Now that the cabinets are on store shelves, [ETA Prime] made a tutorial video on his method for upgrading the Arcade1up cabinet with a Raspberry Pi calling the shots.

The entirety of the mod is solder-free and uses plenty of readily available parts from your favorite online reseller. The brains of the operation is a Raspberry Pi 3 Model B+ running Emulation Station. The Arcade1up Street Fighter 2 cabinet’s less than stellar audio receives an upgrade in a 2x20W car audio amp, while the middling joysticks are swapped out for some more robust Sanwa-clone ball tops.

Since there is no “select/coin” button natively, [ETA Prime] added some and in the process replaced them all with beefier LED-lit 30mm buttons. The replacement joysticks and buttons were all part of a kit, so they plug-in conveniently to a plug and play USB encoder. To adapt the 17″ LCD’s output over LVDS, [ETA Prime] elected to go with an LCD controller board that outputs DVI, VGA, or HDMI. Luckily the Arcade1up cabinet’s 12V power supply could be reused to power the LCD controller board and in the process bring down the overall cost of the upgrade.

While this Arcade1up cabinet mod won’t solve the whole “bats versus ball tops” argument, it does provide a template to build on. The tutorial video is below and the list of parts used can be found in the YouTube description.

Continue reading “Arcade1up Cabinet Solderless Upgrade With A Side of Raspberry Pi”

Set Up A Headless Raspberry Pi, All From Another Computer’s Command Line

There are differences between setting up a Raspberry Pi and installing an OS on any other computer, but one thing in common is that if you do enough of them, you seek to automate the process any way you can. That is the situation [Peter Lorenzen] found himself in, and his solution is a shell script to install and configure the Raspberry Pi for headless operation, with no need to connect either a keyboard or monitor in the process.

[Peter]’s tool is a script called rpido, and with it the process for setting up a new Raspberry Pi for headless operation is super streamlined. To set up a new Pi, all [Peter] needs to do is:

  1. Plug an SD card into his laptop (which happens to be running Ubuntu.)
  2. Run: rpido -w -h myhostname -s which downloads and installs the newest version of Raspbian lite, does some basic setup (such as setting the hostname), configures for headless operation, and launches a root shell.
  3. Use the root shell to do any further tweaks or checks (like launching raspi-config for additional changes.)
  4. Exit the shell, remove the SD card from his laptop, and install the card into the Raspberry Pi.

There are clear benefits to [Peter]’s script compared to stepping through a checklist of OS install and setup tasks, not to mention the advantage of not needing to plug in a keyboard and monitor. Part of the magic is that [Peter] is mounting the SD card’s filesystem in a chroot environment. Given the right tools, the ARM binaries intended for the Pi run on his (Intel) Ubuntu laptop. It’s far more convenient to make changes to the contents of the SD card in this way, before it goes to its new home in a Pi.

Not everything has to revolve around an SD card, however. [Jonathan Bennet] showed that it’s possible to run a Raspberry Pi without an SD card by using the PXE boot feature, allowing it to boot and load its file system from a server on the same network, instead of a memory card.

It Might Be Possible To Build A Stingray With A Raspberry Pi

If there’s one thing that’s making you insecure, it’s your smartphone. Your smartphone is constantly pinging the cell towers, giving out your location and potentially leaking your private information to anyone with a radio. This is the idea behind an IMSI catcher, or Stingray in common parlance, and now you too can build one with parts you can buy off of Amazon.

The key to this hack is a software defined radio dongle, or RTL-SDR, that has been repurposed to listen in on a GSM network. Literally the only hardware required is an RTL-SDR that can be bought online for less than fifteen dollars, and you can identify the IMSI, or unique ID linked to every SIM card, in smartphones around you. The only bit of software required is a small Python script from [Oros42], freely available on GitHub.

Of course, building an IMSI catcher with a desktop is of limited utility, and using a laptop is still a bit too bulky to surreptitiously conceal in a public location. No, to really get the bang for your buck out of this, you need to do this with a small single-board computer running off a battery pack. Luckily, [Joseph Cox] over at Motherboard reports, “It is likely possible” to run this on a Raspberry-Pi. We’re guessing it’s even more than “likely” possible.

Meat-Seeking Raspberry Pi Leads you to Flavortown

[Patrick McDavid] and his wife had a legitimate work-related reason for writing some Python code that would pull the exact latitude and longitude of the individual locations within a national retain chain from Google’s Geocoding API. But don’t worry about that part of the story. What’s important now is that this simple concept was then expanded into a pocket-sized device that will lead the holder to the nearest White Castle or Five Guys location.

The device, which [Patrick] lovingly referrers to as the “Cheeseburger Compass”, uses a Raspberry Pi 3, an Adafruit 16×2 LCD with keypad, a GPS module, and the requisite battery and charger circuit to make it mobile. With the coordinates for the various places one can obtain glorious artery clogging meat circles loaded up, the device will give the user the cardinal direction and current distance from the nearest location of the currently selected chain.

[Patrick] has published the source code for this meat-seeking gadget on GitHub, but notes that most of it is just piecing together existing libraries and tools. As with many Python projects, it turns out there’s already a popular library to do whatever it is you were trying to do manually, so his early attempts at calculating distances and bearings were ultimately replaced with turn-key solutions. Though he did come up with a quick piece of code that would convert a compass heading in degrees to a cardinal direction that he couldn’t find a better solution for. Maybe he should make it a library…

Sadly the original Cheeseburger Compass got destroyed from being carried around so much, but at least it died doing what it loved. [Patrick] says a second version of the device would likely switch over to a microcontroller rather than the full Raspberry Pi experience, as it would make the device much smaller and greatly improve on the roughly two hour battery life.

This project reminds us of the various geocache devices we’ve covered in the past, but with the notable addition of hot sizzling meat. Talk about improving on a good thing.

The Smaller, More Powerful Raspberry Pi 3 Model A+

It’s that time of year again, and the Raspberry Pi Foundation has some new hardware for you. This time, it’s an improved version of the Raspberry Pi Model A, bringing it the speed and power of its bigger brother, the Raspberry Pi Model 3 B+.

The Raspberry Pi Model A is the weird middle child of the Raspberry Pi lineup, or maybe it’s the Goldilocks choice. It’s not as powerful and doesn’t have the USB ports or Ethernet jack found in the latest revision of the family, the Raspberry Pi Model 3 B+, and it’s not as small or as cheap as the Raspberry Pi Zero W. If you’re running a Pi as just something that takes in power and spits out data on the GPIO pins, the Model A might be all you need.

The full specs include:

  • Broadcom BCM2837B0 Cortex A-53 running at 1.4GHz
  • 512 MB of LPDDR2 SRAM
  • 2.4 GHz and 5 GHz 802.11 b/g/n/ac wireless LAN, Bluetooth 4.2/BLE
  • Full size HDMI
  • MIPI DSI display port / CSI camera port
  • Stereo Output and composite video port

In short, we’re looking at a cut-down version of the Raspberry Pi Model 3 B+ released earlier this year, without an Ethernet port and only one USB port. The wireless chipset is hidden under a lovely embossed can, and until we get our hands on this new model and a pair of pliers, we’re assuming this is a CYW43455, the Cypress chipset found in the Pi 3 B+.

The price of the Raspberry Pi 3 Model A+ will be $25 USD, with availability soon at the usual retailers. Since there’s no such thing as a Pi Zero 3 yet, if you’re looking for a powerful Linux computer, with wireless, in a small form factor, you’re not going to do much better than this little guy. You could of course desolder a Pi 3 B+, but for now this is the smallest, most powerful single board computer with good software support.