README.md (2861 bytes)
1 # Ink Dim 2 3 Sets the frontlight below the lowest level of the system. 4 5 Tap the icon. The light goes to the lowest level the hardware still lights. 6 Tap it again. The light goes back to the level the system holds. 7 8 The app has no screen. The icon is the whole app. 9 10 Made for the Viwoods AiPaper readers. 11 12 ## Screenshots 13 14 To be added. 15 16 ## Why the app needs Shizuku 17 18 The system will not set the frontlight below its own floor. Ask for less 19 through any official route and the light snaps to zero. So the app writes the 20 light of the panel straight, at 21 `/sys/class/leds/lcd-backlight/brightness`. 22 23 That file belongs to the user `system`. An app cannot write it, and a plain 24 shell user cannot write it either. The AiPaper Reader that this was made on has 25 a userdebug build, where the shell user may run `su 0`. On a reader with 26 another build, the app says that it could not set the light. So the app asks Shizuku for a shell, and the 27 shell writes the file through `su 0`. 28 29 Shizuku is a separate free app. You start it from the device through wireless 30 debugging. There is no computer and no root. 31 32 Long press the icon and open **Settings** for the steps, with a button for each 33 one. 34 35 ## Install 36 37 Download the APK from the Releases page and install it. 38 39 Then long press the icon, open **Settings**, and follow the steps. 40 41 ## Use 42 43 - Tap the icon. The light goes down. 44 - Tap the icon again. The light goes back to the system level. 45 - Long press the icon for **Settings**. 46 47 The value holds across sleep. It holds until the system brightness is next set. 48 49 ## Quick settings tile 50 51 The tile is called **Extra dim**. Add it to the quick settings panel, then tap 52 it. The tile does the same as the icon, and it shows the state. 53 54 ## Start it from somewhere else 55 56 Three intent actions: 57 58 dev.equwal.inkdim.TOGGLE 59 dev.equwal.inkdim.ON 60 dev.equwal.inkdim.OFF 61 62 Example with adb: 63 64 adb shell am start -a dev.equwal.inkdim.TOGGLE 65 66 ## Put it on a hardware button 67 68 [Rebind](https://github.com/equwal/rebind) remaps the buttons of an e-ink 69 reader or any Android device. It can put this toggle on a hardware button: bind 70 the button to the action `dev.equwal.inkdim.TOGGLE`. Rebind is from the same 71 maker. 72 73 More extensions: [Awesome Rebind](https://github.com/equwal/awesome-rebind). 74 75 ## Say thanks 76 77 Ink Dim is free and open source. If it made your device better, you can 78 [buy me a coffee](https://ko-fi.com/truex). 79 80 ## Build 81 82 You need JDK 17 or later and the Android SDK, with platform 36. 83 84 ./gradlew testReleaseUnitTest assembleRelease 85 86 The APK is in `app/build/outputs/apk/release/`. 87 88 Release signing is optional. Put a `keystore.properties` file in the root of 89 the project with `storeFile`, `storePassword`, `keyAlias` and `keyPassword`. 90 Without that file the build makes an unsigned APK. 91 92 ## Licence 93 94 GPL-3.0-or-later. See [LICENSE](LICENSE). 95 96 Copyright (c) 2026 equwal.