Faktycznie ciężki temat do opanowania.
Z rejestracją kanałów typu_E poszło gładko. Po zarejestrowaniu otrzymuję bardzo dziwne dane z serwera ale o tym może później.
Staram się wysłać tą konfigurację ale kicha. Czy mogę otrzymać informację odnośnie pól w strukturze TSDS_SetDeviceConfig;
Czym się różni AvailableFields; od Fields; ? Czy to oznacza, że mam wybrać z mapy bitowej jakie w moim regulatorze są możliwości wg mapy bitowej?
#define SUPLA_DEVICE_CONFIG_FIELD_STATUS_LED (1ULL << 0) // v. >= 21
// type: TDeviceConfig_ScreenBrightness
#define SUPLA_DEVICE_CONFIG_FIELD_SCREEN_BRIGHTNESS (1ULL << 1) // v. >= 21
// type: TDeviceConfig_ButtonVolume
#define SUPLA_DEVICE_CONFIG_FIELD_BUTTON_VOLUME (1ULL << 2) // v. >= 21
// type: TDeviceConfig_DisableUserInterface
#define SUPLA_DEVICE_CONFIG_FIELD_DISABLE_USER_INTERFACE \
(1ULL << 3) // v. >= 21
// type: TDeviceConfig_AutomaticTimeSync
#define SUPLA_DEVICE_CONFIG_FIELD_AUTOMATIC_TIME_SYNC (1ULL << 4) // v. >= 21
// type: TDeviceConfig_HomeScreenDelay
#define SUPLA_DEVICE_CONFIG_FIELD_HOME_SCREEN_OFF_DELAY (1ULL << 5) // v. >= 21
// type: TDeviceConfig_HomeScreenContent
#define SUPLA_DEVICE_CONFIG_FIELD_HOME_SCREEN_CONTENT (1ULL << 6) // v. >= 21
Następnie:
unsigned _supla_int16_t ConfigSize;
char Config[SUPLA_DEVICE_CONFIG_MAXSIZE]; // Last variable in struct!
Czy ConfigSize to ilość bajtów w tablicy Config? I skąd wziąć dane do tablicy config?
Testuję i wysyłam 512 bajtów samych zer ale dostaję SUPLA_RESULTCODE_UNSUPORTED 1
Pozdrawiam.
Rejestracja kanału termostatu
-
klew
- Posts: 13911
- Joined: Thu Jun 27, 2019 12:16 pm
- Location: Wrocław
- Has thanked: 135 times
- Been thanked: 137 times
To są elementy tzw. DeviceConfig i nie ma nic wspólnego z termostatem.
Także o ile nie chcesz używać tych parametrów, to nie ma co nas tym czasu spędzać
Także o ile nie chcesz używać tych parametrów, to nie ma co nas tym czasu spędzać
Najlepsze suple dla Twojego domu 
-
Sheezo
- Posts: 40
- Joined: Thu Oct 21, 2021 1:28 pm
To bardzo proszę o nakierowanie mnie na odpowiednie tory.
W cloud mam komunikat, że konfiguracja nie dostępna i oczekiwanie aż moduł się podłączy.
Co muszę zrobić aby ten komunikat zniknął i mógłbym normalnie korzystać z termostatu?
Pozdrawiam.
W cloud mam komunikat, że konfiguracja nie dostępna i oczekiwanie aż moduł się podłączy.
Co muszę zrobić aby ten komunikat zniknął i mógłbym normalnie korzystać z termostatu?
Pozdrawiam.
-
klew
- Posts: 13911
- Joined: Thu Jun 27, 2019 12:16 pm
- Location: Wrocław
- Has thanked: 135 times
- Been thanked: 137 times
Ogólnie napisałem w poprzedniej wiadomości. DeviceConfig nie jest niezbędny. Natomiast konieczne są te wiadomości " Chanel config"Sheezo wrote: Fri Dec 29, 2023 7:30 pm To bardzo proszę o nakierowanie mnie na odpowiednie tory.
W cloud mam komunikat, że konfiguracja nie dostępna i oczekiwanie aż moduł się podłączy.
Co muszę zrobić aby ten komunikat zniknął i mógłbym normalnie korzystać z termostatu?
Pozdrawiam.
Najlepsze suple dla Twojego domu 
-
Sheezo
- Posts: 40
- Joined: Thu Oct 21, 2021 1:28 pm
Dzięki za info. Źle zrozumiałem poprzednią wiadomość.
Skupiłem się na wysłaniu ChannelConfig. Niestety serwer nie odpowiada na ramkę. Czy możecie rzucić okiem co robię źle?
Ogólnie to rejestruję jeden kanał termostatu i jeden kanał termometru. Numer kanału termostatu to 0 a termometru to 1.
Rejestruje się bardzo ładnie, w cloud widoczny termostat i termometr. Termostat rejestruje z flagą SUPLA_CHANNEL_FLAG_RUNTIME_CHANNEL_CONFIG_UPDATE. Zaraz po zarejestrowaniu odbieram takie 2 ramki:
1. 53h 55h 50h 4Ch 41h 15h 02h 00h 00h 00h 02h 00h 00h 00h 00h 00h 00h A4h 01h 00h 00h 00h 00h 00h 53h 55h 50h 4Ch 41h
2. 53h 55h 50h 4Ch 41h 15h 03h 00h 00h 00h ABh 02h 00h 00h 01h 00h 00h 00h 00h 53h 55h 50h 4Ch 41h
Pierwsza to nie mam pojęcia co to jest natomiast druga to wiadomość: SUPLA_SD_CALL_CHANNEL_CONFIG_FINISHED z result 0x00.
Następnie wysyłam taka ramkę:
Niestety z serwera cisza. Bardzo proszę o jakąś wskazówkę.
Pozdrawiam.
Skupiłem się na wysłaniu ChannelConfig. Niestety serwer nie odpowiada na ramkę. Czy możecie rzucić okiem co robię źle?
Ogólnie to rejestruję jeden kanał termostatu i jeden kanał termometru. Numer kanału termostatu to 0 a termometru to 1.
Rejestruje się bardzo ładnie, w cloud widoczny termostat i termometr. Termostat rejestruje z flagą SUPLA_CHANNEL_FLAG_RUNTIME_CHANNEL_CONFIG_UPDATE. Zaraz po zarejestrowaniu odbieram takie 2 ramki:
1. 53h 55h 50h 4Ch 41h 15h 02h 00h 00h 00h 02h 00h 00h 00h 00h 00h 00h A4h 01h 00h 00h 00h 00h 00h 53h 55h 50h 4Ch 41h
2. 53h 55h 50h 4Ch 41h 15h 03h 00h 00h 00h ABh 02h 00h 00h 01h 00h 00h 00h 00h 53h 55h 50h 4Ch 41h
Pierwsza to nie mam pojęcia co to jest natomiast druga to wiadomość: SUPLA_SD_CALL_CHANNEL_CONFIG_FINISHED z result 0x00.
Następnie wysyłam taka ramkę:
Code: Select all
Len = 0x00;
TXBuff[Len++] = 'S'; //Naglowek
TXBuff[Len++] = 'U';
TXBuff[Len++] = 'P';
TXBuff[Len++] = 'L';
TXBuff[Len++] = 'A';
TXBuff[Len++] = 21; //Version
TXBuff[Len++] = Supla.RR_ID; //rrid
TXBuff[Len++] = Supla.RR_ID >> 8;
TXBuff[Len++] = Supla.RR_ID >> 16;
TXBuff[Len++] = Supla.RR_ID >> 24;
TXBuff[Len++] = 0xA9; //CallType (Set channel Config (681))
TXBuff[Len++] = 0x02;
TXBuff[Len++] = 0x00;
TXBuff[Len++] = 0x00;
TXBuff[Len++] = 0x00; //DataSize (obliczane na końcu)
TXBuff[Len++] = 0x00;
TXBuff[Len++] = 0x00;
TXBuff[Len++] = 0x00;
//Data
TXBuff[Len++] = Channel; //ChannelNumber (0x00 jako kanał termostatu)
TXBuff[Len++] = 0xA4; //#define SUPLA_CHANNELFNC_HVAC_THERMOSTAT 420
TXBuff[Len++] = 0x01; //#define SUPLA_CHANNELFNC_HVAC_THERMOSTAT 420
TXBuff[Len++] = 0x00; //#define SUPLA_CHANNELFNC_HVAC_THERMOSTAT 420
TXBuff[Len++] = 0x00; //#define SUPLA_CHANNELFNC_HVAC_THERMOSTAT 420
TXBuff[Len++] = 0x00; //SUPLA_CONFIG_TYPE_DEFAULT 0
TXBuff[Len++] = 0x00; //SUPLA_CONFIG_TYPE_DEFAULT 0
TXBuff[Len++] = 0x00; //SUPLA_CONFIG_TYPE_DEFAULT 0
TXBuff[Len++] = 0x00; //SUPLA_CONFIG_TYPE_DEFAULT 0
TXBuff[Len++] = 0x00; //ConfigSize (obliczane ze zmiennej ConfigSize)
TXBuff[Len++] = 0x00; //ConfigSize (obliczane ze zmiennej ConfigSize)
//Config[SUPLA_CHANNEL_CONFIG_MAXSIZE];
TXBuff[Len++] = 0x01; ConfigSize++; //MainThermometerChannelNo (wskazuje na termometr)
TXBuff[Len++] = Channel; ConfigSize++; //AuxThermometerChannelNo (wskazuje na siebie)
TXBuff[Len++] = Channel; ConfigSize++; //BinaryThermometerChannelNo (wskazuje na siebie)
TXBuff[Len++] = 0x00; ConfigSize++; //AuxThermometerType (not set)
TXBuff[Len++] = 0x00; ConfigSize++; //AntiFreezeAndOverheatProtectionEnabled (not set)
TXBuff[Len++] = 0x00; ConfigSize++; //AvailableAlgorithms;
TXBuff[Len++] = 0x00; ConfigSize++; //AvailableAlgorithms;
TXBuff[Len++] = 0x00; ConfigSize++; //UsedAlgorithms;
TXBuff[Len++] = 0x00; ConfigSize++; //UsedAlgorithms;
TXBuff[Len++] = 0x00; ConfigSize++; //MinOnTimeS;
TXBuff[Len++] = 0x00; ConfigSize++; //MinOnTimeS;
TXBuff[Len++] = 0x00; ConfigSize++; //MinOffTimeS;
TXBuff[Len++] = 0x00; ConfigSize++; //MinOffTimeS;
TXBuff[Len++] = 0x00; ConfigSize++; //OutputValueOnError;
TXBuff[Len++] = 0x00; ConfigSize++; //Subfunction;
TXBuff[Len++] = 0x00; ConfigSize++; //TemperatureSetpointChangeSwitchesToManualMode;
TXBuff[Len++] = 0x00; ConfigSize++; //AuxMinMaxSetpointEnabled;
TXBuff[Len++] = 0x00; ConfigSize++; //AutoUseSeparateHeatCoolOutputs;
for (uint32_t a = 0; a < 48; a++) //Reserved
{
TXBuff[Len++] = 0x00;
ConfigSize++;
}
//THVACTemperatureCfg;
TXBuff[Len++] = 0x00; ConfigSize++; //Index
TXBuff[Len++] = 0x00; ConfigSize++; //Index
TXBuff[Len++] = 0x00; ConfigSize++; //Index
TXBuff[Len++] = 0x00; ConfigSize++; //Index
for (DataLen = 0; DataLen < 24; DataLen++) //Reserved
{
TXBuff[Len++] = 0x00; //Temperature
TXBuff[Len++] = 0x00; //Temperature
ConfigSize += 2;
}
TXBuff[Len++] = 'S'; //Naglowek
TXBuff[Len++] = 'U';
TXBuff[Len++] = 'P';
TXBuff[Len++] = 'L';
TXBuff[Len++] = 'A';
Pozdrawiam.
-
Sheezo
- Posts: 40
- Joined: Thu Oct 21, 2021 1:28 pm
Dałem radę z przesłaniem konfiguracji 
Ostatnie pytanko i przestanę męczyć. W cloud już się wyświetlają parametry ale jest problem z aplikacją na smartfon.
Jak wchodzę w kanał termostatu to jest to zielone kółeczko co się kręci i nic nie można ustawić.
Czy to dalej coś z modułem? Co trzeba zrobić aby kanał w apce też działał?
Pozdrawiam.
Ostatnie pytanko i przestanę męczyć. W cloud już się wyświetlają parametry ale jest problem z aplikacją na smartfon.
Jak wchodzę w kanał termostatu to jest to zielone kółeczko co się kręci i nic nie można ustawić.
Czy to dalej coś z modułem? Co trzeba zrobić aby kanał w apce też działał?
Pozdrawiam.
-
klew
- Posts: 13911
- Joined: Thu Jun 27, 2019 12:16 pm
- Location: Wrocław
- Has thanked: 135 times
- Been thanked: 137 times
Nic mi do głowy nie przychodzi. Ogólnie apka czyta "config" urządzenia z serwera. Więc jeśli serwer ma kompletną konfigurację, to apka powinna móc ją odczytać.Sheezo wrote: Thu Mar 28, 2024 8:24 pm Dałem radę z przesłaniem konfiguracji
Ostatnie pytanko i przestanę męczyć. W cloud już się wyświetlają parametry ale jest problem z aplikacją na smartfon.
Jak wchodzę w kanał termostatu to jest to zielone kółeczko co się kręci i nic nie można ustawić.
Czy to dalej coś z modułem? Co trzeba zrobić aby kanał w apce też działał?
Pozdrawiam.
Musiałbyś coś więcej napisać, co zrobiłeś i jak.
Najlepsze suple dla Twojego domu 
-
Sheezo
- Posts: 40
- Joined: Thu Oct 21, 2021 1:28 pm
Bardzo dziękuję za odpowiedź.
Oto jedna z moich konfiguracji kanału. W cloud jest widoczna, jak zmienię jakieś parametry to od razu widać:
Po wysłaniu dostaję potwierdzenie SUPLA_SD_CALL_CHANNEL_CONFIG_FINISHED i nie za bardzo rozumiem dlaczego tak się dzieje.
Próbowałem różne konfiguracje wgrywać ale nic to nie daje.
Pozdrawiam.
Oto jedna z moich konfiguracji kanału. W cloud jest widoczna, jak zmienię jakieś parametry to od razu widać:
Code: Select all
TXBuff[Len++] = 'S'; //Naglowek
TXBuff[Len++] = 'U';
TXBuff[Len++] = 'P';
TXBuff[Len++] = 'L';
TXBuff[Len++] = 'A';
TXBuff[Len++] = 21; //Version
TXBuff[Len++] = Supla.RR_ID; //rrid (za każdym razem zwiększany o 1)
TXBuff[Len++] = Supla.RR_ID >> 8;
TXBuff[Len++] = Supla.RR_ID >> 16;
TXBuff[Len++] = Supla.RR_ID >> 24;
TXBuff[Len++] = 0xA9; //CallType (Set channel Config (681))
TXBuff[Len++] = 0x02;
TXBuff[Len++] = 0x00;
TXBuff[Len++] = 0x00;
TXBuff[Len++] = 0x00; //DataSize (na razie 0, wypełniane na końcu)
TXBuff[Len++] = 0x00;
TXBuff[Len++] = 0x00;
TXBuff[Len++] = 0x00;
//Data
TXBuff[Len++] = 0x00; //ChannelNumber, w tym wypadku 0x00
TXBuff[Len++] = 0xA4; //Function SUPLA_CHANNELFNC_HVAC_THERMOSTAT 420
TXBuff[Len++] = 0x01;
TXBuff[Len++] = 0x00;
TXBuff[Len++] = 0x00;
TXBuff[Len++] = 0x00; //Config Type SUPLA_CONFIG_TYPE_DEFAULT 0
TXBuff[Len++] = 0x00; //ConfigSize wypelniane na końcu
TXBuff[Len++] = 0x00;
//Config[SUPLA_CHANNEL_CONFIG_MAXSIZE];
TXBuff[Len++] = 0x01; ConfigSize++; //MainThermometerChannelNo (DS18B20 zarejestrowany na kanale 1)
TXBuff[Len++] = 0x00; ConfigSize++;
TXBuff[Len++] = 0x00; ConfigSize++;
TXBuff[Len++] = 0x00; ConfigSize++;
TXBuff[Len++] = 0x01; ConfigSize++; //AuxThermometerChannelNo (Nie ma dodatkowego czujnika ale wysyłam 0x01)
TXBuff[Len++] = 0x00; ConfigSize++;
TXBuff[Len++] = 0x00; ConfigSize++;
TXBuff[Len++] = 0x00; ConfigSize++;
TXBuff[Len++] = 0x01; ConfigSize++; //BinaryThermometerChannelNo (Wysyłam 0x01, wysyłanie 0x00 nic nie zmienia)
TXBuff[Len++] = 0x00; ConfigSize++;
TXBuff[Len++] = 0x00; ConfigSize++;
TXBuff[Len++] = 0x00; ConfigSize++;
TXBuff[Len++] = 0x01; ConfigSize++; //AuxThermometerType (disable)
TXBuff[Len++] = 0x00; ConfigSize++; //AntiFreezeAndOverheatProtectionEnabled (not set)
TXBuff[Len++] = 0x00; ConfigSize++; //AvailableAlgorithms;
TXBuff[Len++] = 0x00; ConfigSize++; //AvailableAlgorithms;
TXBuff[Len++] = 0x00; ConfigSize++; //UsedAlgorithms;
TXBuff[Len++] = 0x00; ConfigSize++; //UsedAlgorithms;
TXBuff[Len++] = 0x10; ConfigSize++; //MinOnTimeS;
TXBuff[Len++] = 0x00; ConfigSize++; //MinOnTimeS;
TXBuff[Len++] = 0x10; ConfigSize++; //MinOffTimeS;
TXBuff[Len++] = 0x00; ConfigSize++; //MinOffTimeS;
TXBuff[Len++] = 0x00; ConfigSize++; //OutputValueOnError;
TXBuff[Len++] = 0x01; ConfigSize++; //Subfunction;
TXBuff[Len++] = 0x00; ConfigSize++; //TemperatureSetpointChangeSwitchesToManualMode;
TXBuff[Len++] = 0x00; ConfigSize++; //AuxMinMaxSetpointEnabled;
TXBuff[Len++] = 0x00; ConfigSize++; //AutoUseSeparateHeatCoolOutputs;
for (DataLen = 0; DataLen < 48; DataLen++) //Reserved
{
TXBuff[Len++] = 0x00;
ConfigSize++;
}
//THVACTemperatureCfg; (tu definiuje które wartości temperatur używam w termostacie)
TXBuff[Len++] = 0x20; ConfigSize++; //Hysteresis (0x20),
TXBuff[Len++] = 0x0C; ConfigSize++; //Room min(0x04), Room Max(0x08)
TXBuff[Len++] = 0x0C; ConfigSize++; //hysteresis Min(0x40), Hysteresis Max (0x80)
TXBuff[Len++] = 0x00; ConfigSize++;
TXBuff[Len++] = 0x00; ConfigSize++; //TEMPERATURE_FREEZE_PROTECTION
TXBuff[Len++] = 0x00; ConfigSize++; //TEMPERATURE_FREEZE_PROTECTION
TXBuff[Len++] = 0x00; ConfigSize++; //TEMPERATURE_ECO
TXBuff[Len++] = 0x00; ConfigSize++; //TEMPERATURE_ECO
TXBuff[Len++] = 0x00; ConfigSize++; //TEMPERATURE_COMFORT
TXBuff[Len++] = 0x00; ConfigSize++; //TEMPERATURE_COMFORT
TXBuff[Len++] = 0x00; ConfigSize++; //TEMPERATURE_BOOST
TXBuff[Len++] = 0x00; ConfigSize++; //TEMPERATURE_BOOST
TXBuff[Len++] = 0x00; ConfigSize++; //TEMPERATURE_HEAT_PROTECTION
TXBuff[Len++] = 0x00; ConfigSize++; //TEMPERATURE_HEAT_PROTECTION
TXBuff[Len++] = 0x64; ConfigSize++; //TEMPERATURE_HISTERESIS (1 stopień)
TXBuff[Len++] = 0x00; ConfigSize++; //TEMPERATURE_HISTERESIS
TXBuff[Len++] = 0x00; ConfigSize++; //TEMPERATURE_BELOW_ALARM
TXBuff[Len++] = 0x00; ConfigSize++; //TEMPERATURE_BELOW_ALARM
TXBuff[Len++] = 0x00; ConfigSize++; //TEMPERATURE_ABOVE_ALARM
TXBuff[Len++] = 0x00; ConfigSize++; //TEMPERATURE_ABOVE_ALARM
TXBuff[Len++] = 0x00; ConfigSize++; //TEMPERATURE_AUX_MIN_SETPOINT
TXBuff[Len++] = 0x00; ConfigSize++; //TEMPERATURE_AUX_MIN_SETPOINT
TXBuff[Len++] = 0x00; ConfigSize++; //TEMPERATURE_AUX_MAX_SETPOINT
TXBuff[Len++] = 0x00; ConfigSize++; //TEMPERATURE_AUX_MAX_SETPOINT
TXBuff[Len++] = 0xE8; ConfigSize++; //TEMPERATURE_ROOM_MIN (10 stopni)
TXBuff[Len++] = 0x03; ConfigSize++; //TEMPERATURE_ROOM_MIN
TXBuff[Len++] = 0xA0; ConfigSize++; //TEMPERATURE_ROOM_MAX (40 stopni)
TXBuff[Len++] = 0x0F; ConfigSize++; //TEMPERATURE_ROOM_MAX
TXBuff[Len++] = 0x00; ConfigSize++; //TEMPERATURE_AUX_MIN
TXBuff[Len++] = 0x00; ConfigSize++; //TEMPERATURE_AUX_MIN
TXBuff[Len++] = 0x00; ConfigSize++; //TEMPERATURE_AUX_MAX
TXBuff[Len++] = 0x00; ConfigSize++; //TEMPERATURE_AUX_MAX
TXBuff[Len++] = 0x64; ConfigSize++; //TEMPERATURE_HISTERESIS_MIN (1 stopień)
TXBuff[Len++] = 0x00; ConfigSize++; //TEMPERATURE_HISTERESIS_MIN
TXBuff[Len++] = 0xF4; ConfigSize++; //TEMPERATURE_HISTERESIS_MAX (5 stopni)
TXBuff[Len++] = 0x01; ConfigSize++; //TEMPERATURE_HISTERESIS_MAX
TXBuff[Len++] = 0x00; ConfigSize++; //TEMPERATURE_HEAT_COOL_OFFSET_MIN
TXBuff[Len++] = 0x00; ConfigSize++; //TEMPERATURE_HEAT_COOL_OFFSET_MIN
TXBuff[Len++] = 0x00; ConfigSize++; //TEMPERATURE_HEAT_COOL_OFFSET_MAX
TXBuff[Len++] = 0x00; ConfigSize++; //TEMPERATURE_HEAT_COOL_OFFSET_MAX
TXBuff[Len++] = 0x00; ConfigSize++;
TXBuff[Len++] = 0x00; ConfigSize++;
TXBuff[Len++] = 0x00; ConfigSize++;
TXBuff[Len++] = 0x00; ConfigSize++;
TXBuff[Len++] = 0x00; ConfigSize++;
TXBuff[Len++] = 0x00; ConfigSize++;
TXBuff[Len++] = 0x00; ConfigSize++;
TXBuff[Len++] = 0x00; ConfigSize++;
TXBuff[Len++] = 0x00; ConfigSize++;
TXBuff[Len++] = 0x00; ConfigSize++;
TXBuff[Len++] = 0x00; ConfigSize++;
TXBuff[Len++] = 0x00; ConfigSize++;
TXBuff[Len++] = 'S'; //Naglowek
TXBuff[Len++] = 'U';
TXBuff[Len++] = 'P';
TXBuff[Len++] = 'L';
TXBuff[Len++] = 'A';
Próbowałem różne konfiguracje wgrywać ale nic to nie daje.
Pozdrawiam.
-
klew
- Posts: 13911
- Joined: Thu Jun 27, 2019 12:16 pm
- Location: Wrocław
- Has thanked: 135 times
- Been thanked: 137 times
Channel config finished wysyła serwer, aby poinformować urządzenie, że serwer wysłał już całą konfigurację kanału do urządzenia.
Jeśli chcesz wysłać config do serwera, to rob to dopiero po otrzymaniu tej wiadomości.
Budowanie wiadomości bajt po bajcie to dość pracochłonna metoda. Lepiej dodaj gotowe struktury danych i wysyłaj całe struktury
Jeśli chcesz wysłać config do serwera, to rob to dopiero po otrzymaniu tej wiadomości.
Budowanie wiadomości bajt po bajcie to dość pracochłonna metoda. Lepiej dodaj gotowe struktury danych i wysyłaj całe struktury
Najlepsze suple dla Twojego domu 
-
Sheezo
- Posts: 40
- Joined: Thu Oct 21, 2021 1:28 pm
Dobrze wiedzieć. Dzięki.Channel config finished wysyła serwer, aby poinformować urządzenie, że serwer wysłał już całą konfigurację kanału do urządzenia.
Ten config wysyłany jest dla także do nowo zarejestrowanego urządzenia więc serwer nie wyśle tej wiadomości.Jeśli chcesz wysłać config do serwera, to rob to dopiero po otrzymaniu tej wiadomości.
To oczywista sprawa. Docelowo będzie tak zrobione. Na chwilę obecną staram się dojść niskopoziomowo co jest grane.Budowanie wiadomości bajt po bajcie to dość pracochłonna metoda. Lepiej dodaj gotowe struktury danych i wysyłaj całe struktury
Jakby komuś się nudziło to proszę tylko o sprawdzenie co w mojej konfiguracji jest źle.
Pozdrawiam.
