Exercise Bike Hacked As Input For Xbox 360

If you like playing Grand Theft Auto, you’re pretty familiar with squeezing the triggers for accelerating and braking while driving around. [David Programa] decided this was too easy, and instead developed a system to allow him to pedal his way around the virtual world.

The device relies on a flywheel-based exercise bike, with six magnets placed on the flywheel that triggers a reed switch six times per rotation. The extra magnets give the system better resolution at slow speeds. A Hall Effect sensor would be a more reliable way to build this to survive in the long term, but the reed switch does work. It’s paired with a debounce circuit to keep the output clean. A Raspberry Pi is pressed into service, running a Python program to read a GPIO pin activated by the reed switch, counting pulses to determine the speed of pedalling.

The trigger control used in the Xbox 360 controller is a potentiometer that creates varying voltages depending on its position, allowing it to act as an analog accelerator input. 0 volts corresponds to no input, while the trigger reads 3.3 volts when fully depressed. The Raspberry Pi emulates this with its PWM output, paired with a low-pass filter to create the relevant voltage to inject into the trigger input on a generic Xbox 360 controller.

While it’s a lot less practical than simply using a regular controller, the pedal controls do allow you to get a great workout while playing Grand Theft Auto. Some of the more intense chase missions should be a great way to get your heart rate up, and that’s got to be a good thing.

Ironically, though, the system only works for cars and motorbikes in game. The bicycles in Grand Theft Auto are controlled by mashing the A button instead. Alternatively, you might consider a similar system for playing Mario Kart on the Nintendo Switch. Video after the break.

Continue reading “Exercise Bike Hacked As Input For Xbox 360”

Wireless 360 Controllers Now On The Dreamcast

Perhaps the greatest convenience feature of modern consoles is the wireless controller. Eliminating the risk of tripping over cords and enabling play in all manner of poorly ergonomic positions, they added huge comfort to the console gaming experience. [ismell] was no fan of the Dreamcast’s original controller, and the cable was too short to boot. It was time to bring the 360 Wireless controller to Sega’s swansong.

Early attempts by [ismell] involved a Windows computer acting as a USB host for the 360 controller, which would then send out commands back to the Dreamcast via a Cypress EZ-USB FX2 microcontroller. If this sounds esoteric and messy, that’s because it is. It was also too slow to reliably work, as the Dreamcast’s Maple controller bus expects updates every millisecond, else it considers the controller disconnected.

Instead, a dedicated USB host was needed to speak to the 360 controller and also the Dreamcast. [ismell] landed on the MicroZed 7010, a System on Chip that also packs an FPGA on board. With Petalinux running on the board, it interfaces with the Xbox 360 USB wireless controller interface, and then sends the data out over a custom “network” driver that sends packets to the Dreamcast over the Maple bus.

It’s by no means a simple hack, and the MicroZed is far from cheap, but it works and works well as shown in the video below. We’ve seen other wireless controller adapters over the years, too – like the wild BlueRetro build. We always love to see a good retro console hack, so don’t be shy about sending in your own!

Continue reading “Wireless 360 Controllers Now On The Dreamcast”

Pi 4 Emulator In A Durable, Dumpstered Cabinet

We must be looking in the wrong Dumpsters, because we never find anything as cool as [Queen_Combat] did. It’s one of those Kidzspace kid-proof waiting room game systems, complete with the original TV and an XBOX 360 that hasn’t been updated since 2009. When life hands you a sturdy game console box, it’s almost your duty to turn it into an all-in-one Raspberry Pi 4 emulation station.

[Queen_Combat] relocated the speakers from the top to the inside, just behind the vent holes on the sides, and printed a couple of mountable custom enclosures to hold them there. These are driven with a little 5W amplifier board, and everything is run from the XBOX’s power supply.

