Acties:
  • 0 Henk 'm!

  • lintweaker
  • Registratie: Oktober 2002
  • Laatst online: 15-08 14:59
Sinds gisteren in het bezit van een nodemcu v1 devkit en nu een beetje aan het spelen met lua en 1-wire ds18b20 sensors. Het uitlezen van de temperatuur werkt prima alleen het bepalen van het aantal sensoren lukt niet. Dit geeft altijd 0 terug, terwijl er 1 of 2 aangesloten zijn.

Dit stuk van de node geeft altijd 'nil' terug ipv een geldig adres:
code:
1
addr = ow.search(ds_pin)


Iemand hier ervaring mee?

Dit stuk code geeft altijd 0 terug:
code:
1
2
3
4
5
6
7
gpio = 5

ds18b20.setup(gpio)
addrs = ds18b20.addrs()
if (addrs ~= nil) then
 print("Total DS18B20 sensors: "..table.getn(addrs))
end

Acties:
  • 0 Henk 'm!

  • Mad Maniak
  • Registratie: September 2010
  • Laatst online: 18-03-2024
Ik zie zulke mooie dingen dat ik me een beetje outclassed voel, maar ik heb een arduino projectje met de ESP8266 gemaakt (en vond verrast dit topic). Het is een apparaatje geworden waar de Arduino Pro Mini, ESP en diverse sensoren als modules ingeprikt zitten op een printplaatje. Bij interesse plaats ik graag wat fotos en evt. de code / bouwtekening.
In elk geval kan iedereen hier zien hoe warm en vochtig mijn kelder is (elk half uur geupdate): https://thingspeak.com/channels/17651

Acties:
  • 0 Henk 'm!

  • Icekiller2k6
  • Registratie: Februari 2005
  • Laatst online: 09:06
Netjes, als je je verveeld kijk dan eens naar de airpi voor wat er allemaal te meten is' sowieso raad ik je aan om een github te maken en het daar op te zetten! Al is het voor jezelf een backup en versie control

MT Venus E 5KW (V151) P1 HomeWizard | Hackerspace Brixel te Hasselt (BE) - http://www.brixel.be | 9800X3D, 96GB DDR5 6000MHZ, NVIDIA GEFORCE 4090, ASRock X670E Steel Legend, Seasonic GX1000


Acties:
  • 0 Henk 'm!

  • RobV
  • Registratie: Juni 2013
  • Niet online

RobV

Welcome to the grid, Program.

(overleden)
Icekiller2k6 schreef op maandag 15 juni 2015 @ 00:09:
Netjes, als je je verveeld kijk dan eens naar de airpi voor wat er allemaal te meten is' sowieso raad ik je aan om een github te maken en het daar op te zetten! Al is het voor jezelf een backup en versie control
Bitbucket is net als github maar heeft onbeperkte private repositories, misschien heb je er wat aan

 | Mijn joystick / simpit project | Blog | Elite Dangerous CMDR Cataclysm72


Acties:
  • 0 Henk 'm!

  • Mars Warrior
  • Registratie: Oktober 2003
  • Laatst online: 14:05

Mars Warrior

Earth, the final frontier

RobV schreef op maandag 15 juni 2015 @ 09:10:
[...]

Bitbucket is net als github maar heeft onbeperkte private repositories, misschien heb je er wat aan
Als je private repositories wilt zou ik eerder GitLab gebruiken, maar dat is mogelijk iets van persoonlijke voorkeur...

Material 3 Thema's voor HA | Swiss Army Knife custom card voor HA | AmoebeLabs


Acties:
  • 0 Henk 'm!

  • edjeed
  • Registratie: April 2011
  • Niet online
Heeft iemand al geprobeerd een WPA2-enterprise (PEAP) connectie op te zetten?
Ik wil gebruik gaan maken van Ziggo wifispots, zodat ik mijn module buitenshuis kan laten connecten met mijn lokale MQTT broker.

Ik maak nu gebruik van nodemcu, maar als dat een beperking is stap ik over naar de originele SDK van Espressif.
Mijn project moet gaan draaien op zonne energie, als ik geen WPA2-enterprise connectie kan opzetten moet ik een raspberry pi gaan gebruiken met een wifi dongle (wat toch een hoop meer stroom nodig heeft dan mijn eigen print met de ESP8266).

Acties:
  • 0 Henk 'm!

Verwijderd

edjeed schreef op maandag 15 juni 2015 @ 11:34:

Ik wil gebruik gaan maken van Ziggo wifispots
dat wil ik ook.. (maar kan je wel vergeten met een esp denk ik)

* nieuwe firmware/sdk wellicht wel :?

[ Voor 11% gewijzigd door Verwijderd op 15-06-2015 14:33 ]


Acties:
  • 0 Henk 'm!

  • Mars Warrior
  • Registratie: Oktober 2003
  • Laatst online: 14:05

Mars Warrior

Earth, the final frontier

Verwijderd schreef op maandag 15 juni 2015 @ 12:51:
[...]


dat wil ik ook.. (maar kan je wel vergeten met een esp denk ik)
Volgens de datasheet:

The SDK includes the following library functions:
  • 802.11 b/g/n/d/e/i/k/r support;
  • Wi-Fi Direct (P2P) support:
  • P2P Discovery, P2P Group Owner mode, P2P Power Management
  • Infrastructure BSS Station mode / P2P mode / softAP mode support;
  • Hardware accelerators for CCMP (CBC-MAC, counter mode), TKIP (MIC, RC4), WAPI
    (SMS4), WEP (RC4), CRC;
  • ESP8266 802.11bgn Smart Device
  • WPA/WPA2 PSK, and WPS driver;
  • Additional 802.11i security features such as pre-authentication, and TSN;
  • Open Interface for various upper layer authentication schemes over EAP such as TLS,
    PEAP, LEAP, SIM, AKA, or customer specific;
Dus zou moeten kunnen?????

[ Voor 3% gewijzigd door Mars Warrior op 15-06-2015 13:32 ]

Material 3 Thema's voor HA | Swiss Army Knife custom card voor HA | AmoebeLabs


Acties:
  • 0 Henk 'm!

  • LamSchaap
  • Registratie: September 2007
  • Laatst online: 09-09 19:44
Sprite_tm schreef op vrijdag 05 juni 2015 @ 13:08:
Misschien interessant voor hier: Een zekere Nederlandse hacker die op dit moment in Shanghai zit en voor Espressif werkt O-) heeft een MP3 decoder naar de ESP8266 geport: Met een paar onderdelen (I2S DAC en SPI RAM) kan je MP3-data in 48KHz 16bit mono streamen, zonder die onderdelen kan je alsnog MP3 streamen maar word de geluidskwaliteit lager en de gevoeligheid voor netwerk-hikjes hoger. Code en verdere details staan op de officieele Github van Espressif/
Haha, jij bent dus die Jeroen waar ze over praten. "most powerful LeXin engineer" :9 Helaas bent ik niet aanwezig op de Shenzhen Maker faire. Zit paar dagen in Shijiazhuang. Ben pas 24ste terug in Shenzhen.

Kwalitatief blaten


Acties:
  • 0 Henk 'm!

  • TNW
  • Registratie: Januari 2007
  • Laatst online: 09-09 14:01

TNW

Ik heb hier dus ook mijn dev bordjes binnen, 2x een nodemcu "Amica" uit China. Wat ik wil doen is een aantal sensoren, DS18b20 (meerdere), DHT11, BMP085 en nog een analoge lichtsensor aansluiten en hiervan de waardes op een webpagina afbeelden.

Ik ben nu bezig met eerst de DS18B20 maar krijg het niet aan het werk. Ik draai volgens de chip NodeMCU 0.9.5 build 20150318 powered by Lua 5.1.4 en heb de volgende code in init.lua staan:

https://raw.githubusercon...sensors/wireless/init.lua

De DS1820 is met DQ aangesloten op "D2" op de print, dit zou GPIO04 moeten zijn. Verder dus Vdd aan 3.3v, ground naar gnd en een 4k7 pull-up van 3.3v naar DQ. Helaas krijg ik geen geldige temperatuurmeting, de webpagina zegt:

nettemp.pl ds18b20
Temperature: -1.625

Met een andere DS18b20 werkt het ook niet. Wat doe ik fout, zit ik wel op de goede pin te luisteren?

-edit- onjuiste pin inderdaad, nu werkt het. D2 betekent gewoon pin 2 in de code 8)7

Heeft iemand een leuk stukje code die gewoon alle gedetecteerde 1-wire sensoren met hex id uitprint op een webpagina?

Weblog | Straling!


Acties:
  • 0 Henk 'm!

  • nhimf
  • Registratie: September 2000
  • Laatst online: 03-09 09:46

nhimf

Lekker belangrijk allemaal

Goed voor de 7 segmenten displays een hele mooie chip gevonden: TLC5947
Deze lost mijn problemen met de TLC5940 in een keer op, geen externe PWM of blank flippen elke 4096 pulses. Ook kan ik met deze ene chip 3 7segmenten displays in een keer aansturen. Wel minder current sink per kanaal, maar 30mA is meer dan zat (10-20 is max wat ik nodig heb).

Wel veel traces op het bordje maar het past allemaal ;)

Ik zal van de week wel een schematic en preview geroute bordje posten.

Ik stink niet, ik ruik gewoon anders


Acties:
  • 0 Henk 'm!

Verwijderd


Acties:
  • 0 Henk 'm!

  • BenPi
  • Registratie: Februari 2013
  • Laatst online: 23-09-2024
Beste tweakers.

Ik ben ook geinteresseerd geraakt in de ESP8266.
Heb daar al diverse projekten nagemaakt via de enorme info hier en verder op internet.
Doorsensor, temperatuur meten met DS1820 en via I2c de LM75, Blinking Led etc.
Alles met ESPLORER / LUA software.
Gaat eigenlijk best goed.
Mijn ervaring is basic/picbasic en veel zoeken en samenvoegen van snippets op www.
Maar je wilt verder en loop nu tegen de vele mogelijkheden om te programmeren / flashen.
Er wordt gesproken over bijv, Eclipse Toolchain SDK LUA cc cc+ enz. enz.
Hier is het overzicht voor mij eigenlijk zoek.
Kan iemand misschien uitleggen wat de diverse software pakketten en termen van verschil maken.
Wat kan ik het best gaan installeren en gebruiken?
Ik werk zelf met een linux mint, 32bit PC.
Kan ook eventueel Win7 worden.
Daarnaast draait een raspberry pi als logger voor energie en een eigen gemaakte homebus op basis van I2C.


Kan iemand uitleggen

Acties:
  • +1 Henk 'm!

  • Belgar
  • Registratie: Januari 2002
  • Laatst online: 10-09 11:47

Belgar

Archmaster ranzige code..

Je hebt verschillende dingen:

- De taal waarin je programma's wil schrijven: LUA, BASIC, C, C++, Python.

- De software development kit (SDK): Een groep beschikbaar gestelde tools / drivers / extensies om effectief te kunnen ontwikkelen in de gekozen taal voor je hardware. Dit is dus in principe de ondersteuning vanuit de fabrikant of de mensen die tools beschikbaar stellen (esptool etc) en is de delta ten opzichte van alleen de taal en het effectief kunnen gebruiken ervan.

- je ontwikkelomgeving: hier schrijf je je programma's. De meest eenvoudige is gewoon een tekstverwerker. Vi, note, edit, etc. etc. Een stap naar boven is een programma die ook de syntax van de gebruikte taal kan herkennen (notepad++ etc). Als laatste een volledig geïntegreerde omgeving die je programma ook direct verbind met je compiler/debugger etc. In jouw voorbeeld valt "eclipse" hieronder.

