S20 Smart Socket kompilacja v2.0.2

User avatar
julekjulek
Posts: 36
Joined: Wed Apr 12, 2017 9:26 am

Post

Witam,

sprzęt S20 Smart Socket taki jak w tym linku
po wgraniu tego SUPLA/ESP8266/tree/master/sonoff_socket oprogramowania Smart Socket współpracuje z supla prawidłowo.

Chciałem zaprogramować Smart Socket nową wersją oprogramowania v2.0.2.
Skompilowałem "./build.sh sonoff_socket".
Kompilacja przebiegła bez błędów (w wyniku podane adresy do zaprogramowania).

Po zaprogramowaniu sprzęt jednak "nie wstaje".
Pytanie 1 - czy przy wgrywaniu skompilowanej nowej wersji v2.0.2 trzeba jeszcze dodatkowo wgrać jakiś inny plik np. esp_init_data_default.bin ?

Pytanie 2 - proszę o podpowiedź co trzeba zmienić, dodać w plikach źródłowych aby do Smart Socket przy kompilacji dodać obsługę czujnika temperatury ds18b20.
Wydaje mi się, że trzeba zmienić pliki sonoff_socket.h i sonoff_socket.c (katalog supla-espressif-esp/src/include/board/) dodając fragmenty takie jak np. w sonoff.h

Code: Select all

#ifdef __BOARD_sonoff_ds18b20
	#define DS18B20
	#define TEMPERATURE_CHANNEL 1

    // Sonoff TH (v1)
	//#define W1_GPIO3

    // Sonoff TH (v2)
    #define W1_GPIO14
w powyższym code zmieniając oczywiście
#ifdef __BOARD_sonoff_ds18b20
na
#ifdef __BOARD_sonoff_socket_ds18b20
oraz dodając odpowiednie fragmenty dla sonoff_socket_ds18b20 w build.sh.

Będę wdzięczny za pomoc i wyjaśnienia.

Pozdrawiam,
julek
Wszystko jest możliwe, ale na wszystko jest potrzebny czas ;)
User avatar
slawek
Posts: 2685
Joined: Mon Mar 14, 2016 11:48 pm
Location: Biała Podlaska

Post

Jeśli pinologia jest taka sama jak w sonoffie to masz tu soft z czujnikiem do wyboru - DS18B20 lub DHT22 - oczywiście jeden z nich do wyboru, po podłączasz je pod ten sam pin.(piąty dla sonoffa).
Czujnik nieużywany wyłączasz w cloud.
You do not have the required permissions to view the files attached to this post.
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
User avatar
julekjulek
Posts: 36
Joined: Wed Apr 12, 2017 9:26 am

Post

Dzięki za odpowiedź.

W Twoim załączniku SONOFF_DHT_DS.rar nie ma informacji o parametrach wgrywania plików (adresy, SPI mode,...).
Czy parametry do wgrania mają tak wyglądać ?

Code: Select all

boot_v1.5.bin--------->0x00000
sonoff_ds_dht_user1.1024.new.2.bin---->0x01000
esp_init_data_default.bin---->0xfc000

BAUDRATE: 115200
Flash Size: 1MByte
Flash speed: 40Mhz
SPI Mode: DIO
Pinologia jest podobna jak w sonoff (schemat w załączniku) jednak nie ma "piątego pinu sonoff".
Aby użyć w/w piąty pin (GPIO14/MTMS) musiałbym wlutować połączenie bezpośrednio do 9 nóżki esp8266.
Dla S20 Smart Socket lepszym rozwiązaniem dla podłączenia czujnika temperatury powinno być użycie GPIO3/RX.
Wygląda na to, że do tego urządzenia można wgrywać oprogramowanie przeznaczone dla normalnego sonoff.

@slawek czy możesz dać jakąś podpowiedź do pytania nr 2.

Pozdrawiam,
julek
You do not have the required permissions to view the files attached to this post.
Wszystko jest możliwe, ale na wszystko jest potrzebny czas ;)
User avatar
slawek
Posts: 2685
Joined: Mon Mar 14, 2016 11:48 pm
Location: Biała Podlaska

Post

Parametry OK, a pinologię muszę przekompilowac, ale dziś jestem na wyjeździe...
Poszukaj w dobrach @Zybiego - na pewno jest
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
User avatar
julekjulek
Posts: 36
Joined: Wed Apr 12, 2017 9:26 am

Post

Wgrałem pliki z https://github.com/SUPLA/ESP8266/tree/master/sonoff wg readme

Code: Select all

SUPLA FOR ITEAD SONOFF WiFi Smart Switch + DS18B20
v2.0

boot_v1.5.bin--------->0x00000
sonoff_ds18b20_user1.1024.new.2.bin---->0x01000

RX (GPIO3) - OneWire DAT