We particularly like the use of extenders in cigarette-lighter form factor, because we hadn’t seen those before. [Queen_Combat] printed a couple of adapters to make them fit nicely into the large holes on the front where the XBOX controllers were once attached — one has a volume knob, and the other has a USB3 port and a 3.5mm audio jack. [Queen_Combat] wanted to have HDMI audio out as well, so there’s an HDMI audio extractor in the mix, too, and another extender around back. Only thing missing is a paint job and some sweet vinyl graphics.

Yes, vinyl graphics would be sweet, but how? Not on the laser cutter, if that’s what you’re thinking. Don’t dismiss vinyl cutters out of hand, because they can do a whole lot more than that.

Via r/raspberry_pi

Use Your 360 Controllers On The Original Xbox

Microsoft’s original Xbox was regarded curiously by gamers and the press alike at launch. It was bigger, bulkier, and featured an eldritch monstrosity as its original controller. Thankfully, Microsoft saw fit to improve things later in the console’s lifespan with the Controller S, but nothing quite compares to the simple glory of the Xbox 360 controller. Now, there’s a way to use one on your original Xbox.

This project is the work of [Ryzee119], who previously adapted the controller for use with the Nintendo 64. An Arduino Pro Micro, acting as a master controller, talks to a MAX3421 USB host controller, which interfaces with an Xbox 360 wireless receiver, either genuine or third-party. The Arduino reads the data from the wireless receiver and then emulates a standard controller to the original Xbox. The system can handle up to four players on wireless 360 controllers, requiring an extra Arduino per controller to act in slave mode and emulate the signals to the original Xbox. In testing, lag appears roughly comparable with an original wired controller. This is a particularly important consideration for fast-paced action games or anything rhythm based.

It’s a well executed, fully featured project that should improve your weekly Halo 2 LAN parties immensely. No more shall Greg trip over a controller cable, spilling Doritos and Mountain Dew on your shagpile carpeting. Video after the break.

[Thanks to DJ Biohazard for the tip!]

Continue reading “Use Your 360 Controllers On The Original Xbox”

The Mac That Helped Build The Xbox Rides Again

The original Xbox, released in 2001 by Microsoft, was notable for being built out of largely off-the-shelf PC components. With a custom Pentium III CPU and IDE peripherals, the console was much closer to a contemporary desktop computer than any of the dedicated game consoles which had come before it. Which of course makes perfect sense if you think about it. Microsoft would want to use technology they were intimately acquainted with on their first foray into gaming market, and if there’s anything Microsoft knows better than forced system updates, it’s x86 computers.

But for their follow-up system, the Xbox 360, Microsoft decided to go with a PowerPC processor they co-developed with IBM. Naturally this meant they needed PowerPC development systems to give to developers, which is how Microsoft ended up briefly distributing PowerMac G5’s. [Pierre Dandumont] came into possession of one of these oddball Microsoft-branded Macs, though unfortunately the hard drive had been wiped. But with the help of a leaked drive image and some hardware sleuthing, he’s now got the machine up and running just like it was when Microsoft was sending them to developers between 2003 and 2005.

Since you’re reading this on Hackaday, you might have guessed there was a little more to the story then just downloading an ISO and writing it to the hard drive of a PowerMac G5. There’s apparently some debate in the community about whether or not it’s some form of rudimentary DRM on Microsoft’s part, but in any event, the development kit operating system will only run on a G5 with very specific hardware. So the challenge is not only figuring out what hardware the software is looking for, but finding it and getting it installed over a decade after its prime.

Most of the required hardware, like the Intel 741462-010 network card or 160 GB Seagate ST3160023AS hard drive were easy enough to track down on eBay. But the tricky one was finding a Mac version of the ATi Radeon X800 XT. [Pierre] ended up getting a much more common ATi FireGL X3 and flashing it with the Mac X800 firmware. This is a little easier said than done as depending on which manufacturer made the memory on your specific video card you have to fiddle with the clock speeds to get a usable image, but in the end he found the winning combination and the development kit OS booted up with his hacked graphics card.