- Vervolgens ga je je programma compileren naar iets wat de chip kan begrijpen. In het geval van een programma voor x86 kan dat natuurlijk direct op de PC. Helaas (of waarschijnlijk gelukkig qua verbruik) is de chip op de ESP geen x86, maar een risk architectuur. Je hebt dus een Cross-Compiler nodig die op de x86 chipset van je PC instructies kan fabriceren voor de LX3 risk core op de ESP.

- een tool chain is in principe letterlijk het aan elkaar koppelen van al deze dingen om met "1 druk op de knop" van programma tot resultaat te komen. Vaak wordt het ook gebruikt om alleen de koppeling compiler <> crosscompiler aan te duiden.

Je schrijft dus bijvoorbeeld een programma in een taal in een programmeer omgeving op je PC dat via een compiler wordt omgezet in een intermediate. Deze intermediate wordt met een crosscompiler omgezet in machinetaal voor je ESP. De machinetaal laad je vervolgens met tools uit de SDK naar je ESP ;)

In het geval dat je ESP een interpreter voor een taal aan boord heeft, zoals bijvoorbeeld LUA, dan kun je bijna alle stappen overslaan en hoef je alleen het programma beschikbaar te stellen en zijn bijna alle bovenstaande stappen niet meer zo relevant. Dat proces is dus veel eenvoudiger.

...Als het maar werkt


Acties:
  • 0 Henk 'm!

  • BenPi
  • Registratie: Februari 2013
  • Laatst online: 23-09-2024
Op deze manier omschreven geeft meteen duidelijkheid. SUPER.

Houdt dan ook in, dat er afhankelijk van de snippets code die ik vind, er verschillende compileer mogelijkheden nodig zijn.

Wat is het advies ?

Acties:
  • 0 Henk 'm!

  • Belgar
  • Registratie: Januari 2002
  • Laatst online: 10-09 11:47

Belgar

Archmaster ranzige code..

Als je nodeMCU gebruikt is die reeds gecompileerd en zijn de snippets "LUA" die lokaal geïnterpreteerd worden. Er is verder geen enkele stap nodig. Beetje afhankelijk van de context dus.

Als je zelf firmware gaat schrijven of programma's bovenop de huidige firmware wil maken dan zul je mogelijk het hele proces door moeten. Of als je bijvoorbeeld zelf een versie van nodemcu wil maken met meer/minder mogelijkheden en libraries.

...Als het maar werkt


Acties:
  • 0 Henk 'm!

  • nhimf
  • Registratie: September 2000
  • Laatst online: 03-09 09:46

nhimf

Lekker belangrijk allemaal

edjeed schreef op dinsdag 02 juni 2015 @ 15:36:
[...]


Kijk eens naar de cstce12 deze is klein en heeft geen externe caps nodig.
Ik heb deze ook toegepast bij de CH340G en werkt prima.

http://www.digikey.com/ca...eralock-cstce-series/5087

Ook te bestellen via aliexpress
Ik heb beiden binnen en ziet er erg mooi uit :)
Wat ik mij afvraag is of de weerstanden die in de voorbeelden van de datasheet er tussen moeten?
Ik zie bijvoorbeeld dat er tussen de twee pinnen 1Mohm weerstand moet. Moet dit echt, of kan ik hem gewoon direct aan de ch340g hangen? En maak het uit als ik hem verkeerd om eraan hang? (zoals bij een normaal kristal geen probleem is)

edit:
Ik zie het al: http://electronics.stacke...d-resistor-across-crystal
Volgens mij komt het er op neer dat hij er alleen op zit om de resonator op te starten. In theorie kan hij weg, mits hij genoeg ruis oppikt ;) (of de chip heeft het intern zitten)

[ Voor 16% gewijzigd door nhimf op 19-06-2015 14:17 ]

Ik stink niet, ik ruik gewoon anders


Acties:
  • 0 Henk 'm!

  • edjeed
  • Registratie: April 2011
  • Niet online
nhimf schreef op vrijdag 19 juni 2015 @ 13:45:
[...]


Ik heb beiden binnen en ziet er erg mooi uit :)
Wat ik mij afvraag is of de weerstanden die in de voorbeelden van de datasheet er tussen moeten?
Ik zie bijvoorbeeld dat er tussen de twee pinnen 1Mohm weerstand moet. Moet dit echt, of kan ik hem gewoon direct aan de ch340g hangen? En maak het uit als ik hem verkeerd om eraan hang? (zoals bij een normaal kristal geen probleem is)

edit:
Ik zie het al: http://electronics.stacke...d-resistor-across-crystal
Volgens mij komt het er op neer dat hij er alleen op zit om de resonator op te starten. In theorie kan hij weg, mits hij genoeg ruis oppikt ;) (of de chip heeft het intern zitten)
Dit is afhankelijk van het oscillator circuit in de chip. Bij de CH340G is de weerstand niet nodig. (proefondervindelijk vast gesteld, omdat de vertaalde chinese specs niet echt duidelijke info bevatten)

Acties:
  • 0 Henk 'm!

  • nhimf
  • Registratie: September 2000
  • Laatst online: 03-09 09:46

nhimf

Lekker belangrijk allemaal

edjeed schreef op vrijdag 19 juni 2015 @ 14:32:
[...]


Dit is afhankelijk van het oscillator circuit in de chip. Bij de CH340G is de weerstand niet nodig. (proefondervindelijk vast gesteld, omdat de vertaalde chinese specs niet echt duidelijke info bevatten)
Dat is mooi! Ik heb net gemeten, maar (zonder stroom erop) meet ik niets (er loopt geen stroom) dus zou je verwachten dat hij er wel op zou moeten.
Maar weglaten ben ik altijd voorstander van :-)

Ik stink niet, ik ruik gewoon anders


Acties:
  • 0 Henk 'm!

  • BenPi
  • Registratie: Februari 2013
  • Laatst online: 23-09-2024
Een tip:

Nu ook Arduino-compatible IDE with ESP8266 support :)

Met de bekende Arduino-IDE direkt ESP-ondersteuning met mooie examples!

Ik ben nu deze sketch aan het testen met: http://www.esp8266.com/viewtopic.php?f=28&t=2175 :*)
Met o.a. server / mqtt / accespoint en reboot.

Acties:
  • 0 Henk 'm!

  • nhimf
  • Registratie: September 2000
  • Laatst online: 03-09 09:46

nhimf

Lekker belangrijk allemaal

Eerste pre-release schematic van de thermometer.

Dit alles moet op een bordje van 5x5cm komen :-)
Stiekum eea van NodeMCU geleend (zoals de auto program circuit)

http://nhimf.org/upload/ESP8266-Thermometer.png

Ik stink niet, ik ruik gewoon anders


Acties:
  • 0 Henk 'm!

  • Vuikie
  • Registratie: December 2003
  • Laatst online: 08:13
BenPi schreef op zondag 21 juni 2015 @ 12:34:
Een tip:

Nu ook Arduino-compatible IDE with ESP8266 support :)

Met de bekende Arduino-IDE direkt ESP-ondersteuning met mooie examples!

Ik ben nu deze sketch aan het testen met: http://www.esp8266.com/viewtopic.php?f=28&t=2175 :*)
Met o.a. server / mqtt / accespoint en reboot.
Misschien een schaamteloze plug, maar: https://github.com/ajvuik...ter/MQTT_Node_ESP8266.ino

;)

Acties:
  • 0 Henk 'm!

  • BenPi
  • Registratie: Februari 2013
  • Laatst online: 23-09-2024
@Vuikie
Misschien een schaamteloze plug, maar: https://github.com/ajvuik...ter/MQTT_Node_ESP8266.ino
Ik probeer de "plug" van jou maar krijg compile error.

code:
1
2
 /home/test/arduino-1.6.5/libraries/pubsubclient-master/src/PubSubClient.h:16:7: note:   candidate expects 1 argument, 4 provided
no matching function for call to 'PubSubClient::PubSubClient(byte [4], int, void (&)(char*, byte*, unsigned int), WiFiClient&)'


Heb je een hint ?

Acties:
  • 0 Henk 'm!

  • bluewalk
  • Registratie: Juli 2004
  • Niet online
BenPi schreef op woensdag 24 juni 2015 @ 16:55:
@Vuikie
[...]

Ik probeer de "plug" van jou maar krijg compile error.
....
hint ?
Volgens mij is de callback anders, ik heb hem namelijk zo:
C++:
1
2
3
4
5
void mqttCallback(const MQTT::Publish& pub) {
  Serial.print(pub.topic());
  Serial.print(" => ");
  Serial.println(pub.payload_string());
}

[ Voor 26% gewijzigd door bluewalk op 24-06-2015 18:03 ]


Acties:
  • 0 Henk 'm!

  • Vuikie
  • Registratie: December 2003
  • Laatst online: 08:13
BenPi schreef op woensdag 24 juni 2015 @ 16:55:
@Vuikie


[...]


Ik probeer de "plug" van jou maar krijg compile error.

code:
1
2
 /home/test/arduino-1.6.5/libraries/pubsubclient-master/src/PubSubClient.h:16:7: note:   candidate expects 1 argument, 4 provided
no matching function for call to 'PubSubClient::PubSubClient(byte [4], int, void (&)(char*, byte*, unsigned int), WiFiClient&)'


Heb je een hint ?
Klinkt als een andere library dan die ik gebruik.

Probeer deze libraries eens:
https://onedrive.live.com...OpQ_LLDw&ithint=file%2c7z

[ Voor 4% gewijzigd door Vuikie op 24-06-2015 20:07 ]


Acties:
  • 0 Henk 'm!

  • BenPi
  • Registratie: Februari 2013
  • Laatst online: 23-09-2024
Ik werk met Arduino 1.6.5

De error is weg maar nu ,na install van jouw lib krijg ik volgende error ook bij de bijgevoegde examples zoals mqtt_basic :'(

code:
1
2
3
4
5
In file included from MQTT_Node_ESP8266.ino:11:0:
/home/test/arduino-1.6.5/libraries/pubsubclient-master/src/PubSubClient.h:72:46: error: section attribute not allowed for '<anonymous>'
    boolean publish_P(char *, uint8_t PROGMEM *, unsigned int, boolean);
                                              ^
Fout bij compileren.

[ Voor 4% gewijzigd door BenPi op 24-06-2015 20:47 ]


Acties:
  • 0 Henk 'm!

  • Vuikie
  • Registratie: December 2003
  • Laatst online: 08:13
Ik gebruik nog Arduino 1.6.1.Dit is een beetje het gevaar van verschillende libraries, wat bij de ene wel werkt werkt weer niet bij de andere. Blijkbaar zijn de examples bedoeld voor de originele library(Waarvan ik hoop dat je die bewaard hebt) en daar werken die wel bij.

Nu ik het zo bekijk, de pubsubclient-master library heb ik je er niet bij gegeven.

Ik zal zo even mijn versie linken, dan kan je die proberen. Kijken of dan je problemen weg zijn.

*EDIT*

Hier de link van de master library die ik heb:
https://onedrive.live.com...PxArfteM&ithint=file%2c7z

[ Voor 15% gewijzigd door Vuikie op 24-06-2015 22:02 ]


Acties:
  • 0 Henk 'm!

  • BenPi
  • Registratie: Februari 2013
  • Laatst online: 23-09-2024
Lukt nog niet, dezelfde errors.

Maar wat het om gaat is, ik wil een temperatuur sensor en een relais aan de ESP8266 hangen en dan de temperatuur data naar een raspberry sturen en de raspberry het relais kan besturen, zoals bij een thermostaat.

Het probleem is, ik weet niet goed hoe de data wordt afgevangen en verwerkt in de raspberry en dat die dan reageert naar relais toe.

Ik heb mosquitto geïnstalleerd staan op de raspberry.
Met een pc kan ik al wel pub en sub reakties krijgen op bijv outTopic en inTopic

Zou iemand daarmee kunnen helpen ?
Liefst op basis met LUA of met arduinoIDE.


