Playing chess on a microcontroller

[Arthur Benemann] started a little project for his electrical engineering program, and suffered the worst case of feature creep we’ve ever seen. He just posted an instructable of his picChess project that is able to play chess on a VGA monitor with a keyboard, with sound, a clock, temperature sensor. Apparently, [Arthur] was bored one evening and threw in an implementation of Conway’s game of life.

[Arthur] chose a DSPIC33F μC for his project with everything laid out on a bread board. He’s quite proud of his VGA routine, the first time he’s ever used DMA. We’re really impressed by [Arthur]’s chess engine – his is the first homebrew chess engine we’ve seen on Hack A Day. Although the engine is a brute-force search with Alpha-beta pruning, the engine itself seems fairly advanced that will even supports castling.

Although a few rules aren’t supported and the ELO rating of the engine isn’t known, [Arthur]’s engine should still be able to beat an amateur player. A fairly impressive feat indeed.

Check out [Arthur]’s video after the break.

Continue reading “Playing chess on a microcontroller”

Automated chess set does it from below

You can get class credit for the coolest things these days. Take for instance, this Automatic Chessboard that [Brian] and [James] built for the final project in one of their classes this spring. We just looked at a robotic chess setup on Monday that used a gripper mounted on a gantry to move the pieces. This one’s a lot more user-friendly and borders on magical. That’s because the moving parts are all located below the board and could be hidden from view if a proper case were built around the edges.

There are two main components to this build. The first is a grid of reed switches that detect the moves made by a human. This works because each piece the human player uses has a weak magnet glued to the bottom which is just strong enough to actuate the reed switch and let the computer sense what move was just made. On the robotic side of things this works like a plotter. Each of the computer’s pieces has a metallic disc glued to the base. What basically amounts to a plotter under the board uses rare-earth magnets to grab the computer’s piece and drag it to the next playing position.

The use of two separate magnetic systems provides some interesting design challenges. You can see the device in action in the video after the break, and a full writeup and source code package is available at the blog linked at the top of this feature. But for your convenience we’ve also mirrored the PDF whitepaper after the break which lays bare all of the juicy details.

Continue reading “Automated chess set does it from below”

Why build a CNC mill when you can have a chess robot instead?

[Patrick McCabe] enjoys the challenge of playing chess against the computer but he wasn’t satisfied with the flat experience of on-screen gaming. No problem, he just built his own gantry-style chess robot that he can play against. Don’t be confused, he still doesn’t have to touch the pieces, but instead uses the dedicated control board seen on the left of the image above. The robotic arm that is mounted on a gantry takes care of moves for both players.

It’s a pretty normal CNC build, using four stepper motors to slide the moving bits along precision rod. An Arduino Mega drives the system, with a PC doing the heavy lifting using a program called My Robot Lab.

We certainly like it that [Patrick] spent a little bit of time making the cabinet and visible parts look nice. Chess is a civilized game and unfinished parts would be out-of-place. We didn’t see it in his writeup, but the one feature we’re really hoping he has implemented is the ability to have the robot automatically reset the board at the beginning of a game.

As you might have guess, you’ll find embedded video after the break.

Continue reading “Why build a CNC mill when you can have a chess robot instead?”

Chess table: physical interface for Internet games

Wanting to get back to playing with actual pieces, [Thomas Pototschnig] built a chess table that interfaces with the Internet. The table uses an custom setup to project the board on the frosted surface of the table. Chess moves from your internet opponent are displayed as arrows on the board so you can move the pieces. Your moves are detected by a webcam below the surface as this table actually functions as a multitouch display. From the description, it sounds like the projector was made from a 128×64 graphic LCD display. A 64×64 pixel area is used, with an LED below and a lens above. This works remarkably well. See for yourself after the break.

Want some other options for your chess setup? You can play against a robot arm, or if you’ve got 144 square feet of extra space you can build a really big board for the occasional game.

Continue reading “Chess table: physical interface for Internet games”

Monster Chess

Over 100,000 Lego pieces, 4 people a year to create, and a 12 foot by 12 foot chess board make this the largest most awesome Lego hack we’ve ever seen. Take that Lego Printer.

For a mere $30,000 you too can have such a setup. Not a lot of information is out yet, but we do know all the pieces are remote controlled via a PC with LabVIEW and a total of 38 NXT controllers are used. Oh, and of course you can see it live at the 2010 Brickworld. Check out a video of a replayed game after the jump.

[via Geekologie]

Continue reading “Monster Chess”

Robotic chess opponent

[Dennis] is using a robotic arm as a chess opponent. Rather than using an under-board movement system, a Lynxmotion AL5A robotic arm plucks each piece and moves it to the next space. He tells us that he’s using a Python script that he created to process the moves and decide what’s next. That must mean he’s using a webcam to capture the location of the pieces on the board. About half way through you can see the robot run into one of the pawns. We’d like to know if he has problems with picking up the pieces as the game progresses and they get further away from the center of each square. From what we can see, looks like a great job!