Skip to content

Latest commit

 

History

History
114 lines (77 loc) · 8.42 KB

README.nl.md

File metadata and controls

114 lines (77 loc) · 8.42 KB

BC-250 Tweaks voor Bazzite

🌐 EN · FR · DE · ES · IT · PT · NL · PL · RU

Gaming-optimalisaties voor de ASRock BC-250 (AMD Ryzen Embedded V2000 / Cyan Skillfish GPU) onder Bazzite Linux.

Bazzite is het primaire, volledig geteste doel. Het script detecteert daarnaast automatisch je besturingssysteem en bootloader (pakketbeheerder en kernel-args-methode — rpm-ostree, GRUB, Limine, systemd-boot of rEFInd), en draait dus best-effort op de andere voor de BC-250 gedocumenteerde systemen (SteamOS/HoloISO, CachyOS/Arch, Fedora, Debian…). Ondersteuning buiten Bazzite wordt gevalideerd via meldingen uit de community — open een issue als er iets misgaat op jouw distro.

Handmatige vervanging voor de image-patcher van vietsman, die niet meer wordt onderhouden voor Bazzite 43+.


Snelle installatie (nieuw systeem)

curl -sL https://raw.githubusercontent.com/Necrosiak/bc250-tweaks/main/bootstrap.sh | sudo bash

Deze ene opdracht installeert alles voor een verse BC-250: de systeemtweaks plus DeckyLoader en onze plugins (BC250-Toolkit, SkullKey, Steamcord). Voer daarna op elk moment bc250-status uit voor een statusoverzicht (temps, ventilator, VRAM/UMA, RAM, actieve tweaks, Proton-GE, plugins).

Het script kloont deze repo naar /opt/bc250-tweaks en installeert een systemd-service die bij elke boot automatisch bijwerkt (git pull + apply).


Toegepaste tweaks

# Tweak Bestand Beschrijving
1 Tuned/PPD /etc/tuned/ppd.conf balanced-bazzite in rust → throughput-performance-bazzite in spel
2 Gaming-omgevingsvariabelen ~/.config/environment.d/gaming.conf RADV_DEBUG=nohiz, RADV_PERFTEST, FSR, Anti-lag, 10 GB shader-cache
3 DRI unified heap /etc/drirc GPU gebruikt systeem-RAM-pool — voorkomt VRAM OOM bij grote APU-games
4 Pipewire-latentie ~/.config/pipewire/pipewire.conf.d/ quantum=512, rate=48000
5 Sysctl gaming /etc/sysctl.d/99-bc250-gaming.conf compaction=0, numa_balancing=0, tcp_fastopen
6 Kernel-argumenten auto (rpm-ostree / grubby / GRUB / Limine / systemd-boot / rEFInd) amdgpu.ppfeaturemask=0xffffffff, amdgpu.gttsize=8000, split_lock_detect=off, transparent_hugepage=madvise
7 Gamemode /usr/local/bin/ Daemon + libs handmatig geïnstalleerd (ontbreekt in Bazzite-basisimage)
8 PPD-schakelaar /usr/local/bin/gamemode-{start,end}.sh Schakelt PPD performance↔balanced via busctl bij spelstart
9 HHD /etc/hhd/state.yml balanced-profiel in rust
10 scx_lavd /etc/scx_loader/config.toml Latency-gerichte scheduler, geladen door bc250-scx-start — schakelt zichzelf uit als de vorige start vastliep (zie hieronder)
11 MangoHud ~/.config/MangoHud/MangoHud.conf Licht overlay, toggle Shift+F12
12 vkBasalt CAS ~/.config/vkBasalt.conf Adaptief verscherpen, toggle Home
13 Proton-GE ~/.steam/steam/compatibilitytools.d/ Nieuwste GE-Proton geïnstalleerd
14 umr sudoers /etc/sudoers.d/bc250-umr NOPASSWD sudo-regel voor umr (vereist door CU-tabblad van BC250-Toolkit plugin)
15 CU boot sudoers /etc/sudoers.d/bc250-cu-boot NOPASSWD sudo-regels voor CU-boot-persistentie (tee, chmod, systemctl)
16 UMA-helper /usr/local/bin/bc250-uma-helper Root-helper (NOPASSWD via /etc/sudoers.d/bc250-uma) om de BIOS-EFI-variabele UMA Frame Buffer te lezen/schrijven — gebruikt door de sectie VRAM (UMA) van de BC250-Toolkit-plugin
17 Invoer-uaccess /etc/udev/rules.d/70-bc250-input-uaccess.rules Geeft de gebruiker van de actieve sessie leestoegang tot toetsenbord-/muisnodes (Bazzite tagt alleen joysticks) — nodig om een fysieke toets te koppelen terwijl een game de focus heeft, bijv. Steamcord push-to-talk. ⚠️ Elk proces van die gebruiker kan dan alle toetsaanslagen lezen; verwijder het bestand om terug te draaien
18 Core boot sudoers /etc/sudoers.d/bc250-core-boot NOPASSWD-sudoregels waarmee de Toolkit de 8C/16T-bootservice kan installeren (tee, chmod, systemctl enable/disable)

