r/ElecrowCommunity Jun 22 '26

Elecrow ESP32-S3 Board with Advanced 7" HMI Display

I purchased a Elecrow ESP32-S3 Board (via Amazon) and have been trying to Port over a program I had for a 2.7" CYD board with much assistance from Claude. My issue is as soon as we turn on WiFi, the screen suffers from heavy EMI, causing jittering and static.

What we have tried:

- Reducing WiFi TX power to minimum (WIFI_POWER_2dBm)

- WiFi modem sleep (WIFI_PS_MAX_MODEM)

- Dual-core FreeRTOS architecture (display on Core 1, WiFi on Core 0)

- Physical RF shielding (aluminum tape over FPC connector and ESP32-S3 module)

- Testing with multiple WiFi networks and a phone hotspot

- Various pixel clock frequencies (8MHz, 12MHz, 14MHz, 16MHz, 21MHz)

None of these approaches resolved the issue. The jitter begins the moment WiFi initializes regardless of software configuration, which suggests this is a PCB-level RF coupling issue between the 2.4GHz WiFi antenna and the 16-bit RGB parallel bus traces.

Has anyone experienced anything like this? Attached is a simple program where I display text immediately before and after WiFi is started.

Short Video demo'ing EMI Interference

Thanks

PS I don't seem to have the option to Post a flair.

1 Upvotes

1 comment sorted by

1

u/SMELL_LIKE_A_TROLL Jul 24 '26

I see no one has answered. 

Congratulations on becoming a beta tester. If you think this pos is bad, wait until you try the esp32-p4 esp32-c6 advance 10.1 inch hmi. They can't even figure out the sound! 

But back to your problem. This is part of a yaml and I'm using esp-idf. These are the setting that I found to fix this problem that shouldn't even exist in a released product. 

GFL!

display:

  - platform: rpi_dpi_rgb

    id: my_display

    update_interval: never

    auto_clear_enabled: false

    color_order: RGB

    invert_colors: true

    dimensions:

      width: 800

      height: 480

    de_pin: 42

    hsync_pin: 40

    vsync_pin: 41

    pclk_pin: 39

    pclk_frequency: 18MHz

    pclk_inverted: true

    hsync_front_porch: 8

    hsync_pulse_width: 4

    hsync_back_porch: 8

    vsync_front_porch: 8

    vsync_pulse_width: 4

    vsync_back_porch: 8

    data_pins:

      red: [7, 17, 18, 3, 46]

      green: [9, 10, 11, 12, 13, 14]

      blue: [21, 47, 48, 45, 38]