PS: Een toolchain /SDK of ander compileer omgeving vind ik erg lastig en krijg ik maar niet voor elkaar op mijn PC.

Acties:
  • 0 Henk 'm!

  • mightym
  • Registratie: Januari 2010
  • Laatst online: 13-09 21:02
BenPi schreef op donderdag 25 juni 2015 @ 23:34:
Lukt nog niet, dezelfde errors.

Maar wat het om gaat is, ik wil een temperatuur sensor en een relais aan de ESP8266 hangen en dan de temperatuur data naar een raspberry sturen en de raspberry het relais kan besturen, zoals bij een thermostaat.

Het probleem is, ik weet niet goed hoe de data wordt afgevangen en verwerkt in de raspberry en dat die dan reageert naar relais toe.

Ik heb mosquitto geïnstalleerd staan op de raspberry.
Met een pc kan ik al wel pub en sub reakties krijgen op bijv outTopic en inTopic

Zou iemand daarmee kunnen helpen ?
Liefst op basis met LUA of met arduinoIDE.


PS: Een toolchain /SDK of ander compileer omgeving vind ik erg lastig en krijg ik maar niet voor elkaar op mijn PC.
Ik heb (nog) geen ervaring met MQQT maar ik heb een dergelijke setup gebouwd met Domoticz. Met een esp8266 of arduino maak ik sensor/relais nodes die data naar Domoticz sturen. In Domoticz draaien lua scripts die het regelwerk voor hun rekening nemen. Domoticz stuurt dan een schakelcommando terug naar zo'n sensornode en die schakelt apparaten aan en uit.

32 kWp PV + 54kWh ESS+ 7.5 kW Mitsubishi Ecodan


Acties:
  • 0 Henk 'm!

  • Vuikie
  • Registratie: December 2003
  • Laatst online: 08:13
Mqtt zelf doet niks aan regeling, mosquitto verzorgt alleen het transport protocol waar alle berichten overheen gaan. Het echte regelwerk zal door een een applicatie als Domoticz of OpenHAB moeten gebeuren.(Wat mightym ook al zei)

Wat die errors betreft, kan je misschien de code plaatsten die de errors genereerd? Dan kan ik die bij mij een keer proberen, kijken of ik ook die errors krijg.

Acties:
  • 0 Henk 'm!

  • BenPi
  • Registratie: Februari 2013
  • Laatst online: 23-09-2024
Misschien naar een ander forum/topic ?

@Vulkie

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
/***************************************************************************************
https://raw.githubusercontent.com/ajvuik/MQTT_Node_ESP8266/master/MQTT_Node_ESP8266.ino
* Name        : MQTT_Node_ESP8266
* Author      : Arjan Vuik 
* Description : With this an ESP8266 logs in to an MQTT broker and publishes
*               a DS18b20 temperature on the defined channel. the ESP wil subscribe
*               to the difined channels and relay the messages from those channels to 
*               the serial port. 
****************************************************************************************/

#include <PubSubClient.h>
#include <OneWire.h>
#include <DallasTemperature.h>
#include <ESP8266WiFi.h>
#include <stdlib_noniso.h>

//Define the pin number on which the onewire bus is connected 
#define ONE_WIRE_BUS 2


//Network config for the ESP
const char* ssid = "Sweex LW050v2";
const char* password = "xxxxxxxxx";

//Difine the MQTT broker adress
byte server[] = {192,168,2,2};

//Add your topics to publish to here
char topic1111[] = "/1111";

//Add your topics to subscribe here
char topic1121[] = "/1121";
char topic1122[] = "/1122";

//Topic handler
char topicRcv[] = "/0000";

//Payload handler
char payloadRcv[5];

//Change the clientname to your liking
String clientName = "Node1";
unsigned long PreviousMillis = 0;

//Setup the OneWireBus
OneWire oneWire(ONE_WIRE_BUS);
//Setup the DS18b20
DallasTemperature sensors(&oneWire);
//Setup the MQTT client
WiFiClient wifiClient;
PubSubClient client(server, 1883, callback, wifiClient); 

//Incomming messages from the MQTT broker are handled here
void callback(char* topic, byte* payload, unsigned int length) {
  // handle message arrived
  memcpy(&topicRcv, topic, sizeof(topicRcv)-1);
  memcpy(&payloadRcv,payload,length);
}


void setup() {
  //Setup serial port
  Serial.begin(115200);
  //Login to your wifi AP
  WiFi.begin(ssid, password);
  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
  }
  //Enable the sensor(s)
  sensors.begin();
  //Connect to the broker
  client.connect((char*) clientName.c_str());
  //Subscribe to your topics. Add a subscribe for every topic you want.
  client.subscribe(topic1121);
  client.subscribe(topic1122);
  Serial.println("Node OK");
} 
 
void loop() {
  delay(50);//This is here to give the ESP time to handle WIFI tasks
  if(WiFi.status() == WL_CONNECTED){
    unsigned long CurrentMillis=millis();
    client.loop();//This keeps the connection to the broker alive
    //Get and publish the DS18b20 temp every 10 seconds
    if(CurrentMillis-PreviousMillis>10000){
      PreviousMillis=CurrentMillis;
      sensors.requestTemperatures();
      char charVal[10];
      String payload = "";
      float Temp = sensors.getTempCByIndex(0);
      dtostrf(Temp, 4, 1, charVal);
    
      for(int i=0;i<5;i++)
      {
        payload+=charVal[i];
      }
      charVal[5]='\0';
      client.publish(topic1111, (char*) payload.c_str());
    }
    //If something was published on one of our subscribed channels
    //Handle is here.
    if (!strstr(topicRcv,"/0000")){
      String Payload = topicRcv;
      Payload += ":"; 
      Payload += payloadRcv;
      Serial.println(Payload);
      topicRcv[0]='/';
      topicRcv[1]='0';
      topicRcv[2]='0';
      topicRcv[3]='0';
      topicRcv[4]='0';
    }
  }
}

en de error lijst:
code:
1
2
3
4
5
In file included from MQTT_Node_ESP8266.ino:11:0:
/home/test/arduino-1.6.5/libraries/pubsubclient-master/src/PubSubClient.h:72:46: error: section attribute not allowed for '<anonymous>'
    boolean publish_P(char *, uint8_t PROGMEM *, unsigned int, boolean);
                                              ^
Fout bij compileren.


He, valt me nu op. Moet de regel
code:
1
#include <stdlib_noniso.h>
een deels kleur krijgen zoals bij de andere include regels in de ARDUINO-IDE?

Acties:
  • 0 Henk 'm!

  • Vuikie
  • Registratie: December 2003
  • Laatst online: 08:13
Ik heb het probleem gevonden. Er is iets gewijzigd in de Arduino IDE(Wat ik zo kan vinden op internet hebben 1.0.6 en 1.6.4+ er alle twee last van)waardoor de PROGMEM statement niet meer mag voor '<anonymous>'. Dit is wel een beetje jammer, want dit betekend dat je niet meer direct vanaf de flash constantes kan posten op het MQTT kanaal. Dit scheelt in geheugen gebruik. Naja, het zij zo

Ik heb de library aangepast, nu is het wel zo dat publish_P en publish nu exact hetzelfde doen. Dit is ff een fast en dirty fix, maar zo kan jij in elk geval verder met je projectje.

Ik zal de library linken zodra deze naar mijn onedrive is gesynced(Ben nu 5,5 gig aan het syncen, dit kan even duren ;) ).

Acties:
  • 0 Henk 'm!

  • BenPi
  • Registratie: Februari 2013
  • Laatst online: 23-09-2024
Ok, zal me benieuwen. :z

[ Voor 56% gewijzigd door BenPi op 26-06-2015 17:42 ]


Acties:
  • 0 Henk 'm!

  • Vuikie
  • Registratie: December 2003
  • Laatst online: 08:13
Zow, het heeft even geduurd, maar hier issie dan:
https://onedrive.live.com...Yu3ZqSOU&ithint=file%2c7z

Acties:
  • 0 Henk 'm!

  • Icekiller2k6
  • Registratie: Februari 2005
  • Laatst online: 09:06
In de arduino IDE of in de toolchain?

MT Venus E 5KW (V151) P1 HomeWizard | Hackerspace Brixel te Hasselt (BE) - http://www.brixel.be | 9800X3D, 96GB DDR5 6000MHZ, NVIDIA GEFORCE 4090, ASRock X670E Steel Legend, Seasonic GX1000


Acties:
  • 0 Henk 'm!

  • Vuikie
  • Registratie: December 2003
  • Laatst online: 08:13
Icekiller2k6 schreef op vrijdag 26 juni 2015 @ 21:17:
In de arduino IDE of in de toolchain?
Ben ik nog niet helemaal over uit, ben ik eerlijk gezegd nog niet achteraan gegaan(Tijd gebrek). De eerste post op Google had het over Arduino, dus ging er eigenlijk een beetje vanuit dat daar het probleem in zit :P

Acties:
  • 0 Henk 'm!

  • BenPi
  • Registratie: Februari 2013
  • Laatst online: 23-09-2024
>:) "No error" meer

nu proberen het werkend te krijgen.
Hou jullie op de hoogte.

Acties:
  • 0 Henk 'm!

  • mrfu
  • Registratie: Februari 2006
  • Niet online

mrfu

Quis custodiet ipsos custodes?

Ik heb nog 2 ESP8266 modules met externe antenne's over.
Kan ik er hier iemand blij mee maken? Ik gebruik ze zelf niet meer, dus liggen hier stof te verzamelen...
V&A aangeboden: Opruiming: ESP8266 wifi module met externe antenne

Acties:
  • 0 Henk 'm!

Verwijderd

jij hebt gewoon een winkeltje op tweakers zie ik :D

Acties:
  • 0 Henk 'm!

  • mightym
  • Registratie: Januari 2010
  • Laatst online: 13-09 21:02
Verwijderd schreef op vrijdag 26 juni 2015 @ 22:47:
jij hebt gewoon een winkeltje op tweakers zie ik :D
met een aardige winstmarge ;)
esp8266 + antenne = 3,30 euro incl verzendkosten.

32 kWp PV + 54kWh ESS+ 7.5 kW Mitsubishi Ecodan


Acties:
  • 0 Henk 'm!

  • fjux
  • Registratie: Februari 2011
  • Laatst online: 13:32
somers1234 schreef op vrijdag 20 februari 2015 @ 17:08:
Op Ebay zijn leuke (waterdichte) doosjes te vinden om je ESP in te monteren. Handig voor je buitentemperatuuropnemer.




Tevens heb ik mijn Energiemonitor op basis van de ESP03 nu eindelijk werkend. De ESP is helaas wel op de een of de andere manier beschadigd (kan geen andere firmware meer flashen), maar mijn LUA code slikt hij gelukkig nog wel. Ik heb nog geen slimme meter en meet daarom de LED pulsen (500 imp/kWh) op mijn energiemeter. De ESP berekent met behulp van de tijd tussen twee pulsen het opgenomen vermogen en verstuurt deze elke 15 seconde naar Thingspeak. Het aantal pulsen (kWh verbruik) wordt elke 5 minuten naar Thingspeak verstuurd. Ditzelfde geldt voor het gasverbruik.

Voor de liefhebbers mijn LUA code:

init.lua
Lua:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
--Verbinden met het WiFi netwerk
wifi.setmode(wifi.STATION)
wifi.sta.config ("XXSSIDXX", "XXKEYXX")
wifi.sta.connect()

tmr.alarm(0, 1000, 1, function() 
if (wifi.sta.getip() == nil) then 
print("Verbinden met netwerk...") 
else 
tmr.stop(0)
print("Verbonden! (ip: ".. wifi.sta.getip() ..")")
dofile("energie.lua")
end
end)


energie.lua

