[!CAUTION] All content in this repository is provided "as is" and may render your device unusable. Always exercise caution when working with your device. No warranty or guarantee is provided.
Shelly Elevate is an app designed for the Shelly Wall Display, codenamed Stargate, that hosts a NanoHTTPD REST server as a background service upon booting. It automatically launches Chrome with Home Assistant, if available. The README provides a detailed tutorial on hacking your device, installing a launcher, setting up Chrome, configuring Shelly Elevate, and integrating it with Home Assistant.
Video: https://github.com/user-attachments/assets/d6095593-97f1-4036-b6d5-d9b3466c385f
There are two different methods to jailbreak your wall display, and you'll need to choose one:
To interact with the UART2USB adapter, download a software like PuTTY.
Obtain the Anroid plattform tools for necessary interactions with your device.
From the release tab, download the latest versions of the ShellyElevate APK, Chrome APK, and the ultra-small launcher APK.
su
to get root access.
settings put global development_settings_enabled 1
settings put global adb_enabled 1
setprop persist.adb.tcp.port 5555
setprop service.adb.tcp.port 5555
stop adbd
start adbd
ifconfig
.
./adb connect <your ip>:5555
./adb root
./adb shell pm disable cloud.shelly.stargate
./adb install ultra-small-launcher.apk
./adb install Chrome.apk
./adb install -g ShellyElevate.apk
./adb shell reboot
./adb shell input keyevent 3
switch:
- platform: rest
name: Relay Shelly Walldisplay
resource: http://<your ip>:8080/relay
body_on: "true"
body_off: "false"
is_on_template: "{{ value_json.state }}"
headers:
Content-Type: application/json
scan_interval: 10
sensor:
platform: rest
name: Temperature Shelly Walldisplay
resource: http://
platform: rest
name: Humidity Shelly Walldisplay
resource: http://
### Using the Wall Display as a Thermostat
To use the Wall Display as a thermostat, add the following code to your configuration.yaml file. You can also replace the target heater with another entity if needed.
climate:
platform: generic_thermostat name: Thermostat Shelly Wall Display heater: switch.relay_shelly_walldisplay target_sensor: sensor.temperature_shelly_walldisplay