esp32 BOOT piny a ich následné použitie

www
Odpovědět
Uživatelský avatar
tiimsvk
Dárce - Donátor
Dárce - Donátor
Příspěvky: 801
Registrován: 06. květen 2021, 07:03
Dal poděkování: 72 poděkování
Dostal poděkování: 65 poděkování

esp32 BOOT piny a ich následné použitie

Příspěvek od tiimsvk »

Ahojte celkom si neviem dať rady s tzv strapping pins alebo pinmi, ktoré pri botovaní majú hodnotu high alebo low.
Potreboval by som pri esp32 pin GPIO05 použiť na pwm ovladanie led ale nakoľko tento pin je na začiatku high tak to nefunguje.

zapojenie pwm NPN mofset Gate s 100ohm resistorom do GPIO a 10k stiahnutý do GND.

Je nejaká uzitočná súčiastka, alebo schéma zapojenia, ktorá pri botovaní esp32 udržala niekoľko milisekund piny vysoko alebo nízko a následne po rozbehnutí už by pin fungoval podľa nastavenia a pripojenia v esp. Bolo by to fajn keď už nezostal žiaden pin, ktorý nemá pri botovaní žiadne obmedzenie.


Ďakujem.

kiklhorn
Moderátor
Moderátor
Příspěvky: 901
Registrován: 03. červenec 2021, 18:35
Dal poděkování: 107 poděkování
Dostal poděkování: 210 poděkování

Re: esp32 BOOT piny a ich následné použitie

Příspěvek od kiklhorn »

tiimsvk píše: 02. březen 2023, 09:01 pri botovaní esp32 udržala niekoľko milisekund piny vysoko alebo nízko a následne po rozbehnutí už by pin fungoval podľa nastavenia a pripojenia v esp.
Třeba MAX810STRG (nebo jiný supervizor) napájený z EN a GND ESP32 (hodí zpoždění oproti resetu 160ms+)
a jeho výstup na povolované linky (OE) u SN74AHC1G125 (nebo třeba čtyřnásobný SN74AHC125D) vřazený mezi GPIO5 a 100R na gate

Ale jestli sem hodíš celé zapojení tak možná půjde vymyslet jen nějaké výměna GPIO za jiné.
Vše co si přinesu domů je buď Shelly, nebo to skončí buď pod ESPhome nebo pod Zigbee2mqtt.
Ajťák co pamatuje BBS a OS/2 Warp a je mu jedno o jaký systém nebo síťařinu běží.
HA OS jako jedna z Proxmox VM na Odroid H3+/64GB https://github.com/tteck/Proxmox

Uživatelský avatar
tiimsvk
Dárce - Donátor
Dárce - Donátor
Příspěvky: 801
Registrován: 06. květen 2021, 07:03
Dal poděkování: 72 poděkování
Dostal poděkování: 65 poděkování

Re: esp32 BOOT piny a ich následné použitie

Příspěvek od tiimsvk »

ďakujem za info .. skusim to zrnúť o č sa vlastne pokúšam a čo sa už podarilo:

Vytváram multifunkčný bluetooth gateway s ďalšimi funkciami:
- pohybové čidlo
- svetelné čidlo
- 2x relay pre ovladanie TV boxu televizora a iných zariadení
- Led pásiku pod televiznou skrinkou 1 kanál warm white pwm
- Led pás osvetlenie v obyvacej izbe RGBW
- Ir transmitter a reciever pre ovladanie klimatizacie a TV

Toto všetko by som chcel natlačiť do jedneho ESP s pripojením do Lan.

Problémy žiaden voľný pin, s RGBW led som tovyriešil s prehodenim na iný pin:
Piny:

Kód: Vybrat vše

STATUS LED
status_led: GPIO02

ETHERNET
LAN8720 Eth Board:
  lan_mdc_pin: GPIO23
  lan_mdio_pin: GPIO18
  lan_clk_pin: GPIO0_IN # add pull up 4.7kΩ
  # TX1:   GPIO22
  # TX0:   GPIO19
  # TX_EN: GPIO21
  # RX1:   GPIO26
  # RX0:   GPIO25
  # CRS:   GPIO27

  # lan_power_pin: NOT CONNECTED

IR
  ir_transmitter_pin: GPIO32
  ir_receiver_pin: GPIO35
 
RELAY
  relay1_pin: GPIO17
  relay2_pin: GPIO16

RGBW
  green_pin: GPIO13
  red_pin: GPIO12
  blue_pin: GPIO01
  white_pin: GPIO33
 
WHITE
  ww_pin: GPIO04

PIR
  pir_pin: GPIO34

