# BC-250 Console — Parent's Operations Manual A copy of this file lives on the console at `/usr/share/doc/bc250-console/OPERATIONS.md`. Accounts: **kid** (plays games, no admin) and **parent** (admin, sudo). Both ship with password `bc250console` — **change both immediately**: log in (or SSH) as each user and run `passwd`. Parent can also reset the kid's password any time: `sudo passwd kid`. ## Connecting remotely | | Command / client | Works when | |---|---|---| | SSH (terminal) | `ssh parent@` | Always (console is never asleep) | | Moonlight (see + control the screen) | [Moonlight](https://moonlight-stream.org) → console → **Desktop** | Only while the kid's session is logged in | One-time Moonlight pairing: browse to `https://:47990`, create the Sunshine admin login, then enter the PIN Moonlight shows you in Sunshine's PIN tab. Sunshine starts automatically with the kid's session. Moonlight client settings that work well for admin sessions (verified): **1080p, 30 fps, windowed, "Optimize mouse for remote desktop instead of games"** — the mouse option is essential for a normal desktop pointer. If the console's IP changes (e.g. after a reinstall), delete the PC in Moonlight and re-pair with the new address — a stale host entry streams the wrong thing or nothing. Best fix: DHCP reservation in the router, or connect via the Tailscale name instead of the LAN IP. > Why not RDP? GNOME Remote Desktop crashes the session on this GPU > (mutter 50.x cursor-metadata screencast segfault on cyan-skillfish). > `bc250-remote-setup` still configures it if you want to retry after a > future mutter update — but Moonlight is smoother anyway. ``: the LAN IP, or (recommended) the Tailscale name/IP so it works from anywhere. Never port-forward 22/3389 on the router. ## One-time setup after installing 1. On the console, log in as **kid**, open a terminal, run `bc250-remote-setup` (sets up RDP credentials + firewall; SSH is already on). 2. `sudo tailscale up` — log in with your Tailscale account (daemon already runs). 3. In Steam (opens automatically in Big Picture): log into the kid's Steam account, enable **Family View** (Settings → Family) and set the PIN. 4. Change both passwords (see above). ## Installing a game remotely RDP into the kid's session → unlock Family View with your PIN → Steam → Store → install. Downloads continue after you disconnect. ## Updates - **Automatic**: the console updates the OS image, flatpaks, and Steam on its own (`uupd` timer, runs in the background). Nothing to do. - **Force an update now** (SSH): `sudo bootc upgrade && flatpak update -y` - **What version am I on?**: `sudo bootc status` (shows image + digest) - **Publishing a new OS image** (on the build PC): see `BUILD-CONSOLE.md` → "Publish an update". The console picks it up automatically within a day, or immediately with `sudo bootc upgrade`. - **Roll back a bad update**: hold Space at boot and pick the previous entry, or over SSH: `sudo bootc rollback && sudo systemctl reboot`. ## Health checks (SSH) ```bash sensors # temps — watch under load systemctl status cyan-skillfish-governor-smu # GPU governor: should be active cat /sys/class/drm/card*/device/pp_dpm_sclk # GPU clock scaling df -h / # disk space ``` ## Renaming the kid's account (optional) With the kid fully logged out (`sudo loginctl terminate-user kid`): ```bash sudo usermod -l NEWNAME kid sudo groupmod -n NEWNAME kid sudo usermod -d /home/NEWNAME -m NEWNAME sudo chfn -f "Display Name" NEWNAME sudo passwd NEWNAME echo 'CONSOLE_KID_USER=NEWNAME' | sudo tee /etc/bc250-console.conf ``` Steam data and apps live in the home directory and move with it. The last line tells the Big Picture autostart which account is the console account. ## Tuning the GPU (optional, after thermal testing) The GPU governor's curve lives at `/etc/cyan-skillfish-governor-smu/config.toml`. Stock range is **1000–1850 MHz**, thermal throttle at 85 °C — a good default. If temps stay comfortably low during long sessions you can raise `max` under `[frequency-range]` (safe-points up to 2000 MHz are pre-defined; higher ones are in the file, commented out). Running hot or loud? Lower `max` to ~1500. After editing: `sudo systemctl restart cyan-skillfish-governor-smu`. There is also `cyan-skillfish-performance-mode` for temporarily pinning high clocks. Change one thing at a time and re-check `sensors`. ## Misc - Reboot: `sudo systemctl reboot` — Shutdown: `sudo systemctl poweroff` - The console never sleeps or locks by design (it must stay reachable). - Kid's session opens Steam Big Picture automatically; Esc exits to desktop. - RDP refuses to connect → the kid's session probably isn't logged in, or `bc250-remote-setup` hasn't been run yet. - Steam misbehaves after an update → try ProtonUp-Qt (installed) to switch the game to Proton-GE. - Minecraft: open Prism Launcher, add an account (Microsoft sign-in — a paid Minecraft: Java Edition license on that account), then create an instance for the version/modpack you want. Prism downloads its own Java. - GeForce NOW: use the "GeForce NOW" app (a Chromium web shortcut). The native GFN app cannot work on this GPU — it requires hardware video decode (error 0xC0F11312) that the BC-250 physically lacks. Streams decode on CPU: keep to 1080p. - **Fortnite: GeForce NOW is the only way** on this console (log into the Epic account there — same skins/friends). Installing it via Lutris/ Heroic/Wine will never work: Epic deliberately doesn't allow Fortnite's anti-cheat on Linux, and it also kicks home VMs. Not fixable; don't waste the download. Other Epic games mostly work fine via Heroic — check areweanticheatyet.com for any anti-cheat title. - Moonlight (installed): streams games from a home PC/server running Sunshine — pair it against the host's `https://:47990` panel. Best-quality "cloud" gaming in the house: LAN latency, no subscription.