Edison Aviles’s Status Report For 03/18

This week I worked alongside Mukundh to make progress on both the hardware and software aspects of the project. I utilized a large portion of the JavaScript code written to communicate with lichess.org from our web application, in order to communicate from our move validation script with lichess.org. I setup some of the endpoints that we will later call from our python script once moves have been validated. Mukundh and I made modifications to the existing python script to communicate with the JavaScript code and vice versa. We drew out some diagrams in order to better understand how we want information to flow and case based on the current chessboard state. This helped us understand our needs and better approach challenges that arose as we worked on the code.

Furthermore, I worked closely with Mukundh to debug, setup, and test our hall effect sensor circuit. We wrote a basic arduino script to measure voltage drop across and LED based on the polarity of the magnet and distance from the magnet to the sensor. I also setup two parallel circuits on a breadboard in order to test for sensor sensitivity, that is if the surounding sensors would pickup noise or the magnetic field on the neighbording tile. In order to accomplish this I simply measured the distance between the sensors to be 2 inches – which is the size of a tile, and varied the distance between the magnet and sensor. I found that after 0.5 inches, the sensor was able to detect a change in magnetic field and the voltage across the LED varied noticeably.

In terms of schedule, right now we have been able to start picking up on a lot of the areas we had originally fallen behind. With most of our basic sensor testing done and a better understanding of our hardware needs we hope to make large strides on our chessboard next week. On the other hand, with respect to software progress, we hope to finish most of the scripts by early next week according to schedule.

Edison Aviles’s Status Report for 2/11

This week, my main goal was to conduct research on the API’s we plan on using in our project’s design. We had originally planned to use chess.com as our chess API, but upon reading the API’s documentation we quickly realized that it wouldn’t be viable since chess.com didn’t allow for POST requests for moves to be made in live chess games. Upon more research I came across lichess.org. After thoroughly reading their API’s documentation, I found that their API would be perfect for our project. Lichess.org’s API allows us to do various game specific moves through GET and POST requests, for example we can initiate games, make moves, and even surrender a game through the use of their API. By doing this research before starting to build the full stack infrastructure for our application it’ll allow us to make less mistakes and have a clearer understanding of what to do in terms of API calls.

My other focus for the week was to better understand hall effect sensors and how these could potentially be used to not only identify between black or white pieces, but also between specific types of pieces. I spoke with professor Gary Fedder on a potential solution that uses variations in electromagnetic field strengths to help us identify specifically what piece is placed on a tile. We can achieve this by varying magnet positions in each piece, varying the polarity of the magnets, or even varying the number of magnets in each piece. By being able to validate what piece is on each tile we can guarantee the integrity of the board at all times, even if pieces are accidentally knocked over. This research will help us in the near future while we finalize design plans for the project.

During next week, I hope to finalize designs for the software side of the project as well as starting to implement a local instance of our project’s web application.

 

Lichess.org API documentation: https://lichess.org/api

Hall Effect Sensors: https://www.electronics-tutorials.ws/electromagnetism/hall-effect.html