Forums

Making My Automatic Chessboard

Sort:
Carlos_Pendas

This post is the newest one. It describes the current stage of the project. If you desire to take a look at the project from the beginning you can find it below.

I made a YouTube channel in which I’ll be uploading videos about the progress, tests and improvements: https://bit.ly/3w32wcf

You can also join our discord server to chat and play chess! https://bit.ly/3emyBWy


The Automated Board 01

I felt I needed a name to this project so I named it Phantom and decided to launch it on a Kickstarter campaign!

I’m closing the first version and deciding how to improve it once I’m sure all systems work great. I’m also sharing all the files of this version so you can build your own Phantom chess! You can find everything below.

giphy.gif

giphy.gif

5001431622316317019.jpg

jacmater

Here you can find other projects that may help you: 

http://foro.chesscc.com/viewtopic.php?f=15&t=4084

It would be great if you share your project there too.

KeyLinePie

I don't have anything to add, but it's a nice project and I look forward to seeing progress. Good luck!

Carlos_Pendas
jacmater wrote:

Here you can find other projects that may help you: 

http://foro.chesscc.com/viewtopic.php?f=15&t=4084

It would be great if you share your project there too.

 

Thanks, I will post the project there!  I'm posting this on Hackaday, it's more focused on engineering so you can follow the technical details there!

Carlos_Pendas

Starting the Project

I've always preferred playing OTB. I already spend too much time on my phone and computer for work. With the lockdowns, one of the things I missed the most was 1-1 games. I ordered a Squareoff board hoping it would provide a great physical experience, but it doesn't feel great at all.

My first instinct was to modify the Squareoff board and replace the plastic membrane with wood veneer.


Bad idea, the membrane system requires the surface to bend for the pieces to be detected. Not only will real wood not bend, but the inconsistent detection was something I didn't love about the SO in the first place.

 

  • Must feel as close to an "analogue" board as possible
  • Wood veneer, large wood weighted pieces 
  • Play against anyone online (Compatible with Lichess, no closed ecosystem)
  • Play against the board (Stockfish but maybe some other too, what are your thoughts on this?)

I'm terrible at anything software but luckily convinced a friend to help me out, he's brilliant so I'm confident we will build a kickass board. 

I’ll be sharing the progress we make over here, but if you are more passionate about this subject and would like a more in depth look or share your ideas, I created a discord server too. This is the link: https://discord.gg/3aCpVynH


The Sensor Array

We have kept going with this project. The problem we have right now is to find a way to have wood veneer on the surface (this requires a rigid board) and, at the same time, being able to detect the pieces and their location.

The first idea is to have hall effect sensors placed under the board and magnets inside the pieces to have the sensing system working without needing to push buttons.
The one thing it worries me is that using hall sensors will need to use a very thin interface between the sensors (under the board) and the magnets (inside the pieces)

The current board is made out of an aluminum composite panel which is very rigid and lightweight. We machined the bottom side of the panel to allow the sensors to be placed closer to the magnets while the top side has wood veneer.

This is a good way to have natural wood veneer on the board, but we are sure there is still plenty of room for improvements.

Any thoughts?

You can join our discord server to chat about chess and stuff: https://discord.gg/3aCpVynH

Carlos_Pendas

The Chess Pieces

The weakest point of the current board are the pieces. They are too light and small (I’m guessing this is to make them easy to move by the mechanism)



I will produce new bigger and heavier pieces and, since we’ll do them from scratch, why not have our own custom design? wink.png

The first design is made out of wood with a magnet inside and an aluminium ring. I like the shape and looks but the pieces are still too light.

This lightness causes the piece to wobble when moved around by the electromagnet when passing close to a resting piece.

We added cold rolled steel to add more weight to the pieces.


I’m very pleased with the current design but having the mechanism and the electromagnet to move the pieces correctly will not be easy. We’ll have to find the correct electromagnet to move the weight of the pieces smoothly or look for other options.

Let me know what you think! 

You can join our Discord server to chat! The link: https://discord.gg/3aCpVynH

jacmater

The pieces look so cool! I am thinking that you should watch that the pieces do not strike between them due to the force of the magnet and the steel ring that you are using may not help much. It will depend on the magnet you are gonna use.

Carlos_Pendas
jacmater wrote:

The pieces look so cool! I am thinking that you should watch that the pieces do not strike between them due to the force of the magnet and the steel ring that you are using may not help much. It will depend on the magnet you are gonna use.

 

