Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Some links on this page are affiliate links: if you buy through them we may earn a commission, at no extra cost to you.

You can build an Arduino-programmed watch that displays the time or sensor data and exchanges small amounts of information with a phone over Bluetooth Low Energy (BLE). For a first build, use an nRF52840 board such as the Arduino Nano 33 BLE Rev2, a small display, buttons, and a properly managed rechargeable battery. The key limitation: BLE alone does not make a watch mirror iPhone or Android notifications. That normally requires a companion app, and a DIY prototype is not a drop-in replacement for a commercial smartwatch.

What “Bluetooth smartwatch Arduino” means

There is no single product or standard project called a “Bluetooth Smart Watch Arduino.” The phrase usually means a wrist-worn device programmed with the Arduino ecosystem and equipped with Bluetooth. “Arduino” may refer to the programming environment or a supported development board; the processor itself may be made by Nordic or Espressif.

A practical watch prototype combines a Bluetooth-capable microcontroller, a display, buttons or touch input, a rechargeable battery and power-management circuit, and firmware for the interface and wireless connection. Add a phone app if the watch needs data that only the phone can provide.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Set expectations by project level:

  • Bluetooth wearable: clock, simple menus, battery or sensor readings, and custom data exchange. This is the best first target.
  • Phone-connected prototype: time synchronization, sensor streaming, or custom alerts handled by a companion app. This adds phone software and reconnection work.
  • Commercial-style smartwatch: dependable notification mirroring, health tracking, GPS, water resistance, secure updates, and polished phone integration. An Arduino prototype does not provide these automatically.

Use BLE for a watch

Bluetooth Low Energy is the sensible default for a battery-powered wearable that sends occasional measurements or receives commands. A phone can connect to the watch’s BLE services and exchange values using GATT: a service groups related functions, and a characteristic holds a value that can be read, written, or sent as a notification.

#1 Best Overall
ELEGOO Mega 2560 R3 Project The Most Complete Starter Kit with Tutorial
  • 35+ Guided Electronics Projects: Progress from LEDs and buttons to RFID access, real-time clocks, motion and distance sensing, environmental monitoring, motor control and interactive displays for STEM learning, coding clubs and maker projects
  • More I/O and Memory for Larger Builds: The MEGA 2560 R3 provides 54 digital I/O pins, including 15 PWM outputs, 16 analog inputs, 4 hardware serial ports and 256 KB flash for projects that combine more sensors, controls and displays
  • 200+ Components for Prototyping: Includes LCD1602, RC522 RFID, RTC, DHT11, HC-SR501 PIR, ultrasonic and water-level sensors, GY-521, MAX7219, keypad, joystick, rotary encoder, relay, SG90 servo, stepper motor, DC motor, breadboard and more
  • Learn, Modify and Create: Follow 35+ guided lessons with example code, then adjust sensor thresholds, timing, display text, motor behavior and control logic to turn structured exercises into access systems, monitors, alarms and interactive projects
  • Organized for Repeatable Learning: Pre-soldered modules, a solderless breadboard, storage case and small-parts box reduce setup time and keep sensors, LEDs, ICs, wires and other components easy to find between projects

In this arrangement the watch is usually the BLE peripheral/server and the phone is the central/client. The watch might expose a custom service with a writable command characteristic and a notifiable status characteristic. A phone BLE utility can test that connection before you build an app.

Bluetooth Classic can be convenient for serial-terminal experiments, particularly on supported ESP32 boards or with legacy HC-05/HC-06 modules. It is not the best default for a compact, low-power watch, and a serial connection does not create smartwatch notification support. ESP32 Bluetooth features differ by chip family; for example, the original ESP32 supports BLE 4.2, so check the exact chip and framework rather than treating every “ESP32” board alike. Espressif’s Bluetooth FAQ describes those distinctions.

Choose the controller

Board Best fit Important trade-off
Arduino Nano 33 BLE Rev2 Compact BLE-first watch with simple display and motion sensing No integrated battery charger; 3.3 V-only I/O
Arduino Nano ESP32 More graphical interface, Wi-Fi option, ESP32 ecosystem Power use and Bluetooth details depend on the design and software
Integrated ESP32-S3 watch board Fast route to a prototype with display, touch, or charging hardware already fitted Must verify exact display, touch controller, charger, connector, and firmware support
Other nRF52840 board BLE-focused wearable with board-specific power features Check Arduino-core support and whether charging and battery monitoring are included

