Inspiration

We love working with embedded software and wanted to leverage QNX's low latency and high security architecture. Quark's safety critical role requires it to be strictly real-time and auto recoverability from kernel panics.

What it does

Quark uses low-latency camera and audio inputs to communicate with the user and monitor them through camera to ensure they stay awake. If the Quark suspects the user is dozing off, it will alert them to snap them back to their senses and determine if they should take a break. With Quark, you'll be waking up at home and not the hospital 😊.

How we built it

Quark is built on a raspberry pi computer running on AArch64 QNX 8.0.2 OS. We built the software primarily through editing the micro SD card's network configuration to share our WIFI. This allowed us to ssh into it and develop it through our own laptops with agentic support to streamline the development in our short time frame.

Some of the software tools in Quark:

  • QNX Camera module for visual input
  • libasound for processing audio outputs to the user
  • SDL3 hardware interface library for additional hardware interfaces such as the mic
  • llama.cpp runs text-based (LLMs) locally to allow text to speech or speech to text
  • TensorFlow Lite runs a lightweight AI model locally fordata processing using TFLite format files.

Challenges we ran into

  • The person who took the RPI home for the first night found it incompatible with his monitor and couldn't make much progress till he got back to the lab
  • The school WIFI blocked SSH connections to the Raspberry Pic, forcing us to use hotspot as WLAN
  • We live in different places and can't stay the night, so we had to entrust one person to finish the rest of the code alone

Accomplishments that we're proud of

  • We managed to get the Camera and other parts of our plan working so we had decent progress
  • We have a working project with something to show for the work and time

What we learned

  • We need to clarify the intended development method and hardware compatibilities before working
  • We learned many new procedures about working with the QNX operating system over the days
  • The raspberry pi has a limited storage and peripherals that we should have planned better

What's next for Quark

  • Ideally, we'd upgrade to a larger memory and overall computer so it can use stronger AI models with better accuracy and capabilities. We could also improve the companion to be smoother and more user-centered, learning their habits and personality.

Built With

Share this project:

Updates