Skip to main content

Settings

All settings live on the device in encrypted flash storage and survive reboots and updates. The dashboard's Settings page is their single home.

Playback

SettingDefaultMeaning
Volume50The startup volume, 0 to 100. Live volume changes (knob or slider) update it
Auto-resumeOffOn boot, automatically continue what was playing when the device shut down. Files resume at the saved position; a radio stream reconnects as soon as WiFi is up

Auto-resume

Safi always saves the playback position (every 30 seconds during playback and at every stop), so the manual Resume button on the Now Playing page always works. The auto-resume switch only controls whether the device does it by itself at boot, unattended. It ships off so an unexpected reboot never surprises a quiet room.

Time

SettingDefaultMeaning
TimezoneCairoThe timezone used for the clock and the scheduler. Pick from the dropdown of common zones, or choose Custom to type a POSIX rule directly
Time format12-hourWhether the clock reads 12-hour with AM/PM or 24-hour, on both the dashboard and the device screen
Use browser timeOne tap sets the device clock (and the RTC, when fitted) from your phone or computer, for installs with no internet at all

The timezone is a dropdown of common zones (Cairo, Mecca and Riyadh, Dubai, Istanbul, and so on, down to plain UTC). Choosing Custom reveals a text box where you can type a full POSIX rule, for example EET-2EEST,M4.5.5/0,M10.5.4/24 for Egypt. POSIX signs are inverted, so UTC-2 means two hours east of Greenwich; the device also repairs older naive entries like UTC+3 on its own. The Settings page shows the device's current local time and where it came from: Internet (SNTP), RTC clock, Set manually, or Not set. With a DS3231 module fitted, the clock survives power cuts and schedules work with no network.

The time format choice applies everywhere the time is shown, including the device's idle clock screen, which renders an AM/PM suffix in 12-hour mode and ticks over every minute.

The prayer panel on the same page holds the prayer location (latitude and longitude), the calculation method, the Asr school, per-prayer offsets, and the adhan behavior. Until a location is set the device has no prayer times: the dashboard next-prayer tile reads "not configured" and the idle screen shows a dim "اضبط الموقع من الإعدادات" hint in the next-prayer slot. Setting the location is enough; the hint disappears on its own.

Power

ActionMeaning
Sleep nowPuts the device into deep sleep immediately. It wakes when the knob is pressed, or, with the RTC fitted, by itself at the next enabled schedule

Display

SettingDefaultMeaning
Brightness128Backlight level, 0 to 255. The auto-dim behavior (30 s dim, 5 min off) scales from this level

NFC

SettingDefaultMeaning
Card removalContinueWhat happens when a card leaves the reader: Continue, Pause, or Stop. See NFC cards

Network

SettingMeaning
WiFi credentialsSet a new SSID and password. The device saves them and reconnects; a wrong password leaves it retrying, and the SoftAP provisioning fallback remains available after reboot

The WiFi fields start blank; the password is never pre-filled, and the settings API redacts credentials in every response.

Dashboard access

SettingMeaning
API tokenWhere you paste the device's bearer token so this browser may perform actions. Stored in the browser only, see the dashboard guide

System

The dashboard has no factory-reset button. To wipe all settings, favorites, schedules, stations, NFC cards, and saved WiFi, send POST /api/reset with the API token, or erase the device's nvs partition over serial (parttool.py -p PORT erase_partition --partition-name=nvs). Either way the next boot generates a fresh API token (printed on serial) and returns to first-boot behavior. Audio files on the SD card are untouched.

System information

The same page reports read-only device state: firmware version, uptime, free memory, battery voltage, and the RTC's die temperature when the module is fitted. Whether the clock is synchronized, and where the time came from, appear in the Time section above. The boot report listing any peripheral that failed to start is shown on the device's splash screen and returned by GET /api/system, though the Settings page itself does not render it.