Bob29
(Bruno)
February 28, 2024, 9:55am
1
Hello,
I would like to turn on/off the RGB round led of an ESP S3 N16R8 which can have the color red, green or blue, I use ESPHome.
With this code I can only turn the LED to white:
light:
- platform: esp32_rmt_led_strip
rgb_order: RBG
pin: GPIO48
num_leds: 3
rmt_channel: 2
chipset: ws2812
name: "My Light"
I also couldn’t find any information on the GPIO of the three small LEDs on the board, would you have any information on the subject please.
Bob29
Arh
February 28, 2024, 10:23am
2
What sort of LED is it? Is it really a WS2812 or just an rgb led? Does it have 3 or 4 legs?
nickrout
(Nick Rout)
February 28, 2024, 10:25am
3
Which board exactly? The esp s3 n16r8 is a chip. It has no LEDs.
What you have is a dev board which has components added. We need to know the dev board.
Also you may need to poke around with a meter to find the led connections.
Arh
February 28, 2024, 10:27am
4
My mistake its the onboard LED, so you are right just need to add
- light.turn_on:
id: led_ww
red: 100%
green: 0%
blue: 0%
brightness: 30%
But you may need to check it really is connected to pin 48. Some borads aren’t.
Bob29
(Bruno)
February 28, 2024, 10:42am
5
Roderik
(Roderik)
February 28, 2024, 10:46am
6
Funny, I’ve actualy been trying to do the exact same thing this morning, still haven’t figured it out though…
Here are some useful resources I have found (for my specific board).
My board
Based on this image from the add, the 3 small leds seem to be used to indicate if the board is powered and if there is data being transfered on the TX & RX lines respectively.
With regard to RGB LED on the board it seems to be this module (atleast that is the case for me, also if you scroll down on that website and “View More” on the product details part it has pretty detailed specifications).
Also (for my board) it seems it is connected to GPIO47 and NOT GPIO48, so make sure you check the exact specifications of your board.
My board:
I also found some github posts on the getting the led to work but haven’t figured out how to transfer their findings to esphome. (I can see if I can find them again if you’re interested).
I’m goning to keep playing with this to see if I can get it to work, I’ll let you know if I figure it out
1 Like
Roderik
(Roderik)
February 28, 2024, 11:05am
7
Based on the link you shared it seems like we have the same devkit. Unfortunately I cannot even seem to get the white light to turn ON on my board. Could you share your whole configuration?
(ofc do make sure to remove personal details like keys and passwords etc)
Are you using the esp-idf or arduino framework?
Are there any other components in your configuration besides “light:”?
Arh
February 28, 2024, 11:12am
8
light:
- platform: esp32_rmt_led_strip
id: led_ww
rgb_order: GRB
pin: GPIO48
num_leds: 1
rmt_channel: 0
chipset: ws2812
name: "on board light"
This code works for me which is pretty much the same as yours except for the number of LED’s and channel. I am not using that board though, but it is an S3. My board has the LED on pin 21.
The onboard LED is only one led even though it shows 3 colours.
I thought you wanted to turn it on as part of the code, for a set state, hence my previous posts.
Bob29
(Bruno)
February 28, 2024, 12:34pm
9
esp32:
board: esp32-s3-devkitc-1
framework:
type: arduino
I can say more informations this evening
Bob29
Arh
February 28, 2024, 3:26pm
10
I think I may have solved it, I have been playing with a new S3 board and the led would not work. Turns out you need to solder a pad to make it work.
There is an in-out pad as well to enable 5v out on the 5v pin.
2 Likes
Bob29
(Bruno)
February 29, 2024, 6:01pm
11
Hello,
It’s ok for the LED
on_boot:
- light.turn_on:
id: my_light
red: 100%
blue: 0%
green: 0%
brightness: 60%
effect: pulse
- delay: 6s
- light.turn_on:
id: my_light
red: 0%
blue: 100%
green: 0%
brightness: 60%
effect: pulse
- delay: 6s
- light.turn_on:
id: my_light
red: 0%
blue: 0%
green: 100%
brightness: 60%
effect: pulse
- delay: 6s
- light.turn_off:
id: my_light
light:
- platform: esp32_rmt_led_strip
id: my_light
rgb_order: GRB
pin: GPIO48
num_leds: 1
rmt_channel: 0
chipset: ws2812
name: "My Light"
effects:
- pulse:
transition_length: 550ms
update_interval: 550ms
Thank you
Bob29
2 Likes
Roderik
(Roderik)
March 1, 2024, 7:45am
12
Yup that was exactly the case on my board too. I originally thought that spot on the board was a resistor but looking closely its an unconnected pad (multimeter confirmed it). A good lesson to always double check hardware even if you think it is a software issue. (I think I spent 6 hours trying to get the stupid RGB led to turn on only to eventually discover it wasn’t connected .)
I even had some other ESP32-S3 boards lying around, those worked first try, should have tested on them much earlier. A good lesson to remember to take a step back every once in a while and evaluate the bigger picture.
Here are some pictures of my board and the unconnected pad incase someone else stumbled on this thread and wants to identify if they also have the same problem. This is what it looks like:
EDIT: also wanted to respond/add-on to this
I think there is also has a third one on the bottom of the board labeled USB-OTG (atleast on my board there is).
Arh
March 1, 2024, 7:52am
13
That looks like the same board as mine. Even googling for an answer was difficult as the answer was way down the list. Yet it seems a common thing.
1 Like
Thanks, saved me some time to figure it out myself
Winfrjd
(Winfrjd)
March 24, 2024, 12:22pm
15
Thanks for the excellent work, guys. I have the same development board and this saves me a lot of time. Also the 5V out option is good to know. With the older boards I had to solder a bypass over the onboard diode, this is more convenient
strzegus
(Strzegus)
April 24, 2024, 10:49am
16
I have exactly the nameplate and I don’t need to solder anything. but the RGB diode is soldered incorrectly and the colors are reversed. I have the same pin as you showed and I didn’t have to solder it
I need to use the ESP-IDF framework to make the module boot correctly but when I try to add the “esp32_rmt_led_strip” I get a compile error.
I posted an issue so maybe someone could help me figure why I get the compile error:
opened 07:51AM - 28 Apr 24 UTC
### The problem
compile error with ESP32-S3 using ESP-IDF with platform: esp32_… rmt_led_strip
configuration and log below.
### Which version of ESPHome has the issue?
2024.4.1
### What type of installation are you using?
Docker
### Which version of Home Assistant has the issue?
_No response_
### What platform are you using?
ESP32-IDF
### Board
ESP32-S3 dev
### Component causing the issue
esp32_rmt_led_strip
### Example YAML snippet
```yaml
esphome:
name: voyager
friendly_name: voyager
platformio_options:
board_build.flash_mode: dio
# board_build.arduino.memory_type: qio_opi
# board_upload.maximum_ram_size: 524288
esp32:
board: esp32-s3-devkitc-1
variant: esp32s3
flash_size: 16MB
framework:
# type: arduino
type: esp-idf
version: recommended
sdkconfig_options:
CONFIG_ESP32_S3_BOX_BOARD: "y"
psram:
mode: octal
speed: 80MHz
# Enable logging
logger:
level: DEBUG
light:
- platform: esp32_rmt_led_strip
name: LED_RGB
id: led
rgb_order: RGB
pin: GPIO48
num_leds: 1
rmt_channel: 0
chipset: WS2812
```
### Anything in the logs that might be useful for us?
```txt
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/voyager/src/esphome/components/api/api_connection.o:(.literal._ZN7esphome3api13APIConnection13light_commandERKNS0_19LightCommandRequestE+0x8): undefined reference to `esphome::light::LightState::make_call()'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/voyager/src/esphome/components/api/api_connection.o:(.literal._ZN7esphome3api13APIConnection13light_commandERKNS0_19LightCommandRequestE+0xc): undefined reference to `esphome::light::LightCall::set_state(bool)'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/voyager/src/esphome/components/api/api_connection.o:(.literal._ZN7esphome3api13APIConnection13light_commandERKNS0_19LightCommandRequestE+0x10): undefined reference to `esphome::light::LightCall::set_brightness(float)'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/voyager/src/esphome/components/api/api_connection.o:(.literal._ZN7esphome3api13APIConnection13light_commandERKNS0_19LightCommandRequestE+0x14): undefined reference to `esphome::light::LightCall::set_color_mode(esphome::light::ColorMode)'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/voyager/src/esphome/components/api/api_connection.o:(.literal._ZN7esphome3api13APIConnection13light_commandERKNS0_19LightCommandRequestE+0x18): undefined reference to `esphome::light::LightCall::set_color_brightness(float)'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/voyager/src/esphome/components/api/api_connection.o:(.literal._ZN7esphome3api13APIConnection13light_commandERKNS0_19LightCommandRequestE+0x1c): undefined reference to `esphome::light::LightCall::set_red(float)'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/voyager/src/esphome/components/api/api_connection.o:(.literal._ZN7esphome3api13APIConnection13light_commandERKNS0_19LightCommandRequestE+0x20): undefined reference to `esphome::light::LightCall::set_green(float)'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/voyager/src/esphome/components/api/api_connection.o:(.literal._ZN7esphome3api13APIConnection13light_commandERKNS0_19LightCommandRequestE+0x24): undefined reference to `esphome::light::LightCall::set_blue(float)'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/voyager/src/esphome/components/api/api_connection.o:(.literal._ZN7esphome3api13APIConnection13light_commandERKNS0_19LightCommandRequestE+0x28): undefined reference to `esphome::light::LightCall::set_white(float)'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/voyager/src/esphome/components/api/api_connection.o:(.literal._ZN7esphome3api13APIConnection13light_commandERKNS0_19LightCommandRequestE+0x2c): undefined reference to `esphome::light::LightCall::set_color_temperature(float)'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/voyager/src/esphome/components/api/api_connection.o:(.literal._ZN7esphome3api13APIConnection13light_commandERKNS0_19LightCommandRequestE+0x30): undefined reference to `esphome::light::LightCall::set_cold_white(float)'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/voyager/src/esphome/components/api/api_connection.o:(.literal._ZN7esphome3api13APIConnection13light_commandERKNS0_19LightCommandRequestE+0x34): undefined reference to `esphome::light::LightCall::set_warm_white(float)'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/voyager/src/esphome/components/api/api_connection.o:(.literal._ZN7esphome3api13APIConnection13light_commandERKNS0_19LightCommandRequestE+0x38): undefined reference to `esphome::light::LightCall::set_transition_length(unsigned int)'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/voyager/src/esphome/components/api/api_connection.o:(.literal._ZN7esphome3api13APIConnection13light_commandERKNS0_19LightCommandRequestE+0x3c): undefined reference to `esphome::light::LightCall::set_flash_length(unsigned int)'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/voyager/src/esphome/components/api/api_connection.o:(.literal._ZN7esphome3api13APIConnection13light_commandERKNS0_19LightCommandRequestE+0x40): undefined reference to `esphome::light::LightCall::set_effect(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/voyager/src/esphome/components/api/api_connection.o:(.literal._ZN7esphome3api13APIConnection13light_commandERKNS0_19LightCommandRequestE+0x44): undefined reference to `esphome::light::LightCall::perform()'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/voyager/src/esphome/components/api/api_connection.o:(.literal._ZN7esphome3api13APIConnection16send_light_stateEPNS_5light10LightStateE+0x8): undefined reference to `esphome::light::LightState::get_traits()'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/voyager/src/esphome/components/api/api_connection.o:(.literal._ZN7esphome3api13APIConnection16send_light_stateEPNS_5light10LightStateE+0x10): undefined reference to `esphome::light::LightState::supports_effects()'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/voyager/src/esphome/components/api/api_connection.o:(.literal._ZN7esphome3api13APIConnection16send_light_stateEPNS_5light10LightStateE+0x14): undefined reference to `esphome::light::LightState::get_effect_name[abi:cxx11]()'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/voyager/src/esphome/components/api/api_connection.o:(.literal._ZN7esphome3api13APIConnection15send_light_infoEPNS_5light10LightStateE+0x14): undefined reference to `esphome::light::LightState::get_effects() const'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/voyager/src/esphome/components/api/api_connection.o: in function `esphome::api::APIConnection::light_command(esphome::api::LightCommandRequest const&)':
/config/.esphome/build/voyager/src/esphome/components/api/api_connection.cpp:423: undefined reference to `esphome::light::LightState::make_call()'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: /config/.esphome/build/voyager/src/esphome/components/api/api_connection.cpp:425: undefined reference to `esphome::light::LightCall::set_state(bool)'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: /config/.esphome/build/voyager/src/esphome/components/api/api_connection.cpp:427: undefined reference to `esphome::light::LightCall::set_brightness(float)'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: /config/.esphome/build/voyager/src/esphome/components/api/api_connection.cpp:429: undefined reference to `esphome::light::LightCall::set_color_mode(esphome::light::ColorMode)'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: /config/.esphome/build/voyager/src/esphome/components/api/api_connection.cpp:431: undefined reference to `esphome::light::LightCall::set_color_brightness(float)'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: /config/.esphome/build/voyager/src/esphome/components/api/api_connection.cpp:433: undefined reference to `esphome::light::LightCall::set_red(float)'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: /config/.esphome/build/voyager/src/esphome/components/api/api_connection.cpp:434: undefined reference to `esphome::light::LightCall::set_green(float)'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: /config/.esphome/build/voyager/src/esphome/components/api/api_connection.cpp:435: undefined reference to `esphome::light::LightCall::set_blue(float)'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: /config/.esphome/build/voyager/src/esphome/components/api/api_connection.cpp:438: undefined reference to `esphome::light::LightCall::set_white(float)'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: /config/.esphome/build/voyager/src/esphome/components/api/api_connection.cpp:440: undefined reference to `esphome::light::LightCall::set_color_temperature(float)'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: /config/.esphome/build/voyager/src/esphome/components/api/api_connection.cpp:442: undefined reference to `esphome::light::LightCall::set_cold_white(float)'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: /config/.esphome/build/voyager/src/esphome/components/api/api_connection.cpp:444: undefined reference to `esphome::light::LightCall::set_warm_white(float)'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: /config/.esphome/build/voyager/src/esphome/components/api/api_connection.cpp:446: undefined reference to `esphome::light::LightCall::set_transition_length(unsigned int)'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: /config/.esphome/build/voyager/src/esphome/components/api/api_connection.cpp:448: undefined reference to `esphome::light::LightCall::set_flash_length(unsigned int)'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: /config/.esphome/build/voyager/src/esphome/components/api/api_connection.cpp:450: undefined reference to `esphome::light::LightCall::set_effect(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: /config/.esphome/build/voyager/src/esphome/components/api/api_connection.cpp:451: undefined reference to `esphome::light::LightCall::perform()'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/voyager/src/esphome/components/api/api_connection.o: in function `esphome::api::APIConnection::send_light_state(esphome::light::LightState*)':
/config/.esphome/build/voyager/src/esphome/components/api/api_connection.cpp:362: undefined reference to `esphome::light::LightState::get_traits()'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: /config/.esphome/build/voyager/src/esphome/components/api/api_connection.cpp:376: undefined reference to `esphome::light::LightState::supports_effects()'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: /config/.esphome/build/voyager/src/esphome/components/api/api_connection.cpp:379: undefined reference to `esphome::light::LightState::get_effect_name[abi:cxx11]()'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/voyager/src/esphome/components/api/api_connection.o: in function `esphome::api::APIConnection::send_light_info(esphome::light::LightState*)':
/config/.esphome/build/voyager/src/esphome/components/api/api_connection.cpp:384: undefined reference to `esphome::light::LightState::get_traits()'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: /config/.esphome/build/voyager/src/esphome/components/api/api_connection.cpp:404: undefined reference to `esphome::light::LightState::supports_effects()'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: /config/.esphome/build/voyager/src/esphome/components/api/api_connection.cpp:411: undefined reference to `esphome::light::LightState::get_effects() const'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/voyager/src/esphome/components/mqtt/mqtt_light.o:(.literal._ZNSt17_Function_handlerIFvRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN18ArduinoJson6185_719ObjectRefEEZN7esphome4mqtt22MQTTJSONLightComponent5setupEvEUlS7_S9_E_E9_M_invokeERKSt9_Any_dataS7_OS9_+0x0): undefined reference to `esphome::light::LightJSONSchema::parse_json(esphome::light::LightState&, esphome::light::LightCall&, ArduinoJson6185_71::ObjectRef)'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/voyager/src/esphome/components/mqtt/mqtt_light.o:(.literal._ZNSt17_Function_handlerIFvN18ArduinoJson6185_719ObjectRefEEZN7esphome4mqtt22MQTTJSONLightComponent14publish_state_EvEUlS1_E_E9_M_invokeERKSt9_Any_dataOS1_+0x0): undefined reference to `esphome::light::LightJSONSchema::dump_json(esphome::light::LightState&, ArduinoJson6185_71::ObjectRef)'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/voyager/src/esphome/components/mqtt/mqtt_light.o:(.literal._ZN7esphome4mqtt22MQTTJSONLightComponent5setupEv+0x14): undefined reference to `esphome::light::LightState::add_new_remote_values_callback(std::function<void ()>&&)'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/voyager/src/esphome/components/mqtt/mqtt_light.o: in function `std::_Function_handler<void (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, ArduinoJson6185_71::ObjectRef), esphome::mqtt::MQTTJSONLightComponent::setup()::{lambda(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, ArduinoJson6185_71::ObjectRef)#1}>::_M_invoke(std::_Any_data const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, ArduinoJson6185_71::ObjectRef&&)':
/config/.esphome/build/voyager/src/esphome/components/mqtt/mqtt_light.cpp:23: undefined reference to `esphome::light::LightState::make_call()'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/voyager/src/esphome/components/mqtt/mqtt_light.o: in function `operator()':
/config/.esphome/build/voyager/src/esphome/components/mqtt/mqtt_light.cpp:24: undefined reference to `esphome::light::LightJSONSchema::parse_json(esphome::light::LightState&, esphome::light::LightCall&, ArduinoJson6185_71::ObjectRef)'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: /config/.esphome/build/voyager/src/esphome/components/mqtt/mqtt_light.cpp:25: undefined reference to `esphome::light::LightCall::perform()'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/voyager/src/esphome/components/mqtt/mqtt_light.o: in function `std::_Function_handler<void (ArduinoJson6185_71::ObjectRef), esphome::mqtt::MQTTJSONLightComponent::publish_state_()::{lambda(ArduinoJson6185_71::ObjectRef)#1}>::_M_invoke(std::_Any_data const&, ArduinoJson6185_71::ObjectRef&&)':
/config/.esphome/build/voyager/src/esphome/components/mqtt/mqtt_light.cpp:36: undefined reference to `esphome::light::LightJSONSchema::dump_json(esphome::light::LightState&, ArduinoJson6185_71::ObjectRef)'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/voyager/src/esphome/components/mqtt/mqtt_light.o: in function `esphome::mqtt::MQTTJSONLightComponent::setup()':
/config/.esphome/build/voyager/src/esphome/components/mqtt/mqtt_light.cpp:29: undefined reference to `esphome::light::LightState::add_new_remote_values_callback(std::function<void ()>&&)'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/voyager/src/esphome/components/mqtt/mqtt_light.o: in function `bool ArduinoJson6185_71::VariantRef::set<char const>(char const*) const':
/config/.esphome/build/voyager/.piolibdeps/voyager/ArduinoJson/src/ArduinoJson/Variant/VariantRef.hpp:98: undefined reference to `esphome::light::LightState::get_traits()'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/voyager/src/esphome/components/mqtt/mqtt_light.o: in function `bool ArduinoJson6185_71::ArrayShortcuts<ArduinoJson6185_71::ArrayRef>::add<char const>(char const*) const':
/config/.esphome/build/voyager/.piolibdeps/voyager/ArduinoJson/src/ArduinoJson/Array/ArrayShortcuts.hpp:41: undefined reference to `esphome::light::LightState::supports_effects()'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/voyager/src/esphome/components/mqtt/mqtt_light.o: in function `ArduinoJson6185_71::Converter<bool, void>::toJson(bool, ArduinoJson6185_71::VariantRef)':
/config/.esphome/build/voyager/.piolibdeps/voyager/ArduinoJson/src/ArduinoJson/Variant/ConverterImpl.hpp:81: undefined reference to `esphome::light::LightState::get_effects() const'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/voyager/src/esphome/core/controller.o: in function `esphome::Controller::setup_controller(bool)':
/config/.esphome/build/voyager/src/esphome/core/controller.cpp:23: undefined reference to `esphome::light::LightState::add_new_remote_values_callback(std::function<void ()>&&)'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/voyager/src/main.o:(.literal._Z5setupv+0xac): undefined reference to `vtable for esphome::esp32_rmt_led_strip::ESP32RMTLEDStripLightOutput'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/voyager/src/main.o:(.literal._Z5setupv+0xb0): undefined reference to `vtable for esphome::esp32_rmt_led_strip::ESP32RMTLEDStripLightOutput'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/voyager/src/main.o:(.literal._Z5setupv+0x104): undefined reference to `esphome::light::LightState::LightState(esphome::light::LightOutput*)'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/voyager/src/main.o:(.literal._Z5setupv+0x10c): undefined reference to `esphome::light::LightState::set_restore_mode(esphome::light::LightRestoreMode)'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/voyager/src/main.o:(.literal._Z5setupv+0x110): undefined reference to `esphome::light::LightState::set_default_transition_length(unsigned int)'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/voyager/src/main.o:(.literal._Z5setupv+0x114): undefined reference to `esphome::light::LightState::set_flash_transition_length(unsigned int)'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/voyager/src/main.o:(.literal._Z5setupv+0x118): undefined reference to `esphome::light::LightState::set_gamma_correct(float)'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/voyager/src/main.o:(.literal._Z5setupv+0x11c): undefined reference to `esphome::light::LightState::add_effects(std::vector<esphome::light::LightEffect*, std::allocator<esphome::light::LightEffect*> > const&)'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/voyager/src/main.o:(.literal._Z5setupv+0x120): undefined reference to `esphome::esp32_rmt_led_strip::ESP32RMTLEDStripLightOutput::set_led_params(unsigned int, unsigned int, unsigned int, unsigned int)'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/voyager/src/main.o: in function `setup()':
/config/.esphome/build/voyager/src/main.cpp:196: undefined reference to `esphome::light::LightState::LightState(esphome::light::LightOutput*)'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: /config/.esphome/build/voyager/src/main.cpp:225: undefined reference to `esphome::light::LightState::set_restore_mode(esphome::light::LightRestoreMode)'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: /config/.esphome/build/voyager/src/main.cpp:225: undefined reference to `esphome::light::LightState::set_default_transition_length(unsigned int)'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/voyager/src/main.o: in function `esphome::Component::Component()':
/config/.esphome/build/voyager/src/esphome/core/component.h:68: undefined reference to `esphome::light::LightState::set_flash_transition_length(unsigned int)'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/voyager/src/main.o: in function `esphome::psram::PsramComponent* esphome::Application::register_component<esphome::psram::PsramComponent>(esphome::psram::PsramComponent*)':
/config/.esphome/build/voyager/src/esphome/core/application.h:163: undefined reference to `esphome::light::LightState::set_gamma_correct(float)'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/voyager/src/main.o: in function `esphome::Color::Color(unsigned char, unsigned char, unsigned char, unsigned char)':
/config/.esphome/build/voyager/src/esphome/core/color.h:40: undefined reference to `esphome::light::LightState::add_effects(std::vector<esphome::light::LightEffect*, std::allocator<esphome::light::LightEffect*> > const&)'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/voyager/src/main.o: in function `setup()':
/config/.esphome/build/voyager/src/main.cpp:247: undefined reference to `esphome::esp32_rmt_led_strip::ESP32RMTLEDStripLightOutput::set_led_params(unsigned int, unsigned int, unsigned int, unsigned int)'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/voyager/src/main.o:(.rodata._ZTVN7esphome5light21AddressableLightStateE[vtable for esphome::light::AddressableLightState]+0xc): undefined reference to `esphome::light::LightState::setup()'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/voyager/src/main.o:(.rodata._ZTVN7esphome5light21AddressableLightStateE[vtable for esphome::light::AddressableLightState]+0x10): undefined reference to `esphome::light::LightState::dump_config()'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/voyager/src/main.o:(.rodata._ZTVN7esphome5light21AddressableLightStateE[vtable for esphome::light::AddressableLightState]+0x14): undefined reference to `esphome::light::LightState::loop()'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/voyager/src/main.o:(.rodata._ZTVN7esphome5light21AddressableLightStateE[vtable for esphome::light::AddressableLightState]+0x18): undefined reference to `esphome::light::LightState::get_setup_priority() const'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/voyager/src/main.o:(.rodata._ZTVN7esphome5light21AddressableLightStateE[vtable for esphome::light::AddressableLightState]+0x24): undefined reference to `non-virtual thunk to esphome::light::LightState::setup()'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/voyager/src/main.o:(.rodata._ZTVN7esphome5light21AddressableLightStateE[vtable for esphome::light::AddressableLightState]+0x28): undefined reference to `non-virtual thunk to esphome::light::LightState::loop()'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/voyager/src/main.o:(.rodata._ZTVN7esphome5light21AddressableLightStateE[vtable for esphome::light::AddressableLightState]+0x2c): undefined reference to `non-virtual thunk to esphome::light::LightState::dump_config()'
/config/.esphome/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/voyager/src/main.o:(.rodata._ZTVN7esphome5light21AddressableLightStateE[vtable for esphome::light::AddressableLightState]+0x30): undefined reference to `non-virtual thunk to esphome::light::LightState::get_setup_priority() const'
collect2: error: ld returned 1 exit status
*** [.pioenvs/voyager/firmware.elf] Error 1
```
### Additional information
_No response_
danielholm
(Daniel Holm )
July 7, 2024, 10:02pm
18
Hi and thanks for the help. I got one of these boards, and the first one I just flashed with ESPHome as soon as I got it. When I later tried to get the RGB LED to work I was sure that it was working while flashing. Tried the solder and that worked great later on, though. I got my second board recently and before flash, it does indeed cycle between colors while no solder has been done. So is it really necessary since the LED should indeed work anyway?
Edit: While the first board was using GPIO47 together with soldering the RGB pads on the board, my second board works with pin 48 without soldering.
Thanks for mentioning solder. Aliexpress had this user comment which was correct for my second board (a clone from aliexpress) . My first directly from espressif had no issues. Looks like the manufacturer designed the board with a solderable patch so you could have an additional GPIO48 if you did not want to use it for the multicolor LED . Looking the board over it seems to have other solder bridgeable patches e.g. one labelled IN-OUT another labelled USB-OTG … no idea what those are for. The oriinal board also has such structures but they are unlabelled.
I bought 3 of these boards. I downloaded the the RGBBlink example from the ESP32 Arduino example and could only get the RGB LED to work on one of the boards. After close inspection between the the two bad boards and the good board, I noticed that by the RGB LED, there was an "RGB" pcb pad that was "open". I very easily put a small amount of solder to connect the "RGB" pcb pad and all started working. Other than that, all appears to be working well.
pepe59
(Pepe59)
July 31, 2024, 9:22pm
20
IN-OUT after connection will be 5V on pin 5Vin