Team Status Report for 1/31

The most significant risk that could jeopardize the success of the project is differing perceptions of what our project should do. Ideally, this would not be an issue because we talked about the requirements thoroughly enough but there is always room for error. This may also manifest in different perceptions of how our different subsystems should communicate each other. For example, the LED system may expect a list of coordinates from the chess engine but the chess engine produces an index number. These integration risks will be managed through communication with the team and things like sample output files so everyone can build their own subsystems without actually having the exact communication in place. Our contingency plans for things like hardware issues or integration problems include moving to a more software based experience like having the user type into a webUI instead of voice commands and having the opponent’s moves be shown instead of told as well .

No changes have been made to the existing design.

Claire’s Status Report for 1/31

This week I compiled the parts list since I will be in charge of the hardware connection of the LED system to the board. This entailed figuring out which LEDs to use since we would need to be able to address the lights and make them different colors. With these constraint, I chose the SK6812 strip LEDs which I will control a Raspberry Pi 3. I also finished the Project Proposal Presentation and script, which I will be in charge of presenting. This meant that I also finished creating the schedule for the timeline of milestones in creating the LED system. Since this will reply on receiving which coordinates to light up which colors from the chess engine, I will first start by just connecting the LEDs to a grid and working on parsing a pseudo-output file into the LED addresses. 

My progress in on schedule because our team’s deadlines for this week was the parts list, project proposal presentation, and gantt chart which we were all able to finish.

Next week I hope to submit the parts list to actually order because our team is fairly certain that we will be needing the strip LEDs and we would like to work on the chess engine, LED system, and computer vision component all in parallel. I hope to start getting the code set up for controlling the LEDs as well, but my main focus will be preparing to present our project proposal.

What does our project do?

The system offers several guidance modes. In full guidance mode, the AI waits for the player to place their next move, analyzes their current board position, and provides feedback explaining whether the move was brilliant, excellent, inefficient, or a blunder. The player may also request additional assistance, such as suggesting next moves or strategic advice tailored to their position. Through this fully guided tutoring experience, the player rapidly learns common strategies and apply it in their own gameplay. 

For intermediate players, an assistive mode is available in which the AI will only provide feedback upon request. This mode is designed to promote player autonomy while allowing them to test and refine their skills. For novice players, voice commands can be used to ask which cells the selected piece is allowed to move to. When requested, the board will illuminate valid locations using yellow LEDs, with the most optimal move highlighted in red. 

To track the board state, we plan to mount a camera on top of the board. Since each piece is labeled with a unique Chinese character, computer vision techniques can be used to identify the pieces and update the new game state. If time permits, we also plan to explore the ability to move pieces automatically through voice commands. This can be achieved by attaching steel to the bottom of the piece and using a gantry-mounted electromagnet placed beneath the board to drag the piece to the designated position. Additional stretch goals include expanding the chess engine to support common opening sequences.