Using A TeensyLC To Emulate The XBOX 360 Controller

After the release of Mortal Kombat X, [Zachery’s] gaming group wanted to branch out into the fighter genre. They quickly learned that in order to maximize their experience, they would need a better controller than a standard gamepad. A keyboard wasn’t going to cut it either. They wanted a fight stick. These are large controllers that look very much like arcade fighting controls and include a joystick and large buttons. [Zachery’s] group decided to build their own fight stick for use with a PC.

[Zachery] based his build around the TeensyLC, which is a 32 bit development board with an ARM processor. It’s also compatible with Arduino. The original version of his project setup the controller as a HID, essentially emulating a keyboard. This worked for a while until they ran into compatibility issues with some games. [Zachery] learned that his controller was compatible with DirectInput, which has been deprecated. The new thing is Xinput, and it was going to require more work.

Using Xinput meant that [Zachery] could no longer use the generic Microsoft HID driver. Rather than write his own drivers, he decided to emulate the XBOX 360 controller. When the fight stick is plugged into the computer, it shows up as an XBOX 360 controller and Windows easily installs the pre-built driver. To perform the emulation, [Zachery] first had to set the VID and PID of the device to be identical to the XBOX controller. This is what allows the Microsoft driver to recognize the device.

Next, the device descriptor and configuration descriptor had to be added to the Teensy’s firmware. The device descriptor includes information such as USB version, device class, protocol, etc. The configuration descriptor includes additional information about the device configuration. [Zachery] used Microsoft Message Analyzer to pull the configuration descriptor from a real XBOX 360 controller, then used the same data in his own custom controller.

[Zachery] programmed the TeensyLC using the Arduino IDE. He ran into some trouble here because the IDE did not include the correct device type for an Xinput device. [Zachery] had to edit the boards.txt file and add three lines of code in order to add a new hardware device to the IDE’s menu. Several other files also had to be modified to make sure the compiler knew what an Xinput device type was.  With all of that out of the way, [Zachery] was finally able to write the code for his controller.

Xbox 360 Slim Gets Gutted and… Painted White?

XBox in a Briefcase

We love portable console builds, and this one by [Daniel Fürstauer] is no exception. It’s a beautifully hacked Xbox 360 slim into an aluminum briefcase — complete with a screen and a full audio system!

He started by gutting the Xbox 360 slim and throwing out pretty much all of the original enclosure, minus the disc drive cover. Now what he did next was completely for aesthetics, but freaking awesome. He actually took the motherboard out, taped off some of the important components, and spray painted the entire thing white! We’re not too sure what effect this will have on some of the components, but it seems to work, and gives it a really unique look underneath his Plexiglas enclosure.

He housed the rest of it (complete with custom cooling fans!) inside of one of those nice aluminum briefcases, complete with a widescreen LCD monitor, and computer speakers. He even fit the power supply inside — all you have to do is plug it in! There’s also room for at least one controller, whose holding spot doubles as space for the disc drive to eject. Continue reading “Xbox 360 Slim Gets Gutted and… Painted White?”

The Homebrew XBox 360 And PS3 portable

Cross

For the past few years now, [Downing] has been working on the dream of all console modders – a console made in the last ten years made portable. He’s spend a lot of time on the effort, and now thanks to a commission, he’s finally done it. Not just one console, either: this thing makes both the Xbox 360 and PS3 a handheld, battery-powered device thanks to some awesome wireless tech and a great deal of skill.

A few months ago, [Downing] and friends [Hailrazer] and [RDC] started a Kickstarter for the Cross Plane, a portable device that uses a wireless HDMI transmitter to offload the heavy and hot parts of running a game to a console, while the display and controls are kept portable. That Kickstarter didn’t see the success [Downing] was looking for, but that didn’t stop one enthusiastic supporter from commissioning a piece.

The display in the Cross Plane is a 7″ HD display, and the latency on the WHDMI transmitter is just about 1ms – basically unnoticeable. The controls on the front of the portable are wired to ‘controller packs’ that plug into the back, one for Xbox and one for PS3. The build quality is immaculate, and if you’ve ever wanted to know how to expertly finish a 3D printed part so it looks like it came off an assembly line, you should probably check out the build log.

Video walkthrough below.

Continue reading “The Homebrew XBox 360 And PS3 portable”

Hackaday Links: May 11, 2014

hackaday-links-chain

North Korean drones! Yes, your local hobby shop has the same aerial reconnaissance abilities as North Korea. Props to Pyongyang for getting v-tail mixing down.