LDR
  ldr_pin: GPIO36 #VP
 
BUTTON
  button1_pin: GPIO03 #RX
  button2_pin: GPIO39 #VN

I2C
  i2c_sda: GPIO14
  i2c_scl: GPIO15
V preklade sú použité všetky použiteľné.

Problém, ktorý som opisoval vyššie som vyriešil pomocou prehodenia pinu, problém, ktorý som ale neopisoval a súvidí je nasledovný:

Mám pripojený modul pre lan internet LAN8720, ktorý má trochu problém s použitými pinmi, ktoré slúžia na ovládanie tohto modulu ale zároveň sú pouzžité pri botovaní preto som upravil tento modul jedným odporom 4.7k, ktorý stahuje nahor GPIO0 čim som vyriešil jeden problém, druhý je ale ten, že by mal byť pripojený ešte pomocou jedného pinu "POWER PIN", ktorý umožní nabotovať esp a následne povolí spustenie thto modulu,
Nakoľko ale nemám už žiaden voľný pin urobil som to pomocou oneskorenia: viď schému a video odkial som čerpal:
https://www.youtube.com/watch?v=bdZ9r2Ok0LE
Clipboard05.jpg
čo realne funguje ale iba pri výpadku el. prúdu, ak sa modul resetuje tak kondenzátor, ktorý urobí oneskorenie je stále nabitý a modul nabehne hneď

ďalej som pozeral ešte link na ha fore https://community.home-assistant.io/t/e ... p/316270/5 kde diskutuju o tomto module a možno by bolo dobré vyskúšať prehodenie pinov:

z GPIO0_IN na GPIO17_OUT

Potom by iba zostávalo, čo pripnúť na GPIO0 namiesto GPIO17, alebo použiť iné oneskorenie buď VCC alebo GND pinu na module LAN8720
Ešte pripájam aj yaml:

Kód: Vybrat vše

#-------------------------------------------
# SUBTITUTIONS
# basic definitions and description of the device
#-------------------------------------------
substitutions:
  device_name: gateway
  friendly_name: ESP-Gateway
  created_by: StudioTiiM 2021-2023
  device_description: "Bluetooth Gateway on home device whit control RGBW, WW light,  elecetricty monitoring, IR in out, Relay USB, PIR and LDR"

#-------------------------------------------
# DEFINE PINS AND VARIABILES
# CIRCUIT AND MODULES - basic definitions and description of the device
#-------------------------------------------

 # ----- MCU -----
  # Module: ESP32_Devkitc_V4 Espressif ESP32-WROOM-32U
   # Circuit: VCC -> 10k pullup -> GPIO0 
  
 # ----- LEDS -----
  # Modul: Status led
   # Specification: 1x red smd led on LAN port
   # Circuit: 
   # Power consumption: 15mA
  status_led: GPIO02

 # ----- BATTERY -----
 # not installed ... planed
  # Battery: li-Pol 3.7V 1100mAh
   # Protection: BMS 1S
   # Type battery: 1100mAh
   # Circuit: Divider 220kΩ - 470kΩ
  #battery_adc: GPIO33
  
 # ----- ELECTRICITY ------
 # ----- MEASURE -----
  # Module: INA219 High Side DC Current
   # Specification: Dimension 25x22mm / Voltage: Operating 3 ~ 5.5V, max in 32V / Resolution: 3.2A 12bit / Accuracy: ±1% / Operational Range: Temperature: -25 ~ +85°C
   # Shunt resistor: 100mΩ max 320mV
   # Consumption: Standby 15μA / Normal 1mA
    # Attention: remove the 0.1 ohm current sense resistor and replace it with their own to change the range (say a 0.01 ohm to measure up 32 Amps with a resolution of 8mA) 
    # Note: that when switching inductive loads, the instantaneous voltage levels may greatly exceed steady-state levels due to inductive kickback. Chip damage can occur if you do not take precautions to protect against inductive spikes.
   # Circuit: Interface: I2C address: 0x40
 # ------ POWER SUPPLY ------
  # Modul:  IP6536
   # Specification: 
 
 # ------- PROTECT -----
  # Module 1: mini ATC fuse 
   # Specification: 3A 12V whit car fuse holder,
   # Description: Full device protect whitout led strip 
  # Module 2: smd PPTC polyswitch fuse self recovery
   # Specification: 1.1A
   # Description: Protected esp and others module

 # ----- ETHERNET -----
 # Module: LAN8720 Eth Board Single-chip Ethernet Physical Layer Transciever (PHY)
  # Chip: 8720A-i
  # Specification: Voltage 1.6 ~ 3.6V / integrated 1.2V regulator / HP auto-MDIX support / 10/100Mbit / two status led / HanRun HR911105A lan socket RJ45 / Operational Range: Temperature: -40 ~ +85°C
  phy_adress: "1"
  
  lan_mdc_pin: GPIO23
  lan_mdio_pin: GPIO18
  lan_clk_pin: GPIO0_IN # add pull up 4.7kΩ
  
  # TX1:   GPIO22
  # TX0:   GPIO19
  # TX_EN: GPIO21
  # RX1:   GPIO26
  # RX0:   GPIO25
  # CRS:   GPIO27

  # lan_power_pin: GPIO16 # add pull down 4.7kΩ NOT CONNECTED
   # Circuit: add pullup 4.7k to clk_pin on board solder
   # Circuit2: GND -> DelayOn 500ms whit lmc555 timer capacitor 47nF 10k 
 
 # ----- IR TRANSMITER / RECEIVER -----
  # Module: 
   # Specification: Voltage: 3 ~ 5V / Emission: Distance: 1-2m Frequency: 850nm-940nm Angle: 20°/ Modulate Frequency: 38Khz
   # Circuit: whit level shifter test 5v 100ohm npn 2n2222 470 ohm ir led
  ir_transmitter_pin: GPIO32
  ir_receiver_pin: GPIO35
 
 # ----- RELAY -----
  # Module: 2x SRD-05VDC-SL-C
   # Specification: Voltage: 5VDC 90mA / 5pins / Range: 250VAC 10A, 30VDC 10A
   # Circuit: protect diode SS110 GND -> VCC / NPN BC337 10kΩ pulldown and 100Ω to GPIO
  relay1_pin: GPIO17
