Page 18 of 32

Re: Smart DGM

Posted: Tue Sep 17, 2019 8:53 pm
by pzygmunt
Bez przepięcia standardowego uarta na uart1 lub na io13,15 sama zmiana funkcji ponów nic Ci nie da chyba, że przerobisz uart.c

Re: Smart DGM

Posted: Tue Sep 17, 2019 9:12 pm
by djack2017
pzygmunt wrote:
Tue Sep 17, 2019 8:53 pm
Bez przepięcia standardowego uarta na uart1 lub na io13,15 sama zmiana funkcji ponów nic Ci nie da chyba, że przerobisz uart.c
1. Ale jak rozumiem wykonanie funkcji system_uart_swap() załatwia w/w ?
2. Nie widzę nigdzie pliku uart.c , jedynie uart.h

Re: Smart DGM

Posted: Tue Sep 17, 2019 9:23 pm
by pzygmunt
system_uart_swap() przepina stdio z uart0 na uart1.

Przepięcie uart0 na io13,15 robi się tak

Code: Select all


PIN_PULLUP_EN(PERIPHS_IO_MUX_MTCK_U);
	PIN_FUNC_SELECT(PERIPHS_IO_MUX_MTCK_U, FUNC_U0CTS);
	PIN_PULLUP_DIS(PERIPHS_IO_MUX_MTDO_U);
	PIN_FUNC_SELECT(PERIPHS_IO_MUX_MTDO_U, FUNC_U0RTS);
	IOSWAP |= (1 << IOSWAPU0);  
	PIN_FUNC_SELECT(PERIPHS_IO_MUX_U0TXD_U, FUNC_GPIO1);
	PIN_FUNC_SELECT(PERIPHS_IO_MUX_U0RXD_U, FUNC_GPIO3);

https://github.com/nodemcu/nodemcu-firm ... ver/uart.c

Re: Smart DGM

Posted: Wed Sep 18, 2019 6:03 am
by djack2017
Najwyraźniej źle programuję port GPIO3, ponieważ na jednym styku przełącznika (tym podłaczonym jakoś do GPIO3) jest potencjał prawie zerowy. Tak jakby pullup nie podciągał tego wejścia do Vcc. To by tłumaczyło dlaczego przełącznik nie generuje przerwań od zbocza (jedynie poprzez zakłócenia). Może ktoś używał wejścia GPIO3 do innych celów niż RS232 i podpowie jak to oprogramować.

Re: Smart DGM

Posted: Wed Sep 18, 2019 6:35 am
by pzygmunt
Ja używam i nie ma problemu z przerwaniami. Podłącz oscyloskop i sprawdź
co tam się dzieje.

Re: Smart DGM

Posted: Wed Sep 18, 2019 7:02 am
by makrz
@Marco79 dał linka do takiego kodu

Code: Select all

esphome:
  name: PPW162
  platform: ESP8266
  board: esp01_1m

wifi:
  ssid: …
  password: …

logger:

api:

ota:

binary_sensor:
  - platform: gpio
    pin:
      number: GPIO3
      mode: INPUT_PULLUP
      inverted: true
    name: "Button"
    on_press:
      - switch.toggle: relay

sensor:
  - platform: hlw8012
    sel_pin:
      number: GPIO12
      inverted: true
    cf_pin: 4
    cf1_pin: 5
    current:
      name: "Current"
    voltage:
      name: "Voltage"
    power:
      name: "Power"
    update_interval: 1s
    voltage_divider: 800
    current_resistor: 0.0023

switch:
  - platform: gpio
    name: "Relay"
    pin: GPIO14
    id: relay

status_led:
  pin:
    number: GPIO13
    inverted: yes

Re: Smart DGM

Posted: Wed Sep 18, 2019 1:01 pm
by Simono
@djack2017 czy mógłbyś udostępnić firmware bez obsługi fizycznego przycisku? Rozumiem, że z aplikacji da się włączyć przekaźnik?

Re: Smart DGM

Posted: Wed Sep 18, 2019 1:26 pm
by makrz
Simono wrote:
Wed Sep 18, 2019 1:01 pm
@djack2017 czy mógłbyś udostępnić firmware bez obsługi fizycznego przycisku? Rozumiem, że z aplikacji da się włączyć przekaźnik?
http://djack.com.pl/modules.php?name=Do ... oad&cid=54

Re: Smart DGM

Posted: Wed Sep 18, 2019 5:06 pm
by Simono
@up rozumiem, że kalibracja, dioda etc, wszystko już jest i brakuje tylko fizycznego przycisku? Mam od kilku dni moduł BlizWolf za inverterem solarnym i mało jest odporny na zakłócenia. Czasami jak się włącza jakieś urządzenie wyłącza się w nim przekaźnik i trzeba go z przycisku bądź aplikacji ponownie włączyć i to jest duży problem. Mam nadzieję, że ten moduł nie będzie miał tego problemu a fizyczny przycisk jak będzie wszystko ok tam mi nie jest potrzebny.

Re: Smart DGM

Posted: Wed Sep 18, 2019 6:10 pm
by djack2017
Simono wrote:
Wed Sep 18, 2019 1:01 pm
@djack2017 czy mógłbyś udostępnić firmware bez obsługi fizycznego przycisku? Rozumiem, że z aplikacji da się włączyć przekaźnik?
Jest do pobrania firmware bez obsługi przycisku. Pozostałe funkcje działają. Z krótkiego testu wygląda na to, że jest dość odporny na zakłócenia. Tymczasowy brak obsługi przycisku powoduje, że jeśli chcemy wprowadzić współczynniki kalibracji musimy ponownie wyczyścić pamięć, wgrać firmware i przy ponownej konfiguracji wpisać poprawne współczynniki.