Tips på billig WIFI-modul (ESP8266)

Övriga diskussioner relaterade till komponenter. Exempelvis radiorör, A/D, kontaktdon eller sensorer.
Användarvisningsbild
toffie
Inlägg: 1885
Blev medlem: 22 juli 2004, 21:38:07
Ort: Töreboda / Stockholm
Kontakt:

Re: Tips på billig WIFI-modul (ESP8266)

Inlägg av toffie »

Provade att dra in V00180902_02, det blir exakt likadant. Måste dra ur strömmen och låta vara avstängd 10-30 sekunder innan den fungerar när jag slår på strömmen igen.

Hur får du tack på http://www.swemod.com/esp.php?value1=0 ? Via webbläsaren eller via modulen?

Raden är 67 tecken för Swemod adressen, inte för Google. Det är för Google den skulle varit 66 egentligen.

Såg att du hade skrivit in http:// i ditt sista inlägg här ovan, kör du med det? Jag har ju kört utan http:// hela tiden.


Hur som, när jag nu har V00180902_02 versionen så blir det fortfarande samma sak. Servern låser sig.. Ska prova med en ny modul och se vad som händer. Kanske kan det vara fel på modulen? Speciellt om du får svar på adressen ovan, via modulen.. Då är det något som är riktigt knasigt med min modul.

Men jag har inga större förhoppningar.. Ska prova iaf.

EDIT..
Provade en annan modul, den hade firmware version "0018000902-AI03" som default. Får samma fel med att den låser servern när jag försöker komma åt den via modulen.

Hur är hela din kedja med kod? Stämmer den överens med min? Jag kör allt via terminalfönster än så länge, ingen uC!

Kod: Markera allt

AT
Testar så jag får OK att modulen är igång.

AT+CWJAP="SamNET2GHz","xxx"
Ansluter till min router

AT+CIFSR
Kontrollerar IP-nummer

AT+CIPMUX=0
För att man tydligen måste göra detta varje gång man startar?

AT+CIPSTART="TCP","www.google.se",80
AT+CIPSEND=67
GET /esp.php?value1=3\r\n HTTP/1.1\r\nHost: www.swemod.com\r\n\r\n
Får nu "wrong syntax, ERROR"
Vidare har jag kört följande

Kod: Markera allt

AT+CWMODE=1

AT+CIPMODE=0
AT+CIPMODE=1
Inte samtidigt, men verkar inte vara någon skillnad!?

Kan inte heller köra AT+RST då får jag OK och modulen låser sig, på alla firmware utom "Cloud update" versionen



EDIT 2..
Provade att köra följande kod;

Kod: Markera allt

AT+CIPMUX=1

AT+CIPSTART=0,"TCP","www.swemod.com",80
AT+CIPSEND=0,150
GET /esp.php?value1=3\r\n HTTP/1.1\r\nHost: www.swemod.com\r\n\r\n
Och det verkade fungera, har även sett i någon video där de skickar en massa \r\n efter där för att tvinga igenom paketen och då blev visserligen mitt terminalfönster lite knasigt, men servern la inte av. Precis som om anslutningen till servern avslutades och allt var ok. Visserligen kördes inte min sida, så databasen blev inte uppdaterad.. men, servern låste sig inte..

Var ju tvungen att dra ner till längd på 67 igen för att se om det fungerade med en massa \r\n, dvs jag skickar "tomt" paket till modulen genom att bara trycka på enter så jag skickar LF och CR via terminalfönstret.. men det fungerade inte, så nyckeln kanske är längre längd på paketet, sen skicka iväg en massa \r\n..

Men eftersom jag drog ner på längden till 67 så låste jag servern, så nu får jag vänta en 10 minuter igen eller så innan jag kan prova att dra upp längden och se om det fungerar :P

HELKNASIGT! :P
Användarvisningsbild
toffie
Inlägg: 1885
Blev medlem: 22 juli 2004, 21:38:07
Ort: Töreboda / Stockholm
Kontakt:

Re: Tips på billig WIFI-modul (ESP8266)

Inlägg av toffie »

Woah! Nu verkar jag ha hittat något..

Kod: Markera allt

AT+CIPMUX=1

