Fei’s Status Report for Mar 15

Over the past week, I focused on developing a working version of Challenge Mode. This involved implementing the gameplay and scoring system, designing four gaps between pillars where players input answers, and adding game loss logic for incorrect answers or collisions with pillars. While the core functionality is working, I am slightly behind schedule. To catch up, I plan to dedicate the entire day tomorrow to finalizing the implementation. Next week, I aim to complete the upload to the Raspberry Pi and begin the physical assembly of the box.

Min Ji’s Status Report for March 15

This week, I dedicated a significant amount of time implementing the key aspects of our SweeTrivia project:

1. software development(pygame & web interface)

2. touchscreen testing

3. troubleshooting hardware-related issues(speaker & timer malfunction).

3/10/25:

  • Developed the Pygame-based home screen and tried integrating it with the basic gameplay loop. I only coded for the home screen for now for basic testing.
  • work time: approximately 4 hrs

3/11/25:

  • Tried connecting the local code to the rpi and tested with the new touchscreen.
  • Found out that the ratio was different on my local laptop vs touchscreen, so recode to adjust
  • work time: approximately 3.5 hrs

3/13/25:

  • Completed the implementation of the web-based standard mode, completing 7-8 screens, without having minor UI/UX adjusted based on the Figma.
  • Had a meeting with the professor and learned more about how to use the LovableAI for web-based programming
  • work time: 3 hrs

3/14/25:

  • Had trouble linking the lovable git to our public SweeTrivia git, and fixed the git link issue that was preventing the version control version.
  • Tested the new software version on the touchscreen including screen transitions for most of the game flow.
  • Had a meeting with Alex and asked for technical advice and the budget question
  • Emailed the professor to get feedback on the potential fixes that will be mentioned later in the problems.Video link: Touchscreen & Web Testing for 3/15/25

    Currently, my progress is on track, but I have several tasks to fix the issue. I have to debug and resolve the infinite narration loop issue that stops everything. This includes the timer malfunction and the touchscreen not responding, but I figured out that this is due to the infinite narration. Our current game is that the timer starts once the question narration is done, but because the narration sign is blinking infinitely, everything stops. I need to check again with that and maybe ask for help from the instructors.

In the upcoming week(3/16 – 3/22),  I am planning to do the following:

1. Enhance UI/UX and do some research on Kiosk Mode to improve the touchscreen interaction flow based on testing and feedback(by 3/16)

2. Speaker & Timer Debug(by 3/21)

– figure out the root cause of the infinite narration loop.

3. Order missing parts(MDF board, plastic sheet)(by 3/15)

4. Start building the physical vending machine and finish by the end of the upcoming week(by 3/25)

– Bend wires + glue them to the motors

– 3d Design how to mount the touchscreen to the MDF

Team Status Report for March 15

  1. What are the most significant risks that could jeopardize the success of the project? How are these risks being managed? What contingency plans are ready? (written by Vicky)
    a. A narration stuck issue when running standard mode game on web, the issue is only present on the rpi touchscreen and not on local server run so it is tricky to debug. One way to manage this is to build a test program with an audio output and see what is wrong with the speech module on web run.
    b. For the physical build, the MDF board available for purchase has a smaller size than we need, so we need to find a way to securely connect the boards together into a bigger panel that supports the board’s weight. We plan to use either glue or metal connectors for the flat connections and furniture connector for corner connections.
    c. The integration of challenge mode and standard mode, as currently the standard mode is being run on web and challenge mode is written in python. We plan to convert the python code and integrate both games in web-run format.
    d. For the webpage to accept user question-answer upload and rpi local download, we need to integrate a cloud database and add a ‘synchronize’ control on the game interface, working with cloud databases is new and might take some time to build this part of our system.
  2. Were any changes made to the existing design of the system (requirements, block diagram, system spec, etc)? Why was this change necessary, what costs does the change incur, and how will these costs be mitigated going forward? (written by Fei)
    In the implementation of the game, we switched from Pygame to Loveable AI. This change was recommended because Pygame’s complexity exceeded the requirements of our game. The transition simplifies development while preserving functionality. However, it introduced new challenges, such as display errors on our touchscreen. These costs will be mitigated by priority in debugging the display error for next week.
  3. Provide an updated schedule if changes have occurred. This is also the place to put some photos of your progress or to brag about a component you got working. (written by Min Ji)
    There are no big changes in the schedule. We need to order more MDF boards and a plastic sheet to be ready to build the machine. Our group is planning to have the games work by 3/21 and the physical building to be done by 3/25.

