Winstone’s Status Report 03/15

This week I worked on the ethics assignment, met with my team for initial testing and integration, and continued working on my projection code.

The ethics assignment was designed to get us to think about what kind of impacts our project might have in society or the environment. Even a seemingly harmless system like ours that is designed to solve a puzzle can have some kind of harmful effect. It was interesting to read about the hidden effects of a design in Winner’s article.

During our meeting with the professor and TA, we received feedback on our design report. For our final report, we should focus on our writing and expressing our idea better. During the week, we also met up to connect all our peripherals to the Raspberry Pi and run some of our preliminary code on it. I was able to test my projection code and it worked well. We did not yet have our capacitive touch sensor working, so the projection was designed to work only with keyboard and mouse. I was able to write some code that will include signals from the MPR121 (touch sensor), which I will have to test as soon as the touch sensor is operational.

Moises Status Report

I’ve made significant progress with the 3×3 grid, and the Raspberry Pi is now successfully reading both the rows and columns. While I am able to receive readings and see both inputs, I’m not entirely satisfied with the consistency and accuracy of the touchpad at this stage. Occasionally, the sensor may register an incorrect value due to noise or other factors. For example, when touching row 3, it could mistakenly register rows 0, 1, or 2 before eventually defaulting to row 3 after a brief delay.

In addition to working on the core functionality of the touchpad, I’ve also shifted from polling to using interrupts to capture input. This change has brought some noticeable improvements. Polling involves continuously checking for changes in the inputs, which can be inefficient and lead to slower responses, especially when there are multiple inputs being processed at once. By using interrupts, the system can react immediately when a change occurs, rather than having to constantly check. This approach reduces processing overhead and ensures that inputs are captured more quickly, leading to a more responsive system.

However, there are some trade-offs with using interrupts. While interrupts improve responsiveness, they also require careful handling to avoid issues like missing interrupts or overloading the system with too many triggers. Additionally, using interrupts can sometimes make the system more complex to manage, as it introduces additional code to handle interrupt requests and ensure that each one is processed correctly. Despite these challenges, the benefits of faster, more efficient input handling outweigh the downsides, and I’m confident that this approach will lead to a better overall user experience.

Moving forward, my next step will be to focus on fine-tuning the system and improving the accuracy as much as possible. This will involve further adjustments to the sensor calibration and possibly adding noise-reduction techniques to ensure the readings are more reliable. Once that’s addressed, I’ll shift my attention to incorporating these touch inputs into the Sudoku game system. This will involve using the touchpad to select points on the grid and integrating the keypad for grid selection and number input. By combining the touchpad and keypad, I aim to create a seamless and intuitive interface where users can easily navigate the grid and enter values to solve the puzzle.

Team Status Report 03/08

These past 2 weeks, our team focused on finalizing adjustments to our project based on feedback from our design presentation. We refined how each system component interacts to ensure a cohesive user experience. A major area of focus was improving the method for selecting a new puzzle such that its more intuitive to the user. With these refinements in place, we put together and submitted our design report, updating our design ideas.
On the development side, we made some progress with the Pygame interface. The board now supports cell selection, highlighting selected cells, and inputting numbers from 1 – 9. In addition to this, we received our projector this week, which will enable us to display the board external. The next goal is to integrate the projector so the game board is shown through it rather than just being displayed on a monitor screen.
There were some setbacks these past 2 weeks, particularly with the Raspberry Pi setup for the capacitive touch grid. Due to a lack of prior experience with these microcontrollers, we initially overlooked the need for some additional components. After acquiring the necessary hardware, we were able to get the Raspberry Pi operational and began testing with a small 3×3 capacitive touch grid. While we were able to successfully detect row touches, column detection did not work as expected. This is likely due to how we made the capacitive grid which means making some updates to its integrations. Moving forward, we will remake the capacitive grid with improved alignment and proper column wiring to have better results and detection. This is an essential step before scaling up to a 9×9 grid.

Next Steps:
– Integrate the projector into the system to display the game board
– Redesign and properly wire the capacitive touch grid to support full row and column detection
-Begin intersection handling to prepare for the full 9×9 grid implementation
-Continue refining the pygame interface to improve the UI.

Despite the setbacks we are making steady progress, and our next steps will help us continue moving forward and reaching a minimum viable product.

Moises Status Report 03/08

There were a lot of set backs with regards to making progress on my part this week. Along with interviews that I needed to study for, I was having some issues getting the raspberry pi setup to begin testing the capacitive touch grid. Since I’ve never worked with these microcontrollers, I didn’t take into account extra components we may have needed to get it functioning correctly. After a couple of days I acquired the components and was able to get the raspberry pi working and begin looking at testing the small 3×3 capacitive grid I made. I was able to detect touches for the rows but not for the columns. This can most likely be attributed to how I connected the wires for the columns and may require me to remake the grid to get proper testing completed.  So moving forward, I will remake a grid with more accurate alignment along with proper wiring for the columns and attempt to get intersection handling completed as soon as possible so I can begin working on creating the larger 9×9 grid.

Winstone’s Status Report 03/08

This week, I spent most of my time on working with my team to make final adjustments to our project design using feedback from the design presentation. We went more into detail on how each piece of the system will work as a whole. We focused on details such as the method of selecting a new puzzle with an intuitive user experience. Then, we wrote up our design report with our new design idea thought out. I created some diagrams to better explain our system processes.

Other than the design changes, I continued working with the Pygame library. Now, I can select cells on my board, which become highlighted, and enter a number from 1 to 9. Our projector finally came in this week, so next week my goal is to make it so that it can project the board instead of it just being on a window on my computer screen.