Jeśli chodzi o ikony to mam to samo - obydwa kanały przy ręcznym przełączaniu zmieniają stan ikony 1
przy sterowaniu smartfonem jest OK
Dodatkowy przycisk do podwójnego przekaźnika
-
- Posts: 2466
- Joined: Mon Mar 14, 2016 11:48 pm
- Location: Biała Podlaska
TEORIA jest wtedy gdy wszystko wiemy i nic nie działa
PRAKTYKA jest wtedy gdy wszystko działa a my nie wiemy dlaczego
My łączymy teorię z praktyką czyli nic nie działa i nikt nie wie dlaczego
PRAKTYKA jest wtedy gdy wszystko działa a my nie wiemy dlaczego
My łączymy teorię z praktyką czyli nic nie działa i nikt nie wie dlaczego
-
- Posts: 1511
- Joined: Sun Jun 26, 2016 4:24 pm
Tak myślę, że jest to prawidłowo, ponieważ funkcja do przejścia w tryb konfiguracji dla drugiego przycisku jest pusta:slawek wrote:A jak ze zmianą trybu btn/switch?
u mnie zmienia tylko dla 1 kanału...
okienko w konfigu mam jedno... i zmienia tylko 1 kanał, 2 mam button
void supla_esg_gpio_cfg2_pressed(void) {
};
-
- Posts: 2466
- Joined: Mon Mar 14, 2016 11:48 pm
- Location: Biała Podlaska
Ale mi chodzi o zmianę trybu pracy przycisku button/switch, nie o przejście w tryb konfiguracji
TEORIA jest wtedy gdy wszystko wiemy i nic nie działa
PRAKTYKA jest wtedy gdy wszystko działa a my nie wiemy dlaczego
My łączymy teorię z praktyką czyli nic nie działa i nikt nie wie dlaczego
PRAKTYKA jest wtedy gdy wszystko działa a my nie wiemy dlaczego
My łączymy teorię z praktyką czyli nic nie działa i nikt nie wie dlaczego
-
- Posts: 1511
- Joined: Sun Jun 26, 2016 4:24 pm
Po pobraniu nowych kodów źródłowych z Github-a i wprowadzeniu w nich modyfikacji mam już w pełni działający podwójny socket z termometrem.
Nie wszystko co wcześniej opisywaliśmy w dyskusji w najnowszej wersji oprogramowania wygląda tak samo, ale zasada jest taka sama. Kod jest bardziej uporządkowany i nawet łatwiejszy w analizie (w zakresie poruszanych problemów). Dużo daje analiza płytki "jangoe_wifisocket".
Nie wszystko co wcześniej opisywaliśmy w dyskusji w najnowszej wersji oprogramowania wygląda tak samo, ale zasada jest taka sama. Kod jest bardziej uporządkowany i nawet łatwiejszy w analizie (w zakresie poruszanych problemów). Dużo daje analiza płytki "jangoe_wifisocket".
-
- Posts: 2466
- Joined: Mon Mar 14, 2016 11:48 pm
- Location: Biała Podlaska
Też to zauważyłem, ale np jangoe nie ma chyba funkcji switch... ale zmiany, które wprowadzaliśmy są już w nowych źródłach...
Jutro popróbuję od nowa - czegoś się przy okazji nauczę...
Co z trybem switch dla obu kanałów? Działa?
Jutro popróbuję od nowa - czegoś się przy okazji nauczę...
Co z trybem switch dla obu kanałów? Działa?
TEORIA jest wtedy gdy wszystko wiemy i nic nie działa
PRAKTYKA jest wtedy gdy wszystko działa a my nie wiemy dlaczego
My łączymy teorię z praktyką czyli nic nie działa i nikt nie wie dlaczego
PRAKTYKA jest wtedy gdy wszystko działa a my nie wiemy dlaczego
My łączymy teorię z praktyką czyli nic nie działa i nikt nie wie dlaczego
-
- Posts: 2466
- Joined: Mon Mar 14, 2016 11:48 pm
- Location: Biała Podlaska
Prawie się udało... nie mogę dociec jak zmusić 2 przycisk do przejścia w tryb switch no i nie mam termometru...poza tym wszystko działa jak chciałem.
Proszę o podpowiedź...
Proszę o podpowiedź...
TEORIA jest wtedy gdy wszystko wiemy i nic nie działa
PRAKTYKA jest wtedy gdy wszystko działa a my nie wiemy dlaczego
My łączymy teorię z praktyką czyli nic nie działa i nikt nie wie dlaczego
PRAKTYKA jest wtedy gdy wszystko działa a my nie wiemy dlaczego
My łączymy teorię z praktyką czyli nic nie działa i nikt nie wie dlaczego
-
- Posts: 1511
- Joined: Sun Jun 26, 2016 4:24 pm
Odnośnie termometru to zrób nową definicję płytki w supla_esp.hslawek wrote:Prawie się udało... nie mogę dociec jak zmusić 2 przycisk do przejścia w tryb switch no i nie mam termometru...poza tym wszystko działa jak chciałem.
Proszę o podpowiedź...
#elif defined(__BOARD_wifisocketx2) \
|| defined(__BOARD_wifisocketx2_dht11) \
|| defined(__BOARD_wifisocketx2_dht22)
#define DEVICE_NAME "SUPLA-SOCKETx2"
#if defined(__BOARD_wifisocketx2_dht11)
#define SENSOR_DHT11
#elif defined(__BOARD_wifisocketx2_dht22)
#define SENSOR_DHT22
#else
#define DS18B20
#endif
#define RESET_RELAY_PORT
#define TEMPERATURE_CHANNEL 2
#define CFGBTN_TYPE_SELECTION
#define CFG_PORT 5
#define BUTTON2_PORT 12
#define RELAY1_PORT 4
#define RELAY2_PORT 13
#define LED_BLUE_PORT 14
oraz w supla_esp_devconn.c
#elif defined(__BOARD_wifisocketx2) \
|| defined(__BOARD_wifisocketx2_dht11) \
|| defined(__BOARD_wifisocketx2_dht22)
#if defined(DS18B20) || defined(SENSOR_DHT11) || defined(SENSOR_DHT22)
srd.channel_count = 3;
#else
srd.channel_count = 2;
#endif
srd.channels[0].Number = 0;
srd.channels[0].Type = SUPLA_CHANNELTYPE_RELAY;
srd.channels[0].FuncList = SUPLA_BIT_RELAYFUNC_POWERSWITCH \
| SUPLA_BIT_RELAYFUNC_LIGHTSWITCH;
srd.channels[0].Default = SUPLA_CHANNELFNC_POWERSWITCH;
srd.channels[0].value[0] = supla_esp_gpio_relay_on(RELAY1_PORT);
srd.channels[1].Number = 1;
srd.channels[1].Type = SUPLA_CHANNELTYPE_RELAY;
srd.channels[1].FuncList = SUPLA_BIT_RELAYFUNC_POWERSWITCH \
| SUPLA_BIT_RELAYFUNC_LIGHTSWITCH;
srd.channels[1].Default = SUPLA_CHANNELFNC_POWERSWITCH;
srd.channels[1].value[1] = supla_esp_gpio_relay_on(RELAY2_PORT);
// TEMPERATURE_CHANNEL
#if defined(DS18B20) || defined(SENSOR_DHT11) || defined(SENSOR_DHT22)
srd.channels[2].Number = 2;
#if defined(SENSOR_DHT11)
srd.channels[2].Type = SUPLA_CHANNELTYPE_DHT11;
#elif defined(SENSOR_DHT22)
srd.channels[2].Type = SUPLA_CHANNELTYPE_DHT22;
#else
srd.channels[2].Type = SUPLA_CHANNELTYPE_THERMOMETERDS18B20;
#endif
srd.channels[2].FuncList = 0;
srd.channels[2].Default = 0;
supla_get_temp_and_humidity(srd.channels[2].value);
#endif
oraz w supla_esp_gpio.c
void supla_esg_gpio_manual_pressed(void) {
if ( supla_esp_cfgmode_started() == 0 ) {
#if defined(__BOARD_wifisocket) \
|| defined(__BOARD_wifisocket_54) \
|| defined(__BOARD_wifisocket_esp01) \
|| defined(__BOARD_sonoff) \
|| defined(__BOARD_sonoff_ds18b20) \
|| defined(__BOARD_wifisocketx2) \
|| defined(__BOARD_wifisocketx2_dht11) \
|| defined(__BOARD_wifisocketx2_dht22)
supla_esg_gpio_relay_switch(RELAY1_PORT);
#elif defined(DIMMER_CHANNEL)
supla_esg_gpio_pwm_onoff();
#endif
} else {
cfg_exit_counter++;
if ( cfg_exit_counter > 1
&& switch_cfgbtn_counter < 10 ) {
system_restart();
}
}
}
i zmodyfikuj skrypt build.sh o obsługę tych płytek
-
- Posts: 2466
- Joined: Mon Mar 14, 2016 11:48 pm
- Location: Biała Podlaska
Dzięki - skorzystam, a jak u ciebie z przyciskami? Masz tryb switch na obydwóch? Na tym zależy mi bardziej niż na termometrze.
P.S. Widzę, że masz nie zauważyłem od razu...dzięki
P.S. Widzę, że masz nie zauważyłem od razu...dzięki
TEORIA jest wtedy gdy wszystko wiemy i nic nie działa
PRAKTYKA jest wtedy gdy wszystko działa a my nie wiemy dlaczego
My łączymy teorię z praktyką czyli nic nie działa i nikt nie wie dlaczego
PRAKTYKA jest wtedy gdy wszystko działa a my nie wiemy dlaczego
My łączymy teorię z praktyką czyli nic nie działa i nikt nie wie dlaczego
-
- Posts: 1511
- Joined: Sun Jun 26, 2016 4:24 pm
tak jak masz tu:slawek wrote:Dzięki - skorzystam, a jak u ciebie z przyciskami? Masz tryb switch na obydwóch? Na tym zależy mi bardziej niż na termometrze.
#define CFG_PORT 5
#define BUTTON2_PORT 12
sterować będziesz dwoma przekaźnikami poprzez te przyciski na tych portach, bo masz
single_key[0] = key_init_single(CFG_PORT, supla_esg_gpio_cfg_pressed, supla_esg_gpio_manual_pressed);
keys.key_num++;
#if defined(BUTTON2_PORT) && defined(RELAY2_PORT)
single_key[keys.key_num] = key_init_single(BUTTON2_PORT, NULL, supla_esg_gpio_button2_pressed);
keys.key_num++;
#endif
ale w tryb konfiguracji będziesz wchodził tylko przyciskiem na porcie 5