The Nano 33 BLE Rev2 uses a Nordic nRF52840, has BLE and an onboard IMU, and measures about 45 × 18 mm. It is a sensible starting point for a small BLE watch, but it has no display or battery charger. Its 3.3 V pins are not 5 V tolerant; see the board datasheet and Arduino’s electrical warning.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Rank #2
ELEGOO UNO R3 Project Super Starter Kit with PDF Tutorial for Beginners
  • TURN CODE INTO REAL-WORLD RESULTS — Follow 22+ guided lessons to make LEDs blink, read temperature and distance, move servo and stepper motors, control an LCD and respond to joystick or IR input; ideal for a family weekend build, homeschool unit, coding club or STEM classroom
  • MORE PROJECT VARIETY IN ONE ORGANIZED KIT — Includes the UNO R3 controller, LCD1602 with pre-soldered header, breadboard power module, ultrasonic and DHT11 sensors, joystick, IR receiver and remote, SG90 servo, stepper motor, relay, DC motor, fan blade, displays, LEDs, buttons, resistors and jumper wires
  • START WITHOUT SOLDERING — Plug-in modules, a solderless breadboard and the pre-soldered LCD help beginners focus on wiring, code and testing; the illustrated component list makes it easier to find each part and move from one lesson to the next
  • LEARN THE LOGIC, THEN CREATE YOUR OWN — Use Arduino IDE and the included example code to understand digital input and output, analog sensing, timing, motor control and display functions, then change thresholds, speeds and sequences for alarms, environmental monitors, reaction games and motion projects
  • CLEAR SETUP SUPPORT FOR FIRST-TIME BUILDERS — Download the latest tutorial and code, select the UNO board and correct computer port, check component polarity and breadboard rows, and keep power-module input at 9V or below; younger learners should work with an experienced adult

The Nano ESP32 is based on an ESP32-S3 module and offers Wi-Fi as well as Bluetooth. It is attractive when a richer color interface or Wi-Fi is useful. That extra capability is not a battery-life guarantee: display choice, radio use, regulator, and sleep behavior all affect runtime. Arduino lists wireless-capable boards on its wireless connectivity page.

A classic Arduino Uno alone is not a practical watch controller: it has no built-in Bluetooth and is a poor fit for a compact wearable power and display design. You could add a radio module, but that adds wiring, power, and integration work without providing phone notification mirroring.

Parts for a useful first version

  • BLE-capable controller: Nano 33 BLE Rev2 or a specifically identified nRF52840/ESP32-S3 board.
  • Display: a small I²C OLED is a straightforward first interface; identify the controller, such as SSD1306 or SH1106, rather than buying on screen size alone.
  • One or two buttons, wired with an appropriate pull-up or pull-down arrangement.
  • Protected single-cell Li-ion/Li-poly battery, compatible charger and power-management circuit, and suitable regulator or power path.
  • Optional sensors, vibration motor, battery gauge, and enclosure after the basic electronics work.
  • USB data cable, multimeter, and a phone BLE scanner such as nRF Connect or LightBlue for development.

For a simple watch, a monochrome OLED is easy to drive and adequate for time, menus, and readings, though static layouts can burn in. A color TFT enables richer graphics but often consumes more power and requires a controller-specific driver. E-paper is readable outdoors and uses little display power after refresh, but updates slowly and is unsuitable for animation. Watchy is an open-source e-paper watch platform based on ESP32-S3 with Wi-Fi/BLE and Arduino compatibility; it can be a useful reference or a quicker platform than assembling every block yourself.

Rank #3
Sale
ELEGOO UNO R3 Project Most Complete Starter Kit, Compatible with Arduino
  • 30+ Guided Electronics Projects: Start with LEDs and build toward LCD1602 displays, RFID access, motion detection, distance sensing, motor control and environmental monitoring for STEM learning, coding clubs, classrooms and hobby projects
  • 200+ Components Across 63 Types: Includes an ELEGOO UNO R3 controller, LCD1602, RC522 RFID, RTC, HC-SR501 PIR sensor, ultrasonic sensor, DHT11, GY-521, MAX7219, keypad, joystick, relay, SG90 servo, stepper motor, breadboard and more
  • Begin Without Soldering: Pre-soldered modules, a solderless breadboard, organized storage case and small-parts box reduce setup time and help beginners move from lesson to lesson while keeping LEDs, ICs, wires and sensors easy to find
  • Learn, Modify and Create: Program the ELEGOO UNO R3 board with Arduino IDE using the included PDF tutorial and example code, then adjust sensor thresholds, timing, display text and motor behavior to turn guided lessons into original projects
  • Flexible Power and Project Setup: Includes a 9 V, 1 A power supply, breadboard power module, 9 V battery and USB cable to support controller, breadboard and module experiments without sourcing basic setup accessories separately

