Tarek’s Status Report for 3/22

What did you personally accomplish this week on the project? Give files or photos that demonstrate your progress. Prove to the reader that you put sufficient effort into the project over the course of the week (12+ hours).

I started off the week by working with the IDeATe staff to get our parts printed, and to be able to print parts quickly in the future. I 3D printed the pieces for the gantry and the camera stand and delivered them to the group. Given that I still couldn’t test my Arduino motor code until the gantry was fully set up, I started working on later tasks, such as the chess logic, overall main routine, LEDs, and additional peripherals.

I chose and ordered some shift registers, 74HC595s in particular, to control the chessboard LEDs. These are a better choice than the previously chosen MAX7219 LED driver because they can more accurately and responsively light a single LED at a time, as the MAX7219 uses row and column scanning, while the shift registers can simply set a row and column high. For a system where users are constantly looking around and high responsiveness is necessary, this is a better choice and worth the extra wiring. I also designed the circuit for this.

I also created a GitHub repository (I wasn’t able to do this while in Europe because 2FA wouldn’t let me log in), and uploaded commits of my previous Arduino code versions. I added a main routine that I will be using to guide the design of the other embedded controller libraries (motor control, magnet control, LED control, keypad, and chess logic) .

Finally, I assisted Trey with assembling the gantry, and continued working on the chess logic file.

Is your progress on schedule or behind? If you are behind, what actions will be taken to catch up to the project schedule?

Still bottlenecked by not being able to test the Arduino motor code, so I am behind on the gantry motion control. However, I spent time getting ahead on parts I was not meant to start later, so I am not too far behind overall.

What deliverables do you hope to complete in the next week?

Now that the gantry is finally assembled, I will be testing the Arduino motor code over the next two days, and then refining the motion of the gantry throughout the board (e.g. moving pieces between other pieces and recalibrating gantry after every move).

Liam’s Status Report 3/22/25

Personal Accomplishments

I used the zero MQ python library to have the gaze estimation script and the camera script communicate using a queue. Later tonight I’m going to find a screw for the 3d printed stand that we now have. Doing some research on available gaze models I came across some research on github showing how 9 calibration samples could improve accuracy by 5%. This might be something we explore in the future.

Progress

I think I’ve brought myself back to schedule by having the two parts of our software communicate with each other.

Future Deliverables

Cleaning up code and gaze model

Maybe add some training data?

 

Liam’s Status Report 3/15/25

Personal Accomplishments

I was able to save the depth and color images as a np array and as an image locally to my computer. Since the stereo camera software only runs on python 3.7 this creates issues with using any type of models since python 3.7 has been EOL for a while. I might explore using it through a HTTP port and having two python programs running at the same time.

 

Progress

I am slightly behind schedule. Being bottlenecked by 3d stand not being printed by techspark.

Future Deliverables

Get the stereo camera working properly with two python programs.

 

Team Status Report for 3/15/25

General update

Trey and Tarek’s work this week was focused on physical design and fabrication of parts. Tarek designed and 3D printed a stand for the stereo camera so Liam can continue testing on the device. Trey designed some parts for the gantry to be able to hold the electromagnet, which Tarek sent to 3D print at the IDeATe printers. Progress this week relied on these parts, but IDeATe has not yet approved and printed these parts, which has bottlenecked work for the team this week. Nonetheless, Tarek worked on chess logic code, Trey worked on cutting the gantry rails and beginning assembly of the gantry, and Liam worked on getting both depth and images from the camera. He is currently working on having two python programs to interface together due to version incompatibilities.

We also individually spent time working on our ethics assignments, which was time consuming.

We are still aiming to have a demo-able gantry by next weekend. At the very least, we will be able to move the gantry to a given coordinate and control the electromagnet.

Potential risks and risk management

No new risks this week. 3D printing was bottlenecked but we are working on resolving that with IDeATe or using TechSpark to get the parts printed and resume work within the next 48 hours.

Overall design changes

No design changes this week.

Tarek’s Status Report for 3/15

What did you personally accomplish this week on the project? Give files or photos that demonstrate your progress. Prove to the reader that you put sufficient effort into the project over the course of the week (12+ hours).

As mentioned in the last update, I had to undergo an unforeseen medical procedure at home which prevented me from returning to Pittsburgh for a few more days. I am now back in Pittsburgh, ready to continue working. While I was home, I designed two stands for the depth camera. One is a basic design for Liam to be able to use quickly so he can proceed with testing, while the other is a more aesthetic design shaped like a pawn meant to go on the table for the final product. I sent these, as well as the gantry pieces Trey designed, to be 3D printed at the IDeATe 3D printers, which I have access to for free. The problem is these have still not been approved, so they have not been printed, which has bottlenecked the whole team for the week.

I also spent a few hours working on the ethics assignment, and designing the board in Adobe Illustrator so I can laser cut it next week. Finally, I spent some time starting to program the chess logic code that the Arduino will use to keep track of the state of the game and know when a piece is taking another piece.

