Back >

Connected Watch

June 1, 2025

2 min read

Project: Connected Watch (Communicating Embedded Systems)

This project, carried out as part of the Master 1 , aimed to design and implement a functional connected watch. Drawing inspiration from the open-source ZSWatch project, the goal was to integrate disparate hardware and software components into a coherent embedded system.


1. Context and Problem

The main challenge was to develop a real-time application on the nrf5340 microcontroller using the Zephyr RTOS. The objective was to create a portable device capable of collecting data (sensors, time), displaying it on a touch-enabled graphical interface, and communicating it via Bluetooth Low Energy (BLE).

2. Project Objectives

3. Features Developed

To meet the project requirements, the following features were implemented:

  1. Multi-Screen User Interface (GUI)

    • Domain: Graphical display and interaction.
    • Objective: Display the time, sensor data, a pedometer, a compass, and a stopwatch.
    • Tools: Designed with Squareline Studio and rendered by the LVGL library.
  2. I2C Sensor Management

    • Domain: Data acquisition.
    • Objective: Read data from sensors (Temperature, Humidity, 6-axis Accelerometer, Magnetometer).
    • Processing: Implemented a simple pedometer and compass.
  3. Time Management (RTC) and Stopwatch

    • **Domain:**Timekeeping.
    • Objective: Reliably maintain the time and date (via external RTC RV-8263-C8) and provide a stopwatch function.
  4. Bluetooth Low Energy (BLE) Connectivity

    • Domain: Communication.
    • Objective: Send sensor data to a mobile device via standard (ESS for Temp/Humidity) and custom (IMU) GATT services.

4. Technical Environment (Tech Stack)