Is this board incompatible with ESPHome?
I am trying to connect 6 push buttons to GPIO pins. Its seems like this board is wired differently.
Has anyone got this board working. I am about to give up on this but where I live my options for
battery powered boards are limited.
What are you using as your board:
definition?
It does not look like platformio has been updated to include the Firebeetle 2 ESP32-E and there are pin mapping differences compared to the ESP32.
Whatever the board definition, a GPIO is a GPIO.
I donāt think GPIOās get renumbered across boards, do they?
So I donāt get what the OP means by āwired differentlyāā¦
Code and wiring welcome, ofc
Contrast and compare:
FB 2 ESP32E (GPIO # in orange).
FB ESP32 (GPIO # in teal).
e.g check which GPIO corresponds to Analog channel A1. bad example. I canāt see any differences yet. Still looking.
Oh, Ofc
I personally never use the āsymbolicā name, that I cannot memorize
But this will work whatever the āflavourā of the ESP,
i2c:
sda: GPIO021 # SDA
scl: GPIO022 # SCL
scan: True
Right. Thinking it twice myself, SDA will be 21 and SCL 22 on all ESP32 boards.
The likely difference will be where those pins are physically located on the board.
You will have differences between an ESP8266 and ESP32, otohā¦
esp32:
board: firebeetle32
framework:
type: arduino
Ok I have tested GPIO12 with Touch Component and that worked. I cannot get any push buttons to work. I need to select 6 x GPIO to work with a push button. Which of the pin will be save to use?
Yeah. The the fireball 32 2 ESP32E does not have the same pin mapping. See above.
That example will. Now try to find GPIO5 to GPIO11 on both boards
Yeah, but thatās the board topology, so to speak.
I have ESP32 boards with 30 and 38 pins, and that one is 32
First time I see one with 2 3.3V, that one has no boot button, so GPI0 is exposed, and so on and so forthā¦
The more builtin functionalities, the less exposed GPIOs, because they are already used by the board.
Yeah I guess as long as you are looking at the pinout for your actual board it maps 1:1 for GPIO# for the other board definition.
The esp32-wroom-32e is documented here https://www.espressif.com/sites/default/files/documentation/esp32-c3_datasheet_en.pdf
Thatās the C3 series. The E series datasheet is here https://www.espressif.com/sites/default/files/documentation/esp32-wroom-32e_esp32-wroom-32ue_datasheet_en.pdf
Either way it doesnāt help that pin schema has not been added to platformio yet.
Sorry I got lost in their website.
Iāve had varying success with Firebeetle 32-E
It is really good for low power ie. battery applications.
I tested it once in an ESPHome setup, just for a simple switch and it did work.
Issues Iāve had:-
(These were not in the ESPHome environment).
One project was moved from a ācheapā ESP module, that was tested and working, but needed battery operation.
The Firebeetle just kept re-booting after the project download.
It was using 10 x DS18B20 sensors and modbus over bluetooth for an āHMIā screen.
I decided to simplify the program (reduce its size) by removing most of the floating point stuff and replacing it with ints.
That then worked ok.
Donāt use GPIO12. According to some Expressif docs, that is a bootstrap pin.
I kept getting āboot:0xb (HSPI_FLASH_BOOT) flash read err, 1000ā when downloading one program.
I changed the defined GPIO pin to something other than 12 and it worked ok.
Stick to GPIO numbering, not D1,D2 etc.
Iāve had numerous issues trying to us D idents.
For your project, maybe add the pins one at a time and check it works each time.
Bit of a pain, but it may provide a solution.
If you need very low quiescent current, donāt forget to snip the track for the RGB led.
That can get the standby current down from ~0.5mA to ~10uA in sleep mode.
I think this is good advice for any esphome project!
Thanks everyone! Got it working.
I stuck to the GPIO numbering. D numbering is not supported on this one with ESPHome
I followed this doc: FireBeetle_Board_ESP32_E_SKU_DFR0654-DFRobot
and this doc ESP32 Pinout Reference: Which GPIO pins should you use? | Random Nerd Tutorials
I added one by one. A pain but works.
I ended up with 8 push buttons and maybe 10 is possible
If I need more buttons I am going to add an I2C I/O expander
Conclusion is the FireBeetle 2 ESP32-E - DFR0654 works fine with esp32dev platform, but for future projects I am going to be using the Wemos Lolin D32 for battery operated devices.
The next thing is to get it to go in deep sleep and then wake up by button press
Feel free to add your reviews of your favourite esp32 low power boards to this thread.
Iām trying to build up more consolidated info for the community.
Itās a bit confusing and overwhelming when you do your first low power projects.
Cheers.
Can you share your ESPHome yaml setup file?
I would also be very interested to see your YAML file, trying to get this board working myself.
Whatās the current situation for this? I ended up with a Firebeetle 2 ESP32-E 1.0 (DFR0654-F), which Iād like to use for ESPHome.
Iāve had problems even connecting it to USB on my MacBook Pro M1. I was only able to see it with esptool.py and Arduino IDE after I installed the CH341 Mac drivers. (That download and installation did not make me feel completely comfortable and inspire confidence.) My earlier ESP32 Firebeetles (DFR0478 and DFR0868) worked out of the box on my Macs with no serial/USB drivers required.
Iām not sure what settings to use in the YAML for this DFR0654-F board. Anyone have a working example?
Iāve used the Firebeetle (DFR0478) almost exclusively in my other ESPHome devices, and it has worked very well for me.
Thanks!
Maybe it will be helpful, built in LED works (havenāt tested all ).
GPIO0 - D3
GPIO2 - D9
GPIO4 - D2
GPIO5 - D1
GPIO12 - D6
GPIO13 - D7
GPIO14 - D5
GPIO15 - D8
GPIO16 - D4
GPIO17 - D10
GPIO18 - D11
GPIO19 - D12
GPIO21 - D13
GPIO22 - D14
GPIO23 - D15
GPIO25 - A0
GPIO26 - A1
GPIO27 - A2
GPIO32 - A3
GPIO33 - A4
GPIO34 - A5
GPIO35 - A6
GPIO36 - A7