Skip to content

← Firmware Downloads

Post-install setup · Reborn (Y2Linux) · Y2

Last.fm scrobbling

Debian-based Linux with a fast clickwheel interface for the Innioasis Y2.

Instructions published by the project, shown here word for word.

Last.fm scrobbling

Since Y2Linux 1.0 Beta 7.7 the Reborn player can send the songs you listen to to your Last.fm profile ("scrobbling"), straight from the player: no computer, no phone app, no extra service. It also works without Wi-Fi: plays are kept on the player and sent later.

Set up

  1. Settings → Library → Last.fm → Connect with Your Phone. The player shows a QR code.
  2. Scan it with your phone's camera. Last.fm's own page opens and asks whether Y2Reborn may

    scrobble for you (log in there first if needed). Choose Allow.

  3. The player notices by itself within a few seconds: Scrobbling to Last.fm as ….

No phone at hand? Sign In with Password types your Last.fm username and password on the player's keyboard instead (see Your password for how it is handled).

Settings → Library → Last.fm then shows your account and:

SettingWhat it does
ScrobbleSend counted plays (on by default).
Show Now PlayingShow the song you are listening to on your profile while it plays (on by default). It is sent again when you continue after a pause or play the song again.
Send NowSend waiting plays at once; the line shows how many are waiting.
Also Write .scrobbler.logAlso keep a classic scrobbler log file (below); works without an account.
DisconnectSign out; forgets the sign-in and the plays still waiting.

What counts as a play

Reborn follows Last.fm's rules:

Offline and sending

The scrobbler log (.scrobbler.log)

With Also Write .scrobbler.log on, every counted play is also appended to .scrobbler.log at the top of Internal Storage, in the AUDIOSCROBBLER/1.1 format that Rockbox players use. Copy it to a computer over USB and upload it with any tool that reads that format (to Last.fm, Libre.fm or ListenBrainz). It needs no account. Delete or replace the file after uploading; the player starts a new one.

Your data and privacy

Security

Your password

With the QR code (recommended), the player never sees your password: you type it only into Last.fm's own page on your phone. With Sign In with Password, the password is sent once, over an encrypted connection, to Last.fm's sign-in service, and then forgotten: it is never saved, never written to a log, never shown on screen (the keyboard shows dots), and it never appears in the list of running programs.

Your sign-in on the player

Last.fm gives the player a session key for your account. It is stored in one file in the player's private data partition, readable only by the system:

The connection

Every request goes to Last.fm over HTTPS with certificate checking only; a connection that cannot be verified is refused, and requests are only made once the clock is trustworthy (which certificate checks depend on). Each request is signed the way Last.fm requires. The keys and your data travel in the body of the request, never on a command line other programs could read. Nothing from outside can make the player scrobble: only plays that happen on the player count.

The app's key

Every app that talks to Last.fm identifies itself with an API key and a shared secret that its developer registered. Y2Reborn's are not in the public source code; the maintainer's build puts them into the player's system as a file only the system can read.

To be honest about the limits: like every music app that scrobbles directly (phone apps, desktop players, browser extensions), the released system image necessarily contains this key, so a determined person could extract it from a downloaded update. With it they could send requests in the name "Y2Reborn". They would not get access to anyone's account, password, sign-in or player. If the key were ever misused, the maintainer resets it and the next update carries the new one (players then sign in again).

Limits

Normal listening makes about two requests per song (Now Playing and the scrobble), plus one Now Playing when you continue after a pause (at most every 30 seconds); a backlog is sent 50 plays per request; signing in asks Last.fm every 3 seconds for at most 15 minutes, only while the code is shown. That is far below what Last.fm allows, and every player has its own budget. Y2Linux is free, non-commercial software, as Last.fm's API terms require.

Troubleshooting

You seeMeaning
Last.fm Isn't AvailableThis build has no Last.fm key (for example your own build); the scrobbler log still works.
Connect to Wi-Fi firstSigning in needs Wi-Fi; plays are counted offline once you are signed in.
The clock isn't set yetRight after Wi-Fi connects the player may still be setting its clock (secure connections need the right date); try again in a moment.
N plays waitingThey go out when Wi-Fi is connected; Send Now tries at once.
Sign in to Last.fm againLast.fm ended the sign-in (for example you revoked it); waiting plays are kept for the same account.
The Last.fm sign-in timed outThe code was not approved within 15 minutes; start again.
A song did not countIt was shorter than 30 s, was heard less than half (and under 4 minutes), had no artist/title tag, or was internet radio.

For people who build Y2Linux themselves

A build only has Last.fm when it is given a key. Register your own API account at

https://www.last.fm/api/account/create (use your own application name), then put the key and secret into ~/.local/share/y2linux/lastfm-api.json as {"api_key": "…", "shared_secret": "…"} and run chmod 600 on it. The build checks the format and the permissions and installs it as /usr/share/reborn/lastfm-api.json (root, mode 0600). Never commit this file. Details: BUILDING; design and evidence: Last.fm plan and the Beta 7.7 and Beta 7.8 reports. The code is in Y2Reborn: crates/reborn-core/src/scrobble.rs (rules), crates/reborn-platform/src/scrobble.rs (queue and log), crates/reborn-platform/src/lastfm.rs (Last.fm API) and app/reborn/src/scrobbling.rs.

Published by the schulzcode/y2linux project [1] [3]