So what does all this get you in 2019? [Pierre] admits nothing terribly useful, but it’s still pretty cool. The system lets you run Xbox and Xbox 360 binaries, and even features the old Xbox 360 “blade” style dashboard. He says that he’s only had limited success getting retail games to actually run on the thing, but if your goal was running Xbox 360 games in 2019 there’s certainly better ways to do that anyway. Like, buying an Xbox 360.

We’ve previously talked about the Xbox 360’s rather unusual processor, but around these parts we more often see projects which involve tearing Microsoft’s sophomore console apart than digging into how it actually worked.

Continue reading “The Mac That Helped Build The Xbox Rides Again”

This Xbox 360 Is Powered By Steam

Now that we’re far enough into the next generation of home video game consoles that we can’t really keep calling them that anymore, yard sales are sure to be full of lonely Xbox 360s and PS3s that have been put out to pasture. You’ll probably even find a Wii U or two out there that somebody accidentally purchased. This is great for hackers who like cramming new electronics into outdated consumer gear, and accordingly, we’re starting to see the fruits of that generational shift.

Case in point, this Xbox 360 which has been transformed into a “Steam Box” by [Pedro Mateus]. He figured the Xbox 360 was the proper size to fit a full PC plus PSU, while still looking contemporary enough that it won’t seem out of place in the entertainment center. Running SteamOS on Fedora 28, it even offers a traditional game console experience and user interface, despite the decidedly PC internals.

On the outside, the only thing that really gives away this particular Xbox’s new lease on life (when the purple LEDs are off, anyway) is the laser cut acrylic Steam logo on the top that serves as a grill for the internal CPU cooler. Ironically, [Pedro] did spray the Xbox white instead of just starting with a black one, but otherwise, there wasn’t much external modification necessary. Inside, of course, is a very different story.

It’s packing an AMD Ryzen 5 2400G processor with Radeon RX Vega 11GPU and 8GB of Corsair Vengeance LPX DDR4 3200MHz RAM. Power is provided by a Seasonic SS-300TFX 300W, and a Noctua NH-L9a-AM4 keeps the system cool. Even with all that gear in there, the thing is probably still quieter than the stock Xbox 360.

[Pedro] helpfully provides quite a few benchmarks for those wondering how this hacked-up Xbox fares against a more traditional gaming setup, though peak performance was obviously not the goal here. If you’ve got 45 minutes or so to spare, you should check out the video he’s put together after the break, which goes over the machine’s construction.

We’ve seen it done with the original Xbox, and now the Xbox 360. Who will be the first to send in their build that guts a current-generation Xbox and turns it into a PC for Internet fame?

[Thanks to Mike for the tip.]

Continue reading “This Xbox 360 Is Powered By Steam”

Speculative Execution Was A Troublemaker For Xbox 360

Part of why people can’t stop talking about Meltdown/Spectre is the fact that all the individual pieces have been sitting in plain sight for a long time. When everyone saw how it all came together last week, many people (and not even necessarily security focused people) smacked themselves on the forehead: “Why didn’t I see that earlier?” Speculative execution has caused headaches going way back. [Bruce Dawson] tells one such story he experienced back in 2005. (Warning: ads on page may autoplay video.)

It’s centered around Xbox 360’s custom PowerPC processor. Among the customization on this chip was the addition of an instruction designed to improve memory performance. This instruction was a hack that violated some memory consistency guarantees held by the basic design, so they knew up front it had to be used very carefully. Even worse: debugging problems in this area were a pain. When memory consistency goes wrong, the code visible in the debugger might not be the actual code that crashed.

Since we’re talking about the dark side of speculative execution, you can already guess how the story ends: no matter how carefully it was used, the special instruction continued to cause problems when speculatively executed outside the constrained conditions. Extensive testing proved that instructions that were not being executed were causing crashes. That feels more like superstition than engineering. As far as he can recall, it ended up being more trouble than it was worth and was never used in any shipped Xbox 360 titles.

[Main image source: AnandTech article on Xbox 360 hardware]