BAUDRATE: 115200
Flash Size: 1MByte
Flash speed: 40Mhz
SPI Mode: DIO
Wygląda, że wszystko jest OK (nie sprawdziłem tylko fizycznie odczytów z DS18B20 ponieważ nie przyszły mi jeszcze zamówione elementy).

-----------------------------------------------------------------------

Co do samodzielnej kompilacji, to są jakieś "jaja" ;(
Źródła są aktualne

Code: Select all

supla@supla-iotsdk:~/Devel/supla-espressif-esp$ git pull
Already up-to-date.
Kompilacja np. dla sonoff_ds18b20 daje bezbłędny wynik

Code: Select all

supla@supla-iotsdk:~/Devel/supla-espressif-esp/src$ ./build.sh sonoff_ds18b20
make -C user clean;  make -C driver clean;  make -C supla-dev clean;
make[1]: Wejście do katalogu '/home/supla/Devel/supla-espressif-esp/src/user'
rm -f -r .output/eagle/debug
...
...
!!!
-1594148709
1594148708
Support boot_v1.2 and +
Generate user1.1024.new.2.bin successully in folder bin/upgrade.
boot.bin------------>0x00000
user1.1024.new.2.bin--->0x01000
!!!
supla@supla-iotsdk:~/Devel/supla-espressif-esp/src$ 
Pliki wynikowe z kompilacji to

Code: Select all

supla@supla-iotsdk:~/Desktop/ESP8266-Firmware$ ls -lt
razem 6920
-rw-r--r-- 1 supla supla   1936 maj 14 18:02 boot_v1.2.bin
-rw-r--r-- 1 supla supla 327460 maj 14 18:02 sonoff_ds18b20_user1.1024.new.2.bin
...
Firmware wgrane do modułu z plikiem boot_v1.2.bin "nie wstaje"

Po użyciu boot_v1.5.bin moduł uruchamia się ale jako h801 !!! (wcześniej kompilowałem h801).
Obydwa pliki wynikowe z 2 prób kompilacji sonoff_ds18b20 i h801 są identyczne.

Czy w aktualnych źródłach jest jakiś błąd ?
Jeśli nie ma błędu w źródłach to nie mam pojęcia w jaki sposób wychodzą prawidłowe pliki wynikowe u innych.

Pozdrawiam i proszę o dalszą pomoc,
julek
Wszystko jest możliwe, ale na wszystko jest potrzebny czas ;)
User avatar
slawek
Posts: 2685
Joined: Mon Mar 14, 2016 11:48 pm
Location: Biała Podlaska

Post

W IOT SDK 64- bitowych był błąd.
Być może pobrałeś tą wersję.
zobacz tu:viewtopic.php?f=11&t=2010#p8995
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
vcompl
Posts: 158
Joined: Mon Apr 11, 2016 1:32 pm

Post

No właśnie przechodziłem tą samą flustrację co kolega 'julekjulek' ;)

Slawek - w wątku , który podałeś na końcu jest Twój wpis, że na maszynie 64bit nadal nie działa kompilacja (kompiluje do jednej wersji płytki).

Masz na to już rozwiązanie, która maszyna Dev ma poprawną konfigurację. Jak przenieść poprawną konfigurację na maszynę 64bit?
User avatar
slawek
Posts: 2685
Joined: Mon Mar 14, 2016 11:48 pm
Location: Biała Podlaska

Post

Moją maszynę wtedy Przemek naprawił zdalnie, miałem problem z własnymi kompilacjami, ale też dostosowałem, potem pobrałem nową z repozytorium...i było źle
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
User avatar
slawek
Posts: 2685
Joined: Mon Mar 14, 2016 11:48 pm
Location: Biała Podlaska

Post

Pobiorę jeszcze raz i sprawdzę...
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
User avatar
julekjulek
Posts: 36
Joined: Wed Apr 12, 2017 9:26 am

Post

slawek wrote: Mon May 15, 2017 10:12 pm Pobiorę jeszcze raz i sprawdzę...
Pobrałem z 1 wypowiedzi z wątku, który podałeś.
Myślałem, że linki wskazują najnowszą wersję.
Niestety po uruchomieniu wirtualki okazało się, że to "stare" źródła.
Trochę czasu straciłem ;(

Proszę o wskazanie właściwego pliku maszyny wirtualnej 64bit

ps.
we wskazanym wątku @pzygmunt napisał
Obraz VM dla maszyny x64 ma bug-a w Makefile-u.
Jutro wrzucę poprawną wersję.
Myślałem, że mowa o jakimś jednym niepoprawnym pliku Makefile i jak uaktualnię źródła to ten plik "naprawi się" bez potrzeby ściągania i instalowania na nowo wirtualnej maszyny.
Dlatego byłem zdziwiony, że bez względu na wybór płytki kompiluje się jedna (chyba ta, która była kompilowana jako pierwsza).
Wszystko jest możliwe, ale na wszystko jest potrzebny czas ;)

Return to “Ogólna dyskusja”