AT+CIPSTART=0,"TCP","www.swemod.com",80
AT+CIPSEND=0,150
GET /esp.php?value1=3\r\n HTTP/1.1\r\nHost: www.swemod.com\r\n\r\n
Sen bara låta det vara, det låser inte servern! Sen får jag tillbaka OK, sedan OK Unlink. Precis som det ska vara! Dock så uppdateras inte databasen fortfarande.. så uppenbarligen kommer jag ju fram till servern, men den kör inte sidan av någon anledning.. hmm..

EDIT..
Även följande fungerar;

Kod: Markera allt

AT+CIPMUX=0

AT+CIPSTART="TCP","www.swemod.com",80
AT+CIPSEND=150
GET /esp.php?value1=3\r\n HTTP/1.1\r\nHost: www.swemod.com\r\n\r\n
Men fortfarande ingen uppdatering i databasen..
Användarvisningsbild
hyperion
Inlägg: 1309
Blev medlem: 8 maj 2009, 21:19:20
Ort: Nynäshamn

Re: Tips på billig WIFI-modul (ESP8266)

Inlägg av hyperion »

och om du provar den sista där, med 66 istället?

Detta får jag till 66 tecken:
GET /esp.php?value1=3\r\n HTTP/1.1\r\nHost: www.swemod.com\r\n\r\n

Detta får jag till 65 tecken:
GET /esp.php?value1=3\r\n HTTP/1.1\r\nHost: www.google.se\r\n\r\n

När jag klistrar in det här: http://www.charcounter.com/


AT+CIPMUX? kan du köra för att kolla vilken mode som modulen kör med som default. Jag tror inte du behöver sätta AT+CIPMUX=0.

Jag hade aldrig problem med att servern slutar svara dock kör jag inte egen server utan kör via one.com. Men jag hade problem med att det såg ut att fungera, fick samma som du, OK, unlink OK osv men det uppdaterade inte databasen.

Prova att sätta AT+CIPMODE=1


Så:

AT+CIPMUX=0
AT+CIPMODE=1
AT+CIPSTART="TCP","www.swemod.com",80
AT+CIPSEND=66
GET /esp.php?value1=3\r\n HTTP/1.1\r\nHost: www.swemod.com\r\n\r\n


Har inte möjlighet att koppla upp en modul till datorn o köra Realterm mot den (kan inte köra några tester då jag plockat ner allt inför stundande stambyte här hemma)
Användarvisningsbild
toffie
Inlägg: 1885
Blev medlem: 22 juli 2004, 21:38:07
Ort: Töreboda / Stockholm
Kontakt:

Re: Tips på billig WIFI-modul (ESP8266)

Inlägg av toffie »

hyperion skrev:...Men jag hade problem med att det såg ut att fungera, fick samma som du, OK, unlink OK osv men det uppdaterade inte databasen.
Hur fick du till det att den faktiskt uppdaterade då? Eller har du inte kommit så långt heller kanske?

När jag sätter AP-CIPMODE=1 så får jag ERROR när jag skickar AT+CIPSEND=66. Så det verkar inte gå.


Följande låser servern;

Kod: Markera allt

