S20 Smart Socket kompilacja v2.0.2

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

Fri May 12, 2017 12:51 pm

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: 2216
Joined: Mon Mar 14, 2016 11:48 pm
Location: Biała Podlaska

Fri May 12, 2017 7:15 pm

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.
Attachments
SONOFF_DHT_DS.rar
(225.61 KiB) Downloaded 120 times
Gdy wszystkie możliwe sposoby zawiodą - pozostaje przeczytać instrukcję...
User avatar
julekjulek
Posts: 29
Joined: Wed Apr 12, 2017 9:26 am

Sun May 14, 2017 7:22 am

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
Attachments
S20_EU.SCH.pdf
(68.33 KiB) Downloaded 150 times
Wszystko jest możliwe, ale na wszystko jest potrzebny czas ;)
User avatar
slawek
Posts: 2216
Joined: Mon Mar 14, 2016 11:48 pm
Location: Biała Podlaska

Sun May 14, 2017 8:21 am

Parametry OK, a pinologię muszę przekompilowac, ale dziś jestem na wyjeździe...
Poszukaj w dobrach @Zybiego - na pewno jest
Gdy wszystkie możliwe sposoby zawiodą - pozostaje przeczytać instrukcję...
User avatar
julekjulek
Posts: 29
Joined: Wed Apr 12, 2017 9:26 am

Sun May 14, 2017 4:31 pm

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: 2216
Joined: Mon Mar 14, 2016 11:48 pm
Location: Biała Podlaska

Mon May 15, 2017 6:16 pm

W IOT SDK 64- bitowych był błąd.
Być może pobrałeś tą wersję.
zobacz tu:viewtopic.php?f=11&t=2010#p8995
Gdy wszystkie możliwe sposoby zawiodą - pozostaje przeczytać instrukcję...
vcompl
Posts: 156
Joined: Mon Apr 11, 2016 1:32 pm

Mon May 15, 2017 9:55 pm

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: 2216
Joined: Mon Mar 14, 2016 11:48 pm
Location: Biała Podlaska

Mon May 15, 2017 10:09 pm

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
Gdy wszystkie możliwe sposoby zawiodą - pozostaje przeczytać instrukcję...
User avatar
slawek
Posts: 2216
Joined: Mon Mar 14, 2016 11:48 pm
Location: Biała Podlaska

Mon May 15, 2017 10:12 pm

Pobiorę jeszcze raz i sprawdzę...
Gdy wszystkie możliwe sposoby zawiodą - pozostaje przeczytać instrukcję...
User avatar
julekjulek
Posts: 29
Joined: Wed Apr 12, 2017 9:26 am

Tue May 16, 2017 12:52 am

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 ;)
Post Reply