Skip to content
Patrick Stigler

Support: ScrobbleDock

Help with ScrobbleDock. Replies usually within two business days, in English or German.

Direct contact

Send an email with the app version, your macOS version and a short description. For bugs, a step-by-step description helps most.

kontakt@stigler-ai.com

Response time: usually two business days

System requirements

  • macOS 14.0 or later
  • Languages: English, German, French, Spanish, Italian, Portuguese, Dutch, Japanese
  • Version 1.0

How the import works

Setting up Rockbox

  1. On the player, once: open Plugins > Applications > lastfm_scrobbler and confirm playback logging. That is the same as Settings > Playback Settings > Logging.
  2. Before each transfer, open the same plugin and choose Export. That is what creates /.scrobbler.log — the file ScrobbleDock reads.
  3. Set the clock on the player under Settings > General Settings > Time and Date. Rockbox has no time zone. If a device still writes #TZ/UTC, leave it. With #TZ/UNKNOWN (the normal case, including on the iPod 4G) ScrobbleDock asks once which zone the clock shows and converts timestamps before submitting.
  4. Gather Runtime Data is not needed. That database setting only records play counts inside Rockbox and has nothing to do with scrobbling.

On older builds (3.15 and earlier) Rockbox wrote .scrobbler.log directly; there is no export step.

If ScrobbleDock finds only /.rockbox/playback.log and no .scrobbler.log, it tells you to export rather than reading the file itself. playback.log contains file paths only — no artist, title or MusicBrainz IDs.

Which files are read

As soon as a removable volume appears, ScrobbleDock looks for .scrobbler.log and scrobbler.log — in the root directory and under .rockbox/. Nothing is written to the player unless you have enabled archiving or deleting the log.

How device and firmware are detected

The app reads rockbox-info.txt for the Rockbox version, the CLIENT header of the log for the player type, and on iPods also iPod_Control to identify the model. If none of these are present, the device keeps its volume name.

How duplicates are prevented

For every device ScrobbleDock remembers the timestamp of the last transferred track and only submits what comes after it. That watermark advances after every successfully transferred batch — if an import is interrupted, at most the current batch is affected, and it is sent again on the next attempt.

How tracks are submitted

Listens go to api.listenbrainz.org as POST /1/submit-listens, in batches rather than one by one. If a batch fails, the app retries it with exponentially increasing delays instead of hammering ListenBrainz with repeats.

Why tracks are skipped

Many Rockbox players have no real-time clock. After a battery swap or a reset they write timestamps before 2002 or in the future. ListenBrainz rejects those entries. ScrobbleDock detects them up front, leaves them out and lists them in the result instead of dropping them silently.

Timestamps and time zones

Rockbox hard-codes #TZ/UNKNOWN: the number in the log is the displayed clock, stored as if it were UTC. ScrobbleDock asks once per device which zone that clock shows and converts before submitting. The correction applies from the next import. Listens already on ListenBrainz keep their old time — submitting them again would create duplicates, because listened_at is part of the key. Individual listens can be deleted on listenbrainz.org.

What happens to the log afterwards

Configurable per device: leave it in place, back it up to the archive folder on the Mac and remove it from the player, or delete it. Optionally ScrobbleDock then ejects the player — with a 15 second countdown you can cancel.

Frequently asked questions

Which devices are supported?
Any player running Rockbox firmware that mounts on the Mac as a removable volume — for example iPod Video, iPod Classic, Sansa Clip or iRiver. ScrobbleDock only reads the log file Rockbox writes itself.
Do I need a ListenBrainz account?
Yes. ListenBrainz is free and run by the non-profit MetaBrainz Foundation. On first launch you paste the user token from your ListenBrainz settings; the username is detected automatically.
Where is my token stored?
In the macOS keychain, not in the preferences. It leaves the Mac only as an Authorization header to api.listenbrainz.org.
Can listens end up duplicated on ListenBrainz?
No. ScrobbleDock remembers the timestamp of the last transferred track per device and only submits what comes after it.
Why are some tracks skipped?
Many Rockbox players have no real-time clock and write timestamps before 2002 or in the future. ListenBrainz rejects those, so ScrobbleDock reports them in the result instead of dropping them silently.
Does the app record what I play on the Mac?
No. ScrobbleDock only reads what ListenBrainz already reports as playing and uploads log files from connected players. It does not listen in on the Mac.
Does it work without an internet connection?
The import needs a connection to ListenBrainz. Ratings made offline are queued and submitted automatically once you are back online.
Is ScrobbleDock an official ListenBrainz app?
No. ScrobbleDock is an independent, unofficial client and is not affiliated with the MetaBrainz Foundation.
I only see playback.log, not .scrobbler.log
On current Rockbox builds, logging writes to /.rockbox/playback.log. Open Plugins > Applications > lastfm_scrobbler and choose Export. That creates /.scrobbler.log, the file ScrobbleDock reads.
Do I need to enable Gather Runtime Data?
No. Gather Runtime Data only affects the Rockbox database (play counts and star ratings on the player). Scrobbling needs lastfm_scrobbler plus Export.
Tracks I already uploaded have the wrong time
Rockbox does not store a time zone. ScrobbleDock converts from the next import once you confirm the zone for that device. Listens already on ListenBrainz stay as they are, because submitting them again would create duplicates. You can delete individual listens on listenbrainz.org.

Privacy

What the app stores and sends is described in the privacy policy for this app.

License terms

This app is covered by the standard Apple Media Services licence (Licensed Application End User License Agreement).

View the licence agreement

← ScrobbleDock

ScrobbleDock is an independent, unofficial client. It is not affiliated with, endorsed by, or sponsored by the MetaBrainz Foundation, which runs ListenBrainz. Rockbox is a project of the Rockbox community.