AT+CIPMUX=0
AT+CIPMODE=0
AT+CIPSTART="TCP","www.swemod.com",80
AT+CIPSEND=66
GET /esp.php?value1=3\r\n HTTP/1.1\r\nHost: www.swemod.com\r\n\r\n
Förmodligen pga för lågt värde för AT+CIPSEND :( (notera AT+CIPMODE=0, eftersom =1 inte fungerar tillsammans med CIPSEND)
Användarvisningsbild
hyperion
Inlägg: 1309
Blev medlem: 8 maj 2009, 21:19:20
Ort: Nynäshamn

Re: Tips på billig WIFI-modul (ESP8266)

Inlägg av hyperion »

För mig funkar det fint. Det som gjorde att jag hade problem i början var att jag inte hade med host: www.blablabla.com etc.

Vet inte vad det är som strular för dig.
Användarvisningsbild
toffie
Inlägg: 1885
Blev medlem: 22 juli 2004, 21:38:07
Ort: Töreboda / Stockholm
Kontakt:

Re: Tips på billig WIFI-modul (ESP8266)

Inlägg av toffie »

Nej jag vet verkligen inte heller. Har provat fram och tillbaka med olika firmware också, när jag gick ifrån cloud update till annan och sedan tillbaka så får jag samma startproblem även med cloud update firmware.

Jag kan heller inte använda AT+RST. modulen låser sig och av någon anledning så verkar den bli väldigt varm om jag lämnar den i det läget. Ingen aning varför..

Kör ju 3.3V, 800mA supply.. använder en logic converter mellan min STK500 som agerar COM-UART brygga för att få ner spänningen från 5V till 3.3V även på datatrådarna. CH_PD är kopplad till 3.3V, GPIO0 flyter när den inte är kopplad till GND för firmware update.

Väldigt störande, speciellt som att AT+RST fungerade utan problem alls på cloud firmware tidigare..

Ska nog ta och öppna en tråd på ESP8266 forumet och se om de kan hjälpa till.. :(
Tack ändå för all hjälp hyperion!
Användarvisningsbild
hyperion
Inlägg: 1309
Blev medlem: 8 maj 2009, 21:19:20
Ort: Nynäshamn

Re: Tips på billig WIFI-modul (ESP8266)

Inlägg av hyperion »

Jag har kopplat min enl följande:

GND till GND :)
VCC till VCC
RESET till VCC
CH_PD till VCC

Sen TX/RX.

GPIO 0 och GPIO 2 är flytande.
esp8266_pinout_h-569x236.png
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
Användarvisningsbild
toffie
Inlägg: 1885
Blev medlem: 22 juli 2004, 21:38:07
Ort: Töreboda / Stockholm
Kontakt:

Re: Tips på billig WIFI-modul (ESP8266)

Inlägg av toffie »

Ja det stämmer ju överens med vad jag har. Jag har inte kopplat RESET till VCC dock, men när jag provade det så stannade modulen i RESET läge verkar det som, för ingenting händer alls. Det är bara röda lysdioden som lyser men blåa reagerar inte.

Oavsett hur länge spänningen varit av för modulen. Samma om jag kopplar in RESET till GND.

Så för mig måste RESET vara flytande :humm:
Användarvisningsbild
toffie
Inlägg: 1885
Blev medlem: 22 juli 2004, 21:38:07
Ort: Töreboda / Stockholm
Kontakt:

Re: Tips på billig WIFI-modul (ESP8266)

Inlägg av toffie »

Provade bara för skojs skull att köra med Thingspeak..
Modulen verkar ju ansluta ok och allt, men filen hos Thingspeak körs aldrig, så värdena uppdateras inte..

Det kan ju inte vara helt fel på modulerna eller ens alla de olika firmware jag har provat.. Ska inte vara varken någon brandvägg eller router som blockerar något hos mig.. Jag kör kod som alla andra kör.. följande Youtube video är ju ganska genomgående och jag har kört exakt samma som han, förutom att jag har min egen Thingspeak API nyckel förstås. Och adressen jag skickar till min ESP8266 modul kan jag köra i webbläsaren och det fungerar ju utan problem..



Det är för mig ett helt gigantiskt svart hål, jag förstår inte vad jag gör för fel.. det måste ju vara mig det är fel på, annars borde det ju fungera.. Nu ska jag släppa det här och kolla på TV istället..

Hoppas att alla som följer och postat i denna tråd lyckas bättre än mig :) För mitt skräp åker snart i soporna! :)
Användarvisningsbild
hyperion
Inlägg: 1309
Blev medlem: 8 maj 2009, 21:19:20
Ort: Nynäshamn

Re: Tips på billig WIFI-modul (ESP8266)

Inlägg av hyperion »

Vilket terminalprogram kör du?

Prova Realterm om du inte gjort det redan.
Användarvisningsbild
lond
Inlägg: 3547
Blev medlem: 23 september 2009, 11:52:45
Ort: Hyssna

Re: Tips på billig WIFI-modul (ESP8266)

Inlägg av lond »

Min pH-sensor har skickat data till ThingSpeak sedan den 5/12.

Utgick från en arduino sketch där man bland annat skrev att man skall använda IP-nummer istället för adress.

/// Marcus
Användarvisningsbild
hyperion
Inlägg: 1309
Blev medlem: 8 maj 2009, 21:19:20
Ort: Nynäshamn

Re: Tips på billig WIFI-modul (ESP8266)

Inlägg av hyperion »

IP nummer istället för DNS adress stämde i början, innan första firmwareuppdateringarna kom. Sedan dess har DNS-uppslag fungerat.
Användarvisningsbild
toffie
Inlägg: 1885
Blev medlem: 22 juli 2004, 21:38:07
Ort: Töreboda / Stockholm
Kontakt:

Re: Tips på billig WIFI-modul (ESP8266)

Inlägg av toffie »

Ja den klagar inte när jag använder adress och jag har ju provat 3 olika firmware. Just när det gäller SweMOD servern kan jag inte använda IP heller då jag har flera sajter på samma IP adress, då kommer jag bara till en temp-sida som säger att servern finns.

Så det kan jag inte ens prova tyvärr, men som sagt, jag "tror" inte att det ska göra någon skillnad.


En liten update dock..
Jag skippade logic level converter och min STK500 som jag kört över enda sen början, vilket har fungerat tidvis och nästan hela tiden. Men jag tog fram en USB-UART modul med en CP2102 krets på, den varken kan eller ville :P driva ESP8266 modulen (vilket jag även visste att den inte kunde), men jag körde med min föregående 3.3V power supply tillsammans med RX/TX på USB modulen, plus att jag kopplade ihop GND på mitt power supply (vet inte vad jag ska kalla det just nu! AAAH.. minnesförlust) och på USB modulen..

Nu har jag INGA startproblem, jag kan köra AT+RST utan problem.. dock så är det fortfarande så att inget händer varken på Thingspeak eller på min server när jag försöker få åtkomst till dem via ESP8266 modulen.

Men två problem är ju lösta, det med start och reset :)

lond
Vad är det för PF sensor du kör med? Har du inte skrivit något om det här tidigare? Du har möjligen ingen kod som, eller ja.. kod och kod.. det är väl snarare sekvensen av kommandona som är intressanta. Du har inget sånt man kan få kika på eller?

Känner mig lite friskare i huvudet nu när jag åtminstone fått ordning på de två problemen.. Nu ska jag gå och kolla på TV ;)
Användarvisningsbild
lond
Inlägg: 3547
Blev medlem: 23 september 2009, 11:52:45
Ort: Hyssna

Re: Tips på billig WIFI-modul (ESP8266)

Inlägg av lond »

Här är min kod (WIFI och API-nycklar krypterade :) ) :

Kod: Markera allt

pH-sens.bas

'µP
;-------------------------------------------------------------------------------
;**** Added by Fuse Configurator ****
; Use the Fuse Configurator plug-in to change these settings

Device = 16F690

Config FOSC_INTRCIO, WDTE_OFF, PWRTE_OFF, MCLRE_OFF, CP_OFF, CPD_OFF, BOREN_OFF, IESO_OFF, FCMEN_OFF

;**** End of Fuse Configurator Settings ****
;-------------------------------------------------------------------------------
        
        Declare Reminders = OFF
        
'µP speed
        Xtal = 8
        
'Bootloader
        Declare Bootloader = 0          

'ALL_DIGITAL
        Declare All_Digital = TRUE                  
                
' -----[ I/O Definitions ]-------------------------------------------------

        Symbol LED = PORTC.2
                
        'Hw RX/TX
        Declare Hserial_Baud = 9600     	' Set baud rate to 9600
        Declare Hserial_RCSTA = %10010000 	' Enable serial port and continuous receive
        Declare Hserial_TXSTA = %00100000 	' Enable transmit and asynchronous mode
        Declare Hserial_Clear = On      	' Clear the buffer before receiving
        
        'Sw RX/TX
        Declare Rsin_Pin = PORTC.1
        Declare Rsout_Pin = PORTC.0
        Declare Serial_Baud = 9600
        Declare Rsin_Mode = 0
        Declare Rsout_Mode = 0

' -----[ Constants ]-------------------------------------------------------

        Dim CR As $0D                       ' Carriage Return
        Dim LF As $0A                       ' Line Feed
        Dim DQ As $22                       ' Double Quote "
        
' -----[ Variables ]-------------------------------------------------------

        Dim I2cData As Byte                 ' Data on i2c bus
        
        Dim Loop As Byte                    ' Loopcounter

        Dim CharPos As Word                 ' Character Position in the eeprom
        Dim ArrayPos As Word                ' Character Position in the eeprom
        Dim POST[100] As Byte
        Dim PH[20] As Byte
       
' -----[ EData ]----------------------------------------------------------------