Lua:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
--Variabelen
timeCounter = 0
dataCounter = 0
vermogen = 0
gemetenPulsenStroom = 0
gemetenPulsenGas = 0
firstRun = 1
sendStep = 0

--Stroompuls: opgenomen vermogen berekenen + tellerstand ophogen
function stroomInterrupt()
   if (firstRun == 0) then
      if (timeCounter > 0) then
         vermogen = (360000000/(500*timeCounter))
         print("Stroompuls (T: ".. timeCounter * 10 .."ms P: ".. vermogen .."W)")
      end
   end

   gemetenPulsenStroom = gemetenPulsenStroom+1   
   firstRun = 0
   timeCounter = 0
   tmr.delay(300000) 
end

--Gaspuls: tellerstand ophogen
function gasInterrupt()
   print("Gaspuls")
   gemetenPulsenGas = gemetenPulsenGas+1
   tmr.delay(300000) 
end

--Data naar Thingspeak versturen
function sendData()
    print("Data versturen")
   sendTimeout = 0
   
    if (dataCounter == 10) then
        key = "?key=KEYCHANNEL1"
        data = "&field1="..vermogen.."&field2="..gemetenPulsenStroom
      sendStep = 3
    elseif (dataCounter >= 20) then
        key = "?key=KEYCHANNEL2"
        data = "&field1="..gemetenPulsenGas
        dataCounter = 0
      sendStep = 2
    else
        key = "?key=KEYCHANNEL1"
        data = "&field1="..vermogen
      sendStep = 1
    end

   --Timeout en opnieuw verbinden met het netwerk
   tmr.alarm(3, 1000, 1, function() 
      sendTimeout = sendTimeout+1
      if (sendTimeout >= 3) then
         print("Opnieuw verbinden")
         wifi.setmode(wifi.STATION)
         wifi.sta.config ("XXSSIDXX", "XXKEYXX")
         wifi.sta.connect()
         conn:close()
         conn = nil
         tmr.stop(3)
      end
   end)

   --Verbinden met Thingspeak
   conn = nil
   conn = net.createConnection(net.TCP, 0) 
   conn:on("receive", function(conn, payload)
      print("Response ontvangen")
      tmr.stop(3)
      if (sendStep == 2) then
         gemetenPulsenGas = 0
      elseif (sendStep == 3) then
         gemetenPulsenStroom = 0
      end
   end)
   conn:on("connection", function(conn, payload) 
   conn:send("GET /update.php"
      ..key
      ..data
      .." HTTP/1.1\r\n" 
      .."Host: api.thingspeak.com\r\n" 
      .."Connection: close\r\n"
      .."Accept: */*\r\n" 
      .."User-Agent: Mozilla/4.0 "
      .."(compatible; esp8266 Lua; "
      .."Windows NT 5.1)\r\n" 
      .."\r\n")
   end) 
   conn:on("disconnection", function(conn, payload) end)
   conn:connect(80,'184.106.153.149')

   dataCounter = dataCounter+1
end

--Configureren van GPIO14 (stroompuls)
gpio.mode(5, gpio.INT)
gpio.trig(5, "up", stroomInterrupt)

--Configureren van GPIO12 (gaspuls)
gpio.mode(6, gpio.INT)
gpio.trig(6, "up", gasInterrupt)

--Elke 15 seconde data versturen
tmr.alarm(1, 15000, 1, function() sendData() end)

--Elke 10ms teller ophogen (meten van tijd tussen pulsen)
tmr.alarm(2, 10, 1, function() timeCounter = timeCounter+1 end)


Ik gebruik twee Thingspeak channels (stroom en gas afzonderlijk) omdat dit voor mij gunstiger is bij het plotten van de Thingspeak data. Thingspeak cachet grote aanvragen van data namelijk en dat zat mij soms in de weg.
Dit is precies wat ik wil gaan doen.
De code is mij duidelijk, en ook het idee van een puls ontvangen.

Maar heb 1 vraagje:

hoe heb je het werkend gekregen met de ESP8266?

bij mij detecteert hij met dit schema niet dat het een puls is: https://www.circuitlab.com/editor/#?id=eae95u
Zelfde idee hier: http://wordpress.meulenhoff.org/?p=178

Dit komt voor zo ver ik het zie doordat het allemaal gebaseerd is op een analoog signaal.

moet ik dan nu een schmit trigger gaan gebruiken om het 'digitaal' te maken?
Zo ja, kan iemand mij in de goede richting duwen?

Of @somers1234 heb jij de ADC poort gebruikt op de ESP? mijn doel is namelijk alles op de ESP-01 zien te krijgen ;)

ik heb net gekeken en met de arduino krijg ik wel verschillende waardes terug (op analoog) maar ik zou graag de arduino willen vermijden. (gewoon omdat het kan (zou moeten 8)7 ))

Acties:
  • 0 Henk 'm!

  • somers1234
  • Registratie: September 2008
  • Laatst online: 15:16

Acties:
  • 0 Henk 'm!

  • fjux
  • Registratie: Februari 2011
  • Laatst online: 13:32
Dat was ook weer niet helemaal de bedoeling ;)

Is er een mogelijkheid om het geheel zelf te kunnen maken met een cny70? Of andere sensoren?

Vind ik leuker dan z'n standaard apparaat kopen.

Acties:
  • 0 Henk 'm!

  • somers1234
  • Registratie: September 2008
  • Laatst online: 15:16
fjux schreef op zondag 28 juni 2015 @ 03:33:
[...]


Dat was ook weer niet helemaal de bedoeling ;)

Is er een mogelijkheid om het geheel zelf te kunnen maken met een cny70? Of andere sensoren?

Vind ik leuker dan z'n standaard apparaat kopen.
User d68 heeft zelf een dergelijke schakeling ontworpen: d68 in "DIY energiemeter op basis van Raspberry Pi"

Acties:
  • 0 Henk 'm!

  • Fr33z
  • Registratie: December 2003
  • Laatst online: 14:51
ik heb ook zo'n schakeling gemaakt op basis van een LM393, principe is natuurlijk 'tzelfde.Ik zou die van d68 eens proberen, werkt bij mij erg goed om mijn watermeter uit te lezen (Sensus 620 voor de liefhebbers).

Andere vraag: ik zie dat jullie waardes naar thingspeak posten, maar kan je daar ook weer 15-min gemiddeldes etc van maken? Ik gebruik nu RRDtool om mijn data te loggen. Het fijne daarvan vind ik dat je exports kan maken in csv-formaat (voor in excel bijv.) met zelf te definieren periodes. Bijvoorbeeld data van de laaste week in blokjes van 20min oid.

Acties:
  • 0 Henk 'm!

  • Icekiller2k6
  • Registratie: Februari 2005
  • Laatst online: 09:06
kwam per toeval deze tegen via tindie:
https://www.tindie.com/pr...-compatible-plus-esp8266/
lijkt me niet onaardig voor de prijs!

MT Venus E 5KW (V151) P1 HomeWizard | Hackerspace Brixel te Hasselt (BE) - http://www.brixel.be | 9800X3D, 96GB DDR5 6000MHZ, NVIDIA GEFORCE 4090, ASRock X670E Steel Legend, Seasonic GX1000


Acties:
  • 0 Henk 'm!

  • fdm391
  • Registratie: Maart 2009
  • Laatst online: 14:19
Icekiller2k6 schreef op donderdag 09 juli 2015 @ 23:11:
kwam per toeval deze tegen via tindie:
https://www.tindie.com/pr...-compatible-plus-esp8266/
lijkt me niet onaardig voor de prijs!
Dat is in ongeveer deze arduino: http://nl.aliexpress.com/...-Pro-Mini/1859136734.html
en deze esp: http://nl.aliexpress.com/...g-ESP-03/32226309309.html

ongeveer $7 (heb logic converter ook maar even meegeteld (zoiets bijv: http://nl.aliexpress.com/...-Arduino/32307221398.html))

Enkel draait de atmega op die cactus micro op 3.3v en zit alles op 1 bordje uiteraard. Toch wel een nette deal voor mensen die niet zo thuis zijn in solderen e.d. Die krijgen een kant en klare arduino met wifi voor $11, waar een originele arduino micro alleen al $19 kost

Acties:
  • 0 Henk 'm!

  • TNW
  • Registratie: Januari 2007
  • Laatst online: 09-09 14:01

TNW

Hier ook weer wat verder wezen prutsen:

Omdat ik een beetje moe werd van de ruk ondersteuning van meerdere DS1820 sensoren in LUA ben ik overgestapt op de Arduino IDE.

Ik draai nu de volgende code:

C++:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
#include <ESP8266WiFi.h>
#include <OneWire.h>
#include <DallasTemperature.h>

#define ONE_WIRE_BUS 4
#define TEMPERATURE_PRECISION 9

// Setup a oneWire instance to communicate with any 
//OneWire devices (not just Maxim/Dallas temperature ICs)
//OneWire oneWire(ONE_WIRE_BUS);

// Pass our oneWire reference to Dallas Temperature. 
DallasTemperature sensors(&oneWire);

// arrays to hold device addresses
DeviceAddress weathertemp_addr, watertemp_addr;

const char* ssid     = "blaat";
const char* password = "blaat";
long sensortimer = 60000;
// Create an instance of the server
// specify the port to listen on as an argument
WiFiServer server(80);
WiFiClient client;

void setup() {
  Serial.begin(115200);
  delay(10);


  // Start up the library
  sensors.begin();

  // locate devices on the bus
  Serial.print("Locating devices...");
  Serial.print("Found ");
  Serial.print(sensors.getDeviceCount(), DEC);
  Serial.println(" devices.");

   // Connect to WiFi network
  Serial.println();
  Serial.println();
  Serial.print("Connecting to ");
  Serial.println(ssid);
  
  WiFi.begin(ssid, password);
  
  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
  }
  Serial.println("");
  Serial.println("WiFi connected");
  
  // Start the server
  server.begin();
  Serial.println("Server started");

  // Print the IP address
  Serial.println(WiFi.localIP());
}

void loop() {

if (millis() - sensortimer > 60000) {
Serial.print("Requesting sensor data...");
  sensors.requestTemperatures(); // Send the command to get temperatures
  sensors.getAddress(weathertemp_addr, 1);
  sensors.getAddress(watertemp_addr, 0);
  Serial.println("DONE");
  sensortimer = millis();
} 
  
  // Check if a client has connected
  client = server.available();
  if (!client) {
    return;
  }
  
  // Wait until the client sends some data
  Serial.println("new client");
  while(!client.available()){
    delay(5);
  }
  
  // Read the first line of the request
  String req = client.readStringUntil('\r');
  Serial.println(req);
  client.flush();
  
 
  // Send the response to the client
 client.println("HTTP/1.1 200 OK");
  client.println("Content-Type: text/html");
  client.println(""); //  do not forget this one
  client.println("<!DOCTYPE HTML>");
  client.println("<html>");
  client.println("<p>Hello World!</p>");
  float tempC_outside = sensors.getTempC(weathertemp_addr);
  client.print("Outside temperature: ");
  client.print(tempC_outside);
  client.print(" sensor id: ");
  printAddress(weathertemp_addr);
  client.println("<br>");
  float tempC_water = sensors.getTempC(watertemp_addr);
  client.print("Water temperature: ");
  client.print(tempC_water);
  client.print(" sensor id: ");
  printAddress(watertemp_addr);
  client.print("<br>");
  client.println("</html>");  
  delay(1);
  Serial.println("Client disonnected");
client.flush();
  // The client will actually be disconnected 
  // when the function returns and 'client' object is detroyed
}

void printAddress(DeviceAddress deviceAddress)
{
    for (uint8_t i = 0; i < 8; i++)
  {
    // zero pad the address if necessary
    if (deviceAddress[i] < 16) client.print("0");
    client.print(deviceAddress[i], HEX);
  }
}


Dit werk in principe prima. Roep ik de webpagina op, dan krijg ik netjes te zien:

Hello World!
Outside temperature: 25.94 sensor id: 28BA4081040000F7
Water temperature: 24.44 sensor id: 28A25A81040000CC


Echter, na een schijnbaar willekeurig aantal refreshes stopt de ESP8266 met reageren. Niks meer op de serial monitor. Hij zegt nog wel even "new client" waarna het doodstil wordt. Vermoedelijk crasht er iets, iemand een idee wat?

-edit- Probleem opgelost. Oorzaak was de brakke "webserver" implementatie, als een client een verbinding opbouwt maar niks zegt blijft de verbinding openstaan en doet de ESP8266 niks. De client die steeds verbindingen opbouwde maar niks zei was een script wat mijn network om de 5 minuten nmapt 8)7