Plan the battery and charging before wiring

Do not connect a raw lithium battery to an arbitrary Arduino pin or assume a board’s USB input is a battery input. The power design must match the board and include a suitable charger, battery protection, and a regulator or power path where required. The Nano 33 BLE Rev2 has no built-in charger, so use a compatible external charging and power-management solution.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Avoid connecting a raw cell to 5 V. Do not assume a generic TP4056 module is suitable without checking protection and load-sharing behavior, and do not choose a boost converter unless the circuit needs it. Keep the battery mechanically protected from puncture, crushing, and overheating; do not claim water resistance unless the finished enclosure has been tested.

A rough runtime estimate is:

runtime in hours ≈ usable battery capacity in mAh ÷ average system current in mA

This is only a starting estimate. Measure current in display-on, idle-connected, BLE-transmit, sleep, and motor states. Bright TFTs, vibration motors, regulators, and sleep-current leakage can matter as much as the radio.

Rank #4
ELEGOO UNO R4 WiFi Super Starter Kit Compatible with Arduino for Beginners
  • ELEGOO UNO R4 WiFi Control Board: Fully compatible with Arduino IDE and original Arduino shields. Features a 32-bit 48 MHz Renesas RA4M1 processor, USB-C, a 12 × 8 LED matrix, a Qwiic connector, built-in Wi-Fi and Bluetooth connectivity. Suitable for interactive STEM projects, it gives learners more room to progress from basic circuits to connected IoT projects
  • Step-by-Step Tutorials for Beginners: Start with clear wiring diagrams and ready-to-run sample code, then advance through sensors, displays, motors, RFID, and wireless projects. Structured lessons reduce setup confusion and help beginners understand both how each circuit works and how to modify it
  • 200+ Components with Practical Modules: Ultrasonic sensor, PIR motion sensor, RFID module, OLED display, keypad, joystick, relay, servo, stepper motor, DC motor and fan blade, temperature and humidity sensor, breadboard, jumper wires, LEDs, resistors, and more. Also compatible with your existing UNO R3 shields and projects
  • Build Projects You Can Recognize: Equipped with professional online tutorials and step-by-step graphical manuals. Suitable for teens, beginners, hobbyists, educators, engineering students and electronics enthusiasts. The included parts support a progressive path from first coding exercises to maker prototypes without purchasing every module separately
  • Organized Parts and Reliable Support: Each kit includes clearly listed components and beginner-friendly project resources to help users identify parts and start faster. ELEGOO provides responsive technical support for setup, programming, wiring and troubleshooting, ensuring you have a smooth learning experience

Build in stages

  1. Install Arduino IDE and the board package that matches the exact hardware. Upload a basic blink sketch and confirm the board’s serial port.
  2. Test the display on its own, using its documented controller, voltage, and interface. Confirm that a known test message appears.
  3. Test each button with debouncing. Then test the onboard or external sensor independently.
  4. Upload a BLE advertising example. Use a BLE scanner app to find the watch; do not rely only on the phone’s normal Bluetooth settings screen.
  5. Create one custom service and a readable/writable or notifiable characteristic. Test phone-to-watch writes and watch-to-phone updates separately.
  6. Add the clock and menu as a small state machine. Keep button handling and BLE work responsive instead of building the whole program around long blocking delays.
  7. Add battery measurement, sleep/wake behavior, and charging only after the bench prototype works. Measure current before committing to an enclosure.
  8. Package the electronics once the board, display, charging connector, buttons, and battery all fit safely.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Minimal ArduinoBLE service example

This pattern demonstrates a custom BLE command and status value on a board supported by ArduinoBLE. It is not complete smartwatch firmware and is not universal ESP32 code.

#include <ArduinoBLE.h>

BLEService watchService("19B10000-E8F2-537E-4F6C-D104768A1214");
BLEByteCharacteristic commandCharacteristic(
  "19B10001-E8F2-537E-4F6C-D104768A1214", BLERead | BLEWrite);