AP EData "hemma", 0
PASS EData "xxxxxxxxxxxxxxxxx", 0
IP EData "184.106.153.149", 0   ' api.thingspeak.com
API EData "GET /update?key=XXXXxxxxXXXXxxxx&field1=", 0
Ending EData "\r\n", 0

' -----[ Initialization ]--------------------------------------------------

OSCCON = %01110000      ' 8MHz
'OSCCON = %01100000      ' 4MHz

High LED

RSOut "E", CR

DelayMS 2000

RSOut "E", CR

DelayMS 1000

RSOut "15.00", CR

DelayMS 60000

' -----[ Program Code ]----------------------------------------------------

Main:

Low LED

RSOut "R", CR

Loop = 0
While 1 = 1
    I2cData = RSIn
    If I2cData = CR Then Break
    If Loop = 20 Then Break
    PH[Loop] = I2cData
    Inc Loop
Wend
PH[Loop] = 0

If PH[0] > "9" Or PH[0] < "0" Then
    High LED
    DelayMS 2000
    GoTo Main
EndIf

DelayMS 2000

GoSub resetWIFI

DelayMS 5000

GoSub connectWIFI

DelayMS 5000

GoSub postDATA

For Loop = 1 To 120
    DelayMS 60000
Next

GoTo Main

End

' -----[ Subroutines ]-----------------------------------------------------

postDATA:

Clear POST

ArrayPos = 0
CharPos = API
While 1 = 1
    I2cData = ERead CharPos
    If I2cData = 0 Then Break
    POST[ArrayPos] = I2cData
    Inc CharPos
    Inc ArrayPos
Wend

CharPos = 0
While 1 = 1
    If PH[CharPos] = 0 Then Break
    POST[ArrayPos] = PH[CharPos]
    Inc CharPos
    Inc ArrayPos
Wend

CharPos = Ending
While 1 = 1
    I2cData = ERead CharPos
    If I2cData = 0 Then Break
    POST[ArrayPos] = I2cData
    Inc CharPos
    Inc ArrayPos
Wend

POST[ArrayPos] = 0

HSerOut ["AT+CIPSTART=", DQ, "TCP", DQ, ",", DQ]
CharPos = IP
While 1 = 1
    I2cData = ERead CharPos
    If I2cData = 0 Then Break
    HSerOut [I2cData]
    Inc CharPos
Wend

HSerOut [DQ, ",80", CR, LF]

DelayMS 1000

HSerOut ["AT+CIPSEND=", Dec ArrayPos, CR, LF]

While 1 = 1
    HSerIn [I2cData]
    If I2cData = ">" Then Break
Wend

'HSerOut ["AT+CIPSEND="]

CharPos = 0
While 1 = 1
    I2cData = POST[CharPos]
    If I2cData = 0 Then Break
    HSerOut [I2cData]
    Inc CharPos
Wend
HSerOut [CR, LF]

Return

resetWIFI:

HSerOut ["AT+RST", CR, LF]

Return

connectWIFI:

HSerOut ["AT+CWMODE=1", CR, LF]

DelayMS 2000

HSerOut ["AT+CWJAP=", DQ]
CharPos = AP
While 1 = 1
    I2cData = ERead CharPos
    If I2cData = 0 Then Break
    HSerOut [I2cData]
    Inc CharPos
Wend
HSerOut [DQ, ",", DQ]
CharPos = PASS
While 1 = 1
    I2cData = ERead CharPos
    If I2cData = 0 Then Break
    HSerOut [I2cData]
    Inc CharPos
Wend
HSerOut [DQ, CR, LF]

' Check if connection is OK.

Return

End
Inte den snyggaste koden, håller på att förbättra den :)

/// Marcus
Senast redigerad av lond 27 december 2014, 00:29:42, redigerad totalt 1 gång.
Användarvisningsbild
lillahuset
Gått bort
Inlägg: 13969
Blev medlem: 3 juli 2008, 08:13:14
Ort: Norrköping

Re: Tips på billig WIFI-modul (ESP8266)

Inlägg av lillahuset »

Jag följer med glädje den här tråden. Kul att se engagemanget.
Själv är jag bara, än så länge, en parasit men jag hoppas vi kan åstadkomma någon typ av "kunskapsbas" för den här kretsen.
Idag är ju tyvärr dokumentationen "så där".

Som man säger hos våra kusiner och deras kusiner, "Keep up the good job",
Skriv svar