Illustrated portrait of Dicky Jr wearing a beanie
Dicky Jr
Design + Strategy
Menu

Selected work / 03Product design & hardware

Portfolio Tracker

A quieter way to check in.

Clock is a self-initiated project: a custom clock and portfolio tracker built on the M5Stack Core2. It connects to the CoinGecko API, fetches token prices every five minutes, and shows holdings, totals, and percent change on a small physical device.

Type
Personal project
Year
2024
Disciplines
Coding, Product Design, Hardware Prototyping
Deliverables
Working prototype
Portfolio tracker dashboard showing multiple clock-inspired widgets
01

The idea

A quieter way to track your portfolio

I wanted a way to see my portfolio without opening dozens of apps full of noise. So I built a physical tracker that sits quietly on a desk, giving only the essentials: a running total, percentage change, and a simple greeting.

The project became as much about learning as it was about tracking. With less than 100 hours of coding experience, I taught myself enough MicroPython and UIFlow to:

  • Fetch and format crypto prices via the CoinGecko API
  • Display portfolio totals with commas and rounding
  • Add greetings that change with the time of day
  • Sync time via NTP (GMT+3) with retry logic
  • Maintain a rolling 24-hour file of portfolio values
  • Utilise a custom font for the clockface
  • Add shake gestures and capacitive button inputs for navigation

It’s a working object: modest, rough in places, but alive.

Product Features

The clock screen: handheld device illustration
01The clock screen

Time at a glance.

Shake to switch: handheld device illustration
02Shake to switch

Shake the device to open your portfolio.

Your live portfolio: handheld device illustration
03Your live portfolio

See your portfolio’s current value.

Adjust the brightness: handheld device illustration
04Adjust the brightness

Use the capacitive touch buttons to turn brightness up or down.

02

Bringing it together

Checking a portfolio without opening another app

Clock turns a portfolio dashboard into a physical object with a deliberately limited role. It tells the time until a shake brings up the portfolio; a total and percentage change provide the brief update I wanted without opening another app.

Building the working prototype connected interface decisions to the realities of a small device: readable type, touch and gesture controls, and data that needs to keep updating. It also made learning to code tangible. Each improvement became something I could pick up, use and refine.

My contribution
Product design, interface design and hardware prototyping.
Built with
M5Stack Core2, MicroPython, UIFlow and the CoinGecko API.
Project
Personal working prototype · 2024.

Next project

Future Fabrics
All selected work ↗