De scheduler schakelt zichzelf uit wanneer hij vastloopt

scx_lavd levert latency-gerichte scheduling, maar op dit bord gooit de kernel hem er soms uit: sched_ext: BPF scheduler "lavd_…" disabled (runnable task stall), met een taak die 35 tot 45 seconden niet heeft gedraaid. De hele interface bevriest — op datzelfde moment lopen systemd-services in een timeout, het is dus het systeem dat blokkeert en niet alleen het beeld — waarna scx_loader herlaadt en de cyclus opnieuw begint.

Gemeten op de referentie-BC-250 (6C/12T, kernel 7.2.1-ogc2, scx-scheds 1.1.3-3) op 30-08-2026: het gebeurt met --autopower én met --performance. De energiemodus wisselen lost niets op. Tot de waargenomen slachtoffers behoort winedevice.exe, dus het kan ook tijdens een game toeslaan, niet alleen op het bureaublad.

De bootservice gokt daarom niet naar versies, hij observeert. bc250-scx-start telt de evictions van de vorige start en schakelt zichzelf vanaf twee uit, zodat de kernelscheduler (EEVDF) blijft staan in plaats van herhaalde freezes op te leggen. Opnieuw proberen: sudo rm /var/lib/bc250-scx/disabled en herstarten. ./status.sh toont een regel ↳ blocages scx zodra de huidige start er heeft gezien.

--performance blijft in gebruik, om een andere reden: een op netstroom werkend mining-bord zonder accu heeft geen energieprofiel nodig, en al helemaal geen core-compactie.

Aanbevolen Steam-startoptie

MANGOHUD=1 MANGOHUD_CONFIG=no_display ENABLE_VKBASALT=1 gamemoderun %command%

Auto-update

De bc250-tweaks.service draait bij elke boot:

  1. Controleert het netwerk
  2. git pull vanuit dit repo
  3. Voert apply.sh opnieuw uit (idempotent — raakt alleen gewijzigde bestanden aan)
# Logs bekijken
journalctl -u bc250-tweaks -f
tail -f /var/log/bc250-tweaks.log

# Update nu forceren
sudo /opt/bc250-tweaks/update.sh

BC-250 Hardware-opmerkingen

  • GPU: Cyan Skillfish, device ID 731F, vendor 1002
  • Sommige games herkennen deze GPU niet → DXVK-spoof: DXVK_CONFIG="dxgi.customDeviceId=731F dxgi.customVendorId=1002"
  • TDP: ryzenadj en adjustor niet ondersteund op V2000 (Fam17h model 71)
  • Te vermijden kernels: 6.15.0–6.15.6 en 6.17.8–6.17.10 (defect GPU-stuurprogramma)
  • ReBAR/SAM: de Resizable BAR-capaciteit is aanwezig maar is op de BC-250 beperkt tot 1 GB (vaak op 256 MB gelaten) — te klein voor grote DX12-titels. Gebruik in plaats daarvan de BIOS-UMA Frame Buffer.
  • UE5 DX12 "out of video memory": sommige Unreal Engine 5-spellen in DX12 crashen bij het initialiseren van de render terwijl er nog VRAM vrij is. De globale unified heap (tweak #3) helpt DXVK/Vulkan-spellen maar verbergt het toegewijde VRAM voor VKD3D (DX12). Fix: zet de BIOS-UMA Frame Buffer op Auto (~8 GB op een 16 GB-bord) en schakel de unified heap per spel uit — de BC250 Toolkit doet dit automatisch via zijn ue5_dx12_oom-preset.

Zie ook


🐧 Compatibiliteit

We werken er actief aan dat deze tweaks draaien op elk besturingssysteem dat voor de BC-250 gedocumenteerd is (community-docs) — Bazzite, SteamOS, CachyOS/Arch, Fedora… Doel: automatische OS-detectie zodat apply.sh de juiste methode (kernelargumenten, pakketten, services) voor jouw distributie gebruikt.

AI-vermelding

Bij het maken van dit project is AI (Claude van Anthropic en Codex van OpenAI) gebruikt — voor reverse engineering, ontwikkeling en documentatie. Niet voor beeld of creatief schrijven. Alles wat wordt gepubliceerd is door een mens nagekeken, en het resultaat blijft mijn verantwoordelijkheid. Als je daar moeite mee hebt, weet je het nu.

Steun de ontwikkeling

Als dit project nuttig voor je is, kun je de verdere ontwikkeling steunen via Ko-fi.

Steun mij op Ko-fi