Toevoegen van een timeout loste dit probleem op.

code:
1
2
3
4
5
6
// Wait until the client sends some data
  Serial.println("new client");
  unsigned long ultimeout = millis()+250;
  while(!client.available() && (millis()<ultimeout) ){
    delay(5);
  }

[ Voor 6% gewijzigd door TNW op 12-07-2015 02:00 ]

Weblog | Straling!


Acties:
  • 0 Henk 'm!

  • RobV
  • Registratie: Juni 2013
  • Niet online

RobV

Welcome to the grid, Program.

(overleden)
TNW schreef op zondag 12 juli 2015 @ 00:22:

Toevoegen van een timeout loste dit probleem op.

code:
1
2
3
4
5
6
// Wait until the client sends some data
  Serial.println("new client");
  unsigned long ultimeout = millis()+250;
  while(!client.available() && (millis()<ultimeout) ){
    delay(5);
  }
Wat er nu gebeurt, is dat bij een timeout de rest van de code alsnog wordt uitgevoerd, en dat je dus data stuurt naar een client die er niet (meer) is.

 | Mijn joystick / simpit project | Blog | Elite Dangerous CMDR Cataclysm72


Acties:
  • 0 Henk 'm!

  • TNW
  • Registratie: Januari 2007
  • Laatst online: 09-09 14:01

TNW

RobV schreef op zondag 12 juli 2015 @ 09:06:
[...]

Wat er nu gebeurt, is dat bij een timeout de rest van de code alsnog wordt uitgevoerd, en dat je dus data stuurt naar een client die er niet (meer) is.
Dank je voor de uitleg. Het is mijn ervaring dat al deze webserver code nogal "kaal" is en veel aspecten van HTTP verkeer niet goed implementeerd. Dit stukje code heb ik ook weer van een of andere hobbyist, en weer is het niet conform wat een goede webserver doet. :9

De functionaliteit werkt nu wel, dat is al een stap vooruit. Hoe voorkom je dat de code nutteloos data naar clients stuurt die geen complete requests doen?

Weblog | Straling!


Acties:
  • 0 Henk 'm!

  • RobV
  • Registratie: Juni 2013
  • Niet online

RobV

Welcome to the grid, Program.

(overleden)
Door met een if statement de rest van he code niet uit te voeren als je een timeout detecteert.

 | Mijn joystick / simpit project | Blog | Elite Dangerous CMDR Cataclysm72


Acties:
  • 0 Henk 'm!

  • dj_dysaster
  • Registratie: Januari 2003
  • Laatst online: 12:45

dj_dysaster

Stoom \o/

Gisteren viel bij mij ook een esp01 en een nodemcu op de mat. Naar even gespeeld te hebben met lua en het AT example wou ik toch wat meer low level prutsen. Ik heb op mijn linuxdoos de esp-open-sdk compileerd en vervolgens de waarschijnlijk bekende 'source_code_examples' van github getrokken.

Nadat ik de paden in de Makefile naar mijn compiler en sdk had laten wijzen kon ik zonder fouten de examples bakken. In mijn firmware dir komt netjes een 0x00000.bin en 0x40000.bin te staan. Vervolgens kan ik middels 'make flash' het spul naar mijn ESP01 flashen, ook dit zorgt niet voor problemen. Echter bij het runnen komt wat tegenslag;

het blinky example begint niet te blinken, bij het basic_example komt er geen AP in de lucht oftewel er gebeurt weinig. Op 115200 baud verbinden met het ding levert niks meer dan 2 bytes aan garbage op. Vervolgens middels esptool.py de user1.bin uit het esp8266_at project erin flashen levert weer een werkend AT project op. Het zelf bouwen van de AT code zorgt weer voor een niet werkende esp.

Iemand wellicht een idee? Dit soort spul is toch niet nieuw voor mij maar de oplossing voor dit gedrag kan ik mij zo niet 123 bedenken.

Edit; ik las op de github van esptool.py dat de flash volgorde nogal uitmaakt, kennlijk raakt er soms wat flash corrupt. Eerst 0x40000.bin en dan 0x00000.bin flashen zou dit op moeten lossen, maakt voor mij echter geen verschil..

[ Voor 9% gewijzigd door dj_dysaster op 18-07-2015 18:18 ]


Acties:
  • 0 Henk 'm!

Verwijderd

heb het wat het druk gehad met andere projectjes, maar vanmorgen kwam daar ineens de V3 uit China 8)

Afbeeldingslocatie: http://s12.postimg.org/hou4491h9/image.jpg

Acties:
  • 0 Henk 'm!

  • Mars Warrior
  • Registratie: Oktober 2003
  • Laatst online: 14:05

Mars Warrior

Earth, the final frontier

Verwijderd schreef op zaterdag 18 juli 2015 @ 22:39:
heb het wat het druk gehad met andere projectjes, maar vanmorgen kwam daar ineens de V3 uit China 8)

[afbeelding]
Leuk. Maar dat is toch niet anders dan een V2 met een andere USB chip ? Of is het echt een nieuwe versie ?

Material 3 Thema's voor HA | Swiss Army Knife custom card voor HA | AmoebeLabs


Acties:
  • 0 Henk 'm!

Verwijderd

er zit een ESP8266-12E(xtended) op dat bordje

getting started

[ Voor 31% gewijzigd door Verwijderd op 19-07-2015 07:58 ]


Acties:
  • 0 Henk 'm!

  • lintweaker
  • Registratie: Oktober 2002
  • Laatst online: 15-08 14:59
Verwijderd schreef op zaterdag 18 juli 2015 @ 22:39:
heb het wat het druk gehad met andere projectjes, maar vanmorgen kwam daar ineens de V3 uit China 8)

[afbeelding]
Hmm, v3 ? en dan in combinatie met de CH340G. Lijkt eerder een vage combinatie van de officiele v0.9 en v1.0. Maar goed, als het werkt, werkt het :)

[ Voor 0% gewijzigd door lintweaker op 19-07-2015 12:18 . Reden: typo ]


Acties:
  • 0 Henk 'm!

Verwijderd

niet echt lekker, die CH340G driver in combinatie met WIN 8.1 - 64

maar deze 'fake' werkt verder wel

Afbeeldingslocatie: http://s8.postimg.org/kokqklhyd/v3fake.jpg

[ Voor 48% gewijzigd door Verwijderd op 19-07-2015 13:42 ]


Acties:
  • 0 Henk 'm!

  • arjandijk162
  • Registratie: November 2000
  • Laatst online: 12-09 11:51
Ik heb mijn ESP8266 development board binnengekregen en wil als eerst data uitlezen van de tempsensor:

Dit is mijn devboard: Afbeeldingslocatie: http://i.ebayimg.com/00/s/ODAwWDgwMA==/z/jIYAAOSwEeFVSepx/$_57.JPG

Ik heb deze gekocht om al het gedoe met 3,3-5v omzettingen en serial usb omzettingen te voorkomen omdat er meteen een onboard relais/buzzer/rgb led/tempvoeler op zit.

Ik zoek nu naar een simpele manier om de waarde van de tempvoeler (dht11) uit te lezen met lualoader.

Ik heb een scriptje van internet afgeplukt maar loop er nu al tegenaan dat ik niet weet op welke pin de dht11 zit.

Volgens dit schema zit de DHT11 op GPIO4 of pin 9. Ik heb het allemaal zonder resultaat geprobeerd.

Nu moet ik ook zeggen dat ik als eerste de DHT11 heb aangesloten zoals op de foto en dat blijkt precies verkeerd om te zijn. De ESP werkt nog prima, maar hoe kan ik checken of de DHT11 nog werkt?
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
--init.lua
print("Setting up WIFI...")
wifi.setmode(wifi.STATION)
--modify according your wireless router settings
wifi.sta.config("")
wifi.sta.connect()
tmr.alarm(1, 1000, 1, function() 
if wifi.sta.getip()== nil then 
print("IP unavaiable, Waiting...") 
else 
tmr.stop(1)
print("Config done, IP is "..wifi.sta.getip())
dofile("dht11.lua")
end 
end)

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
-- dht11.lua
-- Measure temperature, humidity and post data to thingspeak.com
-- 2014 OK1CDJ
-- DHT11 code is from esp8266.com
---Sensor DHT11 is conntected to GPIO0
pin = 4

Humidity = 0
HumidityDec=0
Temperature = 0
TemperatureDec=0
Checksum = 0
ChecksumTest=0


function getTemp()
Humidity = 0
HumidityDec=0
Temperature = 0
TemperatureDec=0
Checksum = 0
ChecksumTest=0

--Data stream acquisition timing is critical. There's
--barely enough speed to work with to make this happen.
--Pre-allocate vars used in loop.

bitStream = {}
for j = 1, 40, 1 do
     bitStream[j]=0
end
bitlength=0

gpio.mode(pin, gpio.OUTPUT)
gpio.write(pin, gpio.LOW)
tmr.delay(20000)
--Use Markus Gritsch trick to speed up read/write on GPIO
gpio_read=gpio.read
gpio_write=gpio.write

gpio.mode(pin, gpio.INPUT)

--bus will always let up eventually, don't bother with timeout
while (gpio_read(pin)==0 ) do end

c=0
while (gpio_read(pin)==1 and c<100) do c=c+1 end

--bus will always let up eventually, don't bother with timeout
while (gpio_read(pin)==0 ) do end

c=0
while (gpio_read(pin)==1 and c<100) do c=c+1 end

--acquisition loop
for j = 1, 40, 1 do
     while (gpio_read(pin)==1 and bitlength<10 ) do
          bitlength=bitlength+1
     end
     bitStream[j]=bitlength
     bitlength=0
     --bus will always let up eventually, don't bother with timeout
     while (gpio_read(pin)==0) do end
end

--DHT data acquired, process.

for i = 1, 8, 1 do
     if (bitStream[i+0] > 2) then
          Humidity = Humidity+2^(8-i)
     end
end
for i = 1, 8, 1 do
     if (bitStream[i+8] > 2) then
          HumidityDec = HumidityDec+2^(8-i)
     end
end
for i = 1, 8, 1 do
     if (bitStream[i+16] > 2) then
          Temperature = Temperature+2^(8-i)
     end
end
for i = 1, 8, 1 do
     if (bitStream[i+24] > 2) then
          TemperatureDec = TemperatureDec+2^(8-i)
     end
end
for i = 1, 8, 1 do
     if (bitStream[i+32] > 2) then
          Checksum = Checksum+2^(8-i)
     end
end
ChecksumTest=(Humidity+HumidityDec+Temperature+TemperatureDec) % 0xFF

print ("Temperature: "..Temperature.."."..TemperatureDec)
print ("Humidity: "..Humidity.."."..HumidityDec)
print ("ChecksumReceived: "..Checksum)
print ("ChecksumTest: "..ChecksumTest)
end

