This guide is applicable only to Surface devices except for the Surface Pro 3.
Do you have a Surface device that you would like to run Bliss OS on? You're in luck, because Bliss OS was primarily developed and tested on a Surface Pro 3 back on Android Nougat (all those commits are in the generic builds now).
Most Surface devices with IPTS require a specific set of firmware for proper functioning. For all other Surface models, the user must upgrade their own firmware, because we can't build for all Surface models without having those devices to test with.
To start, here is the series classification for Surface devices:
- Series 5 devices:
- Surface Book 2
- Surface Pro 2017
- Series 4 devices:
- Surface Book
- Surface Pro 4
- Surface Laptop
- Series 3 devices:
- Surface Pro 3 [Note: BlissRom 11+ does not require this process on this device. Use a generic build (Intel celeron/.../i9) not the Surface builds]
For the ipts_firmware files (series 4/5 devices only), please select the correct version for your device:
v76for the Surface Book
v78for the Surface Pro 4
v79for the Surface Laptop
v101for Surface Book 2 15"
v102for the Surface Pro 2017
v137for the Surface Book 2 13"
For the i915_firmware files (series 3/4/5 devices), please select the correct version for your device:
kblfor series 5 devices
sklfor series 4 devices
bxtfor series 3 devices
All firmware files can be found here.
For Surface Go users, you will have to remove some files and replace them with @jakeday's firmware. Please see this thread on Reddit for detailed information.
Once you have the right firmware you need, you should copy it to a folder on your Bliss install (
SD_card_root/surface), making sure to put the right firmware in the right folders:
- i915 firmware:
- IPTS firmware:
ath10kfirmware (some models):
mrvlfirmware (some models):
mwlwififirmware (some models):
nvidiafirmware for Surface Book 2:
Next, open a terminal (we include one you can enable in "Developer Options"). In the terminal, enter the following commands, giving permission to the superuser popup dialog when prompted:
su mv -f SD_card_root/surface/* system/lib/firmware/
Then you can restart:
It should recognize and load the correct firmware versions for your device upon reboot if you did everything correctly.