Hi Jacmaster!!

The rings are made out of stainless steel, this is a non-magnetic metal so it isn't giving issues with the magnet. Also, I kept the same polarity of the magnets inside the pieces to prevent attraction between each other. At the moment, this is working well but let you know if I change something. Thanks for the follow-up!

Carlos_Pendas
FunkOfFortyThousandYears wrote:

I don't have anything to add, but it's a nice project and I look forward to seeing progress. Good luck!

 

Thank you for your interest and good wishes!!

KineticPawn

Not sure if this is practical or would make any significant difference but Simonis 760 billiard cloth is universally considered the fastest (least amount of friction)  cloth around.  It's very expensive in large sheets but relatively cheap if you can get off cuts/scraps from a company that does installations. Again I don't know if that would make any marked difference but just throwing it out there. 

Carlos_Pendas

The Mechanism

Having an XY mechanism like SO, solved in a practical and fast way the movement of the pieces around the board. The problem is that you need to add space around the playable surface for the motors. I want a mechanism with no extra frame, but just enough for the captured pieces.

I worked on a project before that used a SCARA mechanism. Based on this I designed a mechanism that allows the electromagnet to reach all zones of the board no matter its size and shape. This helped me reduce the size of the frame, the bad news, my board is too high!

While looking for ways of reducing board height, I came across a project called ZarPlotter. It works by using CDPR, a cable-driven mechanism that moves the end effector (in our case an electromagnet) by pulling cables from the 4 corners of the frame with stepper motors. 

In terms of space, it seems like a good way to explore! I’ll work on a new prototype with this mechanism and let you know the results.

Any suggestions on other mechanisms to explore are more than welcome, you guys have been very supportive!

Remember that we can chat on my discord server about chess, mechanism or any topic related to this project: https://discord.gg/3aCpVynH

Carlos_Pendas
KineticPawn wrote:

Not sure if this is practical or would make any significant difference but Simonis 760 billiard cloth is universally considered the fastest (least amount of friction)  cloth around.  It's very expensive in large sheets but relatively cheap if you can get off cuts/scraps from a company that does installations. Again I don't know if that would make any marked difference but just throwing it out there. 

 

Hi KineticPawn!

Thank you, I had in mind using some kind of cloth to reduce friction but didn't know where to look!

jacmater

The two mechanisms look simply amazing, I like them being a new solution for automatic chessboards, the most amazing one was the regium chessboard mechanism, it was like a dream system but unfortunately it was also a fake.
Your project is very interesting, I would like to know if you are going to program it (or your friend) with an opensource code and, if it, I'm very interested on how are you going to comunicate with internet chess servers. There is one guy ho have solved it:

http://fredjust.net/chessboard/

He is able to comunicate with lichess to play online with his board.

I'm also wondering if you are going to use Raspberry pi to run the engines and Arduino (or a compatible board) to drive the hardware, do you have any hardware plan?
You, at the moment being, cannot run stockfish on an Arduino board but There is another guy that have ported two chess engines to arduino, his project is called Chessuino, you can find this project easily.

KeyLinePie

I'm just asking this as an open idea out of interest rather than a suggestion to change your project, but what would the comparative difficulty be to have an "arm" mechanism above the board rather than a magnetic mechanism underneath the board?

 

