UltraChess is a vintage chess game for the 8-bit MSX platform, running on the Z80. [flok] wondered just how capable the game really was, and set forth to test it against a variety of other chess engines.
Having been designed in the 1980s, UltraChess is far from up-to-date as far as the chess software world is concerned. By using the OpenMSX emulator to run the game, [flok] was able to implement scripts to read and write the gamestate in UltraChess, and make it compatible with the Universal Chess Interface. This would allow UltraChess to be played off against a variety of other chess engines to determine its approximate ELO rating.
The scripts worked well, and are available on Github for those who wish to tinker further. Unfortunately, [flok] has thus far been unable to determine a rating for UltraChess, as it has lost every single game it has played against other chess engines. This is unsurprising given the limited processing power available, but we’d love to see a tweaked and hotrodded Z80 chess program take on the same challenge. If you’ve done such a thing, let us know, or alternatively you might like to try playing like Harry Potter.
When programming for modern platforms, the restraints are different to those of 30 years ago. Back in the dawn of the microcomputer age, storage and RAM were measured in kilobytes. It simply wasn’t possible to store large amounts of graphical data, and even code had to be pared back at times. [reeabgo] found out some of these limitations first hand, when coding a tiny chess program for the Sinclair ZX81.
[reeabgo]’s project goes by the name ChesSkelet, and is truly tiny. Measuring in at just 377 bytes in its smallest version, the entire program takes up less space than this very article describing it. To achieve these feat requires certain sacrifices, of course. The tiniest edition contains no graphics whatsoever, representing the game state with simple characters and featuring no adornments whatsoever. The full-fat version comes in at 477 bytes and adds quite a lot of functionality. There’s a proper checkerboard, along with move legality checks and pawn promotion.
Unfortunately, advanced chess play isn’t quite possible – castling is not implemented, and the AI doesn’t yet handle check situations properly. Despite this, it’s a solid approximation of the real game, all packed into an impressively small space.
We see plenty of chess hacks around these parts – including the robotic variety.
If you are a Harry Potter fan, you might remember that one of the movies showed an Isle of Lewis chess set whose pieces moved in response to a player’s voice commands. This feat has been oft replicated by hackers and [amoyag00] has a version that brings together a Raspberry Pi, Arduino, Android, and the Stockfish chess engine in case you want to play by yourself. You can see a video of the game, below.
Interestingly, the system uses Marlin — the 3D printing software — to handle motion using the Arduino. We suppose moving chess pieces over a path isn’t much different than moving a print head. It is certainly a novel use of GCode.
Continue reading “Play Chess Like Harry Potter”
If you imagine somebody playing chess against the computer, you’ll likely be visualizing them staring at their monitor in deep thought, mouse in hand, ready to drag their digital pawn into play. That might be accurate for the folks who dabble in the occasional match during their break, but for the real chess aficionados nothing beats playing on a real board with real pieces. Of course, the tricky part is explaining the whole corporeal thing to a piece of software on your computer.
Enter the “Chess Challenger” by [slash/byte]. Modeled after a commercial gadget of the same name from 1978, his retro-themed open hardware design utilizes the Raspberry Pi Zero and modern chess software to bring the vintage concept into the 21st century. With the Chess Challenger and a standard board, the player can face off in an epic battle of wits against the computer without risk of developing carpal tunnel. We can’t guarantee though that a few boards might not get flipped over in frustration.
The pocket sized chess computer uses a “sandwich” style construction which shows off the internals while still keeping things reasonably protected. All of the electronics are housed on the center custom PCB which features a HT16K33 driver for the dual LTP-3784E “starburst” LED displays, a MCP1642B voltage regulator, 16 TL3305 tactile switches for the keyboard, and a MCP73871 battery management chip for the 3.7 volt lithium-ion battery that powers the whole show. The Pi Zero itself connects to the board by way of the GPIO header, and is mechanically supported by the standoffs used to hold the device together.
On the software side of things, the Pi is running the mature Stockfish open source chess engine. In development now for over a decade, this GPL licensed package aims to deliver a world-class chess gameplay on everything from smartphones to desktop computers, and we’ve seen it pop up in a number of projects over the years. [slash/byte] has provided a ready to flash SD card image for the Raspberry Pi, and even provides detailed installation and setup instructions which guide you through some of the more thorny aspects of the setup such as getting the Pi running from a read-only operating system so that abrupt power cuts don’t clobber the filesystem.
Over the years, some of the most impressive projects we’ve seen revolved around playing chess, and this latest entry by [slash/byte] is no exception. Another example of the lengths the chess community will go to perfect the Game of Kings.
Continue reading “Raspberry Pi Powers This Retro Chess Computer”
While chess had long been a domain where humans were superior to computers, the balance has shifted quite substantially in the computers’ favor. But the one thing that humans still have control over is the pieces themselves. That is, until now. A group has built a robot that both uses a challenging chess engine, and can move its own pieces.
The robot, from creators [Tim], [Alex S], and [Alex A], is able to manipulate pieces on a game board using a robotic arm under the table with an electromagnet. It is controlled with a Raspberry Pi, which also runs an instance of the Stockfish chess engine to play the game of chess itself. One of the obvious hurdles was how to keep the robot from crashing pieces into one another, which was solved by using small pieces on a large board, and always moving the pieces on the edges of the squares.
This is a pretty interesting project, especially considering it was built using a shoestring budget. And, if you aren’t familiar with Stockfish, it is one of the most powerful chess engines and also happens to be free and open-source. We’ve seen it used in some other chess boards before, although those couldn’t move their own pieces.
Continue reading “Play Chess Against A Ghost”
[RoboAvatar]’s Chess Robot consists of a gantry-mounted arm that picks up chess pieces and places them in their new location, as directed by the software. The game begins when the human, playing white, makes a move. When a play has been made, the human player presses a button to let the robot to take its turn. You can see it in action in the videos we’ve posted below the break.
Running the robot is an Arduino UNO with a MUX shield as well as a pair of MCP23017 I/O expander chips — a total of 93 pins available! Thanks to all those pins, the Arduino is able to listen to 64 reed switches, one for every square.
The robot detects the human’s move by listening to its reed switches and identifying when there is a change. The gantry consists of X and Y tracks made out of PVC slabs, with half-inch lead screws turned by NEMA-23s and powered by ST-6600 stepper drivers.
Unlike some chess robots that rely on pre-existing software, this one features a custom minimax chess algorithm that [RoboAvatar] coded himself. It consists of Python scripts run on a computer, which interacts with the Arduino via a serial connection. In the second video, he explains how his algorithm works. You can also download the Arduino and Python files from [RoboAvatar]’s GitHub repository.
You’d be surprised how many chess-playing robots we’ve published, like the ChessM8 robot and this voice-controlled chess robot.
Continue reading “Chess Robot’s Got The Moves”
Chess has been around for an awfully long time, automobiles less so. However, there’s no reason the two can’t be combined, like in this chess set fashioned from automotive components.
The project was made as a gift, and is the sort of thing that’s quite accessible for an interested maker to attempt at home. Parts used to build the set include valves, valve springs, spark plugs, castellated nuts and pipe fittings. As the parts don’t actually need to be in good working condition, a haul like this could likely easily be had for less than $50 from the local pull-it-yourself wrecking yard — or free if you know a mechanic with some expired engines lying around.
The metalworking side of things involves trimming down and welding together the parts, before polishing them up and applying a coat of paint to create the white and black, or in this case, gold and black pieces.
Overall, it’s a fun weekend project that could be tackled in any number of ways depending on your creativity and taste. For a different take, check out this 3D laser cut chess set.