RoomSense

Overview

Raspberry Pi

With 7″ Display

Stem Izon

motion detection + Live Feed

BambuLab A1

3D Printer for custom cases and mounts

Onshape · TinkerCAD

CAD modeling for 3D Printed parts

From Problem to Product

A real everyday issue that I turned into a full system.

The Problem

My Room was hard to manage

The Solution

I built a system to handle it

Features

What RoomSense Does

  • Clock Display

Always-on time display on a 7″ touchscreen mounted in my room.

  • Light Status Monitor

Checks and reports whether room lights are on or off to avoid wasted energy.

  • Motion Detection

Records and auto-sorts images whenever motion is detected in the room.

  • Cleanliness Evaluation

Simple comparison code analyses camera images and displays a live cleanliness status on the dashboard.

  • Live Camera Feed

Real-time feed from Stem Izon cameras, secured behind a password

  • Interactive Touchscreen UI

A fully interactive dashboard. Originally a stretch goal, but successfuly accomplished.

Camera Setup

Stem Izon cameras were mounted in room corners using custom 3D-printed brackets, with cable management routed along the walls.

Corner Mount Camera 1

Camera installed in top wall corner, looking diagonally across the room for maximum coverage

Stem Izon
Custom Mount

The 3D-printed brackets holds the Izon camera securely in the corner, with cables routed cleanly

Camer Mount
Camera 2

Second camera mounted in opposite corner of room, allowing for coverage of every last square inch of the room.

Camera Mount Iterations

I went through multiple iterations of camera mounts, many of the beginning ones due to the unique shape of my room’s moulding.

Printing on BambuLab

I used my BambuLab A1 to print all parts in PLA.

Iterative Prototypes

This project called for high quantities of prototypes, especially screen enclosures, visible here

Final Case CAD

The case and all components were designed in the Onshape CAD software, and were designed to fit all parts exactly.

My Journey

Successes and Setbacks

  • First Image Captured

Getting the first motion-detected image to record and sort correctly was the milestone that proved the core concept worked.

  • Interactive UI – Stretch Goal Achieved

A full touchscreen UI was originally a stretch goal. It was built and shipped — turning the most ambitious extra into a core feature.

  • Dozens of Iterations

Cases that didn’t fit, cameras falling, and tools malfunctioning — including multiple 3D printer failures requiring repair.

  • OS Wipet Twice without Backups

The SD card with the OS and all executables was lost twice without backups, forcing a complete rebuild each time.

  • Code Debugging and Transfer Issues

Software bugs and the challenge of reliably moving code from Mac to Raspberry Pi caused repeated delays.

Looking Back

What I’d Do Differently

My honest refelctions of this project, and what I would do differently in the future.

  • Start with a Minimum Viable Product, then grow — instead of starting big and narrowing down
  • Match the plan to the project type: spread work vs. in bursts depending on the task
  • Address problems immediately as they surface instead of letting them compound
  • Keep continuous documentation and collect material throughout — not just at the end
  • Solve camera mount and cable management issues early — not after failures
  • Set up a reliable Mac-to-Raspberry Pi code transfer process from day one
  • Always back up the SD card — losing it twice was entirely preventable
  • Finalise case designs before printing to cut down on wasted iterations
Tools and Resources


What I used

  • Raspberry Pi 4B
  • Nebula 7″ Touchscreen
  • Stem Izon Cameras
  • BambuLab A1
  • Onshape CAD
  • TinkerCAD
  • ChatGPT – Coding Assistance
  • Stack Overflow – Code Reference
  • Apple MacBook Pro
  • XCode – Coding Environment
  • Apple Vision Pro
  • Apple Studio Display