--- Get temp and send data to thingspeak.com
function sendData()
getTemp()
-- conection to thingspeak.com
print("Sending data to thingspeak.com")
conn=net.createConnection(net.TCP, 0) 
conn:on("receive", function(conn, payload) print(payload) end)
-- api.thingspeak.com 184.106.153.149
conn:connect(80,'184.106.153.149') 
conn:send("GET /update?key=xxxxxxxxxxxx&field1="..Temperature.."."..TemperatureDec.."&field2="..Humidity.."."..HumidityDec.." HTTP/1.1\r\n") 
conn:send("Host: api.thingspeak.com\r\n") 
conn:send("Accept: */*\r\n") 
conn:send("User-Agent: Mozilla/4.0 (compatible; esp8266 Lua; Windows NT 5.1)\r\n")
conn:send("\r\n")
conn:on("sent",function(conn)
                      print("Closing connection")
                      conn:close()
                  end)
conn:on("disconnection", function(conn)
                      print("Got disconnection...")
  end)
end
-- send data every X ms to thing speak
tmr.alarm(2, 60000, 1, function() sendData() end )

[ Voor 81% gewijzigd door arjandijk162 op 21-07-2015 13:20 ]


Acties:
  • 0 Henk 'm!

  • RobV
  • Registratie: Juni 2013
  • Niet online

RobV

Welcome to the grid, Program.

(overleden)
Misschien even je wachtwoord wijzigen straks..

 | Mijn joystick / simpit project | Blog | Elite Dangerous CMDR Cataclysm72


Acties:
  • 0 Henk 'm!

  • sfinx
  • Registratie: Januari 2000
  • Laatst online: 15:27
Verwijderd schreef op zaterdag 18 juli 2015 @ 22:39:
heb het wat het druk gehad met andere projectjes, maar vanmorgen kwam daar ineens de V3 uit China 8)

[afbeelding]
Leuk bordje.. is die VU (VUSB) gewoon 5V output?

Hippos are apparently just rage filled hate tanks


Acties:
  • 0 Henk 'm!

Verwijderd

@ arjandijk162


-- GPIO new mapping
-- GPIO0 = 16
-- GPIO1 = 5
-- GPIO2 = 4
-- GPIO3 = 0
-- GPIO4 = 2
-- GPIO5 = 14
-- GPIO6 = 12
-- GPIO7 = 13
-- GPIO8 = 15
-- GPIO9 = 3
-- GPIO10 = 1
-- GPIO11 = 9
-- GPIO12 = 10
-- GPIO13 = 7
-- GPIO14 = 5
-- GPIO15 = 8

[ Voor 3% gewijzigd door Verwijderd op 21-07-2015 13:02 ]


Acties:
  • 0 Henk 'm!

Verwijderd

sfinx schreef op dinsdag 21 juli 2015 @ 12:51:
[...]

Leuk bordje.. is die VU (VUSB) gewoon 5V output?
ja zo te meten wel 8)

Acties:
  • 0 Henk 'm!

  • arjandijk162
  • Registratie: November 2000
  • Laatst online: 12-09 11:51
Verwijderd schreef op dinsdag 21 juli 2015 @ 12:56:
@ arjandijk162


-- GPIO new mapping
-- GPIO0 = 16
-- GPIO1 = 5
-- GPIO2 = 4
-- GPIO3 = 0
-- GPIO4 = 2
-- GPIO5 = 14
-- GPIO6 = 12
-- GPIO7 = 13
-- GPIO8 = 15
-- GPIO9 = 3
-- GPIO10 = 1
-- GPIO11 = 9
-- GPIO12 = 10
-- GPIO13 = 7
-- GPIO14 = 5
-- GPIO15 = 8
Dus bij Pin moet ik 2 invullen?
RobV schreef op dinsdag 21 juli 2015 @ 11:49:
Misschien even je wachtwoord wijzigen straks..
:D Dank

[ Voor 57% gewijzigd door arjandijk162 op 21-07-2015 13:21 ]


Acties:
  • 0 Henk 'm!

Verwijderd

arjandijk162 schreef op dinsdag 21 juli 2015 @ 13:20:
[...]

Dus bij Pin moet ik 2 invullen?

[...]

:D Dank
denk het wel 8)

er zijn verschillende redenen waarom de output niet is wat je verwacht, oa:
- dev bordje niet goed (heb je al is wat andere code geprobeerd)
- code niet goed (in dit geval pin)
- overleden DHT11

Acties:
  • 0 Henk 'm!

  • arjandijk162
  • Registratie: November 2000
  • Laatst online: 12-09 11:51
Verwijderd schreef op dinsdag 21 juli 2015 @ 13:41:
[...]


denk het wel 8)

er zijn verschillende redenen waarom de output niet is wat je verwacht, oa:
- dev bordje niet goed (heb je al is wat andere code geprobeerd)
- code niet goed (in dit geval pin)
- overleden DHT11
Ik kan vanuit lualoader GPIOs schakelen, heb nog geen nuttige code gedraaid. Boardje lijkt dus te werken, Pin zal ik nogmaals checken, DHT kan ik niet inschatten of deze goed werkt. Kan ik dit met een multimeter testen?

Acties:
  • 0 Henk 'm!

Verwijderd

geen idee eerlijk gezegd.. heb je per ongeluk een arduino liggen ?

Acties:
  • 0 Henk 'm!

  • dj_dysaster
  • Registratie: Januari 2003
  • Laatst online: 12:45

dj_dysaster

Stoom \o/

Niemand een idee betreffende mijn probleem een paar posts terug?
dj_dysaster schreef op zaterdag 18 juli 2015 @ 17:58:
Gisteren viel bij mij ook een esp01 en een nodemcu op de mat. .....
Heb de vraag ook op esp8266.com gesteld maar ook daar geen reactie ;(

Acties:
  • 0 Henk 'm!

  • DurkVell
  • Registratie: Augustus 2011
  • Laatst online: 14-09 23:30
Ik heb een aantal ESP8266-01's waar ik de NodeMCU firmware in heb gezet. Het server voorbeeldje (LED's aan/uit) werkt prima.

Nu wil ik sensordata (temperatuur, druk) vanuit een Arduino Pro mini via de ESP naar ThingSpeak verzenden. De sketch die ik daarvoor wil gebruiken maakt gebruik van AT-commando's en die werken blijkbaar niet als er NodeMCU firmware inzit.

Ik weet dat je sensoren direct op de ESP kunt aansluiten en dan met LUA programmeren, maar ik wil ze eigenlijk zoveel mogelijk 'universeel' houden: alleen gegevens van Arduino ontvangen en doorgeven naar m'n router naar een server in huis, of naar het internet ThingSpeak (bijv.).

Nu wil ik dus terug naar AT-firmware, maar weet niet welke ik het beste kan gebruiken. Ik heb een link van Borroz gebruikt (hier), versie 9.5.2. alleen is de documentatie in het Chinees: dat beheers ik jammer genoeg niet! :'( Die documentatie is, heb ik begrepen, nodig omdat de commando's en de volgorde ervan nogal kunnen afwijken. Ik ben al dagen bezig en heb al meerdere versies geprobeerd, maar tot nog toe allemaal zonder succes. Wie kan me op het juiste spoor zetten?

Welke AT-firmware kan ik het beste gebruiken? Waar kan ik die vinden, met bijbehorende documentatie?

Alvast mijn dank.

Acties:
  • 0 Henk 'm!

Verwijderd

kan je hier iets mee ?

Acties:
  • 0 Henk 'm!

  • Vuikie
  • Registratie: December 2003
  • Laatst online: 08:13
@dj_dysaster: Probeer de instucties en tools op deze pagina eens:
http://www.electrodragon.com/w/ESP8266
http://www.electrodragon.com/w/ESP8266_firmware_flasher

Acties:
  • 0 Henk 'm!

  • DurkVell
  • Registratie: Augustus 2011
  • Laatst online: 14-09 23:30
Ja, die vond ik vandaag ook. Thanx.

De ESP met firmware 0950, heeft deze settings:

AT+CWMODE=1
AT+CIFSR: heeft een IP adres gekregen van de DHCP
AT+CWJAP?: heeft een connectie met het netwerk


Gedeelte van 'mijn' code:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
// TCP connection
  Serial.println("Ik ga verzenden!!");
  String cmd = "AT+CIPSTART=\"TCP\",\"";
  cmd += "184.106.153.149"; // api.thingspeak.com
  cmd += "\",80";
  ser.println(cmd);
  Serial.println("connectie?");
  Serial.println(cmd);  
   
  if(ser.find("Error")){
    Serial.println("AT+CIPSTART error");
    return;
  }
  
  // prepare GET string
  String getStr = "GET /update?key=";
  getStr += apiKey;
  getStr +="&field1=";
  getStr += String(strTemp);
  getStr += "\r\n\r\n";

  // send data length
  cmd = "AT+CIPSEND=";
  cmd += String(getStr.length());
  ser.println(cmd);
  Serial.println(cmd);

  if(ser.find("OK")){
    ser.print(getStr);
    Serial.println("verzonden!!!!");
  }
  else{
    ser.print(getStr);
    //ser.println("AT+CIPCLOSE");
    // alert user
    Serial.println("AT+CIPCLOSE");
    Serial.println(getStr);
    ser.print(getStr);
  }
    
  // thingspeak needs 15 sec delay between updates
  delay(16000);  
}


Ik krijg geen errors.
Maar bij

code:
1
if(ser.find("OK")){


slaat het programma af naar de else en sluit de connectie.
Ik snap dus niet waarom. 8)7

Acties:
  • 0 Henk 'm!

  • Mars Warrior
  • Registratie: Oktober 2003
  • Laatst online: 14:05

Mars Warrior

Earth, the final frontier

Ben benieuwd wanneer de nieuwe ESP (of hoe dat ding ook gaat heten) beschikbaar komt:
Afbeeldingslocatie: https://pbs.twimg.com/media/CKRPkTbUsAEs-kP.jpg

De nieuwe chip moet 500kb RAM hebben, 500DMIPS snelheid en zowel Wifi als BLE ondersteunen met een beter bereik dan de huidige ESP serie en een lager verbruik - 5uA - in deep sleep!

Er zal dan ook wel een nieuwe NodeMCU / Amica versie komen met deze chip.

Er vanuit gaande dat ook deze compatibel zal zijn met de ESP Arduino tooling wordt dit wel een enorm populair chipje en zie ik geen reden meer om nog AVR's aan te schaffen (anders dan de prijs van zo'n chinees Arduino ding van een paar €€)!

Material 3 Thema's voor HA | Swiss Army Knife custom card voor HA | AmoebeLabs


Acties:
  • 0 Henk 'm!

  • LamSchaap
  • Registratie: September 2007
  • Laatst online: 09-09 19:44
Mars Warrior schreef op vrijdag 24 juli 2015 @ 16:47:
Er zal dan ook wel een nieuwe NodeMCU / Amica versie komen met deze chip.
Jep, daar zijn we ook al mee bezig. Ergens in oktober komt die nieuwe module en devboard uit.

Maar eerste nog Amica devboard met de nieuwe ESP8266 SIP module in augustus. :9

[ Voor 5% gewijzigd door LamSchaap op 24-07-2015 21:10 ]

Kwalitatief blaten


Acties:
  • 0 Henk 'm!

  • Mars Warrior
  • Registratie: Oktober 2003
  • Laatst online: 14:05

Mars Warrior

Earth, the final frontier

LamSchaap schreef op vrijdag 24 juli 2015 @ 21:08:
[...]
Jep, daar zijn we ook al mee bezig. Ergens in oktober komt die nieuwe module en devboard uit.

Maar eerste nog Amica devboard met de nieuwe ESP8266 SIP module in augustus. :9
Twee modules nog wel >:)

De SIP module had ik niet verwacht eerlijk gezegd met de nieuwe ESP in aantocht.
Ben ook nog steeds benieuwd naar het formaat van de nieuwe devboards.

Wat me verder opvalt is dat er geen aansluitingen op de nieuwe ESP zichtbaar zijn of zitten die soms aan de onderkant?

