diff --git a/CHANGELOG.md b/CHANGELOG.md index e258815..bc80626 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -25,13 +25,13 @@ Initial public release of **Bananarchy Linux**, focused on complete hardware and ### Preloaded native keypad applications - **System and context menus (`dmenu`)**: resident menu daemon with instant (`< 2 ms`) wakeup, 10-line vertical layout, live T9 filtering, and built-in submenus and hardware toggles. -- **Global controls drawer (`xdrawer`)**: instant overlay toggled by pressing both softkeys together to adjust speaker volume, earpiece volume, ringtone volume, ringer mode, flashlight, sound/microphone mute, screen brightness, and keypad backlight. -- **Phone dialer (`xdialer`), call log (`xcalllog`), and call screen (`xcallscreen`)**: home-screen digit dialing with live T9 contact matching, interactive carrier USSD sessions (`*100#`, etc.), Dual-SIM `*#06#` IMEI inspection, call history filtering, and an in-call screen with speaker/earpiece switching, microphone mute, DTMF tones, and one-key WAV call recording (`~/Recordings/`). +- **Global controls drawer (`xdrawer`)**: instant overlay toggled by pressing both softkeys together to adjust speaker volume, earpiece volume, ringtone volume, ringer mode (`Ring+Vib` / `Vibrate` / `Silent` / `DND`), 3-level vibration intensity (`Light` / `Medium` / `Strong`), flashlight, sound/microphone mute, screen brightness, and keypad backlight. +- **Phone dialer (`xdialer`), call log (`xcalllog`), and call screen (`xcallscreen`)**: home-screen digit dialing with live T9 contact matching, interactive carrier USSD sessions (`*100#`, etc.), Dual-SIM `*#06#` IMEI inspection, call history filtering, and an in-call screen with speaker/earpiece switching, microphone mute, DTMF tones, and one-key normalized WAV call recording (`~/Recordings/rec_HHMMSS_.wav`). - **Contacts (`xcontacts`) and SMS manager (`xsms`)**: full phonebook editor with direct Qualcomm QMI UIM SIM card contact import and export across SIM 1 and SIM 2 (`EF_ADN`), paired with a threaded SMS conversation view and multi-tap message composer with draft support. - **Modem and Dual-SIM manager (`xmodem`)**: 4-tab cellular control center (`SIMs`, `Radio`, `AT`, `Log`) supporting physical SIM 1 / SIM 2 slot switching, SIM PIN unlock and PUK unblock wizards, PIN enable/disable/change, 2G/3G/4G radio mode selection, USSD requests, and a live AT command console. -- **Networks and Bluetooth manager (`xnetworks`)**: 3-tab connectivity manager for Wi-Fi scanning and WPA2 entry, Wi-Fi hotspot, cellular data and APN configuration, USB tethering, and Bluetooth pairing. -- **File manager (`xfiles`), music and tracker player (`xmusic`), and camera (`xcamera`)**: keypad directory browser with built-in text and image viewers (including one-click actions to preview images, set any image as wallpaper, play audio, or install any audio file as ringtone), a 3-tab music and chiptune tracker module player (`WAV`, `MP3`, `OGG`, `FLAC`, `Opus`, `MOD`, `XM`, `IT`, `S3M`, and more), and a live V4L2 camera viewfinder with digital zoom (`1x`/`2x`/`4x`), auto-flash, continuous torch, 3-second self-timer, and photo gallery. -- **Themes (`xthemes`), wallpapers (`xwallpapers`), and ringtones (`xringtones`)**: unified `.Xresources` theming engine (`~/.xthemes/*.xth`) with 20 preinstalled color schemes, live zero-restart reload across all apps and terminals, interactive color/font customization, wallpaper scaling and preview, and ringtone/vibration settings. +- **Networks and Bluetooth manager (`xnetworks`)**: 3-tab connectivity manager for Wi-Fi scanning and WPA2 entry, Wi-Fi hotspot, QMI `bam-dmux` (`wwan0`) 4G/LTE mobile data and APN configuration, USB tethering, and Bluetooth pairing. +- **File manager (`xfiles`), music and tracker player (`xmusic`), and camera (`xcamera`)**: keypad directory browser with built-in text and image viewers (including one-click actions to preview images, set any image as wallpaper, play audio, or install any audio or tracker file as ringtone), a 3-tab music and chiptune tracker module player (`WAV`, `MP3`, `OGG`, `FLAC`, `Opus`, `MOD`, `XM`, `IT`, `S3M`, and more), and a live V4L2 camera viewfinder with digital zoom (`1x`/`2x`/`4x`), auto-flash, continuous torch, 3-second self-timer, and photo gallery. +- **Themes (`xthemes`), wallpapers (`xwallpapers`), and ringtones (`xringtones`)**: unified `.Xresources` theming engine (`~/.xthemes/*.xth`) with 20 preinstalled color schemes, live zero-restart reload across all apps and terminals, interactive color/font customization, wallpaper scaling and preview, and low-latency incoming call ringtone (`pw-play` + `mpv` tracker module support) and 3-level vibration settings. ### Keypad input, terminal, games, and developer tools - **6-mode `fcitx5-t9` input method**: seamless `#` switching between `abc`, `Abc`, `ABC`, `Sym` (all 32 ASCII punctuation symbols), `Ctl` (`Ctrl` combos, arrows, `PageUp`/`PageDown`, `Home`/`End`, `F1`–`F12`), and `123` numeric modes, plus a `*` long-press `Ctrl+` latch. diff --git a/MANUAL.md b/MANUAL.md index ef93b64..f79fe89 100644 --- a/MANUAL.md +++ b/MANUAL.md @@ -129,7 +129,7 @@ All fifteen phone applications are compiled as shared-object plugins (`/usr/lib/ 2. **Global phone controls (`xdrawer.so` / `xdrawer`)**: - **Open / close**: press **both softkeys simultaneously** (`KEY_MENU` + `KEY_BACK`) from anywhere, or select **XDrawer** from the System menu. - - **Controls**: use `Up`/`Down` (or `1`–`9`) to select **Speaker**, **Earpiece**, **Ring Vol**, **Ringer** (`Ring+Vib` / `Vibrate` / `Silent` / `DND`), **Flashlight**, **Sound**, **Microphone**, **Screen**, or **Keypad**; use `Left`/`Right` or `Return` to adjust or toggle. + - **Controls**: use `Up`/`Down` (or `1`–`9`/`0`) to select **Speaker**, **Earpiece**, **Ring Vol**, **Ringer** (`Ring+Vib` / `Vibrate` / `Silent` / `DND`), **Vibration** (`Light` / `Medium` / `Strong` with instant tactile feedback), **Flashlight**, **Sound**, **Microphone**, **Screen**, or **Keypad**; use `Left`/`Right` or `Return` to adjust or toggle. 3. **Phone dialer (`dialer.so` / `xdialer`)**: - **Open**: press any **`0`–`9`, `*`, or `#` key** on the empty desktop, or open **Dialer** from the System menu or Call Log. @@ -147,8 +147,8 @@ All fifteen phone applications are compiled as shared-object plugins (`/usr/lib/ - **Incoming call actions**: press **Call (green)**, **Left softkey (`Accept`)**, **`1`**, or **Center `OK`** to answer; press **`*`** or **`0`** to silence the ringer; press **End (red)**, **Right softkey (`Reject`)**, or **`#`** to decline. - **In-call controls and recording**: - **`[1]` / `*` — microphone mute**: toggles hardware QDSP6 and PipeWire microphone mute (`ON` / `MUTED`). - - **`[2]` / `#` — call recording**: starts or stops recording call audio (`16 kHz` mono WAV) to `~/Recordings/call__YYYYMMDD_HHMMSS.wav` with a live `REC MM:SS` badge. - - **`[3]` — audio route**: switches between **`EARPIECE`** and **`SPEAKER`**. + - **`[2]` / `#` — call recording**: starts or stops recording call audio (`8 kHz` mono S16_LE WAV via `MultiMedia2` `hw:0,1` with automatic peak normalization) to `~/Recordings/rec_HHMMSS_.wav`, displaying a live `REC MM:SS` timer while recording and a persistent green `SAVED MM:SS` badge once saved. + - **`[3]` — audio route**: switches between **`EARPIECE`** (default for all calls) and **`SPEAKER`**. - **`Left` / `Right` — call volume**: adjusts in-call volume in `5%` steps. - **`[0]` / Left softkey (`DTMF`)**: toggles DTMF tone keypad mode. - **End (red)** or **Right softkey (`Hangup`)**: hangs up the call. @@ -191,12 +191,12 @@ All fifteen phone applications are compiled as shared-object plugins (`/usr/lib/ - **Open**: select **Networks** or **Bluetooth** from the System menu, or run `xnetworks` / `xbluetooth`. - **Three connectivity tabs (`Left`/`Right` or `1`–`3`)**: - **`1:Wi-Fi`**: toggle Wi-Fi radio, rescan (`*`), toggle **Wi-Fi Hotspot**, and connect to WPA2/open networks with a multi-tap password dialog (`*` toggles password visibility). - - **`2:Cell/APN`**: toggle **Mobile Data**, inspect `wwan0` IPv4 status, edit **APN Configuration**, and toggle **USB Tethering**. + - **`2:Cell/APN`**: toggle **Mobile Data** (configuring the QMI `bam-dmux` `wwan0` static IPv4 bearer, default route, and DNS automatically), inspect `wwan0` IPv4 status, edit **APN Configuration**, and toggle **USB Tethering**. - **`3:Bluetooth`**: toggle Bluetooth power, scan nearby devices (`*`), and pair, connect, disconnect, or remove devices. 13. **Ringtones and ringer manager (`ringtones.so` / `xringtones`)**: - **Open**: select **Ringtones** from the System, Config, or Audio menu, or run `xringtones`. - - **Controls**: preview built-in, tracker module (`.mod`, `.xm`, `.it`, `.s3m`, etc.), and user ringtones (`~/Ringtones/`, `~/Music/`, `/usr/share/sxmo/ringtones/`, `/usr/share/sxmo/music/`) at the configured ringtone volume with `*` or **Left softkey (`Play` / `Stop`)**, press `Return` to set the active ringtone, and switch to **`2:Settings`** to configure **Ringer Mode**, **Ring Volume** (`0%`–`100%`, also adjustable in **XDrawer**), **Ring Duration**, **Ring Loop Count**, and 3-level hardware **Vibrate Strength** (`Level 1` gentle `1400 mV`, `Level 2` medium `2100 mV`, `Level 3` strong `3100 mV`). + - **Controls**: preview built-in, tracker module (`.mod`, `.xm`, `.it`, `.s3m`, etc.), and user ringtones (`~/Ringtones/`, `~/Music/`, `/usr/share/sxmo/ringtones/`, `/usr/share/sxmo/music/`) at the configured ringtone volume with `*` or **Left softkey (`Play` / `Stop`)**, press `Return` to set the active ringtone, and switch to **`2:Settings`** to configure **Ringer Mode**, **Ring Volume** (`0%`–`100%`, also adjustable in **XDrawer**), **Ring Duration**, **Ring Loop Count**, and 3-level hardware **Vibrate Strength** (`Level 1 (Light)` pulsed `1600 mV`, `Level 2 (Medium)` pulsed `2100 mV`, `Level 3 (Strong)` continuous `3100 mV`, also adjustable in **XDrawer**). 14. **Desktop wallpaper manager (`wallpapers.so` / `xwallpapers` / `xbackground`)**: - **Open**: select **Wallpapers** from the System, Config, or Apps menu, or run `xwallpapers`. @@ -367,9 +367,9 @@ Both the rear loudspeaker (`Speaker`, with boosted `RX3 Digital Volume` for loud ``` - **Trigger PM8909 vibration motor (`duration_ms [strength_1_to_3]`)**: ```bash - sxmo_vibrate 350 1 # gentle (1400 mV) - sxmo_vibrate 350 2 # medium (2100 mV) - sxmo_vibrate 350 3 # strong (3100 mV) + sxmo_vibrate 350 1 # light (1600 mV, 38% duty cycle) + sxmo_vibrate 350 2 # medium (2100 mV, 67% duty cycle) + sxmo_vibrate 350 3 # strong (3100 mV, 100% continuous) ``` ### 5.4 Cellular modem, Dual-SIM, and QMI UIM helper diff --git a/README.md b/README.md index 399012f..475f84a 100644 --- a/README.md +++ b/README.md @@ -20,13 +20,13 @@ ### Keypad-first user experience and native DWM plugins Instead of spawning slow shell scripts for everyday phone tasks, Bananarchy runs a suite of preloaded C/C++ plugins inside DWM that sleep at 0% CPU and open in `< 2 ms`: - **System and context menus (`dmenu`)**: instant full-screen 10-line vertical menus with live T9 filtering, built-in submenus, and hardware toggles. -- **Global controls drawer (`xdrawer`)**: press **both softkeys together** from anywhere to adjust speaker, earpiece, and ringtone volume, ringer mode, flashlight, sound and microphone mute, screen brightness, and keypad backlight. -- **Phone dialer (`xdialer`), call log (`xcalllog`), and call screen (`xcallscreen`)**: press any digit on the home screen to start dialing with live T9 contact matching, run interactive carrier USSD codes (`*100#`, etc.), or type `*#06#` to inspect both IMEIs. Incoming and active calls open a dedicated call screen with earpiece/speaker switching, microphone mute, DTMF keypad, and one-key call recording (`~/Recordings/`). +- **Global controls drawer (`xdrawer`)**: press **both softkeys together** from anywhere to adjust speaker, earpiece, and ringtone volume, ringer mode (`Ring+Vib` / `Vibrate` / `Silent` / `DND`), 3-level vibration intensity (`Light` / `Medium` / `Strong`), flashlight, sound and microphone mute, screen brightness, and keypad backlight. +- **Phone dialer (`xdialer`), call log (`xcalllog`), and call screen (`xcallscreen`)**: press any digit on the home screen to start dialing with live T9 contact matching, run interactive carrier USSD codes (`*100#`, etc.), or type `*#06#` to inspect both IMEIs. Incoming and active calls open a dedicated call screen with earpiece/speaker switching, microphone mute, DTMF keypad, and one-key normalized WAV call recording (`~/Recordings/rec_HHMMSS_.wav`). - **Contacts (`xcontacts`) and SMS manager (`xsms`)**: full phonebook editor with direct Qualcomm QMI SIM card contact import and export across SIM 1 and SIM 2, paired with a threaded SMS conversation view and multi-tap message composer. - **Modem and Dual-SIM manager (`xmodem`)**: 4-tab cellular control center (`SIMs`, `Radio`, `AT`, `Log`) supporting physical SIM 1 / SIM 2 active slot switching, SIM PIN unlock and PUK unblock wizards, 2G/3G/4G radio mode selection, interactive USSD sessions, and a live AT command console. -- **Networks and Bluetooth manager (`xnetworks`)**: 3-tab connectivity manager for Wi-Fi networks, WPA2 password entry, Wi-Fi hotspot, USB tethering, mobile data and APN editing, and Bluetooth pairing. -- **File manager (`xfiles`), music and tracker player (`xmusic`), and camera (`xcamera`)**: keypad directory browser with built-in text and image viewers (plus one-click actions to play audio, preview images, set any image as wallpaper, or install any audio file as ringtone), a 3-tab music and chiptune tracker module player (`WAV`, `MP3`, `OGG`, `FLAC`, `Opus`, `MOD`, `XM`, `IT`, `S3M`, and more), and a live V4L2 camera viewfinder with digital zoom, flash/torch control, self-timer, and photo gallery. -- **Themes (`xthemes`), wallpapers (`xwallpapers`), and ringtones (`xringtones`)**: installable `.Xresources` color and font themes (`~/.xthemes/*.xth`, 20 preinstalled schemes) with live zero-restart reload across the entire UI and terminal, alongside dedicated managers for desktop wallpapers and call ringtones/vibration. +- **Networks and Bluetooth manager (`xnetworks`)**: 3-tab connectivity manager for Wi-Fi networks, WPA2 password entry, Wi-Fi hotspot, USB tethering, 4G/LTE mobile data (`wwan0`) and APN editing, and Bluetooth pairing. +- **File manager (`xfiles`), music and tracker player (`xmusic`), and camera (`xcamera`)**: keypad directory browser with built-in text and image viewers (plus one-click actions to play audio, preview images, set any image as wallpaper, or install any audio or tracker file as ringtone), a 3-tab music and chiptune tracker module player (`WAV`, `MP3`, `OGG`, `FLAC`, `Opus`, `MOD`, `XM`, `IT`, `S3M`, and more), and a live V4L2 camera viewfinder with digital zoom, flash/torch control, self-timer, and photo gallery. +- **Themes (`xthemes`), wallpapers (`xwallpapers`), and ringtones (`xringtones`)**: installable `.Xresources` color and font themes (`~/.xthemes/*.xth`, 20 preinstalled schemes) with live zero-restart reload across the entire UI and terminal, alongside dedicated managers for desktop wallpapers and call ringtones (supporting both standard audio and tracker modules) with 3-level vibration control. ### Input, terminal, and developer tools - **6-mode `fcitx5-t9` keypad input**: press `#` to cycle between `abc`, `Abc`, `ABC`, `Sym` (all 32 ASCII punctuation symbols), `Ctl` (`Ctrl` sequences, arrows, `PageUp`/`PageDown`, `F1`–`F12`), and `123` numeric modes with a fixed bottom candidate bar.