Inspired by your angle/rotary mechanism (shown in post #12) it doesn't seem like it would be that much of a difference to have a single arm like a construction site crane (🏗) which stands at one corner of the board. Aspects of freedom:

1. Main standing post would rotate to determine angle of arm.

2. Hand moves along the arm to determine distance from post.

3. Hand moves up/down (Z-axis) at its current position on the arm to raise/lower a piece.

 Post would be approx 20cm tall, arm would be the length of the diagonal, and would swing back out of the way after each move.

Items 1 & 2 combine to choose the square over which the hand hovers (just as the "shoulder" and "elbow" angles of your circular mechanism above choose the square), and then #3 is used along with switching on/off the electromagnet to grasp the pieces. Though it's a very different design to the under-board approach, in principle it doesn't seem very different (from "the computer's point of view"). I would imagine that the pieces would have an accessible metal section at the base (as your new ones do) which allows the electromagnetic finger to grab a piece regardless of piece height (as in, there's no difference picking up a king or a pawn). Effectively it would still be the same system of some stepper motors to determine the position, and switching an electromagnet to grab and release pieces.

 

Advantages:

1. Doesn't need to be fitted inside the board. The board would only need to register your moves, which would eliminate your problem of having a deep/wide board, and would allow more possibilities in board design/construction.

2. Removes friction/weight problem of sliding pieces.

3. Pieces don't need to be slid to the side of the board, could actually be removed as in normal play.

4. (In my opinion ) it seems more "natural", as you're playing against something which physically moves pieces rather than playing a ghost which awkwardly slides them along.

5. Possibly could run at a faster speed(??) than the sliding mechanism.

6. Removes the need for pieces to be small relative to square size to allow them to slide past each other.

 

Just an idea, I don't know if anyone has done or tried this style before.

Carlos_Pendas
FunkOfFortyThousandYears wrote:

I'm just asking this as an open idea out of interest rather than a suggestion to change your project, but what would the comparative difficulty be to have an "arm" mechanism above the board rather than a magnetic mechanism underneath the board?

 

Inspired by your angle/rotary mechanism (shown in post #12) it doesn't seem like it would be that much of a difference to have a single arm like a construction site crane (🏗) which stands at one corner of the board. Aspects of freedom:

1. Main standing post would rotate to determine angle of arm.

2. Hand moves along the arm to determine distance from post.

3. Hand moves up/down (Z-axis) at its current position on the arm to raise/lower a piece.

 Post would be approx 20cm tall, arm would be the length of the diagonal, and would swing back out of the way after each move.

Items 1 & 2 combine to choose the square over which the hand hovers (just as the "shoulder" and "elbow" angles of your circular mechanism above choose the square), and then #3 is used along with switching on/off the electromagnet to grasp the pieces. Though it's a very different design to the under-board approach, in principle it doesn't seem very different (from "the computer's point of view"). I would imagine that the pieces would have an accessible metal section at the base (as your new ones do) which allows the electromagnetic finger to grab a piece regardless of piece height (as in, there's no difference picking up a king or a pawn). Effectively it would still be the same system of some stepper motors to determine the position, and switching an electromagnet to grab and release pieces.

 

Advantages:

1. Doesn't need to be fitted inside the board. The board would only need to register your moves, which would eliminate your problem of having a deep/wide board, and would allow more possibilities in board design/construction.

2. Removes friction/weight problem of sliding pieces.

3. Pieces don't need to be slid to the side of the board, could actually be removed as in normal play.

4. (In my opinion ) it seems more "natural", as you're playing against something which physically moves pieces rather than playing a ghost which awkwardly slides them along.

5. Possibly could run at a faster speed(??) than the sliding mechanism.

6. Removes the need for pieces to be small relative to square size to allow them to slide past each other.

 

Just an idea, I don't know if anyone has done or tried this style before.

Hi @FunkOfFortyThousandYears, thanks for the feedback. When I decided to change the mechanism, I also pondered an arm as you suggested, but I want a natural look, as I mentioned in the post. I could not think of a good shape for the arm, so I move to an interior mechanism; I think that I prefer a higher board than an arm over the board. But be sure that the arm idea is not completely closed. 


Keep an eye here. I would like to hear your comments on the next steps.

Carlos_Pendas
jacmater wrote:

The two mechanisms look simply amazing, I like them being a new solution for automatic chessboards, the most amazing one was the regium chessboard mechanism, it was like a dream system but unfortunately it was also a fake.
Your project is very interesting, I would like to know if you are going to program it (or your friend) with an opensource code and, if it, I'm very interested on how are you going to comunicate with internet chess servers. There is one guy ho have solved it:

http://fredjust.net/chessboard/

He is able to comunicate with lichess to play online with his board.

I'm also wondering if you are going to use Raspberry pi to run the engines and Arduino (or a compatible board) to drive the hardware, do you have any hardware plan?
You, at the moment being, cannot run stockfish on an Arduino board but There is another guy that have ported two chess engines to arduino, his project is called Chessuino, you can find this project easily.

@jacmater I want the engines to be processing by any smartphone, but our first shot is exploring to have an access point inside the board and communicate through Lichess. We want to make a platform where everyone can test different WiFi and Bluetooth APIs, so we focus on making it as accessible as possible. 

A raspberry connection is not in my plans today, but we are adding a USB-C port for the battery to add a serial communication for raspberry or PC. Do you think it could be useful?

Another idea is to make a Chess Clock function and share an open API so everyone can connect their hardware. What do you think about it?

Carlos_Pendas

Connectivity

I’m not the biggest fan of chess apps, but let’s face it: they are the only alternative to play in the distance with friends and basically anyone in the world. For our board, I want the connectivity of the apps plus the nice feel of playing with real pieces.

Tavo has been working on an open software to connect the board to Lichess server. We also wanted to include chess.com server but it’s closed. I’ll try to contact them hoping to add their app to the board. Who knows It might be worth the shot! ;)

To connect our board to Lichess we started using an ESP32 but we have problems with the TLS and the HTTPS library.

After knocking our heads against the wall around this issue Tavo found this amazing development in Aruduino’s project hub:

- https://create.arduino.cc/projecthub/kzra/lichess-link-cbdbab

It uses an Arduino One Wifi so we moved to a compatible module to use his open-source project as a base, the Arduino Nano 33 IoT. This will kill two birds with one stone by also helping us on having an open platform.

We already played our first games through Lichess server! But, there’s still a pain in the butt, the process to connect to any Wifi network, fortunately, Tavo is as hooked as I am and found a great tool to make the process easier.

So now we are working on implementing a captive portal feature to make everything work seamless. This is all the progress at the moment, I’ll let you know our final implementation very soon!

Feel free to join our discord server and get to chat about this project and chess in general: https://discord.gg/3aCpVynH





Carlos_Pendas

Electromagnet vs Mecha-Magnet

One of the essential elements to achieving the motion of the pieces is the magnet arm. Initially, we started by following SO steps using an electromagnet to hold the pieces.

After some testing, I learned that it is mandatory to have the magnet the closest possible to the surface at all times as the magnetic field strength decreases when the distance from the source increases.

I designed a super simple mechanism that ensures the electromagnet is always the closest to the surface. It is composed of a plastic case that holds a spring below the electromagnet. A straightforward solution is yet useful.

The not so simple thing to solve about this solution is to find the right spring to do the job. We want a Finite Element Analysis to decide the characteristics of the springs to be tested. 


After prototype production, we ran some tests to select the final design. This conical spring is the chosen one!

You may remember my guess about the SO pieces being small and light to help the electromagnet move them around. I assumed that the lighter the pieces, the less strength is required from the electromagnet to move a piece. It turns out I was right :):

