Xiaomi Redmi 1S (xiaomi-armani)
This device is still running on armhf, although the processor supports armv7. If you own it, change it and test it that way. |
PostmarketOS running on Xiaomi Redmi 1S | |
Manufacturer | Xiaomi |
---|---|
Name | Redmi 1S |
Codename | xiaomi-armani |
Released | 2014 |
Type | handset |
Hardware | |
Chipset | Qualcomm Snapdragon 400 (MSM8226) |
CPU | Quad-core 1.6 GHz Cortex-A7 |
GPU | Adreno 305 |
Display | 720x1280 WLED |
Storage | 8GB eMMC, external micro-sd slot |
Memory | 1 GB |
Architecture | armv7 |
Software | |
Original software | Android |
Original version | 4.3 (MIUI 6.0) |
postmarketOS | |
Category | testing |
Pre-built images | no |
Flashing |
Works |
---|---|
USB Networking |
Works |
Internal storage | |
SD card | |
Battery | |
Screen |
Works |
Touchscreen |
Works |
Multimedia | |
3D Acceleration | |
Audio | |
Camera | |
Camera Flash | |
Connectivity | |
WiFi |
Works |
Bluetooth | |
GPS | |
NFC | |
Modem | |
Calls | |
SMS | |
Mobile data | |
Miscellaneous | |
FDE | |
USB OTG | |
HDMI/DP | |
Sensors | |
Accelerometer | |
Magnetometer | |
Ambient Light | |
Proximity | |
Hall Effect | |
Haptics | |
Barometer | |
Contributors
- alive4ever
What works
- USB ethernet
- Flashing, via android-recovery-zip (twrp) and pmbootstrap flasher
- Touchscreen (ft5x06_i2c)
- Screen: framebuffer (/dev/fb0), backlight & brigtness control (/sys/class/leds/wled:backlight/brightness)
- Notification leds (/sys/class/leds/red/brigtness, /sys/class/leds/green/brightness, /sys/class/leds/blue/brightness)
- Wifi: via wcnss-wlan and wlanarmani service (which does modprobe wlan on system boot after wcnss-wlan service has been initialized)
- Xwayland
- Battery: charging status (/sys/class/power_supply/battery/status), capacity reporting (/sys/class/power_supply/battery/capacity)
- Buttons: KEY_POWER, KEY_VOLUMEUP, and KEY_VOLUMEDOWN (triggerhappy can be used to handle them, see Troubleshooting:HID_buttons)
What does not work
- Screen: framebuffer console (no kernel boot log printed on the display), directfb applications (osk-sdl and charging-sdl)
- Wifi: rfkill (no support for blocking wireless via rfkill block wifi or nmcli radio wifi off). The only way to block wireless is unloading wlan module (``rmmod wlan`` or ``/etc/init.d/wlanarmani stop``)
- Sound: don't know how to initialize the sound card
- Other hardware features are untested (3D, bluetooth, modem, gps, accelerometer)
- Xorg based UI: postmarketos-ui-xfce4 displays nothing on the screen.
How to enter flash mode
- Entering fastboot: hold Volume Down + Power buttons until fastboot mode is displayed on the screen.
- Entering recovery: hold Volume Up + Power buttons. The default is Mi Recovery. TWRP is needed for installation, which can be obtained here
Installation
pmbootstrap flasher method
- Put the device into fastboot mode by holding both Volume Down + Power buttons or rebooting into bootloader from the twrp reboot menu.
- Connect the device to the computer via usb cable
- Bootstrap PostmarketOS
$ pmbootstrap init #select xiaomi-armani
$ pmbootstrap install
- Flash the kernel and system
$ pmbootstrap flasher flash_kernel
$ pmbootstrap flasher flash_rootfs
- Reboot the device
$ fastboot reboot
Android recovery.zip sideload method
- Put the device into TWRP recovery, either by booting twrp image via fastboot directly or by pressing Volume Up + Power button after flashing TWRP recovery image.
- Connect the device to the computer via usb cable
- Bootstrap PostmarketOS
$ pmbootstrap init #select xiaomi-armani
$ pmbootstrap install --android-recovery-zip
$ pmbootstrap export # generate symlinks inside /tmp/postmarketOS-export directory
- Put the twrp recovery into sideload mode
$ adb shell "twrp sideload"
- Start sideloading the recovery file
$ adb sideload /tmp/postmarketOS-export/pmos-xiaomi-armani.zip
- Reboot the device
$ adb reboot
Additional info
It's necessary to unplug the usb cable after issuing ``poweroff`` command to properly shut down PostmarketOS.
Don't leave screen on for a long time, otherwise there will be LED burn-in. If the display screen is not used, turn the screen off.
$ echo 0 | sudo tee "/sys/class/leds/wled:backlight/brightness"
The screen can be turned on with maximum value up to 4095
$ echo 3072 | sudo tee "/sys/class/leds/wled:backlight/brightness"
Battery state can be monitored. Refer to Battery capacity monitoring for more information.
Hardware enablement effort
- Framebuffer: directfb based applications don't work (osk-sdl and charging sdl)
- Sound: unable to initialize the sound card on PmOS
See also
- !1204 Initial pull request
- LineageOS wiki page
- Device package
- Kernel package