#  relay2_pin: GPIO01
  relay2_pin: GPIO16
  
 # ----- RGBW LED STRIP -----
  # Module: RGBWW 12V 60led/m smd 5050
   # Specification: Lenght: 12m / Voltage: 12V / IP30 / Average life: 50000h / Number: 60/m / 2700k warm white
   # Power consumption: 12W/m 1.0A = 12m = 12A
  green_pin: GPIO13
  red_pin: GPIO12
  blue_pin: GPIO01
  white_pin: GPIO33
 
 # ----- WW LED STRIP -----
  # Module: Soft flexible neon rope light
   # Specification: Lenght: 3m / Voltage: 12V / IP44 / Average life: 50000h / 2700k warm white
   # Power consumption: 6W/m 0.5A = 3m = 1.5A
  ww_pin: GPIO04
 
 # ----- PIR -----
  # Module: Dual pyroelectric infrared sensor RE200B
   # Specification: Voltage operating 3 ~ 10V source 0.3 ~ 1.5V signal out min. 2.5V / Operational Range: Temperature: -20 ~ +70°C
   # Circuit: 
   # Pinout:
   # Back view
   #         2 source
   #            .
   # 1 drain .     . 3 gate
  pir_pin: GPIO34

 # ----- LDR -----
  # Module: Photo Light Dependent Resistors GL55XX
  # Circuit: VCC -> 10K -> GPIO -> LDR -> GND
  ldr_pin: GPIO36 #VP
  
 # ----- BUTTON -----
  # Model: push button 6x6mm; 2pin; 12mm; 90°
  # Circuit: pullup 10k resistor
  button1_pin: GPIO03 #RX
  button2_pin: GPIO39 #VN
  
#-------------------------------------------
# VARIABILES
#-------------------------------------------


#-------------------------------------------
# PROTOCOLS
#-------------------------------------------
 # ----- PROTOCOLS PINS -----
  # I2C
  i2c_sda: GPIO14
  i2c_scl: GPIO15
  # Circuit: pullup 10k

 # ----- PROTOCOLS SETTINGS -----
i2c:
 sda: "$i2c_sda"
 scl: "$i2c_scl"
 scan: True

Uživatelský avatar
tiimsvk
Dárce - Donátor
Dárce - Donátor
Příspěvky: 801
Registrován: 06. květen 2021, 07:03
Dal poděkování: 72 poděkování
Dostal poděkování: 65 poděkování

Re: esp32 BOOT piny a ich následné použitie

Příspěvek od tiimsvk »

Nakoniec som tu vyriešil asi najjednoduchšie ako sa dalo a to pridanim port expanderu pcf8574
Lan8720 som zapojil podla navodou
- CLK 4.7k do GND a GPIO0
- A oscilator na module pin EN som zapojil na NC pin ktory je volny na module do power pinu GPIO17 s 4.7k pullup.

Odpovědět

Zpět na „ESPHome“