Systemless proximity and raise-to-wake compatibility fix for Redmi Note 14 Pro 5G / POCO X7 (malachite) running a RealmeUI/ColorOS port.
The malachite vendor image already contains:
/vendor/lib64/hw/sensors.elliptic.so/vendor/etc/elliptic_sensor.xml
However, sensors.elliptic.so is missing from /vendor/etc/sensors/hals.conf. Android consequently exports no type-8 proximity sensor and the framework reports mProximitySensor=null.
The KernelSU/Magisk module mounts a corrected HAL configuration before SensorService starts. This exposes the stock wake-up capable Elliptic Proximity sensor without modifying the vendor partition.
The Xiaomi sensor HAL exposes pickup as vendor type 33171036 (xiaomi pick up sensor), while the RealmeUI port expects a different Oplus/Android sensor path. No listener is registered when the screen turns off.
The LSPosed companion registers Xiaomi's wake-up pickup sensor together with Oplus' wake monitor and wakes the display only when:
- the Realme Raise-to-wake toggle is enabled;
- the display is not already interactive; and
- proximity is not near.
It uses the sensor hub's wake-up sensor and does not poll the accelerometer.
The companion also neutralizes porter branding on About Device:
- version label:
7.0 - update status:
Version up to date - high-contrast white text/shadow for the card background
These are secondary cosmetic changes; the project is primarily a sensor compatibility fix.
- Device: malachite
- RealmeUI/ColorOS port based on the tested Android 16 build
- KernelSU Next, KernelSU, Magisk, or APatch
- Zygisk-compatible LSPosed
- Download
Malachite-Sensor-Fix-v2.1.0.zipfrom Releases. - Install the ZIP from KernelSU/Magisk/APatch.
- The installer automatically installs the companion APK.
- Open LSPosed and enable Malachite Sensor Fix.
- Select only these scopes:
- Settings (
com.android.settings) - System UI (
com.android.systemui)
- Settings (
- Reboot once.
- Enable Raise to wake in Settings.
LSPosed intentionally does not allow third-party installers to silently enable a module. The one-time enable/scope step is required for a fresh installation. Updates retain the existing scope automatically.
adb shell dumpsys sensorservice | grep -A2 -i "Elliptic Proximity"
adb shell dumpsys display | grep -A3 -i "mProximitySensor="
adb shell dumpsys sensorservice | grep -A2 -i "pickup.*connections"Expected results include:
Elliptic Proximity | Elliptic Labs | type: android.sensor.proximity(8)
pickup Wakeup (handle=0x00000019, connections=1)
Android 16 intentionally aborts system_server if sensor handles change after SensorService has started. Therefore:
- the module configures the HAL only during
post-fs-data; - it never restarts Sensor HAL after Android finishes booting;
- uninstall takes effect on the next reboot.
Do not manually restart vendor.sensors-hal-multihal after boot.
- Disable Malachite Sensor Fix in LSPosed.
- Uninstall/disable the KernelSU or Magisk module.
- Reboot.
- Optionally uninstall the companion APK:
adb uninstall com.ridhzlabs.abouthookThe legacy package ID is retained so existing installations update in place without losing their LSPosed scope.
Malachite Sensor Fix adalah perbaikan systemless untuk proximity dan Raise-to-wake pada Redmi Note 14 Pro 5G / POCO X7 (malachite) yang memakai port RealmeUI/ColorOS.
- Library proximity Elliptic sebenarnya tersedia di vendor, tetapi tidak dimuat oleh
hals.conf. Akibatnya Android menganggap proximity tidak ada. - Sensor pickup Xiaomi memakai tipe vendor
33171036, sedangkan framework RealmeUI mencari jalur sensor yang berbeda. Akibatnya tidak ada listener saat layar mati.
- Flash ZIP melalui KernelSU/Magisk/APatch.
- APK companion dipasang otomatis.
- Buka LSPosed dan aktifkan Malachite Sensor Fix.
- Centang scope Settings dan System UI saja.
- Reboot sekali.
- Aktifkan Angkat untuk membangunkan di Settings.
Untuk instalasi pertama, enable dan scope LSPosed tetap harus dilakukan manual. Update berikutnya mempertahankan scope lama secara otomatis.
Nonaktifkan companion di LSPosed, uninstall module root, lalu reboot. Jangan restart Sensor HAL secara manual setelah Android selesai boot.
MIT. See LICENSE.