Test ze in ieder geval!

Material 3 Thema's voor HA | Swiss Army Knife custom card voor HA | AmoebeLabs


Acties:
  • 0 Henk 'm!

Verwijderd

zou dit kunnen werken ? een wifi directionfinder/tracker

Afbeeldingslocatie: http://s1.postimg.org/6qofkc633/wifidirectionfinder.jpg

een soort antenne die 4 richtingen 'opkijkt' aangesloten op 4 ESP's en een i2c kompass en verder slimme firmware die een bepaalde geselecteerde SSID 'bekijkt op alle 4 de inputs en zo de richting bepaald aan de hand van de signaalsterkte.
soort handheld apparaatje.. vraag alleen is.. hoe ziet zo'n antenne er in de praktijk uit .. 8)

Acties:
  • 0 Henk 'm!

  • Ploink
  • Registratie: April 2002
  • Laatst online: 21-08 13:05
Verwijderd schreef op zaterdag 25 juli 2015 @ 10:55:
zou dit kunnen werken ? een wifi directionfinder/tracker

[afbeelding]

een soort antenne die 4 richtingen 'opkijkt' aangesloten op 4 ESP's en een i2c kompass en verder slimme firmware die een bepaalde geselecteerde SSID 'bekijkt op alle 4 de inputs en zo de richting bepaald aan de hand van de signaalsterkte.
soort handheld apparaatje.. vraag alleen is.. hoe ziet zo'n antenne er in de praktijk uit .. 8)
Kijk eens naar de antennes van wifishop. Voor wat je beschrijft denk ik aan een sector antenne.

Het is nog iets gecompliceerder dan je denkt omdat je ook te maken hebt met reflecties en interferenties, vooral bij 5GHz. Het kan lijken alsof een signaal uit een bepaalde richting komt, maar reflecteert misschien via een muur.
Door interferentie patronen van de antenne zelf heeft die een aantal lobben in de richtingsgevoeligheid en dan krijg je dit soort grafieken, dat dus ook in 3d.
Afbeeldingslocatie: http://www.radiolabs.com/images/zoom/panel13-pattern-zoom.gif

Vooral buiten zal je grofweg een richting kunnen bepalen, maar echt nauwkeurig zal het niet zijn en soms zal je naar een reflectie kijken terwijl de zender op een heel andere plek staat dan je denkt.

Acties:
  • 0 Henk 'm!

Verwijderd

tnx.. was er eigenlijk al bang voor.. die hele opzet staat of valt met de 'kijkhoek' van die antenne waarbij ik dacht aan 4 halve conservenblikjes met de rug tegen elkaar :P

Acties:
  • 0 Henk 'm!

  • LamSchaap
  • Registratie: September 2007
  • Laatst online: 09-09 19:44
Mars Warrior schreef op zaterdag 25 juli 2015 @ 10:49:
[...]

Wat me verder opvalt is dat er geen aansluitingen op de nieuwe ESP zichtbaar zijn of zitten die soms aan de onderkant?
Die foto op twitter is niet de nieuwe ESP... De nieuwe SoC is in een QFN48 (6*6mm) package. Meer ga ik jullie nog niet vertellen. :+

Kwalitatief blaten


Acties:
  • 0 Henk 'm!

  • Mars Warrior
  • Registratie: Oktober 2003
  • Laatst online: 14:05

Mars Warrior

Earth, the final frontier

LamSchaap schreef op zaterdag 25 juli 2015 @ 12:27:
[...]
Die foto op twitter is niet de nieuwe ESP... De nieuwe SoC is in een QFN48 (6*6mm) package. Meer ga ik jullie nog niet vertellen. :+
:? Wat laat Lee dan wel zien? Het is inderdaad een QFN32 chip, maar wat is dan de melding over meer RAM, sneller, BLE ??

Material 3 Thema's voor HA | Swiss Army Knife custom card voor HA | AmoebeLabs


Acties:
  • 0 Henk 'm!

  • dj_dysaster
  • Registratie: Januari 2003
  • Laatst online: 12:45

dj_dysaster

Stoom \o/

Inmiddels heb ik ook het een en ander aan de praat, het bleek dat mijn FTDI dongle bit inversion aan had staan waardoor ik allerlei raar gedrag kreeg... |:(

Iig het eerste prototype van mn MQTT powered Roomba werkt!

[ Voor 11% gewijzigd door dj_dysaster op 27-07-2015 09:18 ]


Acties:
  • 0 Henk 'm!

Verwijderd

dj_dysaster schreef op maandag 27 juli 2015 @ 09:18:
Inmiddels heb ik ook het een en ander aan de praat, het bleek dat mijn FTDI dongle bit inversion aan had staan waardoor ik allerlei raar gedrag kreeg... |:(

Iig het eerste prototype van mn MQTT powered Roomba werkt!

[video]
_/-\o_

Acties:
  • 0 Henk 'm!

  • Dylantje2
  • Registratie: April 2007
  • Laatst online: 06-09 15:25

Dylantje2

sorry Bricklayere here :-)

Nog net vorbij zien komen geloof ik.

Een HUE nabootsen... _/-\o_ _/-\o_
Waar is het einde.. 8)7
Ik hoop dat de Chinees snel gaat leveren...

https://github.com/probonopd/ESP8266HueEmulator _/-\o_ _/-\o_ _/-\o_

Mijn tuin met waterdichte leds.

Alles rood....
En dan de disco app...

Wordt een feestje ...

Een app voor de appelfans..
http://chromaforhue.com/

zonneboiler, pelletkachel, 36 panels, Atlantic Wpb, pana 5 Kw H, Heishamon, Domoticz, Grafana, Solarmeters, PVO: https://pvoutput.org/list.jsp?id=15321&sid=19520


Acties:
  • 0 Henk 'm!

  • Dylantje2
  • Registratie: April 2007
  • Laatst online: 06-09 15:25

Dylantje2

sorry Bricklayere here :-)

dj_dysaster schreef op maandag 27 juli 2015 @ 09:18:
Inmiddels heb ik ook het een en ander aan de praat, het bleek dat mijn FTDI dongle bit inversion aan had staan waardoor ik allerlei raar gedrag kreeg... |:(

Iig het eerste prototype van mn MQTT powered Roomba werkt!

[video]
Misschien dit iets voor je:
https://www.chopperrob.nl...omoticz-to-control-roomba

zonneboiler, pelletkachel, 36 panels, Atlantic Wpb, pana 5 Kw H, Heishamon, Domoticz, Grafana, Solarmeters, PVO: https://pvoutput.org/list.jsp?id=15321&sid=19520


Acties:
  • 0 Henk 'm!

  • dj_dysaster
  • Registratie: Januari 2003
  • Laatst online: 12:45

dj_dysaster

Stoom \o/

Thuis heb ik mijn eigen nodeJS based home automation systeem draaien waar ik de roomba aan toegevoegd heb. Lekker stofzuigen vanaf mn werk dus :p

Acties:
  • 0 Henk 'm!

  • Dylantje2
  • Registratie: April 2007
  • Laatst online: 06-09 15:25

Dylantje2

sorry Bricklayere here :-)

dj_dysaster schreef op dinsdag 28 juli 2015 @ 09:51:
Thuis heb ik mijn eigen nodeJS based home automation systeem draaien waar ik de roomba aan toegevoegd heb. Lekker stofzuigen vanaf mn werk dus :p
mmm Domotica. love that..

Wat heb je nog meer voor moois?

zonneboiler, pelletkachel, 36 panels, Atlantic Wpb, pana 5 Kw H, Heishamon, Domoticz, Grafana, Solarmeters, PVO: https://pvoutput.org/list.jsp?id=15321&sid=19520


Acties:
  • 0 Henk 'm!

  • dj_dysaster
  • Registratie: Januari 2003
  • Laatst online: 12:45

dj_dysaster

Stoom \o/

Ondermeer een koppeling naar MiLight, KaKu, omgebouwde airwick luchtverfrissers die temperatuur, vochtigheid, light en aanwezigheid rapporteren gebaseerd op JeeNodes en wat ander klein spul. Momenteel werk ik aan een HomeKit integratie zodat Siri mn domotica systeem kan aansturen.

Verder staat er nog een ESP8266 met WS2801 leds als klok op de planning en nog wat verder in de toekomst een multiroom audiosysteem :)

Acties:
  • 0 Henk 'm!

  • Dylantje2
  • Registratie: April 2007
  • Laatst online: 06-09 15:25

Dylantje2

sorry Bricklayere here :-)

dj_dysaster schreef op dinsdag 28 juli 2015 @ 13:26:
Ondermeer een koppeling naar MiLight, KaKu, omgebouwde airwick luchtverfrissers die temperatuur, vochtigheid, light en aanwezigheid rapporteren gebaseerd op JeeNodes en wat ander klein spul. Momenteel werk ik aan een HomeKit integratie zodat Siri mn domotica systeem kan aansturen.

Verder staat er nog een ESP8266 met WS2801 leds als klok op de planning en nog wat verder in de toekomst een multiroom audiosysteem :)
oooo maak maak me gek siri..[ alleen heb ik geen apples ]
Dat wil mijn vrouw graag... sreen dicht, zonnescherm uit en fan aan...
Als ik dat oor elkaar krijg, mag ik weer uit mijn hok....

Ik weet niet of je het kent, Domoticz....opensource
Er zijn al wat dingen die je wilt, die daar werken.[ op al je devices ]
en ze kunnen altijd hulp gebruiken bij meer mooie aansturen...

Dus ik hoop dat je eens kijkt daar en misschien wat op de wiki zet :-)

zonneboiler, pelletkachel, 36 panels, Atlantic Wpb, pana 5 Kw H, Heishamon, Domoticz, Grafana, Solarmeters, PVO: https://pvoutput.org/list.jsp?id=15321&sid=19520


Acties:
  • 0 Henk 'm!

  • Thedr
  • Registratie: Mei 2006
  • Laatst online: 13-09 21:32
dj_dysaster schreef op dinsdag 28 juli 2015 @ 13:26:
Ondermeer een koppeling naar MiLight, KaKu, omgebouwde airwick luchtverfrissers die temperatuur, vochtigheid, light en aanwezigheid rapporteren gebaseerd op JeeNodes en wat ander klein spul. Momenteel werk ik aan een HomeKit integratie zodat Siri mn domotica systeem kan aansturen.

Verder staat er nog een ESP8266 met WS2801 leds als klok op de planning en nog wat verder in de toekomst een multiroom audiosysteem :)
Interessant allemaal! Ook allemaal MQTT gebaseerde communicatie? Een aantal dingen staan hier ook op de verlanglijst, vooral een ESP->Kaku bridge/forwarder.

Acties:
  • 0 Henk 'm!

  • Keiichi
  • Registratie: Juni 2005
  • Laatst online: 09:44
Ik ben de laatste week met m'n nodemcu aan het programeren (van de nodemcu firmware is niets over, zit 'm als een arduino te programmeren.

Als ik in een interrupt een gpio poort uitlees (de desbetreffende, dan valt hij uit en reset ie)

Stukje code (snippets van grote geheel):

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
void setup()
     attachInterrupt(5, addPulse, RISING);
}

void addPulse() {
  Serial.println("addPulse()");
  //return;
  //if ( digitalRead(PULSEPIN) == HIGH ) {           // kijken hoelang de pin hoog blijft ...
    delay(10);   //30 mili sec
    if ( digitalRead(PULSEPIN) == HIGH ) {         // na 30 ms nog steeds hoog ?
      count++;                     // is een echte puls
      //Serial.println("PULS");
    } else {
      //Serial.println("false pulse :-(");
    }
  //}
}


Zolang er geen read op de poort gedaan wordt, dan is er niets aan de hand. Kan/mag ik de poort wel uitlezen in een interrupt van de poort?

