This week, our team made progress on multiple fronts despite facing some initial setbacks. We successfully developed a 9×9 capacitive touch grid with an extended border to improve wiring separation and structural rigidity. Though we tested 1/16-inch acrylic as a top layer, it required too much pressure for consistent readings, so we plan to revert to a thinner material. Unfortunately, one MPR121 IC was shorted during testing, and we’re waiting for replacements. On the software side, we implemented an enhanced hint system that highlights existing numbers in the selected cell’s row, column, and 3×3 grid, added footnote functionality for tracking potential candidates, and created real-time explanations of hint logic in the terminal. We also developed a side UI panel with placeholder sections that will improve the user experience and fits within projection width constraints. Moving forward, we plan to rebuild the touch grid, expand the UI with a zoomed-in cell view, add on-screen explanations for Sudoku constraints, create an introductory guide, and determine how to implement different functionalities in the side panel.
Winstone’s Status Report 04/12
This week I spent time working on a side UI that we could use for different purposes such as displaying a home screen, displaying options, or showing more details for hints on specific cells. I was sick most of the week, so I was unable to progress as much as I had hoped to, but I was able to create a side panel next to the Sudoku board with a few displays that are non-functional.
The side panel I created has a simple layout with placeholder sections that can be customized based on what we decide to show there. I added some basic styling to make sure it matches the overall look of our Sudoku game. I made sure the side screen doesn’t take up too much screen space and will fit into our projection width. I will have to discuss with the team about how we would want to implement the side UI for different purposes before I can progress further. Specifically, we need to decide if we want the panel to change dynamically based on game state or if we can use our numpad for different functions.
Moises Status Report 04/12
This week, I focused on developing a fully functional 9×9 capacitive touch grid. I laser-cut and assembled a new version of the grid, incorporating several design improvements for better usability and stability. While maintaining the 9-inch by 9-inch active area, I added extra border space to separate the wiring and relieve pressure on the connections, which had previously caused reliability issues. The extended edge also allows for clamping, making the overall structure more rigid.
For the top layer, I experimented with 1/16-inch acrylic instead of cardstock to take advantage of its rigidity. Although it initially showed some promise, the material ultimately required excessive pressure to register touches, resulting in inconsistent readings. I plan to revert to a thinner, more responsive material and iterate from there.
There was a minor setback this week: one of the MPR121 ICs was shorted during testing. I’ve ordered replacements and will rebuild the grid once they arrive, continuing to refine the material and construction for optimal performance.
Michael Status Report 04/12
This week, I focused on overhauling and enhancing the hint system to make it more educational and user-driven. The newly implemented hint functionality now highlights all existing numbers within the selected cell’s row, column, and 3×3 grid. This visual aid helps users apply the process of elimination, allowing them to see which numbers are already present and narrowing down what values are still valid. Instead of revealing the correct number directly, the system now supports players in thinking through possibilities on their own, aligning more closely with the goal of promoting learning and problem solving.
In addition to visual guidance, I introduced footnotes for number input, allowing users to jot down potential candidates for each cell. This mimics a common practice used in traditional Sudoku solving and encourages strategic thinking without automation. To further enhance the educational value, the terminal now displays an explanation of the hint logic in real-time. For example, it shows why a number is invalid in a given cell by referencing conflicts with the row, column, or 3×3 grid. This explanatory feedback supports users in understanding the rationale behind Sudoku constraints and builds their confidence in solving puzzles independently.
Looking ahead, I’m considering expanding the user interface to include a zoomed-in view of the selected cell and its 3×3 section for better visibility and focus. I also plan to introduce on-screen explanations that clarify the logic behind constraints – such as “Because 3 is in the same row, it can’t go here” to help users internalize Sudoku rules more intuitively. Finally, I want to make the game more user-friendly overall by adding an introductory guide that explains the basic rules and objectives, along with small UI improvements to make the system feel more polished and accessible.
Team Status Report 04/05
This past week, our team focused on preparing for and presenting at the interim demo, where we showcased a functional early version of our interactive Sudoku system. Although the design remains in a preliminary state, all major components – including the capacitive touch sensor, numpad, and projector – are working and successfully interfacing with our software. Moises ensured that the capacitive grids were responsive in time for the demo, and began planning the next iteration of the 9×9 touch grid, including material research and initial enclosure designs. Acrylic sheets were ordered for laser cutting, and early sketches for a housing prototype are in progress. Meanwhile, both Michael and Winstone focused on software features and integration. Winstone completed the connection between the capacitive touch grid and the Raspberry Pi using Pygame, eliminating the need for traditional input devices and allowing interaction through touch and the numpad.
On the software side, we implemented a rudimentary version of the hint system, which currently reveals the correct answer for a selected cell. While functional, we recognize that this approach is too revealing for a learning-focused application, and both Michael and Winstone are exploring more educational alternatives. Ideas include displaying candidate numbers based on Sudoku constraints or highlighting rows and cells to guide problem-solving without directly providing answers. Additionally, work has begun on a multi-functional side screen to display a home menu and options, and early discussions have started around implementing an undo feature via a stack-based approach. Our next goals are to finalize a consistent and accurate 9×9 touch grid, iterate on the enclosure design, and refine our software to enhance both interactivity and educational value.
Moises Status Report 04/05
This past week was primarily focused on preparing for and presenting at the interim demos. I made a few last-minute adjustments and ensured the capacitive touch grids were functioning as intended. Due to Carnival Week, I wasn’t able to make significant visual or hands-on progress, but I did spend time planning the next steps.
Specifically, I began evaluating materials for the next iteration of the 9×9 grid and started designing how all the components of the project will come together in a cohesive system. I also ordered acrylic sheets for laser cutting to begin prototyping an enclosure. Some initial design work has been completed for the enclosure, though it will require further iteration.
Goals for this upcoming week:
-
Finalize and test a properly functioning 9×9 capacitive touch grid with consistent and accurate touches.
-
Continue iterating on the overall cohesive design of the project.
-
Review and possibly incorporate feedback received during the interim demo into the next design phase.
Michael’s Status Report 04/05
This week was our interim demo week where we had to explain and showcase the current version of our design. Our current system, while still in a rough design stage, is a good minimal viable product which successfully demonstrates the core functionality we set out to implement. The capacitive touch sensor is mostly operational, and both the numpad and projector are communicating effectively with our software. The only problem is that the capacitive grid sensors aren’t working in unison so we had to separate our row and column grids – now our focus is now shifting toward refining features and improving integration.
On my end, I’ve implemented a basic version of the hint system. Currently, it retrieves the correct number from the solved puzzle and simply fills it into the selected cell. While this meets the minimum requirement, it’s admittedly too revealing for an educational tool that aims to promote self-solving, learning, and problem solving. I’ve been thinking more about how to redesign this feature to be more helpful without outright giving away answers. One idea is to generate and display a list of possible candidate numbers for a selected cell, based on Sudoku rules – specifically, which numbers are already present in the same row, column, or 3×3 grid. Another possibility is to use subtle visual cues, such as highlighting particular rows or cells, to guide the user’s thought process without solving the puzzle for them. These are still early ideas, but I’ll be exploring them more deeply in the coming days.
Winstone’s Status Report 04/05
This week we had our demo days to showcase what we have created so far. In terms of design, our current system is bare bones and not cohesive, but the core functionality of all the parts have been implemented. On the hardware side, the capacitive touch sensor is working, and the numpad and projector can communicate with our software. However, we do need to continue integrating additional features onto our software. Our hint system is not where we want it to be at the moment, as it only gives the user the answer to a specific cell.
Since last week, I spent more time on the hardware-software integration and finally got the capacitive touch sensor to communicate with the Raspberry Pi through Pygame. Now we no longer need the mouse and keyboard to interact with our Sudoku board. The capacitive touch sensor is used to select a cell and the numpad is used to enter numbers, delete numbers, and ask for a hint. I can now focus fully on just the software, and I’ve begun writing some code to have a multi-functional side screen next to the Sudoku board that we will use for displaying a home screen and options.
Team Status Report 03/29
Our team has made significant progress on our Sudoku project, focusing on integrating hardware and software components for a functional minimum viable product. The software development has advanced well, with successful integration of the Raspberry Pi and Sudoku board software, including numpad input functionality and code modularization for more efficient row and column readings.
On the hardware side, we built a 9×9 grid using wood, copper foil tape, and cardstock, and successfully connected both MPR121 sensors. However, we encountered a challenge with the cardstock, causing inconsistent sensitivity in the capacitive touch sensors. As a temporary solution, we’re keeping both grid components separate while designing a new enclosure with acrylic sheets and considering 3D printed clamps for better material stability.
Our testing of the system has successfully projected the Pygame display and adjusted visibility and alignment using a stand. While most software components are ready for demonstration, we’re still working on consistent operation of the capacitive touch sensors to replace mouse input with touch selection. We plan to meet another time before demo day to finalize the touch sensor integration and prepare for the demo.
Winstone’s Status Report 03/22
This week was dedicated toward getting our software and hardware components working together for a minimum viable product. After testing with the Raspberry Pi, I added to my code so that the Sudoku board would take inputs from the numpad. We were still having trouble getting the capacitive touch sensor to work consistently, so I could not test my code properly to get it to communicate with the Raspberry Pi and Pygame. We plan on meeting tomorrow before our demo day to work on this again and be able to select cells using the touch sensor instead of a mouse. Otherwise, we have put together the rest of our system and can begin final testing for our demo.