ToyTool Firmware

A YouTube subscriber counter for your desk

Turn a GeekMagic SmallTV-Ultra into a YouTube subscriber counter with today’s views, your latest video and a goal ring. Free API key, up to three channels.

5 min read

The ToyTool mascot, a SmallTV-Ultra, showing the Creator watch face

A GeekMagic SmallTV-Ultra running ToyTool Firmware can be a subscriber counter that also tells the time: your subscribers, the views your channel gained today, your latest video with its thumbnail and views, and a ring that fills up toward the next round number. It fetches everything from YouTube itself, with a free YouTube Data API key you create once, and between YouTube updates it’s still a clock, a weather station or whatever else you put in the rotation.

Four YouTube faces on the 240×240 screen: Creator, a red ring with 6.2K of 10K, views 558K and +412 today; Channel, a list with subscribers 6,230, today +412, views 558K and next goal 10K; Studio, SUBSCRIBERS 6.2K with +412 today and a bar to the 10K goal; and Latest Video, a thumbnail with the title and 102K views
Creator, Channel, Studio and Latest Video — firmware renders with sample numbers, not a real channel’s statistics.

What it shows

  • Subscribers — as YouTube reports them. YouTube rounds public subscriber counts down to three significant figures (its API documentation says so), so the number moves in steps: 6,230, then 6,240.
  • Views today — views your channel gained since local midnight. The screen works this out itself from the channel’s total; it starts again from zero at midnight.
  • Your latest video — its thumbnail, title, views and how long ago it went up.
  • The next goal — the next milestone (100, 500, 1K, 2.5K, 5K, 10K, 25K, 50K, 100K and up) and how far along you are.
  • Up to three channels. On the built-in YouTube screen each channel gets a page of its own; the faces show the first one.

The data refreshes about every 15 minutes (two minutes after a failed attempt).

The built-in YouTube screen: the channel avatar and name, the latest video’s title with 102K views and “1 week ago”, the subscriber count 6,230 in large digits and “+412” views today, with the video thumbnail dimmed in the background
The firmware’s own YouTube screen (example numbers, not real statistics). For the first half of its turn the big number is the latest video’s views, then your subscribers.

What you need

  • A SmallTV-Ultra with ToyTool Firmware — the Basic licence is $3.99 per screen, paid once.
  • A Google account, to create a YouTube Data API v3 key. The key is free: YouTube gives every project 10,000 quota units a day, and a simple read like the screen’s costs 1 unit (YouTube’s quota rules). One refresh costs 3 units for one channel and 7 for three, so a screen uses roughly 300–700 units a day. Every screen on your account fetches on its own, so several screens add up — still far below the limit.
  • Your channel’s @handle (or its ID starting with UC).

1. Create a YouTube Data API key

  1. Open YouTube Data API v3 in the Google Cloud console and click Enable. If you have no project yet, the console creates one.
  2. Go to Credentials → Create credentials → API key, and copy the key (it starts with AIza).
  3. Optional but sensible: edit the key and, under API restrictions, allow only the YouTube Data API v3. The screens call YouTube from your home connection, so don’t restrict it by IP address.

2. Connect your channel in your ToyTool account

  1. In your account open Connectors → YouTube.
  2. Under Channels enter up to three, separated by commas: @yourhandle or an ID like UC….
  3. Paste the key and press Connect. Your account checks the key and the first channel with YouTube before saving. If it says “YouTube didn’t accept the key”, the API isn’t enabled for that key’s project yet; “Channel … not found” means a typo in the handle.
The Connectors page of a ToyTool account with the YouTube card: “Channels — up to three, @handle or ID”, “YouTube Data API key”, a Connect button and the three steps to get a key
Connectors in a ToyTool account (a test one, nothing connected yet).

The key is kept with your account, encrypted, and sent encrypted to your own screens, which use it to fetch your data. You connect once and every screen on the account gets the channels.

3. Pick how it looks

Add the YouTube screen or a face from the Creator collection to the screen’s rotation — or pin one, if the counter is all this screen should do.

FaceWhat’s on it
Creatorsubscribers inside a red ring that fills toward the next goal, total views, views today
Channelavatar and name, then subscribers, today, total views and the next goal as a list
Studiosubscribers up large, views today, a bar to the goal, the exact count
Latest Videoyour newest thumbnail with its title and views, and the time
Authortime and date, subscribers and views, and your next task from Notion
Timelinean editing timeline whose clips grow with the day, week and month, with your channel name

The collection also has Viewfinder, a camera viewfinder with a running REC counter that needs no YouTube connection at all. In your own faces the numbers are {yt_subs}, {yt_today}, {yt_video_views} and friends — see Build your own watch face.

How it compares

What it isWhere the number comes fromNotes
Smiirla mechanical flip counter, 5 or 7 digitsSmiirl’s own service; its site lists Instagram counters and custom countersfrom $399 excluding tax for 5 digits, per Smiirl’s site
LED pixel clocks with AWTRIX firmware (e.g. Ulanzi TC001)a matrix of LEDs with custom “apps”you push the number from Home Assistant, Node‑RED or a script, over MQTT or HTTPneeds a smart-home setup; AWTRIX 3 itself is no longer developed (its successor is AWTRIX NG)
DIY ESP8266/ESP32 buildsa board, a screen and your own codeyour code calls the YouTube APIsolder, flash and maintain it yourself
SmallTV-Ultra + ToyTool Firmwarea 240×240 colour screen with facesthe screen calls the YouTube API itself with your key$3.99 licence for a screen you may already own; also clock, weather, rates and more

Limits

  • Subscriber counts are rounded by YouTube, so small changes don’t show until the third digit moves.
  • About 15 minutes between updates — fine for a desk, not a live-stream counter.
  • “Views today” is counted by the screen from midnight; after a restart it continues from the morning’s starting point.
  • Up to three channels per account; faces read the first one.
  • The YouTube Data API is all it uses: no YouTube Analytics (watch time, revenue, real-time views).

Want the price of Bitcoin next to the subscribers? See crypto and currency rates. Numbers YouTube doesn’t offer, like course sales or Patreon members, can come from your own script through the widget API.


Sources: the firmware (src/net/fetch.cpp), the ToyTool account and the server’s connector check; the pictures are firmware renders with sample numbers and a screenshot from a test account.

Faces from this guide