Is your progress on schedule or behind? If you are behind, what actions will be taken to catch up to the project schedule?

Being at home and being bottlenecked by the delay in 3D printing has set me back about a week. I plan to catch up each in the next two weeks so I am back on schedule by the interim demo.

What deliverables do you hope to complete in the next week?

I am working on making sure we can get the pieces 3D printed as soon as possible, ideally within the next 48 hours. Once that is done, I will finally be able to test the 2D gantry control code I wrote some time ago, and add the electromagnet control code.

Trey Wagner’s Status Report for 3/15/2025

PERSONAL Accomplishments
  1. Ethics Assignment (4hr): The large assignment that occupied some time this week was the ethics assignment, which included professional articles and written reflections. First, I learned that technical systems/designs can carry political weight, which caused me to rethink how Check, Mate, Vision may be fitting users into a box rather than allowing freedom to express themselves through chess. The article about red teaming helped to evaluate whether our model will have any significant vulnerabilities that need to be reconsidered. Lastly, the stakeholder video helped to map out who has the most interest and influence in our design process. All of these resources came together to form an in-depth response discussing the readings for general technology, then focusing on Check, Mate, Vision to determine the ethical trade-offs for public health, safety, and welfare.

2. Designing and Printing 3D Parts (3hr): All components from external vendors have been purchased and received. However, I realized the need for some small, specific pieces in the gantry system. As such, I decided to 3D print parts to match our needs. Listed below are images of two such pieces.

The first part will sit on top of the center bar (which also holds the electromagnet). The main purpose comes from the two extrusions seen on top of the piece. This will allow one pulley (and belt) to sit higher than the other so that we can have both in close proximity without interference. The second part will hold the electromagnet. The belts will also attach to the holes in the left and right side to pull the electromagnet sideways along the X-axis.

3. Gantry System Initial Assembly (3hr): As I planned out the assembly of the gantry, my priority was to ensure that our “workable area” (or the space that our electromagnet could reach) was large enough for our needs. Once I determined that workable area size, I was able to determine the necessary lengths for our V-slot rails. I visited TechSpark to get the aluminum rails cut down to the right length. Then, I began laying out and assembling some of the initial pieces for the gantry system. This helped the entire team visualize the physical space needed for our design. I will continue to work on the assembly throughout this week to complete it by the weekend.

4. Mandatory Lab Sessions (4hr): During our class sessions this week, we had valuable time to meet together and with the course staff. One particular note from our meeting with Prof. Kim was to set a deadline to have an initial demo by next Saturday. This will help to push along the progress of our project, and it will put us ahead of the initial demo deadline listed on the course page. I was also able to plan out certain design specifications with Liam and Tarek, including the details of how Liam’s gaze detection will work for the demo.

Progress

For various reasons, I was unable to complete the gantry system assembly by this week. However, after our conversation with Prof. Kim, I feel that having the assembly done by this week will still keep me on schedule. In order to make that happen, I plan to set aside time on Tuesday and Thursday to assemble the parts of the gantry. I am currently waiting for my parts to finish 3D printing, which delays certain aspects of the assembly. I expect to receive these parts early in the week. Thus, I am still in a good position to finish by the weekend.

Next Week Tasks & Goals
  1. Assemble entire gantry system outside of the box (must finish by Saturday!)
  2. Test basic movements (from point A to point B) for consistent accuracy
  3. Continue working on the design for our chessboard and pieces.

Trey Wagner’s Status Report for 3/8/25

PERSONAL Accomplishments
  1. Design Report (13hr): The design report was a large undertaking for this week, taking up most of our time in mandatory sessions and outside of class. Most of this time was spent writing a full description of the gantry system, discussing some design trade-offs evaluated for this subsystem, outlining test strategies, and writing various other sections. This took more time than expected due to the more professional language required for the report, as well as the need to develop some diagrams and tables to show our design. One of these diagrams will be shown in the next section.
  2. Pulley System Design (2hr): As I evaluated the plan for the gantry system, I settled on a design for the pulley setup. 

The design uses two step motors and two timing belts, which move the electromagnet along the X and Y axes. The pulley system design, while more complicated, avoids having a motor on the central beam. This increases the working range of the gantry system while also reducing the size of the horizontal bar.

3. Gathering Necessary Screws, Nuts, and Washers (3hr): In order to assemble the gantry system, a specific arrangement of screws, nuts, washers, and brackets were needed. I went through the process of gathering all of these components to ensure that all elements were ready to assemble. This will fully enable the building of the gantry system design.

Progress

As was expected, the design report took a lot of time. As such, I was unable to finish the assembly of the gantry system before spring break. I will work throughout this week to ensure that the gantry system gets assembled and testing can begin. This will put me back on schedule for the rest of the semester.

Next Week Tasks & Goals
  1. Assemble entire gantry system outside of the box.
  2. Test basic movements (from point A to point B) for consistent accuracy
  3. Start (and hopefully finish) the design for our chessboard