Video link: Touchscreen & Web Testing for 3/15/25


Attached above are the video of testing the web and the touchscreen using the rpi and a screenshot of the challenge mode code.

Fei’s Status Report for Mar 8

This past week, I focused on implementing the planned Flappy Bird logic for sweeTrivia’s Challenge Mode. My primary efforts were directed toward refining the game mechanics, ensuring smooth obstacle generation, collision detection, and responsive player controls. While I made significant progress in developing the core logic, I was unable to fully integrate it into the Raspberry Pi due to my travel plans, causing a slight delay in my schedule. To catch up, I will allocate additional hours this coming week to finalize the Challenge Mode implementation and ensure integration onto the Raspberry Pi. I plan to prioritize debugging and performance optimization to prevent latency issues and unexpected game behavior. For the upcoming week, my primary deliverable will be to fully implement Challenge Mode and deploy it onto the Raspberry Pi, ensuring that it functions as expected. I will also begin initial user testing to validate game responsiveness and mechanics. By the end of the week, I aim to have a working version of Challenge Mode that is stable and ready for integration into the final system.

Min Ji’s Status Report for March 8

This week, I finished developing the AI audio narration of the trivia game wherein both the question and all four answers are read aloud, moving from espeak-ng to pyttsx3. To achieve this, I converted the Google Spreadsheet database to a formatted JSON type so that the system can dynamically retrieve and narrate questions. The local testing is completed, and I am waiting for the new touchscreen to arrive so that I can test it with the built-in speaker(estimated delivery date: 3/10). I also finished polishing the Figma design, refining the UI/UX aspects to match the project vision.

My progress is so far on schedule. Finishing up the audio narration feature is a major part of the development, and I am prepared now to test it with the touchscreen’s built-in speaker when it is delivered. In the upcoming week, while I wait for the touchscreen, I plan to continue working on building the website. I will also start the physical building aspect of the project to get a head start. This includes cutting and assembling MDF boards, gluing the transparent plastic board, bending wires, and assembling them with the motors. Once Vicky completes her portion—the Raspberry Pi standard mode code for touchscreen controls and motor controls—I will create the UI/UX of the touchscreen interface. I aim to finish audio narration testing and the physical assembly by 3/14, then transition into polishing the UI/UX and debugging the website up until 3/21. If there are any unexpected delays, I will perform tasks that can be executed in parallel.

Vicky’s Status Report for March 8

This week I continued working to configure the rpi 4, setup the rpi headless connection and put in the default trivia question database and the python control code for the standard mode game. During touchscreen’s late arrival delay, I will continute to work on the arduino control for the servo motors and the website build. Our progress is slightly behind due to order delays and mismatches. We will shift our task orders and work on more meetings outside of lab sessions. For the next meeting, I hope to show the rpi standard mode interface as well as the arduino control test program for a generated dispense signal.

Team Status Report for March 8

Part A: … with consideration of global factors(written by Vicky).

As an entertainment physical portable game, our product provides accessibility for individuals with disabilities, offers text-to-speech for visually impaired users and alternative input methods for those with limited mobility, further ensures a globally conscious design. Moreover, since internet access and digital infrastructure vary widely across regions, our system is designed to function offline or with minimal connectivity, making it viable in areas with limited technological resources.

Part B: … with consideration of cultural factors(written by Min Ji).

To make sure that our trivia vending machine is sensitive to culture and engages a diverse audience, we need to carefully consider the content of trivia as well as the experience of the users. One useful way to prevent inadvertent bias or exclusion is to review and edit trivia questions to ensure they are accurate and appropriate for many different cultural groups. From a design perspective, we must provide accessibility through high-contrast screens for better readability and maybe have multiple languages for individuals who are not English speakers. To make sure the UI/UX is as intuitive as possible, we can test it with people from diverse backgrounds and adjust the design as necessary based on their feedback.

