Skip to the content
2 layers48.6 × 42.9 mmWatch2-board outline, the printed circuit board in 3D

Watch2-board outline

atctwo/watch-II2

Firmware for my custom smart-ish-watch, mark II

Size
48.6 × 42.9 mm
Copper layers
2
Thickness
1.6 mm
Parts
86
Nets
89
Pads
358
Tracks, vias
1,425, 161
Pours
4
Routed
Yes
KiCad
KiCad 5 (file 20171130)
Created
23 Jul 2019
Updated
28 Sep 2021

Overview

Watch2-board outline is an open-source printed circuit board by atctwo, from the atctwo/watch-II repository on GitHub, published under the MIT licence. It is a 2-layer board of 48.6 × 42.9 mm with 86 parts on 89 nets, routed with 1,425 tracks and 161 vias.

It is built around the ESP32-WROVER, FT230XS-R and MAX98357AETE+T, with the MAX16150AUT+T, MAX604CPA+ and TSOP38238 among its other parts. Its parts include 28 resistors, 10 ICs, 9 capacitors, 8 connectors and 5 diodes. It belongs with the wearables boards and the ESP32 boards of this library.

Main components

7

README

readme.md

watch2

a picture of the watch

This repository contains the software and design files for my custom smartwatch thing. The system is built on an ESP32, and the software is written in C++, using ESP-IDF and Arduino. The software includes a few "apps", which are shown below.

The device uses a custom PCB that holds the ESP32, and all the other electronics that make the system work. The PCB was designed in KiCad, and the enclosure for the device was made in OpenSCAD.

The system isn't as powerful as existing smartwatches, but it was a really great way for me to learn a lot of electronics and programming concepts and tools. This isn't supposed to be a marketable product, but a proof of concept thing, and a way for me to develop my skills. This repository is here as a kind of archive to show the level my skills are at at time of writing, and hopefully as a thing to look back on and learn from.

Watch Face Settings Calculator Stopwatch
Timer Alarms File Browser Notepad (read only)
IR Remote Image Viewer Weather Wikipedia
Quiz Music Player Internet Radio BLE Remote
Sensor Thing Tetris Snek 2 NES

Project Structure

  • components ESP-IDF components
  • design_files KiCad files for the schematic and PCB
  • docs documentation for the system (see docs/readme.md for more detail)
  • extras other stuff like icons, data files, and pinout for the original breadboard prototype
  • main where all the code lives
  • spiffs data and images for the SPIFFS partition

Build Instructions