There’s nothing quite as satisfying as the look of a well laid out resistor array, and the folks at Boldport have taken this to a new level. It’s an art piece, yes, but these would make fabulous drink coasters.

Here’s something even more artistic. [cpurola] found a bunch of cerdip EPROMs and bent the pins in a weird chainmaille-esque way. The end result is an EPROM bracelet, just in time for mother’s day. It’s a better use for these chips than tearing them apart and plundering them for the few cents worth of gold in each.

[John] still uses his original Xbox for xmbc, but he’d like to use the controllers with his computer. He never uses the third and fourth controller ports, so he stuck those in his computer. It’s as simple as soldering the controller port module to a connector and plugging it into an internal USB port. Ubuntu worked great, but Windows required XBCD.

[Kerry] has modified an FT232 USB/UART thingy as an Arduino programmer before. The CP2102 USB/UART is almost as popular on eBay, a little less expensive, and equally suited for ‘duino programming. It requires desoldering a resistor and soldering a jumper on a leadless package, but with a fine solder tip, it’s not too bad.

Using XBox One And PS4 Controllers With Everything

The controllers from the last generation of consoles served their purpose well. They were there for us when we wanted to experiment with an I2C bus, and they stood by when we wanted to build a quadcopter out of parts just lying around. A new generation of consoles is now upon us, and with them come new controllers. Controllers for which Arduino libraries haven’t been written yet. The horror.

Until those libraries are developed, there’s ChronusMAX, a USB dongle that allows you to use XBox One controllers on a PS4, PS4 controllers on the XBox, mice and keyboards on both systems, and both types of controllers on your PC.

The folks behind ChronusMAX put up a video demoing the XBox One controller working on the 360, PS3, and PC, with another video showing the same for the PS4 controller. As far as what we can see from the PC demos, everything on these controllers can be read, right down to the accelerometer data on the DualShock 4.

Although this is a commercial product, we’re surprised we haven’t seen a more open version by now. From the looks of it, it’s a very small device with two USB ports and a firmware upload utility. Microcontrollers with two native USB ports are usually encased in large packages, so there might be some very clever engineering in this device. Let us know when someone does a teardown of one of these.

Thanks [Josh] for sending this one in.

Update: Semi-automatic Pick and Place Goes Fully-Automatic

automated-pick-and-place

Way back in April we looked at an impressive Pick and Place machine project which wasn’t actually up and running yet. Well it looks like [Brian Dorey] has really put the pedal to the metal with this fall, posting nine project updates since September.

The previous system was working just fine but required quite a bit of user intervention to do the actual placing. So the first modifications toward the new goal centered around motorizing the gantry. There’s a lot of information on this, as well as the vacuum tweezer heads that were designed for the system. But for us it was exciting to read about the vibrating chip feeder. This uses the vibrating motor from an Xbox controller to jiggle the ICs from their tube packaging to a staging jig off the side of the build table. You can see a video of this after the break along with a demo of the entire machine at work.

[Brian] seems to favor the Xbox parts as he also used an Xbox live camera along with OpenCV to detect the parts and ensure they are lined up correctly. For the best results possible the parts need to be illuminated properly which is why he also built a rather interesting light ring using 144 red LEDs.

Continue reading “Update: Semi-automatic Pick and Place Goes Fully-Automatic”

Posterior Posture Videogame Controller

bathroom_scale_game_controller

Normally we see some crazy mad science projects coming from [Ben Krasnow’s] laboratory. This week [Ben] changes gears a bit and hacks his Xbox controller to interface with his bathroom scale and function as a posture controlled input device. You may want to take a moment for that to tumble around in your noggin before we trying to explain. What this means is you sit catawampus on a bathroom scale and when you lean forward your game character moves forward, lean back your character backs up and lean side to side for strafe left and right.

A modern digital bathroom scale has four pressure point transducers — one in each corner — which are read by the central controller and summed to generate the weight of the object setting on the scale. To use the scale as a controller input [Ben] removed the central scale controller and created two amplified Wheatstone bridge differential circuits, one for each diagonal axis between load cells. After adding an offset potentiometer to fix the resting point at 0.8 volts, the amplified differential voltage signals are fed directly into an Xbox controller’s thumb stick input for game control.

Additionally, to add rotation to his new game controller he hacked a an old ball type mouse and added a bit of rubber tubing that contacted and tracked the base of a  Lazy Susan platter. The scale sits on the Lazy Susan and allows for the partial rotation of your torso to controlled game rotation. However, [Ben] still needed a regular mouse interfaced with the game for full 360° rotation control.

There is more after the break, plus the build and demonstration video.

Continue reading “Posterior Posture Videogame Controller”