Part C: … with consideration of environmental factors(written by Min Ji).

In terms of environmental considerations, we can also be sustainable in the choices for both material consumption and energy use. Our choice of using an MDF(Medium Density Fiberboard) and transparent plastic for the outer candy casing can reduce waste as compared to non-reusable materials. We can save power waste by ensuring that unwanted parts enter standby mode when unused. Using low-power microcontrollers and LED displays can reduce wasteful energy consumption. With these design choices, we can ensure that our trivia vending machine is not only environmentally friendly but also energy efficient.

  1. What are the most significant risks that could jeopardize the success of the project? How are these risks being managed? What contingency plans are ready? (written by Vicky)
    Some risks so far are the physical build of the machine and how the assembly will securely come together. Another risk is we are unsure how long it will take for the final integration, as of now, Vicky is working on the Arduino control for dispensing and building the standard mode game code without styled ux graphics, and the website interface; Min Ji is working on the speech audio generation, graphics for standard mode and the website interface; and Fei is working on the touch game. Our plan is to allocate one week before the interim demo to straighten out the mismatches during integration
  2. Were any changes made to the existing design of the system (requirements, block diagram, system spec, etc)? Why was this change necessary, what costs does the change incur, and how will these costs be mitigated going forward?  (written by Vicky)
    Due to consideration on making an intuitive design and more portable physical product, we eliminated the horizontal/vertical fetching tray inside the machine, thus getting rid of the aluminum bars, stepper motors, and attachment wood hardware, making the product much lighter. We also eliminated the physical buttons and the LCD screen in exchange for using a bigger touchscreen of size 10 inch. The change in screen incurred some order delay and shifted around our task order slightly.
  3. Provide an updated schedule if changes have occurred. This is also the place to put some photos of your progress or to brag about a component you got working. (written by Min Ji)

    This is the updated Gantt Chart. No big changes but added minor tasks that have to be done by 3/14 and 3/21.
    For progress: The updated code for audio narration is in our git repo. Attached is a sample recording of our SweeTrivia audio narration.

Vicky’s Status Report for Feb 22

This week I drew the hardware the block diagram with components and connections. I thought about our user interface and wrote some answers on our target play experience and the next steps in our work flow. I started working on the arduino control code for the dispensing mechanism of our machine, since this task is mostly separate from the game logic side. Our progress is on schedule but the team would like to work more on break to be prepared for any delay during the machine body build. For next week’s meeting I plan to have the rpi touch screen configured to display the basic mock text game, after that it needs to be integrated with the audio narration and modified for multiply game round mechanism according to our ux flow diagram.

Fei’s Status Report for Feb 22

This past week, I prepared the presentation for our team’s design review and worked partially on the game code for the challenge mode. However, I fell a bit behind due to the time spent on the presentation and two midterms.This week, I plan to focus primarily on the project, as the courses I had midterms for no longer require my immediate attention. Looking ahead to next week, I aim to complete the overall logic for the challenge mode and upload it to the newly arrived Raspberry Pi.

 

 

Min Ji’s Status Report for Feb 22

This week, I focused on finalizing the UX flow design and overall structure of how our vending machine would function, ensuring a smooth and open interaction process. The majority of my time was dedicated to testing and refining the AI narration system, assessing its effectiveness, and preparing it for integration. I successfully pushed my AI narration updates to our GitHub repository. Additionally, I verified and cataloged our hardware components to ensure we had all the necessary parts for the Raspberry Pi setup. In the process, I identified missing components, informed the team about what still needed to be purchased, and coordinated the next steps for hardware assembly. I also continued researching the spiral mechanism for candy dispensing, exploring potential implementation methods while considering mechanical constraints.

Progress is on track, but I am waiting for a teammate to upload her trivia questions to the shared Excel sheet so I can update the AI narration database accordingly. Leading up to the end of spring break, I plan to integrate the AI narration system with a speaker and Raspberry Pi, complete the narration database, and develop the standard mode into a minimum viable product (MVP). This will include implementing a 10-second timer countdown and enabling answer selection through physical buttons. My goal is to have the standard mode in a functional MVP state and ready for testing by the end of spring break.