BLEByteCharacteristic statusCharacteristic(
  "19B10002-E8F2-537E-4F6C-D104768A1214", BLERead | BLENotify);

void setup() {
  Serial.begin(115200);
  if (!BLE.begin()) {
    while (true) delay(1000);
  }

  BLE.setLocalName("ArduinoWatch");
  BLE.setAdvertisedService(watchService);
  watchService.addCharacteristic(commandCharacteristic);
  watchService.addCharacteristic(statusCharacteristic);
  BLE.addService(watchService);
  statusCharacteristic.writeValue((byte)0);
  BLE.advertise();
}

void loop() {
  BLEDevice central = BLE.central();
  if (central) {
    while (central.connected()) {
      if (commandCharacteristic.written()) {
        byte command = commandCharacteristic.value();
        // Replace with validated menu, vibration, or settings logic.
        statusCharacteristic.writeValue(command);
      }
      delay(10);
    }
  }
}

The UUIDs are examples. Board package and ArduinoBLE versions affect API support. This sketch does not handle timekeeping, a display, battery reporting, phone notifications, robust reconnection, or secure pairing. Validate incoming commands and payloads in a real project; a UUID is not security. See the ArduinoBLE library and examples. ESP32 BLE uses a different API, documented in the Arduino-ESP32 BLE API; its Classic Bluetooth serial API is separate.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Phone notifications need phone software

A custom BLE service does not grant the watch access to system notifications. Typically, a companion app must obtain the relevant permissions, read notifications that the operating system allows it to access, connect to the watch, and forward a deliberately defined message format. Android and iOS differ in background behavior and permissions, so “works with iPhone and Android” is not a safe blanket claim without a specific app and tested behavior.

Best Value
2Pcs 1.28 Inch LCD Round Screen TFT Display Board1.28 TFT LCD Module 240x240 RGB SPI Interface GC9A01 Driver 4-Wire SPI for Arduino
  • Compact design at 45.5x48x11.5mm and 3-5V operation is ideal for wearables and embedded projects
  • High-brightness backlight ensures excellent readability even in bright outdoor conditions
  • Vivid 1.28" round color display with full-view angle for clear visibility from any direction
  • Easy Integration via 4-wire SPI and built-in GC9A01 driver IC compatible with Arduino, ESP32, Raspberry Pi
  • 1.28" TFT LCD full-viewing angle display and round screen suitable for smart watches, dashboards, embedded devices

Define the data format early: message type, sender or app name, timestamp, priority, maximum payload length, character encoding, acknowledgment behavior, and what to do while disconnected. Keep early packets short. Pairing or bonding and authentication may be appropriate for sensitive commands; validate all writes and consider update security if firmware updates are added.

Troubleshooting

Symptom Checks and recovery
Board or port is missing Install/update the board package, try a known data-capable USB cable, check the operating system’s serial-device list, and select the exact board definition. Reset or enter bootloader mode as the board requires.
Display stays blank Check power and ground, voltage compatibility, I²C address, controller and matching library/constructor, and any required reset pin. An address such as 0x3C is a diagnostic possibility, not a guarantee.
Watch is not visible in BLE scan Confirm BLE support, successful BLE initialization, and that advertising is reached. Scan with a BLE utility, keep devices close, stop an old connection, and retry. A normal Bluetooth settings page may not list arbitrary BLE advertisements.
It connects but no updates arrive Subscribe to the notify characteristic, confirm it was declared for notifications and that firmware writes a changed value, keep packets small, and log events over USB. Avoid long display refreshes or blocking delays.
Board resets when motor or display starts Measure supply voltage during the surge; check battery, protection circuit, and regulator peak-current capacity. Drive a vibration motor through a transistor or MOSFET, not directly from a GPIO, and add appropriate decoupling.
Battery percentage looks wrong Verify the measurement circuit and calibration against a meter. Battery voltage alone is an imperfect state-of-charge indicator, especially under load.

When to choose a different route

Choose a ready-made smartwatch development platform such as Watchy if you want to focus on software rather than display, charging, and enclosure integration. Choose an nRF52840 wearable board when BLE and low power matter most, after checking its charger, battery gauge, display support, and Arduino compatibility. Consider an ESP32-S3 board when its display and interface strengths matter more than minimizing power. For dependable notifications, health tracking, GPS, water resistance, and polished phone support, a commercial smartwatch is the more practical choice.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.