With the new design of the pieces, bigger and heavier, we shall increase the electromagnet strength to move them. This will increment the board’s current consumption making us think that maybe the electromagnet is not the best approach since we want to add a battery in the future, so a high current consumption is not the best path. 

While looking at other ways to control the strength of the magnetic field on the board, we started to explore the option of having a mechanized neodymium magnet.

The idea is that instead of using an electromagnet, we control the strength of the neodymium magnetic field by moving it farther or closer from the surface. The mechanism is designed to be mounted on the magnet arm, like a mechanical elevator for the NM.

This mechanism is powered by a DC motor whose current consumption is lower compared with the electromagnet.

5389561620355205305.jpg

To ensure that the magnet reaches the upper surface every time a piece is moved, we used an encoder to help us know the magnet’s upper and downer position since the first time it’s turned on.  This data is used each time the motor moves the magnet through a PID control. I add the code of this mechanism to the file; you can take a look at it. 

Each time the board shall move a piece, the magnet arm goes to the piece’s location with the magnet at its lowest position; when it arrives, it gets the magnet up to the highest position to hold the piece, make a move, and when it ends, it takes the magnet down again to leave the piece and make the next move.

A cool side effect of this change is how smooth the pieces move. It is complicated to change the core diameter in an electromagnet so the pieces cannot align correctly. With the NM, we have full control of the core dimension; thus, every piece’s motion is seamless. 

Adding an extra mechanism to the board could bring more complications, so we are currently testing to find the least complicated and most feasible one.

I made a YouTube channel in which I’ll be uploading videos about the progress, tests and improvements: https://www.youtube.com/channel/UCY3-zIxVveSF4OABvc1UgYw 

I’ll keep you updated on our progress! Join our discord server if you would like to chat about this or chess overall: https://bit.ly/3emyBWy

jacmater

Love to follow the progress, thanks for taking the time to write this detailed posts,  it is very interesting how other people make a search and investigate to start a project from zero, and see what solutions they finally found. I'm always on this type of headaches as I used (and still use) to make inventions of all kind of matters

martinchess1

i think the pieces look fantastic, functionality aside.