Solar @ Dongen: http://solar.searchy.net/ - Penpal International: http://ppi.searchy.net/


Acties:
  • 0 Henk 'm!

  • rvtk
  • Registratie: Juni 2001
  • Laatst online: 14-09 21:17
Moet je de poort niet als input port in setup() toevoegen?

Acties:
  • 0 Henk 'm!

  • Keiichi
  • Registratie: Juni 2005
  • Laatst online: 09:44
rvtk schreef op woensdag 29 juli 2015 @ 17:27:
Moet je de poort niet als input port in setup() toevoegen?
Heel de code maar:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
#include <OneWire.h>
#include <ESP8266WiFi.h>
#include <WiFiClient.h>
#include <ESP8266WebServer.h>

const char *ssid = "****i";
const char *password = "******";

int PULSEPIN = 5;
long count = 0;
int state = HIGH;
float temp = -99;

OneWire  ds(2);  // on pin 2 (a 4.7K resistor is necessary)
ESP8266WebServer server(80);

void setup() {
  Serial.begin(9600);

  WiFi.begin ( ssid, password );
  Serial.println ( "" );

  // Wait for connection
  while ( WiFi.status() != WL_CONNECTED ) {
    delay(500);
  }
  // Set let to indicate full setup
  pinMode(12, OUTPUT);
  digitalWrite(12, HIGH);


  pinMode(5, INPUT);
  digitalWrite(5, LOW); // Pull down?
  attachInterrupt(5, addPulse, RISING);

  startWebserver();
}

void loop() {
  // put your main code here, to run repeatedly:
  //Serial.print(millis());
  //Serial.print(" count: ");
  //Serial.print(count);
  //Serial.println("");

  Serial.print("Temp: ");
  Serial.println(temp);
  delay(1000);
  server.handleClient();
}


void addPulse() {
  Serial.println("addPulse()");
  //return;
  //if ( digitalRead(PULSEPIN) == HIGH ) {           // kijken hoelang de pin hoog blijft ...
    delay(10);   //30 mili sec
    if ( digitalRead(PULSEPIN) == HIGH ) {         // na 30 ms nog steeds hoog ?
      count++;                     // is een echte puls
      //Serial.println("PULS");
    } else {
      //Serial.println("false pulse :-(");
    }
  //}
}

void getTemp() {
  byte i;
  byte present = 0;
  byte type_s;
  byte data[12];
  byte addr[8];
  float celsius, fahrenheit;

  if ( !ds.search(addr)) {
    ds.reset_search();
    delay(250);
    return;
  }

  if (OneWire::crc8(addr, 7) != addr[7]) {
    //Serial.println("CRC is not valid!");
    return;
  }

  // the first ROM byte indicates which chip
  switch (addr[0]) {
    case 0x10:
      //Serial.println("  Chip = DS18S20");  // or old DS1820
      type_s = 1;
      break;
    case 0x28:
      //Serial.println("  Chip = DS18B20");
      type_s = 0;
      break;
    case 0x22:
      //Serial.println("  Chip = DS1822");
      type_s = 0;
      break;
    default:
      //Serial.println("Device is not a DS18x20 family device.");
      return;
  }

  ds.reset();
  ds.select(addr);
  ds.write(0x44, 1);        // start conversion, with parasite power on at the end

  delay(1000);     // maybe 750ms is enough, maybe not
  // we might do a ds.depower() here, but the reset will take care of it.

  present = ds.reset();
  ds.select(addr);
  ds.write(0xBE);         // Read Scratchpad

  for ( i = 0; i < 9; i++) {           // we need 9 bytes
    data[i] = ds.read();
  }

  // Convert the data to actual temperature
  // because the result is a 16 bit signed integer, it should
  // be stored to an "int16_t" type, which is always 16 bits
  // even when compiled on a 32 bit processor.
  int16_t raw = (data[1] << 8) | data[0];
  if (type_s) {
    raw = raw << 3; // 9 bit resolution default
    if (data[7] == 0x10) {
      // "count remain" gives full 12 bit resolution
      raw = (raw & 0xFFF0) + 12 - data[6];
    }
  } else {
    byte cfg = (data[4] & 0x60);
    // at lower res, the low bits are undefined, so let's zero them
    if (cfg == 0x00) raw = raw & ~7;  // 9 bit resolution, 93.75 ms
    else if (cfg == 0x20) raw = raw & ~3; // 10 bit res, 187.5 ms
    else if (cfg == 0x40) raw = raw & ~1; // 11 bit res, 375 ms
    //// default is 12 bit resolution, 750 ms conversion time
  }
  temp = (float)raw / 16.0;
  ds.reset_search();
  return;
}

void handleRoot() {
  getTemp();
  String msg;

  msg += millis();
  msg += ";";
  msg += temp;
  msg += ";";
  msg += count;
  msg += "\n";
  server.send(200, "text/plain", msg);
}

void startWebserver() {
  server.on("/", handleRoot);
  server.begin();
}


Merk dat ik zo belangrijke stukken vergeet ;)

Solar @ Dongen: http://solar.searchy.net/ - Penpal International: http://ppi.searchy.net/


Acties:
  • 0 Henk 'm!

  • AllesKan
  • Registratie: Juli 2011
  • Laatst online: 29-05-2023
Don't use the delay() function in an interrupt routine!
It relies on interrupts itself.

The delayMicroseconds() function in contrast uses a simple wait loop and disables interrupts before execution (and then restores SREG after execution), so you can use it in interrupt routines.

For details have a look here:
http://code.google.com/p/...re/cores/arduino/wiring.c
http://forum.arduino.cc/i...41819.msg303564#msg303564

Acties:
  • 0 Henk 'm!

  • rvtk
  • Registratie: Juni 2001
  • Laatst online: 14-09 21:17
Weer wat geleerd :).

Verder zou ik regel 33 even goed nazoeken in de reference, ziet er wat vreemd uit, maar misschien hoort het wel zo.

Acties:
  • 0 Henk 'm!

  • RobV
  • Registratie: Juni 2013
  • Niet online

RobV

Welcome to the grid, Program.

(overleden)
rvtk schreef op woensdag 29 juli 2015 @ 19:26:
[...]

Weer wat geleerd :).

Verder zou ik regel 33 even goed nazoeken in de reference, ziet er wat vreemd uit, maar misschien hoort het wel zo.
digitalWrite na een pinMode(INPUT) geeft aan dat je gebruik wilt maken van de interne pull-up resistor (afhankelijk van het model IC 20kΩ-150kΩ). De recentere Arduino versie ondersteund INPUT_PULLUP als mode waardoor het een stuk duidelijker is wat er bedoeld wordt.

De digitalWrite(5, LOW); betekent zelfs dat de pullup expliciet uitgezet wordt.

bron

[ Voor 6% gewijzigd door RobV op 29-07-2015 19:43 ]

 | Mijn joystick / simpit project | Blog | Elite Dangerous CMDR Cataclysm72


Acties:
  • 0 Henk 'm!

  • Keiichi
  • Registratie: Juni 2005
  • Laatst online: 09:44
Ik ging er tenonrechte vanuit dat het met de read te maken had. Zonder de delay werkt het goed. Nu een andere manier verzinnen om valse pulsen er tussenuit te vissen.

Ik ben bezig met een setupje te maken s0 pulsen te tellen. Mijn idee hierbij was dat de state LOW is tot de 'pulse' (Eigenlijk een knop die ingedrukt wordt als het ware) HIGH wordt. Tussen de GPIO pin en GND zit een 10k weerstand (zelfde als op http://playground.arduino.cc/Main/EEM12L-32AKWhMonitoring )

Solar @ Dongen: http://solar.searchy.net/ - Penpal International: http://ppi.searchy.net/


Acties:
  • 0 Henk 'm!

  • t1mmy
  • Registratie: Mei 2006
  • Laatst online: 14-08 16:39
Pfff. Na 4+ uur eindelijk mijn EPS01 aan de praat. Nu alles werkt heb ik eigenlijk geen idee wat er mis ging, maar het werkt, dus mij hoor je niet klagen. Nu eens kijken naar wat alle firmwares zijn (heb 0.9.2.4), hoe ik drivers kan uploaden en het aan kan gaan sturen. Fun fun fun :)

Ik moet de ESP dus eerst wel met power verbinden en dan pas de TX en RX draden, anders blijft het blauwe lampje hangen en doet ie niks (behalve soms wat "wR{_RSFjSf[" uitprinten). Soms als ik later nog de TX en RX draden aansluit gebeurt het zelfde, maar niet altijd. Is dit iets bekends?

Hmm we zijn er nog niet, nu krijg ik alleen nog maar
AT+RST
wrong syntax

ERROR
AT
wrong syntax

ERROR
En nu doet ie het weer 8)7 Elk command lijkt alleen wel de eerste keer te falen. (Met een wrong syntax fout zoals hier boven)

[ Voor 51% gewijzigd door t1mmy op 29-07-2015 23:07 ]


Acties:
  • 0 Henk 'm!

  • Wirehead
  • Registratie: December 2000
  • Laatst online: 13:52
t1mmy schreef op woensdag 29 juli 2015 @ 22:32:
Ik moet de ESP dus eerst wel met power verbinden en dan pas de TX en RX draden, anders blijft het blauwe lampje hangen en doet ie niks (behalve soms wat "wR{_RSFjSf[" uitprinten). Soms als ik later nog de TX en RX draden aansluit gebeurt het zelfde, maar niet altijd. Is dit iets bekends?


[...]


En nu doet ie het weer 8)7 Elk command lijkt alleen wel de eerste keer te falen. (Met een wrong syntax fout zoals hier boven)
Heb je CH_PD aan VCC(3.3V) hangen? Pin moet omhoog getrokken zijn om goed te werken.

Denon AVR-X2800H, Quadral Amun Mk.III, Technics SL-7, DIY PhonoPre, AT-152LP / 4.225kW Heckert Solar / SMA 3.0-1AV-41 / Kia e-Niro 64kWh First Edition


Acties:
  • 0 Henk 'm!

  • t1mmy
  • Registratie: Mei 2006
  • Laatst online: 14-08 16:39
Yep heb ik gedaan, wel met een 330k weerstand er tussen. Ik lijkt ze nu wel redelijk stabiel aan de praat te hebben, maar moet ze wel eerst laten booten zonder TX/RX aangesloten, anders dan boot hij niet en blijft de blauwe LED branden.

[ Voor 62% gewijzigd door t1mmy op 30-07-2015 09:20 ]


Acties:
  • 0 Henk 'm!

  • Wirehead
  • Registratie: December 2000
  • Laatst online: 13:52
zoiets _kan_ voorkomen als je RX/TX omgewisseld hebt - wat voor dongle gebruik je? met 3.3 volt level shifter erin?

Denon AVR-X2800H, Quadral Amun Mk.III, Technics SL-7, DIY PhonoPre, AT-152LP / 4.225kW Heckert Solar / SMA 3.0-1AV-41 / Kia e-Niro 64kWh First Edition


Acties:
  • 0 Henk 'm!

  • t1mmy
  • Registratie: Mei 2006
  • Laatst online: 14-08 16:39
Wirehead schreef op donderdag 30 juli 2015 @ 17:34:
zoiets _kan_ voorkomen als je RX/TX omgewisseld hebt - wat voor dongle gebruik je? met 3.3 volt level shifter erin?
Jep, gebruik deze. Denk niet dat RX/TX verkeerd om zit though, als ik ze aansluit nadat ie geboot is kan ik er dingen naar toe sturen (en terug krijgen), als ik ze daarna omdraai kan ik niets. Gebruik wel een externe voeding voor de ESP, met de gnd van FTDI "gedeeld". (Kreeg vaak maar 2.9 volt via de FTDI) Zo eens kijken wat er gebeurt als ik dat niet doe. Dan doet ie het niet
Pagina: 1 ... 9 ... 80 Laatste