These are some rough instructions for installing and flashing the software on to an ESP32 board. These steps are mainly aimed for Linux systems.

  1. make sure the latest commit of ESP-IDF is installed and setup (this software is currently using commit 1d7068e)
  2. git clone this repository somewhere - git clone https://github.com/atctwo/watch-II.git
  3. cd into the project directory
    • then run these commands:
    text
    chmod +x install_libraries.sh
    ./install_libraries.sh
    • this script automatically clones all of the submodules that the system depends on, then makes any neccessary modifications
  4. use idf.py menuconfig to tell ESP IDF the flash size of the ESP32 you are using
    • go to Serial flasher config → Flash size and select the right flash size (i've only created partition files for 8MB and 16MB at the minute)
    • go to Partition table → Custom partition CSV file and enter either partitions_8mb.csv or partitions_16mb.csv
  5. to build the software, run idf.py build, and to write the built firmware to an ESP32 board, run idf.py flash (see the ESP-IDF documentation for more detail on these commands)
  6. next, flash an SPIFFS image to the device
    • to do that from the root of the repository, call one of these commands depending on what flash size your ESP32 has:
    bash
    # if you're using an 8 MB flash
    esptool.py --port /dev/ttyUSB0 write_flash 0x340000 spiffs/spiffs_8mb.bin  
    
    # if you're using a 16 MB flash
    esptool.py --port /dev/ttyUSB0 write_flash 0xE20000 spiffs/spiffs_16mb.bin  

Credits

Parts

86
QtyValueFootprintReferences
70.1uFCapacitor_SMD:C_0805_2012MetricC1, C3, C5, C6, C7, C8, C9
61kResistor_SMD:R_0805_2012MetricR1, R6, R10, R14, R17, R18
6TestPoint_Pad_D1.0mmTestPoint:TestPoint_Pad_D1.0mmBLK, D-, D+, DIN, DOUT, LRC
5RResistor_SMD:R_0805_2012MetricR11, R12, R13, R19, R20
4label, , ,
4MOUNTINGHOLE2.5MOUNTINGHOLE_2.5_PLATEDU$7, U$8, U$9, U$10
2100RResistor_SMD:R_1210_3225MetricR28, R31
2100kResistor_SMD:R_0805_2012MetricR25, R26
210kResistor_SMD:R_0805_2012MetricR15, R27
210uFCapacitor_SMD:C_0805_2012MetricC2, C4
227RResistor_SMD:R_0805_2012MetricR4, R5
2330RResistor_SMD:R_0805_2012MetricR30, R32
24k7Resistor_SMD:R_0805_2012MetricR2, R3
25k1Resistor_SMD:R_0805_2012MetricR7, R8
2Conn_01x03_MaleConnector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_VerticalJ4, J5
2Q_NPN_BCEPackage_TO_SOT_SMD:SOT-23Q2, Q3
2SW_PushButton_Switch_SMD:SW_SPST_EVQP2SW2, SW2
12kResistor_SMD:R_0805_2012MetricR9
1680kResistor_SMD:R_0805_2012MetricR24
168RResistor_SMD:R_0805_2012MetricR29
1Battery_CellConnector_PinHeader_2.00mm:PinHeader_1x02_P2.00mm_VerticalBT1
1ESP32-WROVERAlice's Library:ESP32-WROVERU7
1FT230XSPackage_SO:SSOP-16_3.9x4.9mm_P0.635mmU1
1LC709203FQH-01TWGPackage_DFN_QFN:WDFN-8-1EP_4x3mm_P0.65mm_EP2.4x1.8mmU3
1LEDLED_SMD:LED_0805_2012Metric_CastellatedD1
1LED_IRAlice's Library:SOD4223X290ND5
1LED_TORCHAlice's Library:MLCAWT-A1-0000-000XE1D4
1MAX16150AUT+TPackage_TO_SOT_SMD:SOT-23-6U4
1MAX604Package_SO:SOIC-8-1EP_3.9x4.9mm_P1.27mm_EP2.29x3mmU5
1MAX98357AETE+TPackage_DFN_QFN:QFN-16-1EP_3x3mm_P0.5mm_EP1.7x1.7mmU8
1MCP23008-xSSPackage_SO:SSOP-20_5.3x7.2mm_P0.65mmU6
1MCP73831-2-OTPackage_TO_SOT_SMD:SOT-23-5U2
1MCP9808_MSOPPackage_SO:MSOP-8_3x3mm_P0.65mmU10
1Panasonic_EVQPUJ_EVQPUAButton_Switch_SMD:Panasonic_EVQPUJ_EVQPUAIO0
1PinHeader_1x02_P2.54mm_VerticalConnector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalSpeaker
1Power ButtonButton_Switch_SMD:SW_SPST_EVQP2SW3
1RXLED_SMD:LED_0805_2012Metric_CastellatedD3
1SPH0645LM4H-BAlice's Library:MIC_SPH0645LM4H-BMK1
1STEMMA QTConnector_JST:JST_SH_SM04B-SRSS-TB_1x04-1MP_P1.00mm_HorizontalJ2
1SpeakerAlice's Library:XDCR_CMT-7525-80-SMT-TRLS1
1TFT ConnectorConnector_PinHeader_2.54mm:PinHeader_1x11_P2.54mm_VerticalJ6
1TSOP38238OptoDevice:Vishay_MINICAST-3PinU9
1TXLED_SMD:LED_0805_2012Metric_CastellatedD2
1Torch Connector (daughter board)Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalJ8
1Torch Connector (main board)Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalJ7
1UART ConnectorConnector_PinHeader_1.27mm:PinHeader_1x03_P1.27mm_VerticalJ3
1USB_C_Receptacle_USB2.0Alice's Library:JAE_DX07S016JA1R1500J1

The 84 most common of 86 parts.

More from atctwo/watch-II

1
  • 16 layers48.5 × 42.9 mmWatch2 (copy), the printed circuit board in 3D

    Watch2 (copy)

    atctwo/watch-II

    Firmware for my custom smart-ish-watch, mark II

    74 parts2MIT

Similar boards

  • 12 layers152.9 × 90 mmData center rdimm ddr4-tester, the printed circuit board in 3D

    Data center rdimm ddr4-tester

    antmicro/rdimm-ddr4-tester

    Experimental platform built around Xilinx Kintex-7 FPGA for development and customization of RAM controllers supporting RDIMM DDR4 RAM modules used in data centers.

    691 parts32Apache-2.0
  • 2 layers90 × 25 mmBattery, the printed circuit board in 3D

    Battery

    cuspaceflight/li-ion-battery-charger

    Battery charger test board

    48 parts
  • 2 layers23.8 × 34.6 mmSi4463-breakout, the printed circuit board in 3D

    Si4463-breakout

    cuspaceflight/si4463-breakout

    Breakout board for the Si4463 configured for 868 MHz

    30 parts
  • 2 layers68 × 66 mmMSN, the printed circuit board in 3D

    MSN

    d3vf1x/MSN

    Wireless Enviromental Sensor that can make use of multiple IoT technologies.

    44 partsGPL-3.0
  • 4 layers81.6 × 102.5 mmLoRa Phone, the printed circuit board in 3D

    LoRa Phone

    maelastiques/PTCR-V5-P4

    204 parts
  • 2 layersValve controller, the printed circuit board in 3D

    Valve controller

    cuspaceflight/royale

    Control and Instrumentation Systems for the White Giant test stand

    42 parts1

Questions

How big is the Watch2-board outline PCB?

It measures 48.6 × 42.9 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Watch2-board outline use?

86 parts, built around the ESP32-WROVER, FT230XS-R, MAX98357AETE+T and MAX16150AUT+T. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the Watch2-board outline KiCad files?

From the atctwo/watch-II repository on GitHub, at the commit this page was made from: the board is design_files/watch2_board/watch2-board-outline.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.

Can I use the Watch2-board outline design in my own project?

Its repository publishes it under the MIT licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).