### Install and Run Locally Source: https://github.com/strange-v/remotewebviewclient/blob/main/web_client/README.md Install dependencies and start the development server for the browser test client. ```bash npm install npm run dev ``` -------------------------------- ### ESPHome Configuration for Guition-ESP32-S3-4848S040 Source: https://github.com/strange-v/remotewebviewclient/blob/main/README.md This is a comprehensive ESPHome configuration for the Guition-ESP32-S3-4848S040 display. It includes settings for WiFi, SPI, I2C, display, touchscreen, backlight, and the remote_webview component itself. Ensure your WiFi credentials and server IP are correctly set. ```yaml esphome: name: esp32-4848s040-t1 friendly_name: ESP32-4848S040-T1 platformio_options: board_build.flash_mode: dio esp32: board: esp32-s3-devkitc-1 variant: esp32s3 flash_size: 16MB framework: type: esp-idf sdkconfig_options: COMPILER_OPTIMIZATION_SIZE: y CONFIG_ESP32S3_DEFAULT_CPU_FREQ_240: "y" CONFIG_ESP32S3_DATA_CACHE_64KB: "y" CONFIG_ESP32S3_DATA_CACHE_LINE_64B: "y" CONFIG_SPIRAM_FETCH_INSTRUCTIONS: y CONFIG_SPIRAM_RODATA: y components: - name: "espressif/esp_websocket_client" ref: 1.5.0 - name: "bitbank2/jpegdec" source: https://github.com/strange-v/jpegdec-esphome psram: mode: octal speed: 80MHz external_components: - source: github://strange-v/RemoteWebViewClient@main refresh: 0s components: [ remote_webview ] logger: hardware_uart: UART0 api: encryption: key: "XXXXXXXXX" ota: - platform: esphome password: "XXXXXXXXX" wifi: ssid: !secret wifi_ssid password: !secret wifi_password captive_portal: spi: clk_pin: GPIO48 mosi_pin: GPIO47 i2c: - id: bus_a sda: GPIO19 scl: GPIO45 display: - platform: st7701s show_test_card: False update_interval: never auto_clear_enabled: False spi_mode: MODE3 data_rate: 2MHz color_order: RGB invert_colors: False dimensions: width: 480 height: 480 cs_pin: 39 de_pin: 18 hsync_pin: 16 vsync_pin: 17 pclk_pin: 21 pclk_frequency: 12MHz pclk_inverted: False hsync_pulse_width: 8 hsync_front_porch: 10 hsync_back_porch: 20 vsync_pulse_width: 8 vsync_front_porch: 10 vsync_back_porch: 10 init_sequence: - 1 - [0xFF, 0x77, 0x01, 0x00, 0x00, 0x10] - [0xCD, 0x00] data_pins: red: - GPIO11 - GPIO12 - GPIO13 - GPIO14 - GPIO0 green: - GPIO8 - GPIO20 - GPIO3 - GPIO46 - GPIO9 - GPIO10 blue: - GPIO4 - GPIO5 - GPIO6 - GPIO7 - GPIO15 touchscreen: platform: gt911 transform: mirror_x: false mirror_y: false i2c_id: bus_a output: - platform: ledc pin: GPIO38 id: backlight_pwm light: - platform: monochromatic output: backlight_pwm name: "Display Backlight" id: back_light restore_mode: ALWAYS_ON remote_webview: id: rwv server: 172.16.0.252:8081 url: http://172.16.0.252:8123/dashboard-mobile/0 # set url: "self-test" to initiate the self-test full_frame_tile_count: 1 max_bytes_per_msg: 61440 jpeg_quality: 85 on_frame_update: - logger.log: "The display just received a frame update!" current_url_sensor: name: "Remote Display Current URL" text: - platform: template id: rwv_url name: "URL" optimistic: true restore_value: false mode: TEXT min_length: 1 set_action: - lambda: |- if (!id(rwv).open_url(std::string(x.c_str()))) { id(rwv).set_url(std::string(x.c_str())); ESP_LOGI("remote_webview", "URL queued (not connected): %s", x.c_str()); } ``` === COMPLETE CONTENT === This response contains all available snippets from this library. No additional content exists. Do not make further requests.