Liam’s Status Report 3/8

Personal Accomplishments

While working on my laptop instead of the Jetson I was able to modify the sample program given by the manufacturer for using callbacks. I was also able to use a gaze estimation model online to get values for a given frame. I am still not very certain of how the depth is given by the camera but will figure out tonight or tomorrow. Its hard to do proper gaze detection since I have nothing to mount the camera on.

Progress

Currently on track.

Future Deliverables

Proper stand for camera to start doing depth detection when playing the game

Team Status Report for 3/8/25

General update

This week, Liam got a gaze model working on a Windows Laptop. He still has to refine the depth calculation. This will be the focus of the early days of this week.

All pieces (including screws, washers, etc.) are now obtained to assemble the gantry system. This will be completed by the end of the week, with testing commencing once Tarek returns to Pittsburgh. Tarek also wrote some additional code to control the motors in our design, so these tests will verify the functionality of the code and the gantry design.

Potential risks and risk management

No new risks this week. The initial gaze model work from Liam is encouraging, but will be tested further once the proper camera stand is obtained.

Overall design changes

No design changes this week.

Initial Schedule

Schedule is still on track. Spring break was less productive as our team was away from the campus and our project, but we are refreshed and prepared to grind out some work to complete the design of our subsystems and initiate testing.

Additional Week-specific Items

Part A: Global Factors (written by Trey)

Check, Mate, Vision addresses the global need for increased accessibility in recreational activities, particularly for individuals with physical disabilities or limited upper body mobility. Chess is a globally recognized and widely played game, but its traditional physical requirements create a barrier for individuals who cannot manually move pieces. Our solution eliminates these barriers, allowing users to engage in strategic play without needing to touch the board physically. By creating an inclusive chess-playing experience, Check, Mate, Vision promotes cognitive stimulation, social interaction, and emotional well-being for people around the world.

This solution also reflects a growing global need for assistive technology and adaptive design. As populations grow and the number of individuals with physical disabilities increases, there is a rising demand for products that enhance independence and inclusion. Check, Mate, Vision addresses this need by empowering users to engage in a complex intellectual activity without relying on the assistance of another person. The system’s reliance on common and scalable technologies, such as electromagnets and microcontrollers, ensures that it can be adapted to different environments and production scales.

Part B:  Cultural Factors (written by Liam)

Chess has a rich cultural history spanning 1,500 years across numerous civilizations, and the physical experience of playing the game carries significant cultural value. Check, Mate, Vision preserves this traditional experience by maintaining the original chess environment instead of shifting to digital alternatives. The unobtrusive design requirement ensures minimal extra components are visible from above the table, maintaining the important classic chess that many cultures have experienced.

Part C: Environmental Factors (written by Tarek)

While our project is mainly geared towards accessibility, we have taken some decisions with regard to environmental factors. One key decision is optimizing energy efficiency by using stepper motors with precise motion control, reducing unnecessary power consumption. The embedded controller ensures that movements are executed only when necessary, preventing idle power drain. Additionally, the LED feedback system will be implemented with low-power LEDs to minimize energy use while still providing clear user communication.

Material selection is another factor in reducing environmental impact. The gantry system and enclosure are constructed using durable metals and recycled plywood, ensuring longevity and reducing waste from frequent replacements. Additionally, the modular nature of the system allows for repair and upgrades, extending its lifespan rather than requiring full system replacement. By designing Check, Mate, Vision with energy efficiency, environmentally-conscious materials, and longevity in mind, the system not only meets its accessibility goal but does so with minimal environmental impact, aligning with broader sustainability considerations.

Tarek’s Status Report for 3/8

What did you personally accomplish this week on the project? Give files or photos that demonstrate your progress. Prove to the reader that you put sufficient effort into the project over the course of the week (12+ hours).

Spring break and the design report meant that the last two weeks were less productive than the previous one. I spent the bulk of the first week writing the design report, this took more than 12 hours individually. I wrote the introduction, drew the block diagram, and wrote the parts relevant to my subsystem.

As for the actual project, I modified the Arduino embedded controller code to work for two motors, controlling the gantry in 2 dimensions instead of one. See code.

Is your progress on schedule or behind? If you are behind, what actions will be taken to catch up to the project schedule?

My progress is on schedule. My goal for this week was to finish the design report and add the second dimension to the motor controller code.

What deliverables do you hope to complete in the next week?

I had a medical procedure over spring break which is preventing me from getting to Pittsburgh until Thursday. I’m working on requesting a short-term “Full Absence from Class Accommodation” recommendation from ODR. I will be working on the Ethics Assignment until then. Once I am back in Pittsburgh, my goal is to upload this code to GitHub (2FA won’t let me log in because I am out of the country), and test this code if Trey has assembled the gantry. This will likely take some time. If I manage to complete this with some time to spare, I hope to add more sophisticated logic to move the gantry only along the edges of chessboard squares.