Acties:
  • 0 Henk 'm!

Verwijderd

LoRa single channel gateway board v1.3 - https://pcbs.io/share/zvJjz
project page - https://github.com/hallard/NodeMCU-Gateway
charles blog - https://hallard.me/

[ Voor 12% gewijzigd door Verwijderd op 20-07-2016 20:08 ]


Acties:
  • 0 Henk 'm!

  • geerttttt
  • Registratie: Oktober 2006
  • Laatst online: 02-09 18:25

geerttttt

Manisch positief

BB-One schreef op woensdag 20 juli 2016 @ 15:41:
[...]

Aangezien ik de FTDI pas sinds dinsdag in huis heb, heb ik daar niet eerder over gehoord... ;)

[...]

Denk dat het voor mij niet uitmaakt aangezien ik pas dinsdag hier mee baan de slag ben gegaan.
Voor zover ik alle details weet geldt dit voor vrijwel alle chineze goedkope FTDI bordjes. Die hebben allemaal neppe chips, anders waren ze ook niet zo goedkoop.

Het punt is eigenlijk dat je niet die foute oude driver moet hebben (van februari dit jaar... of was het nog langer geleden, weet het niet precies). Anders 'soft-brick' je je FTDI.

Oost west, 127.0.0.1 best!


Acties:
  • 0 Henk 'm!

  • BoschR
  • Registratie: December 2008
  • Laatst online: 12-09 15:42
Ik ben nu een aantal weken aan het hobby'en met de ESP's (nodemcu). Vind het leuk werken, alleen frustreert het me wel steeds meer dat ze (bij mij) zo instabiel zijn tijdens ontwikkelen.

Het instabiele gedrag, is dit "normaal"? Tijdens het ontwikkelen in ESPlorer moet ik erg (!!) vaak opnieuw de connectie openen (Open/Close). En ook een harde/fysieke reset geven (dmv de knop op de nodemcu).

Anders ben ik benieuwd wat ik verkeerd doe :).

OV | 2kap '99 131m² | Quatt Duo | Intergas Kombi Kompakt HRE 28/24 '13 | Honeywell T6 | 13 x 435wp SolarEdge


Acties:
  • 0 Henk 'm!

  • Robbiedobbie
  • Registratie: Augustus 2009
  • Laatst online: 07:49
Ik ben een bordje aan het ontwerpen welke een esp-12e gaat bevatten. Echter wegens gebrek aan IO poorten, komt er ook een attiny2313 bij, die via i2c communicatie heeft met de esp.

Op het bordje heb ik zowel 5v als 3.3v lijnen vanaf waar ik de attiny kan voeden. Mijn voorkeur was om de attiny op 5v te runnen, hetgeen geen probleem is kwa i2c (Simpelweg de pullup op de io aan 3.3v hangen).

Echter wil ik ook de mogelijkheid hebben om de attiny firmware te upgraden. Hiervoor had ik het plan om deze via SPI aan de esp te hangen, zodat ik met de esp de firmware van de attiny kan flashen via ISP. Nu zit ik met SPI met de voltages. Ik kan niet echt vinden of een simpele resistor divider op de io lijn van tiny naar esp goed genoeg is, of dat dit niet lekker werkt met de SPI snelheden voor flashen.

Verder weet ik niet of de attiny io op 3.3v oppakt als de supply 5v is tijdens SPI.

Iemand die hier meer ervaring mee heeft en het een en ander zou kunnen toelichten?

Acties:
  • 0 Henk 'm!

Verwijderd

Robbiedobbie schreef op zaterdag 23 juli 2016 @ 13:35:


Verder weet ik niet of de attiny io op 3.3v oppakt als de supply 5v is tijdens SPI.
waarom geen mcp23017 samen met deze lib 8)

- http://www.hackerstore.nl/PDFs/MCP23017.pdf

Acties:
  • 0 Henk 'm!

  • Robbiedobbie
  • Registratie: Augustus 2009
  • Laatst online: 07:49
Aangezien de attiny ook als voordeel heeft dat ik hem als soort van watchdog kan inzetten. Ik heb gemerkt dat de ESP nog wel eens wil blijven hangen, zonder dat de watchdog hem eruit weet te halen. Met de attiny kan ik dan na een specifieke timeout de chip resetten.

Bovendien kan ik op deze manieren bepaalde logic naar de attiny halen waar de esp zich dan niet meer mee bezig hoeft te houden ;)

Acties:
  • 0 Henk 'm!

Verwijderd

ah duidelijk, 2 processors aan elkaar knopen, flinke uitdaging

Acties:
  • 0 Henk 'm!

  • Raven
  • Registratie: November 2004
  • Niet online

Raven

Marion Raven fan

ThinkPadd schreef op dinsdag 19 juli 2016 @ 20:51:
Vragen om een filmpje doen heel veel van die China verkopers. Is puur om jou het leven zuur te maken door tijd te rekken en te hopen dat je het er bij laat zitten.

Dat IC kun je wel lossolderen en weer vastsolderen op de juiste manier toch?

Heb mijn D1 Mini nog niet binnen bedenk ik mij net. Is ook al een drie week onderweg volgens mij. Ik ga maar eens in de pen klimmen...
Met een reguliere soldeerbout? Is dat wel te doen :?
Verwijderd schreef op zaterdag 23 juli 2016 @ 15:17:
ah duidelijk, 2 processors aan elkaar knopen, flinke uitdaging
Dat valt volgens mij wel mee, afhankelijk van de manier van communiceren en of er een logic level converter tussen moet.

After the first glass you see things as you wish they were. After the second you see things as they are not. Finally you see things as they really are, and that is the most horrible thing in the world...

Oscar Wilde


Acties:
  • 0 Henk 'm!

  • ThinkPad
  • Registratie: Juni 2005
  • Nu online
Raven schreef op zaterdag 23 juli 2016 @ 15:35:
[...]

Met een reguliere soldeerbout? Is dat wel te doen :?


[...]
Sure, met een tinzuiger kom je sowieso al een heel eind. Meestal probeer ik gewoon alle pinnetjes aan één kant tegelijk warm te stoken, IC beetje omhoog duwen aan die kant en dan de andere kant doen. Wel met beleid doen, zodat je de pads niet van het PCB trekt.

Desoldeerlitze is ook handig.

[ Voor 3% gewijzigd door ThinkPad op 23-07-2016 15:39 ]


Acties:
  • 0 Henk 'm!

  • bertp1
  • Registratie: Maart 2011
  • Niet online
Voor smd is desoldeerlitze veel handiger.

Acties:
  • 0 Henk 'm!

  • Robbiedobbie
  • Registratie: Augustus 2009
  • Laatst online: 07:49
Ik krijg kleine spacing smd componenten juist nooit goed weg met desoldeerlitze. Het zuigt veel soldeer weg, maar krijg nooit alles weg, waardoor component niet los gaat. Wanneer je dan met soldeerbout gaat verhitten en probeert te chip weg te krijgen lukt het je nooit om een hele rij warm te houden.

Wat ik meestal juist doe is met soldeer alle pinnen kortsluiten, en dan dat soldeer vloeibaar houden met de bout. Dan snel chip eruit trekken. Daarna ruim ik de overtollige soldeer op met litze.

Acties:
  • 0 Henk 'm!

  • sebastius
  • Registratie: September 2000
  • Laatst online: 24-09 23:17

sebastius

Laten we lekker link gaan doen

Robbiedobbie schreef op zondag 24 juli 2016 @ 11:32:
Ik krijg kleine spacing smd componenten juist nooit goed weg met desoldeerlitze. Het zuigt veel soldeer weg, maar krijg nooit alles weg, waardoor component niet los gaat. Wanneer je dan met soldeerbout gaat verhitten en probeert te chip weg te krijgen lukt het je nooit om een hele rij warm te houden.

Wat ik meestal juist doe is met soldeer alle pinnen kortsluiten, en dan dat soldeer vloeibaar houden met de bout. Dan snel chip eruit trekken. Daarna ruim ik de overtollige soldeer op met litze.
Daar pak ik de hot-air voor :) Veel makkelijker en netter werken.

Acties:
  • 0 Henk 'm!

  • costo
  • Registratie: Augustus 2015
  • Niet online
ThinkPadd schreef op dinsdag 19 juli 2016 @ 20:51:

Dat IC kun je wel lossolderen en weer vastsolderen op de juiste manier toch?
Raven schreef op zaterdag 23 juli 2016 @ 15:35:

Met een reguliere soldeerbout? Is dat wel te doen :?
Met een gewone soldeerbout+litze de CH340 van een Wemos printje waar de headers al op zitten desolderen is haast niet (meer) te doen. De headers bemoeilijken het werken aan de onderkant van de print.

Om een SMD IC los te krijgen had ik jaren geleden ooit eens een rolletje heel dun metaal (soldeer hecht er niet aan) bij Nedis gekocht. Breedte ca.7mm en dikte ca. 0,05 mm schat ik. Dat bandje kun je dan vanaf een zijkant onder het IC schuiven nadat met litze het meeste soldeer al is verwijderd gaat dat band als een mes tussen de print en de soldeerpunten van het SOP IC. Eerst de ene helft en daarna de andere rij pinnen. Dat werkt alleen goed als de SOP niet vastgelijmd zit en er geen via's onder de chip zitten.
Dat was in de tijd dat het goedkoopste hete lucht desoldeerstationnetje nog vele honderden guldens kostte.
Nu heb ik voor een paar tientjes een Chinees besteld.
http://www.aliexpress.com...b3-401d-abe3-bd2715b7c833

Daarmee gaat het zeker lukken om die Wemos weer aan de praat te krijgen.
Het deel met de ESP werkt gewoon, die kan ik met een FTDI benaderen, alleen de USB-communicatie werkt niet
Dat de CH340 geroteerd zit betekent niet perse dat deze kapot is gegaan. Anders heb ik nog wel een printje in de rommeldoos met een goede CH340G erop.

Acties:
  • 0 Henk 'm!

  • sebastius
  • Registratie: September 2000
  • Laatst online: 24-09 23:17

sebastius

Laten we lekker link gaan doen

Overigens als de chip op te offeren is snijd ik vaak de pootjes gewoon door met een scherp mesje. Daarna pootje voor pootje weghalen met litze.
costo schreef op dinsdag 19 juli 2016 @ 20:39:
Ja _root heeft gewonnen, en dat met deze hitte. ;)

Zelfs na dit plaatje vroeg de verkoper nog om een video.

[afbeelding]
180 graden gedraaid? Oh wow, ik heb 20 van die rotte bordjes, eens kijken of de mijne ook verkeerd om zitten!

[ Voor 59% gewijzigd door sebastius op 24-07-2016 13:19 ]


Acties:
  • 0 Henk 'm!

  • costo
  • Registratie: Augustus 2015
  • Niet online
sebastius schreef op zondag 24 juli 2016 @ 13:17:

180 graden gedraaid? Oh wow, ik heb 20 van die rotte bordjes, eens kijken of de mijne ook verkeerd om zitten!
Heb je je geld teruggekregen ?

Acties:
  • 0 Henk 'm!

  • sebastius
  • Registratie: September 2000
  • Laatst online: 24-09 23:17

sebastius

Laten we lekker link gaan doen

costo schreef op zondag 24 juli 2016 @ 13:30:
[...]


Heb je je geld teruggekregen ?
jup, op 5 euro na (10% oid) omdat ik het niet terug wilde sturen. Was wel even werk met een filmpje maken, heb ze alle 20 stuk voor stuk aangesloten om te demo-en.

Acties:
  • 0 Henk 'm!

  • costo
  • Registratie: Augustus 2015
  • Niet online
sebastius schreef op zondag 24 juli 2016 @ 13:34:
[...]

jup, op 5 euro na (10% oid) omdat ik het niet terug wilde sturen. Was wel even werk met een filmpje maken, heb ze alle 20 stuk voor stuk aangesloten om te demo-en.
Dat zal een hoop werk geweest zijn.

Het is wel duidelijk dat , zoals thinkpad al zei, dat de chinees , bij een defect, het je zo moeilijk mogelijk wil maken om een claim te doen. (is ook wel te begrijpen, immers verkopers hier in NL maken het ook vaak moeilijk om verhaal te halen.)

Ik kreeg ooit uit china een prijzig 2.42 inch OLED I2C/SPI schermpje wat met geen mogelijkheid wilde werken. Omdat ik moeilijkheden voorzag om het defect aan te tonen en zo een (gedeeltelijke) refund te claimen heb ik het mezelf maar makkelijk gemaakt en geclaimd dat het nooit was aangekomen. Voor mij voelt dat niet aan als fraude maar meer als een versimpeling van de feiten of een leugentje om bestwil. Immers ik kreeg niet wat ik had besteld.
Of de verkoper of Paypal/Visa me nu terugbetaalt interesseert me niet.

N.B. Visa/PayPal houden wel in de gaten dat je niet te vaak een claim doet dat iets niet aankomt. Je kun in zo.n geval makkelijk een ban krijgen.

edit: Visa/PayPal zijn zeer winstgevende organisaties die soms wel 20 tot 25 % van de omzet incasseren voor hun dienst.

[ Voor 4% gewijzigd door costo op 24-07-2016 14:35 ]


Acties:
  • 0 Henk 'm!

  • _root
  • Registratie: Augustus 2003
  • Laatst online: 24-09 23:57
geerttttt schreef op zondag 10 juli 2016 @ 19:55:
......
Iemand een idee of tip wat ik zou kunnen doen? Hij zou 30 seconden high moeten worden bij beweging als ik het goed begrijp.
Ik heb soortgelijke printjes gekocht, maar kreeg geen van de printjes lekker aan het werk op een lipo (18650) van 4.2 volt. uitgang ging willekeurig aan/uit ook zonder enige beweging in de buurt
Volgens de specs voeding tussen 3,3 en 20 volt.

Uiteindelijk de voeding naar 2x lipo gezet, ongeveer 8,5 volt en nu werken alle 5 printjes wel goed.
Met de uitgang stuur ik een esp aan, bij beweging komt er spanning op de esp, die een parameter op pimatic veranderd en dan in deep sleep gaat.

Maar let dus op de spanning misschien ook net te weinig..

PVoutput 3250 WP


Acties:
  • 0 Henk 'm!

  • geerttttt
  • Registratie: Oktober 2006
  • Laatst online: 02-09 18:25

geerttttt

Manisch positief

Is de output stroom genoeg om de ESP te voeden dan? Dan is dat nog niet zon gek plan opzich. Regel ik iets van een 9 of 12 volt voeding...

Oost west, 127.0.0.1 best!


Acties:
  • 0 Henk 'm!

  • _root
  • Registratie: Augustus 2003
  • Laatst online: 24-09 23:57
geerttttt schreef op zondag 24 juli 2016 @ 18:41:
Is de output stroom genoeg om de ESP te voeden dan? Dan is dat nog niet zon gek plan opzich. Regel ik iets van een 9 of 12 volt voeding...
Waarschijnlijk niet, ik heb er nog een transistor tussen, in mijn geval een bd139, weerstandje tussen de uitgang en basis en die schakelt 1 van de lipo's aan de ESP. :)

[ Voor 5% gewijzigd door _root op 24-07-2016 19:04 ]

PVoutput 3250 WP


Acties:
  • 0 Henk 'm!

  • wilmardo
  • Registratie: Februari 2011
  • Laatst online: 08:25
wilmardo schreef op maandag 18 juli 2016 @ 19:59:
[...]
Even wat anders, heb gister mijn CNY70 aangesloten op de ESP om mijn elektriciteitsmeter mee uit te gaan lezen. Alleen heb ik de weerstand waardes niet goed en ik heb eigenlijk geen idee wat het wel zou moeten zijn. Ik heb nu vanaf 5v een 200 ohm naar de LED en een 47K ohm naar de phototransitor.
Om het voltage naar 1V te verlagen voor ADC port heb ik een voltage divider gemaakt met een 1K ohm en een 220 ohm weerstand.
Maar nu lees ik een max waarde van 14 op ESP en als ik met de mulitmeter weer de voltage divider zie ik niks hoger dan 0.3V.
Waar is mijn Google kennis de mist in gegaan?
Even schaamteloos mijzelf quoten maar ik ben even bezig geweest met het meten nog:
- Er staat 1.20V op de LED
- Er staat 4.40V op de transistor
- Voor de voltage divider meet ik 0.12V met mijn vinger op de transistor
- Op het punt waar de esp aangesloten zit meet ik 0.03V met weer de transistor afgedekt

Het lijkt wel netjes te werken, ik zie bij AnalogRead waardes van 0 tot 15 afhankelijk van de afstand. Alleen lijkt het mij minder zuiver met zo'n kort bereik?

Wie o wie kan mij iets verder helpen?
Heeft er iemand sowieso een goed boek of online cursus over basis elektronica? Ik loop er steeds vaker tegenaan dat ik dingen op elektronicagebied niet weet waardoor het een soort trail and error wordt. Of heel lang zoeken naar iets simpels als een weerstand aan de base van een transistor.

Acties:
  • 0 Henk 'm!

  • Robbiedobbie
  • Registratie: Augustus 2009
  • Laatst online: 07:49
sebastius schreef op zondag 24 juli 2016 @ 13:12:
[...]

Daar pak ik de hot-air voor :) Veel makkelijker en netter werken.
Dat is natuurlijk de betere oplossing, maar ik heb nog geen stationnetje staan ;)

Ik heb het nog niet vaak nodig gehad, maar merk dat ik steeds vaker zou willen dat ik er een had, dus binnenkort zal ik wel een chinees erbij halen :)

Acties:
  • 0 Henk 'm!

  • Robbiedobbie
  • Registratie: Augustus 2009
  • Laatst online: 07:49
Heeft iemand hier toevallig ervaring met dit library? https://github.com/JChristensen/DS3232RTC

Ik heb namelijk het probleem dat wanneer ik simpelweg de header include (#include <DS3232RTC.h>), de esp niet meer wil booten. Compilen gaat gewoon goed.

Direct na het flashen blijft hij al hangen met:
code:
1
2
3
4
5
6
7
8
9
10
11
chksum 0x2d
csum 0x2d
v60000318
~ld

 ets Jan  8 2013,rst cause:2, boot mode:(1,6)


 ets Jan  8 2013,rst cause:4, boot mode:(1,6)

wdt reset


Wanneer ik hem dan handmatig eventjes reset, blijft hij loopen met het volgende:
code:
1
2
3
4
5
6
7
8
 ets Jan  8 2013,rst cause:2, boot mode:(3,6)

load 0x4010f000, len 1384, room 16 
tail 8
chksum 0x2d
csum 0x2d
v60000318
~ld


Doordat hij niet eens bij mijn eigen code komt (Eerste statement is een print statement), vermoed ik dat er iets fout gaat bij constructie van de DS3232RTC global.
Het rare is dat de sketch af en toe wel wil werken, afhankelijk van de image die gegenereerd wordt door compiler.

Iemand die hier meer over weet?

Acties:
  • 0 Henk 'm!

  • Elfsteden
  • Registratie: December 2012
  • Laatst online: 18-04 10:58
Na jaren alleen maar met software bezig geweest te zijn, wil ik nu ook eens met hard -en software aan de gang. Met beetje basis elektronica-kennis en internet moet het toch wel lukken :).
Als eerste project wil ik met een ESP8266 op een dev board en een aantal DS18B20 waterproof sensoren aan de gang om de temperatuur van het opblaaszwembad & buitenlucht te meten. Later wil ik dit uitbreiden met het schakelen van de filterpomp en op eea manier rgb led verlichting in het zwembad. Misschien ambitieus maar lijkt me wel leuk.

Ik heb spullen zoals een soldeerbout, breadboard, draadjes, weerstanden, en een rb pi (webserver) liggen.
Wat heb ik minimaal aan tools nodig om aan de slag te gaan. Heb ik bv een oscilloscoop en/of logic analyzer nodig?

Acties:
  • 0 Henk 'm!

  • Robbiedobbie
  • Registratie: Augustus 2009
  • Laatst online: 07:49
Elfsteden schreef op maandag 25 juli 2016 @ 18:42:
Ik heb spullen zoals een soldeerbout, breadboard, draadjes, weerstanden, en een rb pi (webserver) liggen.
Wat heb ik minimaal aan tools nodig om aan de slag te gaan. Heb ik bv een oscilloscoop en/of logic analyzer nodig?
Met een ESP + devboard en wat weerstandjes ledjes en een breadboard ga je al heel ver kunnen komen. Let wel op dat het devboard een beetje decent powersupply heeft, zodat je esp niet rare resets gaat krijgen. De soldeerbout komt van pas zodra je je project iets statischer en degelijker wil maken.

Een oscilloscoop of logic analyzer zijn niet nodig voor de meeste projecten. Deze komen pas van pas wanneer je eigen drivers voor een chip gaat schrijven (En je het protocol ernaartoe moet zien te debuggen als iets fout gaat), of wanneer je rare dingen gaat doen zoals een composiet video signaal genereren met een ESP :+
Robbiedobbie schreef op maandag 25 juli 2016 @ 18:39:
Ik heb namelijk het probleem dat wanneer ik simpelweg de header include (#include <DS3232RTC.h>), de esp niet meer wil booten. Compilen gaat gewoon goed.
...
Doordat hij niet eens bij mijn eigen code komt (Eerste statement is een print statement), vermoed ik dat er iets fout gaat bij constructie van de DS3232RTC global.
Ik heb net al ondervonden dat het lijkt te komen doordat het bovengenoemde library Wire.begin() aanroept in zijn global constructor. Deze wordt dus voor de setup functie van arduino aangeroepen.

Ik ben zelf niet echt bekend met de lifecyclus van de arduino libraries. Is het toegestaan deze functie aan te roepen voor setup()?

Acties:
  • 0 Henk 'm!

  • costo
  • Registratie: Augustus 2015
  • Niet online
ESP8266 gebruikt zijn eigen wire library.
Wire.begin() moet veranderd worden in Wire.begin(SDA,SCL)
dus Wire.begin(4,5) als je die gebruikt voor I2C

Acties:
  • 0 Henk 'm!

  • Robbiedobbie
  • Registratie: Augustus 2009
  • Laatst online: 07:49
Esp wire library heeft ook gewoon Wire.begin(), welke poort 4 en 5 als default gebruikt ;)

Acties:
  • 0 Henk 'm!

  • LED-Maniak
  • Registratie: Oktober 2003
  • Laatst online: 18:50
Heeft iemand al eens geprobeerd hoeveel POST data je naar een esp8266 server kan sturen?

Ik probeer een packet van 1023 bytes te sturen. Soms gaat het goed, soms niet. Dan verdwijnt een groot gedeelte van de data en geeft de ESP aan maar 695 bytes te ontvangen!

Ergens verdwijnt dit dus. Code stelt weinig voor:
code:
1
Serial.print(server.arg("Data").length());


Iemand al eens meegemaakt?

[ Voor 10% gewijzigd door LED-Maniak op 31-07-2016 23:22 ]

Mitsubishi externe temperatuur sensor (Home Assistant compatible): V&A - ClimaControl - Ook voor Panasonic & LG.


Acties:
  • 0 Henk 'm!

  • ThinkPad
  • Registratie: Juni 2005
  • Nu online
Ik wil voor de fun het draaistokje van mijn luxaflex bedienen. Is een servo zoals deze dan krachtig genoeg? Heb nog nooit eerder zo'n ding in handen gehad, dus heb geen flauw idee :+

Acties:
  • 0 Henk 'm!

  • Pixelmagic
  • Registratie: September 2002
  • Laatst online: 24-09 21:25

Pixelmagic

Ubergeek

ThinkPadd schreef op maandag 01 augustus 2016 @ 17:36:
Ik wil voor de fun het draaistokje van mijn luxaflex bedienen. Is een servo zoals deze dan krachtig genoeg? Heb nog nooit eerder zo'n ding in handen gehad, dus heb geen flauw idee :+
Geen ervaring mee maar zag wel http://www.thingiverse.com/thing:1646857 voorbij komen, daar gebruiken ze een steppertje van een paar euro. Grootste voordeel wat ik kan bedenken is dat deze eindeloos kan draaien en een aardige vertraging heeft. Een servo gaat al snel van A naar B en daardoor minder kracht heeft.

PVoutput van mijn 4950Wp


Acties:
  • 0 Henk 'm!

  • JTW
  • Registratie: September 2001
  • Laatst online: 14-05 21:23

JTW

Ik ben een mesh netwerk aan het bouwen waarin de ene ESP de firmware van een andere (in AP_STA, dus access point + wifi client mode) download (zodat je maar 1 hoeft te updaten en verder verspreid de nieuwe firmware zichzelf over het hele netwerk). Weet iemand hoe je met de arduino ide firmware je eigen firmware vanaf adres 0x000000 kunt lezen uit flash? Een module zou zijn eigen firmware kunnen aanbieden via http. Er is een ingebouwde file system module maar die werkt alleen op de vooraf gedefinieerde vrije ruimte op de flash chip, niet op het blok waar je eigen firmware staat.

Ik gebruik overigens NodeMCU dev bordjes.

Acties:
  • 0 Henk 'm!

  • Robbiedobbie
  • Registratie: Augustus 2009
  • Laatst online: 07:49
JTW schreef op maandag 01 augustus 2016 @ 21:38:
[...]
Weet iemand hoe je met de arduino ide firmware je eigen firmware vanaf adres 0x000000 kunt lezen uit flash? Een module zou zijn eigen firmware kunnen aanbieden via http. Er is een ingebouwde file system module maar die werkt alleen op de vooraf gedefinieerde vrije ruimte op de flash chip, niet op het blok waar je eigen firmware staat.

Ik gebruik overigens NodeMCU dev bordjes.
Met puur de arduino libraries zal dit niet mogelijk zijn. Voor de adressering (want firmware staat bij ota niet altijd op 0x00000000), zou ik kijken naar deze code:
https://github.com/esp826...cores/esp8266/Updater.cpp. Hier kun je en zien hoe de adressen berekend worden, en kun je zien hoe nu geschreven wordt naar die adressen (lezen zal ook mogelijk zijn op deze manier).

Acties:
  • 0 Henk 'm!

  • JTW
  • Registratie: September 2001
  • Laatst online: 14-05 21:23

JTW

Daar was ik al bang voor. Ik denk dat ik dan een eigen versie van de arduino libraries ga bakken. Een workaround zou overigens zijn om de file system library SPIFFS te gebruiken om een kopie van de firmware op te slaan in flash en die te distribueren maar dat maakt de code vrij complex.

Bedankt voor je reactie in ieder geval!

Acties:
  • 0 Henk 'm!

  • Robbiedobbie
  • Registratie: Augustus 2009
  • Laatst online: 07:49
JTW schreef op dinsdag 02 augustus 2016 @ 08:17:
Daar was ik al bang voor. Ik denk dat ik dan een eigen versie van de arduino libraries ga bakken. Een workaround zou overigens zijn om de file system library SPIFFS te gebruiken om een kopie van de firmware op te slaan in flash en die te distribueren maar dat maakt de code vrij complex.

Bedankt voor je reactie in ieder geval!
Het is zeer zeker mogelijk (Ook binnen de arduino IDE, alleen niet met arduino libraries). Ik zie in die update code een eboot_command_write staan die een structure met het beginaddress van de code wegschrijft naar de eboot.
Eventjes googlen, en ik vindt de tegenhanger, de read:

code:
1
2
3
4
5
struct eboot_command cmd;

if (eboot_command_read(&cmd)) {
...
}

Hiermee zou je dus het address van de huidige firmware versie kunnen krijgen.
Verder gebruiken ze deze methoden voor het schrijven van de flash (Dit gebruikt de SPIFFS ook voor zover ik kan zien):

code:
1
2
bool flashEraseSector(uint32_t sector);
bool flashWrite(uint32_t offset, uint32_t *data, size_t size);


Nu bestaat er ook een bool flashRead(uint32_t offset, uint32_t *data, size_t size);

Op deze manier zou je dus op je source esp de firmware uit kunnen lezen, terwijl je op je targets met de flashEraseSector en flashWrite de firmware wegschrijft.

Voor zover ik weet is de addressering binnenin de code allemaal relatief, waardoor het OTA updaten op verschillende adressen mogelijk is. Hierdoor hoef je verder geen problemen te krijgen met verschillende adressen bij de andere ESPs.


Succes!

Acties:
  • 0 Henk 'm!

  • JTW
  • Registratie: September 2001
  • Laatst online: 14-05 21:23

JTW

Robbiedobbie schreef op dinsdag 02 augustus 2016 @ 13:02:
[...]

Het is zeer zeker mogelijk (Ook binnen de arduino IDE, alleen niet met arduino libraries). Ik zie in die update code een eboot_command_write staan die een structure met het beginaddress van de code wegschrijft naar de eboot.
Eventjes googlen, en ik vindt de tegenhanger, de read:

code:
1
2
3
4
5
struct eboot_command cmd;

if (eboot_command_read(&cmd)) {
...
}

Hiermee zou je dus het address van de huidige firmware versie kunnen krijgen.
Verder gebruiken ze deze methoden voor het schrijven van de flash (Dit gebruikt de SPIFFS ook voor zover ik kan zien):

code:
1
2
bool flashEraseSector(uint32_t sector);
bool flashWrite(uint32_t offset, uint32_t *data, size_t size);


Nu bestaat er ook een bool flashRead(uint32_t offset, uint32_t *data, size_t size);

Op deze manier zou je dus op je source esp de firmware uit kunnen lezen, terwijl je op je targets met de flashEraseSector en flashWrite de firmware wegschrijft.

Voor zover ik weet is de addressering binnenin de code allemaal relatief, waardoor het OTA updaten op verschillende adressen mogelijk is. Hierdoor hoef je verder geen problemen te krijgen met verschillende adressen bij de andere ESPs.


Succes!
Het werkt! Erg bedankt. Zie deze gist voor een compleet voorbeeld, http server die zijn eigen firmware aanbied: https://gist.github.com/jtwaleson/95ee83d629ce14dafb4daff6d2a3f241

Ik heb geen goede manier om het einde van de firmware te vinden. Nu check ik of er 16 bytes 0xFF zijn, dat werkt maar ik denk dat er een mooiere manier is.

Acties:
  • 0 Henk 'm!

  • Robbiedobbie
  • Registratie: Augustus 2009
  • Laatst online: 07:49
JTW schreef op dinsdag 02 augustus 2016 @ 22:34:
[...]


Het werkt! Erg bedankt. Zie deze gist voor een compleet voorbeeld, http server die zijn eigen firmware aanbied: https://gist.github.com/jtwaleson/95ee83d629ce14dafb4daff6d2a3f241

Ik heb geen goede manier om het einde van de firmware te vinden. Nu check ik of er 16 bytes 0xFF zijn, dat werkt maar ik denk dat er een mooiere manier is.
Je kan misschien een aanpassing in de linker forceren tijdens compilen. Op deze manier kan je de linker een symbol laten exporteren die naar het einde van de firmware wijst. Ik weet niet hoe handig je bent met de compiler toolchain ;)

0xFF is natuurlijk flink foutgevoelig. Als je firmware ergens een 0xFFFFFFFF constant heeft staan gaat het fout. Ook als de code toevallig precies de laatste Page vult, zal de volgende Memory Page niet leeg (0xFF) zijn, maar gewoon Random data bevatten.

Acties:
  • 0 Henk 'm!

  • JTW
  • Registratie: September 2001
  • Laatst online: 14-05 21:23

JTW

Robbiedobbie schreef op dinsdag 02 augustus 2016 @ 22:56:
[...]

Je kan misschien een aanpassing in de linker forceren tijdens compilen. Op deze manier kan je de linker een symbol laten exporteren die naar het einde van de firmware wijst. Ik weet niet hoe handig je bent met de compiler toolchain ;)

0xFF is natuurlijk flink foutgevoelig. Als je firmware ergens een 0xFFFFFFFF constant heeft staan gaat het fout. Ook als de code toevallig precies de laatste Page vult, zal de volgende Memory Page niet leeg (0xFF) zijn, maar gewoon Random data bevatten.
Ik heb nog nooit iets met de toolchain gedaan, gebruik nu alleen de upload knop in de Arduino IDE ;) Denk echter dat ik er wel uit kan komen. De aanpak is alleen niet erg portable, het wordt een stuk lastiger om andere mensen er mee te laten spelen.

In de Arduino libraries wordt wel gechecked of de nieuwe binary op de chip past. De minimale chip type is geencodeerd in de firmware op byte 4: https://github.com/esp826...ores/esp8266/Esp.cpp#L240
Ik zou denk ik gewoon dat hele blok kunnen serveren. Dit heeft wat verder onderzoek nodig.

De code die ik hierboven plaatste is overigens heel erg bij elkaar gehacked ;)

Acties:
  • 0 Henk 'm!

  • Robbiedobbie
  • Registratie: Augustus 2009
  • Laatst online: 07:49
Ik denk dat de magicChipSize niet is wat je zoekt. Dit is de totale chipgrootte, niet de grootte van je firmware (je wil je vorige firmware en je SPIFFS niet meenemen).

Ik denk dat EspClass::getSketchSize() beter geschikt is. Deze gaat de image header af, om te kijken hoe groot hij is.

Als dat niet werkt, is het natuurlijk nog een oplossing om in je ota update stiekem de grootte weg te schrijven naar EEPROM of SPIFFS, en deze uit te lezen wanneer de firmware door een andere esp uitgelezen wordt.

Acties:
  • 0 Henk 'm!

  • LED-Maniak
  • Registratie: Oktober 2003
  • Laatst online: 18:50
Zo lekker.. Een ESP-07 gebrickt. Hoe? Geen idee.

Plots tijdens gebruik "fatal error". Ik krijg nu niet eens meer een boot-message terwijl ik dit bordje al wel 100 keer heb geflashed :F

Mitsubishi externe temperatuur sensor (Home Assistant compatible): V&A - ClimaControl - Ook voor Panasonic & LG.


Acties:
  • 0 Henk 'm!

  • costo
  • Registratie: Augustus 2015
  • Niet online
LED-Maniak schreef op woensdag 03 augustus 2016 @ 22:04:
Zo lekker.. Een ESP-07 gebrickt. Hoe? Geen idee.

Plots tijdens gebruik "fatal error". Ik krijg nu niet eens meer een boot-message terwijl ik dit bordje al wel 100 keer heb geflashed :F
De flash chip 100 keer erasen en opnieuw flashen is met een originele WinBond chip geen probleem, die is gegarandeerd voor minimaal 10.000 erase cycles.
Maar met zo´n onduidelijke chinees board weet je nooit zeker wat erop zit. Er zijn heel goedkope chinese cloon flash chips die max. ca. 100 erase cycles doorstaan en daarna versleten zijn.
Heb het zelf gehad met een chinees NodeMCU boardje, werkte maanden goed en 10-tallen keren geflashed, toen onstabiel werd en snel daarna het begaf. De enige reden die ik kon bedenken was de flash chip.

Acties:
  • 0 Henk 'm!

  • LED-Maniak
  • Registratie: Oktober 2003
  • Laatst online: 18:50
Blijkbaar! Had het al eerder gelezen maar nog niet meegemaakt.
Valt mij overigens wel een beetje tegen wat de I/O speed is van deze chip.

Bij 10MHz 50% duty krijg ik kromme flanken te zien op de scope. Geen mooie blokgolf meer.

Mitsubishi externe temperatuur sensor (Home Assistant compatible): V&A - ClimaControl - Ook voor Panasonic & LG.


Acties:
  • 0 Henk 'm!

  • costo
  • Registratie: Augustus 2015
  • Niet online
LED-Maniak schreef op donderdag 04 augustus 2016 @ 00:49:
..
Valt mij overigens wel een beetje tegen wat de I/O speed is van deze chip.

Bij 10MHz 50% duty krijg ik kromme flanken te zien op de scope. Geen mooie blokgolf meer.
Ik neem aan dat je het nu over de ESP8266 hebt en niet over de flash chip.

De I2S bus schijnt speciaal voor ´high speed´ I/O bedoeld te zijn.
I2S INput pinnen zijn GPIO 12,13 en 14. I2S OUTput pinnen zijn GPIO 2,3 en 15.

Ik weet niet welke I/O pin je hebt gebruikt., misschien gebruik je de verkeerde output pin? Probeer GPIO 3 de RX pin eens misschien geeft dat een beter resultaat.

Acties:
  • 0 Henk 'm!

  • LED-Maniak
  • Registratie: Oktober 2003
  • Laatst online: 18:50
Ik heb het over de esp8266 inderdaad. Pin 2 en Pin 15 hebben afgeronde hoeken bij PWM van 10MHz. Las elders al dat ze niet verder dan 6MHz komen alleen kan ik dat zo niet in de specs terugvinden.

Mitsubishi externe temperatuur sensor (Home Assistant compatible): V&A - ClimaControl - Ook voor Panasonic & LG.


Acties:
  • 0 Henk 'm!

  • costo
  • Registratie: Augustus 2015
  • Niet online
10 MHz PWM ? Voor een LED aan te sturen heb je aan een paar kHz toch wel genoeg. ;)

Acties:
  • 0 Henk 'm!

  • LED-Maniak
  • Registratie: Oktober 2003
  • Laatst online: 18:50
Ik probeer dan ook niet een ledje te dimmen :+ . Liefst had ik ergens in de 25~50MHz maar dat zal ik wel extern oplossen :)

Mitsubishi externe temperatuur sensor (Home Assistant compatible): V&A - ClimaControl - Ook voor Panasonic & LG.


Acties:
  • 0 Henk 'm!

  • sjimmie
  • Registratie: November 2002
  • Laatst online: 25-08 14:18
Met de esp8266 via de Arduino IDE is al heel lang een probleem met instabiele waardes van de analoge input pin. Weet iemand een goedkope en simpele externe ADC die, liefst met maar 1 digitale pin, ervoor in de plaats is te gebruiken? (gaat erom dat ik de analoge waarde van een MQ135 CO2 meter kan uitlezen)

Panasonic 7kW J-Series Split + 190 liter SWW, 2750+2100Wp Oost-West


Acties:
  • 0 Henk 'm!

  • DurkVell
  • Registratie: Augustus 2011
  • Laatst online: 24-09 23:31
ADS1115 module misschien? I2C, dus twee draadjes i.p.v. één. Kijk hier: https://www.adafruit.com/product/1085, maar bij Ali voor €2,50 of zo.

Acties:
  • 0 Henk 'm!

  • sjimmie
  • Registratie: November 2002
  • Laatst online: 25-08 14:18
DurkVell schreef op maandag 08 augustus 2016 @ 16:06:
ADS1115 module misschien? I2C, dus twee draadjes i.p.v. één. Kijk hier: https://www.adafruit.com/product/1085, maar bij Ali voor €2,50 of zo.
Hmm, ik had wel al de DS2450/DS2438 gevonden, onewire. Maar dat zijn dan losse smd/smt chips die ik dan zelf nog op een bordje moet solderen. Totaal grofweg 3 euro via aliexpress.
Die ADS1115 reeds op een bordje kost amper 2 euro bij aliexpress.

Maar ik heb echt nog maar 1 digitale pin vrij, dus daar heb ik een grotere uitdaging met i2c. :(

Panasonic 7kW J-Series Split + 190 liter SWW, 2750+2100Wp Oost-West


Acties:
  • 0 Henk 'm!

  • Tinusvolkel
  • Registratie: Augustus 2014
  • Nu online
sjimmie schreef op dinsdag 09 augustus 2016 @ 09:30:
[...]

Hmm, ik had wel al de DS2450/DS2438 gevonden, onewire. Maar dat zijn dan losse smd/smt chips die ik dan zelf nog op een bordje moet solderen. Totaal grofweg 3 euro via aliexpress.
Die ADS1115 reeds op een bordje kost amper 2 euro bij aliexpress.

Maar ik heb echt nog maar 1 digitale pin vrij, dus daar heb ik een grotere uitdaging met i2c. :(
Dan bestel je ook meteen een I2C IO expander mee :P

Strava | 8600 Wp zzo | 1600 Wp nnw


Acties:
  • 0 Henk 'm!

  • sjimmie
  • Registratie: November 2002
  • Laatst online: 25-08 14:18
Tinusvolkel schreef op dinsdag 09 augustus 2016 @ 09:36:
[...]


Dan bestel je ook meteen een I2C IO expander mee :P
Dat zou alleen nut hebben als een andere sensor al i2c is, maar het is 3x ds18b20, een dht22, een c1101, inverted software-serial.

Panasonic 7kW J-Series Split + 190 liter SWW, 2750+2100Wp Oost-West


Acties:
  • 0 Henk 'm!

  • Tinusvolkel
  • Registratie: Augustus 2014
  • Nu online
sjimmie schreef op dinsdag 09 augustus 2016 @ 09:41:
[...]

Dat zou alleen nut hebben als een andere sensor al i2c is, maar het is 3x ds18b20, een dht22, een c1101, inverted software-serial.
Volgens dit artikel kun je meerdere 1 wire sensors aan elkaar hangen

Strava | 8600 Wp zzo | 1600 Wp nnw


Acties:
  • 0 Henk 'm!

  • AtlonXP1800
  • Registratie: Augustus 2001
  • Laatst online: 29-01 12:01

AtlonXP1800

Ondertitel?

Tinusvolkel schreef op dinsdag 09 augustus 2016 @ 09:52:
[...]


Volgens dit artikel kun je meerdere 1 wire sensors aan elkaar hangen
Ik kan bevestigen dat dat prima werkt op de ESP-12. Je zou er zelfs 127 aan kunnen sluiten op één data pin :*)

Acties:
  • 0 Henk 'm!

  • sjimmie
  • Registratie: November 2002
  • Laatst online: 25-08 14:18
AtlonXP1800 schreef op dinsdag 09 augustus 2016 @ 09:53:
Ik kan bevestigen dat dat prima werkt op de ESP-12. Je zou er zelfs 127 aan kunnen sluiten op één data pin :*)
Tinusvolkel schreef op dinsdag 09 augustus 2016 @ 09:52:
Volgens dit artikel kun je meerdere 1 wire sensors aan elkaar hangen
Ja dat klopt, ik heb meerdere ds18b20's over 1-wire aan elkaar hangen.
Maar de dht22 is een niet-geadresseerd apparaat en kan niet aan dezelfde 1-wire hangen als de ds18b20's. Dus dat blijven altijd aparte pinnen.

D0 kan niet worden gebruikt (gpio16)
D1 1-wire ds8b20's
D2 software serial
D3 (vrij)
D4 DHT22
D5 cc1101 sck
D6 cc1101 miso
D7 cc1101 mosi
D8 cc1101 csn
D9/D10 seriele poort
https://github.com/esp826...cu/pins_arduino.h#L37-L59

[ Voor 74% gewijzigd door sjimmie op 09-08-2016 10:30 ]

Panasonic 7kW J-Series Split + 190 liter SWW, 2750+2100Wp Oost-West


Acties:
  • 0 Henk 'm!

  • AtlonXP1800
  • Registratie: Augustus 2001
  • Laatst online: 29-01 12:01

AtlonXP1800

Ondertitel?

DHT22 vervangen door si7021, en je bent er. Pin 4 en 5 kan je gebruiken voor i2c.

Acties:
  • 0 Henk 'm!

  • sjimmie
  • Registratie: November 2002
  • Laatst online: 25-08 14:18
AtlonXP1800 schreef op dinsdag 09 augustus 2016 @ 10:03:
DHT22 vervangen door si7021, en je bent er. Pin 4 en 5 kan je gebruiken voor i2c.
Dan wordt het dus eerst voor de adc oplossing een extra ds24xx chip, dan een i2c expander en dan de dht22 vervangen door een si7021. Gevolgd door de code voor analoog en voor humidity op de schop. Ik hoopte eigenlijk gewoon op 1 oplossing. :'(

Panasonic 7kW J-Series Split + 190 liter SWW, 2750+2100Wp Oost-West


Acties:
  • 0 Henk 'm!

  • naftebakje
  • Registratie: Februari 2002
  • Laatst online: 15:07
Losse µC met ingebouwde ADC die je data uitleest en serieël naar de ESP spuugt?

Als de boer zijn koeien kust, zijn ze jarig wees gerust. Varkens op een landingsbaan, leiden nooit een lang bestaan. Als de boer zich met stront wast, zijn zijn hersens aangetast. Als het hooi is in de schuur, zit het wijf bij den gebuur.


Acties:
  • 0 Henk 'm!

  • sjimmie
  • Registratie: November 2002
  • Laatst online: 25-08 14:18
Ik ga eerst maar eens kijken of ik gpio16 (d0) kan inzetten voor de dht22 of de ds18b20's.
Als dat namelijk kan, dan heb ik 2 pinnen vrij voor i2c en kan ik daarmee verder.

EDIT: nope, de D0 / gpio16 pin laat zich niet gebruiken voor dht, onewire of softwareserial. ;w
softwareserial kan ik inkomen omdat die interrupts gebruikt en dat kan niet op gpio16, waarom dht en onewire het niet doen is me niet duidelijk.

EDIT2: DHT werkt niet omdat in de DHT library pinMode(_pin, INPUT_PULLUP) staat en gpio16 kent geen INPUT_PULLUP. gpio16 heeft namelijk een ingebouwde pulldown.
En eigenlijk hetzelfde voor onewire, ik doe een OneWire(pin, true) waarbij de true staat voor enable pullup.

Beide problemen zijn wellicht in de code aan te passen en op te lossen...
EDIT3: Helaas, ook na aanpassen van de code krijg ik dht en onewire niet aan de gang op D0/gpio16.

[ Voor 89% gewijzigd door sjimmie op 10-08-2016 17:43 ]

Panasonic 7kW J-Series Split + 190 liter SWW, 2750+2100Wp Oost-West


Acties:
  • 0 Henk 'm!

  • ThinkPad
  • Registratie: Juni 2005
  • Nu online
Vandaag een Wemos D1 Mini binnengekregen, mooi dingetje! ESPEasy R120 erop gezet en ik probeer het relay shield te besturen via: http://192.168.4.138/control?cmd=GPIO,1,1
maar er gebeurt niks helaas. Ik krijg wel de JSON-output terug, maar het relais toont geen teken van leven.

Het relay shield maakt gebruik van D1 als ik de printsporen zo zie. Heb het ook met 1,0 en 0,1 en 0,0 geprobeerd maar geen reactie van het relais helaas. Iemand een idee? Is de pinout onder ESPeasy wellicht anders?


Edit: Ja dus. '5,1' zorgde ervoor dat het relais inschakelde. D1 = GPIO5 onder ESPEasy bij de Wemos D1 Mini dus. Nu maar eens kijken wat voor leuks we er mee kunnen doen. Het is in ieder geval al 10x makkelijker te gebruiken dan een losse ESP8266 waarbij je met een losse DC-DC converter aan de gang moet, FTDI-kabel voor het programmeren etc. En met ESPEasy is spul aansturen ook erg makkelijk. Techniek heeft niet stil gestaan sinds start van dit topic _O_

[ Voor 31% gewijzigd door ThinkPad op 10-08-2016 21:46 ]


  • Elfsteden
  • Registratie: December 2012
  • Laatst online: 18-04 10:58
Ik ben nu al een paar dagen aan het klooien met een Wemos D1 R1 kloon en een paar DS18B20 sensoren. Ik gebruik in sketch het DS18x20_temperature voorbeeld. Het lijkt erop dat ik alleen output van de sensoren krijg wanneer ik pin D4 gebruik. Ik krijg temperatuur data binnen.
Bij andere pinnen krijg ik alleen maar 'no more addresses' oftewel geen data. Is alleen D4 geschikt of zouden andere pinnen ook moeten werken? Zo ja, wat is de makkelijkste methode te testen?

  • costo
  • Registratie: Augustus 2015
  • Niet online
sjimmie schreef op dinsdag 09 augustus 2016 @ 11:15:
[....]
EDIT3: Helaas, ook na aanpassen van de code krijg ik dht en onewire niet aan de gang op D0/gpio16.
Dat staat hier beschreven http://www.wemos.cc/Products/d1_mini.html

Daar staat de map voor de module-pinnummers naar de functie/GPIO
------------------------------------------------------------------------------------
Pin Function ESP-8266 Pin
TX TXD TXD
RX RXD RXD
A0 Analog input, max 3.3V input A0
D0 IO GPIO16
D1 IO, SCL GPIO5
D2 IO, SDA GPIO4
D3 IO, 10k Pull-up GPIO0
D4 IO, 10k Pull-up, BUILTIN_LED GPIO2
D5 IO, SCK GPIO14
D6 IO, MISO GPIO12
D7 IO, MOSI GPIO13
D8 IO, 10k Pull-down, SS GPIO15
G Ground GND
5V 5V -
3V3 3.3V 3.3V
RST Reset RST

All IO have interrupt/pwm/I2C/one-wire supported(except D0)
-------------------------------------------------------------------------------------------------
Als laatste opmerking staat er dat D0 als enige GPIO geen one-wire ondersteund.
Dat zal wel met met de Deep sleep - Wake-Up functie te maken hebben die aan die pin hangt.

[ Voor 8% gewijzigd door costo op 11-08-2016 01:31 ]


  • sjimmie
  • Registratie: November 2002
  • Laatst online: 25-08 14:18
Aangezien Wemos en NodeMcu weer net anders zijn, en ik nodemcu gebruik, denk ik niet dat voor alles precies hetzelfde geldt. En dan nog was ik vooral geinteresseerd in de reden waarom, en of daar een work-around voor zou zijn. Als het bijvoorbeeld het verschil tussen pullup en pulldown is dan is daar wellicht omheen te bouwen, als het aan de interrupts ligt dan is dat niet de beperking voor onewilre want die gebruikt geen interrrupts, enzovoorts.
Dat iets niet supported is, wil niet altijd zeggen dat het niet kan. ;)
https://github.com/esp8266/Arduino/issues/604

[ Voor 3% gewijzigd door sjimmie op 11-08-2016 07:55 ]

Panasonic 7kW J-Series Split + 190 liter SWW, 2750+2100Wp Oost-West


  • Whizzer
  • Registratie: November 2000
  • Laatst online: 06-03 13:47

Whizzer

Flappie!

ThinkPadd schreef op woensdag 10 augustus 2016 @ 21:08:
Vandaag een Wemos D1 Mini binnengekregen, mooi dingetje! ESPEasy R120 erop gezet en ik probeer het relay shield te besturen via: http://192.168.4.138/control?cmd=GPIO,1,1
maar er gebeurt niks helaas. Ik krijg wel de JSON-output terug, maar het relais toont geen teken van leven.

Het relay shield maakt gebruik van D1 als ik de printsporen zo zie. Heb het ook met 1,0 en 0,1 en 0,0 geprobeerd maar geen reactie van het relais helaas. Iemand een idee? Is de pinout onder ESPeasy wellicht anders?


Edit: Ja dus. '5,1' zorgde ervoor dat het relais inschakelde. D1 = GPIO5 onder ESPEasy bij de Wemos D1 Mini dus. Nu maar eens kijken wat voor leuks we er mee kunnen doen. Het is in ieder geval al 10x makkelijker te gebruiken dan een losse ESP8266 waarbij je met een losse DC-DC converter aan de gang moet, FTDI-kabel voor het programmeren etc. En met ESPEasy is spul aansturen ook erg makkelijk. Techniek heeft niet stil gestaan sinds start van dit topic _O_
Ah! Lijkt erop dat dit een bijna perfecte oplossing is voor mijn wens beide garagedeuren te kunnen bedienen parallel over de (gecodeerde) 433MHz bediening die er nu op zit. :P Volgens mij kan ik er zelfs nog simpel een magneetcontactje aan koppelen om vast te stellen of de garage open of dicht is.

Nu kan ik ervoor kiezen 2x die opzet te bouwen, maar idealiter integreer ik het in 1 oplossing, want beide deuren zitten naast elkaar. Zou dat nog eenvoudig te realiseren zijn? Ik zat al te kijken naar een Dual Base bordje, maar dan zitten beide relais op dezelfde aansluiting..

En ja, ik ben redelijk nieuw in dit wereldje, anders had ik dit vast al heel simpel in elkaar geflanst..

Ik ben geweldig.. en bescheiden! En dat siert me...


  • ThinkPad
  • Registratie: Juni 2005
  • Nu online
Zoiets halen: https://nl.aliexpress.com...ectronic/32316652710.html

Dual-relay bordje, afzonderlijk te bedienen. Bordje heeft optocouplers dus de ESP8266 heeft geen moeite met het aansturen. Female-female headerkabels erbij kopen en klaar. Magneetcontactjes heeft AliExpress ook wel.

[ Voor 14% gewijzigd door ThinkPad op 11-08-2016 09:19 ]


  • sjimmie
  • Registratie: November 2002
  • Laatst online: 25-08 14:18
Mijn pin-tekort is voorlopig weer opgelost, op het boardje van mij blijkt gpio10 bruikbaar voor onewire (9 niet, vreemd genoeg, terwijl die een soort bij elkaar horen).

Panasonic 7kW J-Series Split + 190 liter SWW, 2750+2100Wp Oost-West


  • Whizzer
  • Registratie: November 2000
  • Laatst online: 06-03 13:47

Whizzer

Flappie!

Dan toch maar met losse dingetjes.. ;) was ideaal geweest als ik er 1 blok van kon maken mbv die shields.

Ik ben geweldig.. en bescheiden! En dat siert me...


  • costo
  • Registratie: Augustus 2015
  • Niet online
sjimmie schreef op donderdag 11 augustus 2016 @ 09:47:
Mijn pin-tekort is voorlopig weer opgelost, op het boardje van mij blijkt gpio10 bruikbaar voor onewire (9 niet, vreemd genoeg, terwijl die een soort bij elkaar horen).
Was mij ook al eens opgevallen dat bij een ESP7/ESP12 een v/d D9/D10 pinnen niet bruikbaar is en de ander wel. Ze gaan allebei naar de flash-chip, D9=Hold en D10=WriteProtect.
Er zou wel een kans kunnen zijn dat je per ongeluk je flash overschrijft als je D10 (WriteProtect) laag maakt maar met een pull up weerstand zal dat wel niet zo gauw gebeuren.
Hier een link hoe je (bij een ESP201) gpio 9&10 vrij kunt maken.http://smarpl.com/content...-freeing-gpio9-and-gpio10. Alleen wordt opnieuw flashen ook OTA dan problematisch.
Whizzer schreef op donderdag 11 augustus 2016 @ 10:12:
Dan toch maar met losse dingetjes.. ;) was ideaal geweest als ik er 1 blok van kon maken mbv die shields.
Je kunt toch 2 van die relay shields gebruiken en bij de ene de sturing aan een andere GPIO zetten. Is niet meer dan een spoortje doorsnijden en een nieuwe verbinding aan een andere gpio maken.

  • sjimmie
  • Registratie: November 2002
  • Laatst online: 25-08 14:18
costo schreef op donderdag 11 augustus 2016 @ 17:39:
Was mij ook al eens opgevallen dat bij een ESP7/ESP12 een v/d D9/D10 pinnen niet bruikbaar is en de ander wel. Ze gaan allebei naar de flash-chip, D9=Hold en D10=WriteProtect.
Er zou wel een kans kunnen zijn dat je per ongeluk je flash overschrijft als je D10 (WriteProtect) laag maakt maar met een pull up weerstand zal dat wel niet zo gauw gebeuren.
Hier een link hoe je (bij een ESP201) gpio 9&10 vrij kunt maken.http://smarpl.com/content...-freeing-gpio9-and-gpio10. Alleen wordt opnieuw flashen ook OTA dan problematisch.
Yep dat linkje ken ik maar die soldering skills op dat niveau heb ik dan nog net niet (en een te dikke punt op mijn el-cheapo boutje), dus dat gaat niet gebeuren. Sowieso al lastiger op een nodemcu bordje.
Het draait nu zonder problemen met onewire dus ik hou het daar maar bij.

Alleen dacht ik ongestraft D3=gpio0 te gebruiken voor de DHT of voor softwareserial maar die heeft dus ook weer zo'n fijne (boot-gerelateerde) beperking. Het werkt alleen met softwareserial en alleen als ik bij een (re)boot die even losmaak. Een spontane crash-en-reboot is dus einde verhaal.

Panasonic 7kW J-Series Split + 190 liter SWW, 2750+2100Wp Oost-West


Acties:
  • 0 Henk 'm!

  • DurkVell
  • Registratie: Augustus 2011
  • Laatst online: 24-09 23:31
Sinds kort bezig met Wemos D1 en D1 mini i.c.m. Arduino 1.6.9.
Een eenvoudig programma om een ledje aan en uit te zetten werkt prima (ook via Blynk). Nu een programma om een letterklok aan te sturen geprobeerd. Programmeren lijkt goed te gaan, met volgende output van Arduino:

code:
1
2
3
4
5
6
De schets gebruikt 228.861 bytes (21%)  programma-opslagruimte. Maximum is 1.044.464 bytes.
Globale variabelen gebruiken 32.212 bytes (39%) van het dynamisch geheugen. Resteren 49.708 bytes voor lokale variabelen. Maximum is 81.920 bytes.
Uploading 233008 bytes from C:\Users\durk\AppData\Local\Temp\build71998cbf8ad04d85aaf8484f3c4045f5.tmp/Neopixels_woordklok.ino.bin to flash at 0x00000000
................................................................................ [ 35% ]
................................................................................ [ 70% ]
....................................................................             [ 100% ]


De serial monitor spuugt elke paar seconde het volgende riedeltje uit:

code:
1
2
3
4
5
6
7
8
9
 ets Jan  8 2013,rst cause:4, boot mode:(3,7)

wdt reset
load 0x4010f000, len 1384, room 16 
tail 8
chksum 0x2d
csum 0x2d
v09f0c112
~ld


Het geüploade programma werkt dus niet. Iemand enig idee wat er mis gaat?

Acties:
  • 0 Henk 'm!

  • sjimmie
  • Registratie: November 2002
  • Laatst online: 25-08 14:18
Dat betekent dat je module (code) crasht.
Zonder code en hoe je het hebt aangesloten is het onmogelijk te bedenken waarom.

Panasonic 7kW J-Series Split + 190 liter SWW, 2750+2100Wp Oost-West


Acties:
  • 0 Henk 'm!

  • DurkVell
  • Registratie: Augustus 2011
  • Laatst online: 24-09 23:31
De code werkt prima op een Arduino pro mini.
De verificatie van de code voor de wemos binnen de Arduino ide verloopt ook probleemloos: geen errors, en ook de upload verloopt probleemloos (zoals hierboven al te zien was).
Dat crashen kan komen doordat de code toch niet begrepen wordt door de Wemos?

Acties:
  • 0 Henk 'm!

  • sebastius
  • Registratie: September 2000
  • Laatst online: 24-09 23:17

sebastius

Laten we lekker link gaan doen

DurkVell schreef op zondag 14 augustus 2016 @ 09:03:
De code werkt prima op een Arduino pro mini.
De verificatie van de code voor de wemos binnen de Arduino ide verloopt ook probleemloos: geen errors, en ook de upload verloopt probleemloos (zoals hierboven al te zien was).
Dat crashen kan komen doordat de code toch niet begrepen wordt door de Wemos?
Je hebt waarschijnlijk gewoon te strakke loops ingebouwd. Je moet af en toe een yield(); of een delay(0); inbouwen. Dikke kans dat ie dan beter gaat.

Wat ook kan is dat je onhandige GPIOs hebt gebruikt. Welke heb je gekozen?

Acties:
  • 0 Henk 'm!

  • DurkVell
  • Registratie: Augustus 2011
  • Laatst online: 24-09 23:31
Dat met die vertragingen in loops zal ik proberen.

Ik heb alleen D6 (GPIO12) in gebruik. Ik kan natuurlijk een paar andere proberen.

[ Voor 4% gewijzigd door DurkVell op 14-08-2016 10:50 ]


Acties:
  • 0 Henk 'm!

  • sjimmie
  • Registratie: November 2002
  • Laatst online: 25-08 14:18
Cause 4 is in ieder geval de watchdog (arduino heeft geen watchdog dus daar heb je er geen last van), maar zoals ik zei is er weining door "ons" na te gaan zonder jouw code te kennen.

Panasonic 7kW J-Series Split + 190 liter SWW, 2750+2100Wp Oost-West


Acties:
  • 0 Henk 'm!

  • DurkVell
  • Registratie: Augustus 2011
  • Laatst online: 24-09 23:31
sjimmie schreef op zondag 14 augustus 2016 @ 12:27:
Cause 4 is in ieder geval de watchdog (arduino heeft geen watchdog dus daar heb je er geen last van), maar zoals ik zei is er weining door "ons" na te gaan zonder jouw code te kennen.
Vooralsnog ging het me vooral om wanneer (in welke gevallen) je zo'n reactie over de serial monitor krijgt. Blijkbaar is het een foutmelding! In dit geval over de watchdog dus. Ik had het niet als foutmelding herkend.

Arduino heeft misschien geen watchdog, maar de ESP8266 blijkbaar wel. Ik zag hier https://github.com/esp8266/Arduino/issues/34 dat wanneer de setup() langer dan 1 seconde duurt, WDT ingrijpt.

Acties:
  • 0 Henk 'm!

  • sjimmie
  • Registratie: November 2002
  • Laatst online: 25-08 14:18
Als een functie buiten de loop() langer dan een bepaalde tijd de processor claimt, treedt de watchdog in werking. De setup (of welke andere functie dan ook) mag best langer dan een seconde duren, al die maar regematig de processor even teruggeeft.
De watchdog monitort of achtergrondtaken zoals wifi vaak genoeg aan bod komen. Functies die de processor te lang claimen dienen regematig de controle terug te geven middels een yield(). Een delay(0) werkt identiek als een yield() en een langere delay in principe ook.

De WDT tijd is volgens de sdk in principe instelbaar, maar ik meen dat dat nog steeds niet in de huidige code is opgenomen. Dus zit er weinig anders op dan er rekening mee houden.

Wat ik bedoelde met tonen van je code is dat het doorgaans vrij eenvoudig is om een wdt-risicovol punt terug te vinden. En daarbij is het voor andere lezers vaak leerzaam om naast de wdt-theorie ook in de praktijk te zien waar het in andermans code mis gaat/ging.

Panasonic 7kW J-Series Split + 190 liter SWW, 2750+2100Wp Oost-West


Acties:
  • 0 Henk 'm!

  • DurkVell
  • Registratie: Augustus 2011
  • Laatst online: 24-09 23:31
Dankjewel voor je heldere uitleg. Hieronder de code, maar pas op, het is nogal een rommelige lap! 😳

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
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
#include <Adafruit_NeoPixel.h>

#define PIN 6
// Parameter 1 = number of pixels in strip
// Parameter 2 = pin number (most are valid)
// Parameter 3 = pixel type flags, add together as needed:
//   NEO_KHZ800  800 KHz bitstream (most NeoPixel products w/WS2812 LEDs)
//   NEO_KHZ400  400 KHz (classic 'v1' (not v2) FLORA pixels, WS2811 drivers)
//   NEO_GRB     Pixels are wired for GRB bitstream (most NeoPixel products)
//   NEO_RGB     Pixels are wired for RGB bitstream (v1 FLORA pixels, not v2)
Adafruit_NeoPixel strip = Adafruit_NeoPixel(108, PIN, NEO_GRB + NEO_KHZ800);

int hour=5, minute=30, seconde=0;
static unsigned long msTick=0;
int count;
int brightness;
int previousBrightness;
uint32_t kleur = strip.Color (255,0,255);


//Hardware constanten
const int ledPin = 13;          // output pin for the LED


int LDRPin=0;
  
void setup() {
  strip.begin();
  strip.show(); // Initialize all pixels to 'off'
  strip.setBrightness(0);
  pinMode(ledPin, OUTPUT);

  delay(1);
  Serial.begin(115200);
  Serial.println ("Neopixel_wordklok");
  Serial.println ("--------------------------------------------------------");
  
  msTick=millis();
  delay(1);
  }


void loop() {
    // heart of the timer - keep looking at the millisecond timer on the Arduino
    // and increment the seconds counter every 1000 ms
    if ( millis() - msTick >999) {
        msTick=millis();
        seconde++;
        // Flash the onboard Pin13 Led so we know something is hapening!
        digitalWrite(13,HIGH);
        delay(100);
        digitalWrite(13,LOW);    
    }

    //test to see if we need to increment the time counters
    if (seconde==60) // 60 seconde
    {
      incrementtime();
      displaytime();
    }
    
  digitalWrite(ledPin, LOW);
  if (hour<0){
    hour=0;
    }
  if (hour>23
  
  ){
    hour=24;
    } 
  if (minute>60){
    minute=0;
    } 
  if (minute<0){
    minute=0;
    }     
  //displaytime();   
  Serial.print (hour);
  Serial.print (":");
  Serial.println (minute);  
}

void displaytime(void){
  strip.setBrightness(0);
  strip.show();
  
  strip.setBrightness(255);
  // start by clearing the display to a known state
  het();
  is();
  Serial.print("Het is ");

  /* now we display the appropriate minute counter
  if (minute==1 || minute==11 || minute==21 || minute==31 || minute==41 || minute==51) { 
    eenm();
  } 
  
  if (minute==2 || minute==12 || minute==22 || minute==32 || minute==42 || minute==52) { 
    eenm();
    tweem(); 
  } 
  
  if (minute==3 || minute==13 || minute==23 || minute==33 || minute==43 || minute==53) { 
    eenm();
    tweem(); 
    driem();
  } 
 
 if (minute==4 || minute==14 || minute==24 || minute==34 || minute==44 || minute==54) { 
    eenm();
    tweem(); 
    driem();  
    vierm();
 }
  if (minute==6 || minute==16 || minute==26 || minute==36 || minute==46 || minute==56) { 
    eenm();
  } 
  
  if (minute==7 || minute==17 || minute==27 || minute==37 || minute==47 || minute==57) { 
    eenm();
    tweem(); 
  } 
  
  if (minute==8 || minute==18 || minute==28 || minute==38 || minute==48 || minute==58) { 
    eenm();
    tweem(); 
    driem();
  } 
 
 if (minute==9 || minute==19 || minute==29 || minute==39 || minute==49 || minute==59) { 
    eenm();
    tweem(); 
    driem();  
    vierm();
 }
  
// gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
  */
  if ((minute>4) && (minute<10)) { 
    vijfm(); 
    minuten(); 
    over();
    Serial.print("Five Minutes ");
  } 
  if ((minute>9) && (minute<15)) { 
    tienm(); 
    minuten(); 
    over();
    Serial.print("Ten Minutes ");
  }
  if ((minute>14) && (minute<20)) {
    kwart(); 
    over();
      Serial.print("Quarter ");
  }
  if ((minute>19) && (minute<25)) { 
    twintig(); 
    minuten(); 
    over();
    Serial.print("Twenty Minutes ");
  }
  if ((minute>24) && (minute<30)) { 
    vijfm(); 
    en(); 
    twintig();
    minuten();
    over();
    Serial.print("Twenty Five Minutes ");
  }  
  if ((minute>29) && (minute<35)) {
    half();
    Serial.print("Half ");
  }
  if ((minute>34) && (minute<40)) { 
    vijfm(); 
    en(); 
    twintig();
    minuten();
    voor();
    Serial.print("Twenty Five Minutes ");
  }  
  if ((minute>39) && (minute<45)) { 
    twintig(); 
    minuten(); 
    voor();
    Serial.print("Twenty Minutes ");
  }
  if ((minute>44) && (minute<50)) {
    kwart(); 
    voor();
    Serial.print("Quarter ");
  }
  if ((minute>49) && (minute<55)) { 
    tienm(); 
    minuten(); 
    voor();
    Serial.print("Ten Minutes ");
  } 
  if (minute>54) { 
    vijfm(); 
    minuten(); 
    voor();
    Serial.print("Five Minutes ");
  }
  if ((minute <5))
  {
    switch (hour) {
    case 1: 
      een(); 
      Serial.print("One ");
      break;
    case 2: 
      twee(); 
      Serial.print("Two ");
      break;
    case 3: 
      drie(); 
      Serial.print("Three ");
      break;
    case 4: 
      vier(); 
      Serial.print("Four ");
      break;
    case 5: 
      vijf(); 
      Serial.print("Five ");
      break;
    case 6: 
      zes(); 
      Serial.print("Six ");
      break;
    case 7: 
      zeven(); 
      Serial.print("Seven ");
      break;
    case 8: 
      acht(); 
      Serial.print("Eight ");
      break;
    case 9: 
      negen(); 
      Serial.print("Nine ");
      break;
    case 10: 
      tien(); 
      Serial.print("Ten ");
      break;
    case 11: 
      elf(); 
      Serial.print("Eleven ");
      break;
    case 12: 
      twaalf(); 
      Serial.print("Twelve ");
      break;
    }
  uur();
  Serial.println("O'Clock");
  }
  else
    if ((minute >29) && (minute <35))
    {
      half();
      Serial.print("Half ");
      switch (hour) {
      case 1: 
        twee(); 
       Serial.println("Two ");
       break;
      case 2: 
        drie(); 
      Serial.println("Three ");
        break;
      case 3: 
        vier(); 
      Serial.println("Four ");
        break;
      case 4: 
        vijf(); 
      Serial.println("Five ");
        break;
      case 5: 
        zes(); 
      Serial.println("Six ");
        break;
      case 6: 
        zeven(); 
      Serial.println("Seven ");
        break;
      case 7: 
        acht(); 
      Serial.println("Eight ");
        break;
      case 8: 
        negen(); 
      Serial.println("Nine ");
        break;
      case 9: 
        tien(); 
      Serial.println("Ten ");
        break;
      case 10: 
        elf(); 
      Serial.println("Eleven ");
        break;
      case 11: 
        twaalf(); 
      Serial.println("Twelve ");
        break;
      case 12: 
        een(); 
      Serial.println("One ");
        break;
      }
    }
    else
        if ((minute < 29) && (minute >4))
    {
      over();
      Serial.print("Past ");
      switch (hour) {
    case 1: 
      een(); 
      Serial.println("One ");
      break;
    case 2: 
      twee(); 
      Serial.println("Two ");
      break;
    case 3: 
      drie(); 
      Serial.println("Three ");
      break;
    case 4: 
      vier(); 
      Serial.println("Four ");
      break;
    case 5: 
      vijf(); 
      Serial.println("Five ");
      break;
    case 6: 
      zes(); 
      Serial.println("Six ");
      break;
    case 7: 
      zeven(); 
      Serial.println("Seven ");
      break;
    case 8: 
      acht(); 
      Serial.println("Eight ");
      break;
    case 9: 
      negen(); 
      Serial.println("Nine ");
      break;
    case 10: 
      tien(); 
      Serial.println("Ten ");
      break;
    case 11: 
      elf(); 
      Serial.println("Eleven ");
      break;
    case 12: 
      twaalf(); 
      Serial.println("Twelve ");
      break;
      }
    }
    else
    {
      // if we are greater than 34 minutes past the hour then display
      // the next hour, as we will be displaying a 'to' sign
      voor();
      Serial.print("To ");
      switch (hour) {
      case 1: 
        twee(); 
       Serial.println("Two ");
       break;
      case 2: 
        drie(); 
      Serial.println("Three ");
        break;
      case 3: 
        vier(); 
      Serial.println("Four ");
        break;
      case 4: 
        vijf(); 
      Serial.println("Five ");
        break;
      case 5: 
        zes(); 
      Serial.println("Six ");
        break;
      case 6: 
        zeven(); 
      Serial.println("Seven ");
        break;
      case 7: 
        acht(); 
      Serial.println("Eight ");
        break;
      case 8: 
        negen(); 
      Serial.println("Nine ");
        break;
      case 9: 
        tien(); 
      Serial.println("Ten ");
        break;
      case 10: 
        elf(); 
      Serial.println("Eleven ");
        break;
      case 11: 
        twaalf(); 
      Serial.println("Twelve ");
        break;
      case 12: 
        een(); 
      Serial.println("One ");
        break;
      }
    }

    
   // strip.setBrightness(255);
   //WriteLEDs();
   strip.setBrightness(255);
   strip.show();
}


void incrementtime(void){
  // increment the time counters keeping care to rollover as required
  seconde=0;
  if (++minute >= 60) {
    minute=0;
    if (++hour == 13) {
      hour=1;  
    }
  }  
  // debug outputs
  Serial.println();
  Serial.print(hour);
  Serial.print(",");
  Serial.print(minute);
//  Serial.print(",");
//  Serial.println(second);
  
}


void het() {
  strip.setPixelColor(0, kleur);
  strip.setPixelColor(1, kleur);
  strip.setPixelColor(2, kleur);  
}

void is() {
  strip.setPixelColor(4, kleur);
  strip.setPixelColor(5, kleur);  
}

void eenm() {
  strip.setPixelColor(108, kleur);
}

void tweem() {
  strip.setPixelColor(109, kleur);
}

void driem() {
  strip.setPixelColor(110, kleur);
}

void vierm() {
  strip.setPixelColor(111, kleur);
}


void vijfm() {
  strip.setPixelColor(8, kleur);
  strip.setPixelColor(9, kleur);
  strip.setPixelColor(10, kleur); 
  strip.setPixelColor(11, kleur); 
}

void en() {
  strip.setPixelColor(14, kleur);
  strip.setPixelColor(15, kleur);
}

void tienm() {
  strip.setPixelColor(12, kleur);
  strip.setPixelColor(13, kleur);
  strip.setPixelColor(14, kleur); 
  strip.setPixelColor(15, kleur); 
}

void twintig() {
  strip.setPixelColor(17, kleur);
  strip.setPixelColor(18, kleur);
  strip.setPixelColor(19, kleur); 
  strip.setPixelColor(20, kleur); 
  strip.setPixelColor(21, kleur);
  strip.setPixelColor(22, kleur); 
  strip.setPixelColor(23, kleur); 
}

void kwart() {
  strip.setPixelColor(24, kleur); 
  strip.setPixelColor(25, kleur); 
  strip.setPixelColor(26, kleur);
  strip.setPixelColor(27, kleur); 
  strip.setPixelColor(28, kleur); 
}

void minuten() {
  strip.setPixelColor(29, kleur);
  strip.setPixelColor(30, kleur);
  strip.setPixelColor(31, kleur); 
  strip.setPixelColor(32, kleur); 
  strip.setPixelColor(33, kleur);
  strip.setPixelColor(34, kleur); 
  strip.setPixelColor(35, kleur); 
}

void half() {
  strip.setPixelColor(36, kleur); 
  strip.setPixelColor(37, kleur);
  strip.setPixelColor(38, kleur); 
  strip.setPixelColor(39, kleur); 
}

void over() {
  strip.setPixelColor(40, kleur); 
  strip.setPixelColor(41, kleur);
  strip.setPixelColor(42, kleur); 
  strip.setPixelColor(43, kleur); 
}

void voor() {
  strip.setPixelColor(44, kleur); 
  strip.setPixelColor(45, kleur);
  strip.setPixelColor(46, kleur); 
  strip.setPixelColor(47, kleur); 
}

void een() {
  strip.setPixelColor(48, kleur); 
  strip.setPixelColor(49, kleur);
  strip.setPixelColor(50, kleur); 
}

void twee() {
  strip.setPixelColor(51, kleur); 
  strip.setPixelColor(52, kleur);
  strip.setPixelColor(53, kleur); 
  strip.setPixelColor(54, kleur); 
}

void drie() {
  strip.setPixelColor(56, kleur); 
  strip.setPixelColor(57, kleur);
  strip.setPixelColor(58, kleur); 
  strip.setPixelColor(59, kleur); 
}

void vier() {
  strip.setPixelColor(60, kleur); 
  strip.setPixelColor(61, kleur);
  strip.setPixelColor(62, kleur); 
  strip.setPixelColor(63, kleur); 
}

void vijf() {
  strip.setPixelColor(65, kleur); 
  strip.setPixelColor(66, kleur);
  strip.setPixelColor(67, kleur); 
  strip.setPixelColor(68, kleur); 
}

void zes() {
  strip.setPixelColor(69, kleur); 
  strip.setPixelColor(70, kleur);
  strip.setPixelColor(71, kleur); 
}

void zeven() {
  strip.setPixelColor(73, kleur); 
  strip.setPixelColor(74, kleur);
  strip.setPixelColor(75, kleur); 
  strip.setPixelColor(76, kleur); 
  strip.setPixelColor(77, kleur);
}

void acht() {
  strip.setPixelColor(78, kleur); 
  strip.setPixelColor(79, kleur);
  strip.setPixelColor(80, kleur); 
  strip.setPixelColor(81, kleur); 
}

void negen() {
  strip.setPixelColor(84, kleur); 
  strip.setPixelColor(85, kleur);
  strip.setPixelColor(86, kleur); 
  strip.setPixelColor(87, kleur);
  strip.setPixelColor(88, kleur); 
}

void tien() {
  strip.setPixelColor(89, kleur); 
  strip.setPixelColor(90, kleur);
  strip.setPixelColor(91, kleur); 
  strip.setPixelColor(92, kleur); 
}

void elf() {
  strip.setPixelColor(93, kleur); 
  strip.setPixelColor(94, kleur);
  strip.setPixelColor(95, kleur); 
}

void twaalf() {
  strip.setPixelColor(96, kleur); 
  strip.setPixelColor(97, kleur);
  strip.setPixelColor(98, kleur); 
  strip.setPixelColor(99, kleur); 
  strip.setPixelColor(100, kleur); 
  strip.setPixelColor(101, kleur); 
}

void uur() {
  strip.setPixelColor(105, kleur); 
  strip.setPixelColor(106, kleur);
  strip.setPixelColor(107, kleur); 
}

/*
void menu() {
  strip.show();
  Serial.println ("Menu");
  strip.setPixelColor(29, kleur); 
  strip.setPixelColor(42, kleur);
  strip.setPixelColor(31, kleur); 
  strip.setPixelColor(32, kleur); 
  strip.setBrightness(255);
  strip.show();
  strip.setBrightness(255); 
  delay(500);
  do
  {
    // menu keuzes aflopen totdat knop 1 wordt ingedrukt
    
  }
  while (val1==LOW);
}
*/

/*
Fill the dots one after the other with a color
void colorWipe(uint32_t c, uint8_t wait) {
  for(uint16_t i=0; i<strip.numPixels(); i++) {
      strip.setPixelColor(i, c);
      strip.show();
      delay(wait);
  }
}
*/

[ Voor 99% gewijzigd door DurkVell op 14-08-2016 15:34 ]


Acties:
  • 0 Henk 'm!

  • sjimmie
  • Registratie: November 2002
  • Laatst online: 25-08 14:18
Niks mis mee hoor qua rommetje ofzo.
Wat ik me meteen afvraag, zie je nog wel die regel met "Neopixel_wordklok" na het opstarten of komt hij daar al niet aan toe?

Ik vermoed overigens vooral deze regel:
while (val1==LOW);
Verander die dan eens in:
while (val1==LOW) delay(0);

[ Voor 27% gewijzigd door sjimmie op 14-08-2016 15:50 ]

Panasonic 7kW J-Series Split + 190 liter SWW, 2750+2100Wp Oost-West


Acties:
  • 0 Henk 'm!

  • RobV
  • Registratie: Juni 2013
  • Niet online

RobV

Welcome to the grid, Program.

(overleden)
Ik zie val1 nergens gedefinieerd of gewijzigd. Dus los van het feit dat het zo niet compiled, wordt de loop nooit beeindigd als val1 geen LOW was. Ik vermoed dat je nog een 2e file hebt met interrupt code?

Tip: gebruik pastebin voor grotere lappen tekst
tip 2: gebruik code=c tag voor syntax highlite.

Update: ik zie nu dat de hele functie inderdaad uitgecomment was,

[ Voor 10% gewijzigd door RobV op 14-08-2016 18:30 ]

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


Acties:
  • 0 Henk 'm!

  • DurkVell
  • Registratie: Augustus 2011
  • Laatst online: 24-09 23:31
sjimmie schreef op zondag 14 augustus 2016 @ 15:49:
Niks mis mee hoor qua rommetje ofzo.
Wat ik me meteen afvraag, zie je nog wel die regel met "Neopixel_wordklok" na het opstarten of komt hij daar al niet aan toe?

Ik vermoed overigens vooral deze regel:
while (val1==LOW);
Verander die dan eens in:
while (val1==LOW) delay(0);
Nee, die regel met Neopixel krijg ik al niet te zien.

Ik had een aantal variabelen (val1 t/m val4) gebruikt voor de status van knoppen te bekijken, maar die gebruik ik niet meer. NIet alles weggepoetst dus.

Acties:
  • 0 Henk 'm!

  • DurkVell
  • Registratie: Augustus 2011
  • Laatst online: 24-09 23:31
RobV schreef op zondag 14 augustus 2016 @ 16:07:
Ik zie val1 nergens gedefinieerd of gewijzigd. Dus los van het feit dat het zo niet compiled, wordt de loop nooit beeindigd als val1 geen LOW was. Ik vermoed dat je nog een 2e file hebt met interrupt code?

Tip: gebruik pastebin voor grotere lappen tekst
tip 2: gebruik code=c tag voor syntax highlite.
Nee, er is geen 2e file.

Bedankt voor de tips!

Acties:
  • 0 Henk 'm!

  • sjimmie
  • Registratie: November 2002
  • Laatst online: 25-08 14:18
DurkVell schreef op zondag 14 augustus 2016 @ 16:29:
[...]


Nee, die regel met Neopixel krijg ik al niet te zien.

Ik had een aantal variabelen (val1 t/m val4) gebruikt voor de status van knoppen te bekijken, maar die gebruik ik niet meer. NIet alles weggepoetst dus.
Oke, vergeet mijn opmerking over de while, daar had ik ff iets niet goed gelezen.

Maar:
Ik zie dat je de pins defineert als 6 en 13 voor resp. de neopixel en de led. Houd er rekening mee dat op zo'n Wemos bordje '6' niet hetzelfde is als 'D6'! '6' in de code betekent GPIO 6 en die is is dus helemaal niet bruikbaar op een wemos! Wil je pin D6 gebruiken dan is dat GPIO 12, dus ofwel gebruik je #define PIN 12, ofwel #define PIN D6 (als je bij een wemos de Dx aanduidingen als aliassen kan gebruiken).

Dan heb je const int ledPin = 13; wat neerkomt op GPIO 13, die uitkomt op D7.
Die zal geen probleem zijn, maar op een wemos gpio 6 gebruiken en denken dat dat D6 is, zal fataal zijn...

Gewoon omdat het handiger is: zet de Serial.begin(...) zo hoog mogelijk in je setup(), zodat je meteen al dingen kan loggen. Je kan dan wat controle-regeltjes toevoegen rondom de strip... regels om te zien waar die eventueel crasht.

Samengevat zoiets (bij de ... heb ik voor het overzicht ff wat dingen weggelaten die je er zelf wel in moet laten!):
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
#define PIN 12  //  GPIO 12 is D6
...
Adafruit_NeoPixel strip = Adafruit_NeoPixel(108, PIN, NEO_GRB + NEO_KHZ800);
...
const int ledPin = 13;          // GPIO 13 is D7: output pin for the LED
...
void setup() {
  Serial.begin(115200);
  strip.begin();
  Serial.println ("strip.begin klaar.");

  strip.show(); // Initialize all pixels to 'off'
  Serial.println ("strip.show klaar.");
  strip.setBrightness(0);
  Serial.println ("strip.setBrightness klaar.");
  pinMode(ledPin, OUTPUT);

  delay(1);
  Serial.println ("Neopixel_wordklok");
  Serial.println ("--------------------------------------------------------");
  
  msTick=millis();
  delay(1);
  }

Panasonic 7kW J-Series Split + 190 liter SWW, 2750+2100Wp Oost-West


Acties:
  • 0 Henk 'm!

  • DurkVell
  • Registratie: Augustus 2011
  • Laatst online: 24-09 23:31
sjimmie schreef op zondag 14 augustus 2016 @ 18:14:
[...]
Ik zie dat je de pins defineert als 6 en 13 voor resp. de neopixel en de led. Houd er rekening mee dat op zo'n Wemos bordje '6' niet hetzelfde is als 'D6'! '6' in de code betekent GPIO 6 en die is is dus helemaal niet bruikbaar op een wemos! Wil je pin D6 gebruiken dan is dat GPIO 12, dus ofwel gebruik je #define PIN 12, ofwel #define PIN D6 (als je bij een wemos de Dx aanduidingen als aliassen kan gebruiken).

Dan heb je const int ledPin = 13; wat neerkomt op GPIO 13, die uitkomt op D7.
Die zal geen probleem zijn, maar op een wemos gpio 6 gebruiken en denken dat dat D6 is, zal fataal zijn...
Aha! En ik had de zaak dus omgedraaid! Ik zal het vanavond proberen met pin 12.

Heel hartelijk dank zover.

Acties:
  • +1 Henk 'm!

  • DurkVell
  • Registratie: Augustus 2011
  • Laatst online: 24-09 23:31
En ja hoor. Nadat ik #define pin 6 veranderd heb in #define pin 12 werkt het als 'n zonnetje. Hartelijk dank.

Acties:
  • 0 Henk 'm!

  • sjimmie
  • Registratie: November 2002
  • Laatst online: 25-08 14:18
DurkVell schreef op maandag 15 augustus 2016 @ 18:19:
En ja hoor. Nadat ik #define pin 6 veranderd heb in #define pin 12 werkt het als 'n zonnetje. Hartelijk dank.
Nu ben ik wel benieuwd of bij jouw wemos #define pin D6 ook werkt, want dat zou een stuk eenvoudiger zijn (werk wel bij een nodemcu).

Panasonic 7kW J-Series Split + 190 liter SWW, 2750+2100Wp Oost-West


Acties:
  • 0 Henk 'm!

  • DurkVell
  • Registratie: Augustus 2011
  • Laatst online: 24-09 23:31
Ja, #define pin D6 werkt ook!

Acties:
  • 0 Henk 'm!

  • kroonen
  • Registratie: Augustus 2008
  • Laatst online: 07:51
Voor degene die ook de esp met relais ook graag willen inbouwen.

Hierbij een print met alles erop en eraan voor inbouwdoos

https://ex-store.de/ESP8266-WiFi-Relay-V31

Moet je denk ik eventueel flashen met espeasy

Ben benieuwd naar ervaringen

Acties:
  • 0 Henk 'm!

  • wishmaster1986
  • Registratie: April 2004
  • Laatst online: 18:04
Leuk maar vind hem stevig aan de prijs. Ik wacht nog wel even voor een andere inbouw oplossing.

  • CodeIT
  • Registratie: Juni 2002
  • Laatst online: 22-09 22:18

CodeIT

Code IT

Ik vind prijs ook wel stevig als je deze vergelijkt met een Sonoff bijvoorbeeld. Als ik de tekst lees moet je zelf nog een trafo solderen bij deze? Is het daarna plug and play?
Ongeacht de ordergrootte komen er ook nog 13,99 € verzendkosten bij. Jammer.
Ik zoek nog wel naar zoiets. Ik wil mijn schakelaars slim maken. Dus de schakelaar verbinden aan een module en deze de lamp laten schakelen. Dit doe ik nu met Z-wave modules, maar die vind ik te duur om achter elke schakelaar te hangen.

[ Voor 49% gewijzigd door CodeIT op 18-08-2016 09:30 ]


Acties:
  • 0 Henk 'm!

  • ThinkPad
  • Registratie: Juni 2005
  • Nu online
Pixelmagic schreef op maandag 01 augustus 2016 @ 18:56:
[...]


Geen ervaring mee maar zag wel http://www.thingiverse.com/thing:1646857 voorbij komen, daar gebruiken ze een steppertje van een paar euro. Grootste voordeel wat ik kan bedenken is dat deze eindeloos kan draaien en een aardige vertraging heeft. Een servo gaat al snel van A naar B en daardoor minder kracht heeft.
Vandaag de servo binnengekregen, en zoals ik in m'n vorige post al zei had ik idd geen flauw idee van servo's :X
Het ding kan maar een rotatie van alles tussen 0 - 180 graden maken, terwijl het stokje van m'n luxaflex vanuit de 'nulstand' 4 slagen rechtsom, of 4 slagen linksom moet worden gedraaid om omhoog/omlaag te worden gericht.
Dan ben ik beter af met een stappenmotor denk ik? Dat ik dan kan zeggen "5000 stappen linksom" (of hoe dat ook werkt) om op die manier te bereiken dat hij 4 rondjes draait?

Ik heb wel een tutorial gezien om mijn servo (SG90) te modificeren, maar als ik het goed begrijp draait hij dan continu ipv dat je kunt zeggen: één rondje?

[ Voor 7% gewijzigd door ThinkPad op 19-08-2016 16:41 ]


Acties:
  • 0 Henk 'm!

  • LED-Maniak
  • Registratie: Oktober 2003
  • Laatst online: 18:50
Dan heb je inderdaad nog feedback nodig. Beter een cheapo stepper halen :)

Mitsubishi externe temperatuur sensor (Home Assistant compatible): V&A - ClimaControl - Ook voor Panasonic & LG.


Acties:
  • 0 Henk 'm!

  • ThinkPad
  • Registratie: Juni 2005
  • Nu online
LED-Maniak schreef op vrijdag 19 augustus 2016 @ 16:52:
Dan heb je inderdaad nog feedback nodig. Beter een cheapo stepper halen :)
Ik ga deze bestellen: 28YBJ-48 steppermotor + ULN2003 board.
Die ULN2003 zijn genoeg voorbeelden van te vinden voor Arduino zie ik, moet vast lukken.

[ Voor 5% gewijzigd door ThinkPad op 19-08-2016 17:40 ]


Acties:
  • 0 Henk 'm!

  • Pixelmagic
  • Registratie: September 2002
  • Laatst online: 24-09 21:25

Pixelmagic

Ubergeek

ThinkPadd schreef op vrijdag 19 augustus 2016 @ 17:40:
[...]

Ik ga deze bestellen: 28YBJ-48 steppermotor + ULN2003 board.
Die ULN2003 zijn genoeg voorbeelden van te vinden voor Arduino zie ik, moet vast lukken.
Dat is ook wat ik gebruik bij http://www.thingiverse.com/thing:1526752 voor het ronddraaien. Je kan zelf aangeven hoeveel stappen hij moet draaien en dat kan je zo vaak/veel doen als nodig. Werkt met een library erg simpel, de code die ik gebruik staat er bij. Bijkomend voordeel is dat de snelheid veel lager is en dus constant, zeker in vergelijk met een serv die toch wat schokkerig is. Je kan hem zelfs langzaam laten starten en stoppen met de library.

Overigens heb ik onlangs een paar kleinere driver boards besteld, maakt het wat compacter: http://www.ebay.com/itm/2...geName=STRK%3AMEBIDX%3AIT

Die banggood zijn trouwens aardig aan de prijs: http://www.ebay.com/itm/2...geName=STRK%3AMEBIDX%3AIT

PVoutput van mijn 4950Wp


Acties:
  • 0 Henk 'm!

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

Mars Warrior

Earth, the final frontier

LamSchaap schreef op zaterdag 12 december 2015 @ 10:05:
[...]
Dat word nog zo'n 8 weekjes wachten. Dan start mass production of the ESP32 SoC. En dan is onze Amica ESP32 ook pas verkrijgbaar.
Zomaar een reminder, soms kunnen 8 weekjes lang duren :X

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


Acties:
  • 0 Henk 'm!

  • ThinkPad
  • Registratie: Juni 2005
  • Nu online
ThinkPadd schreef op maandag 27 juni 2016 @ 01:23:
Leuk projectje: https://alexbloggt.com/un...bsteuerung-ueber-esp8266/

ESP8266 IR-blaster, oftewel ik kan nu via een HTTP-request m'n receiver volume omhoog/omlaag, radio preset veranderen enzo door de afstandsbediening na te bootsen met IR-signalen :Y)
[afbeelding]
[...]
Even bezig geweest met de IR Transmit plugin die iemand voor ESPEasy heeft geschreven. Het gemak en stabiliteit van ESPEasy bevalt mij wel namelijk :9 Stuk makkelijker dan zelf een hele Arduino sketch te moeten schrijven.

Uitleg hier en voor de zekerheid ook even hieronder gequote, mocht het ESPEasy forum ooit platgaan ofzo.
I got the _P106_IRTX.ino plugin working! It works really good!

How to do it:
- Download ESPEasy source (from .zip or from GitHub)
- Download the plugin and place it in the same folder as 'ESPEasy.ino' and the other *.ino files
- Download the IRremoteESP8266.h and also put in same folder as above
- Compile & upload to your device (i used a Wemos D1 Mini board)
- Then under 'Devices' in ESPEasy, select 'Infrared Transmit' and choose the GPIO pin that you have the IR Transmitter connected to. For Wemos D1 Mini i connected the transmitter to pin 'D1', which is GPIO5 in ESPEasy.

You should then be able to send commands by calling the ESP url like this: http://192.168.4.138/control?cmd=IRSEND,NEC,4bb620df,32 (this command turns my Onkyo 5.1 receiver on)

Finding out the codes (and protocol and bits) that your remote uses is quite easy. I used a separate Arduino Nano which i loaded a sample sketch of 'IRrecvDumpV2' on.
As a transmitter i use two IR leds, a 2N2222 transistor and a 470 Ohm resistor. The transistor is driven from the GPIO and gives the IR leds 5V, to create a powerful transmitter. The ready to use IR transmitter boards from China are very weak, because they draw their power from the GPIO.

To have a sort of remote, i created this webpage on my webserver:
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
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
</head>
<body>

<h1>ESP8266 IR Remote</h1>
<h2>Versterker</h2>
<button type="button" onclick="loadDoc('http://192.168.4.138/control?cmd=IRSEND,NEC,4bb620df,32')">Power on</button>
<button type="button" onclick="loadDoc('http://192.168.4.138/control?cmd=IRSEND,NEC,4b36e21d,32')">Power off</button><br><br>
<button type="button" onclick="loadDoc('http://192.168.4.138/control?cmd=IRSEND,NEC,4bb6d02f,32')">Input tuner</button>
<button type="button" onclick="loadDoc('http://192.168.4.138/control?cmd=IRSEND,NEC,4bb6f00f,32')">Input VIDEO1 (Laptop)</button>
<button type="button" onclick="loadDoc('http://192.168.4.138/control?cmd=IRSEND,NEC,4bb6906f,32')">Input CD (PC Coaxial)</button>
<button type="button" onclick="loadDoc('http://192.168.4.138/control?cmd=IRSEND,NEC,4bb6708f,32')">Input VIDEO2 (TV)</button><br><br>

<button type="button" onclick="loadDoc('http://192.168.4.138/control?cmd=IRSEND,NEC,4bb600ff,32')">Channel up</button>
<button type="button" onclick="loadDoc('http://192.168.4.138/control?cmd=IRSEND,NEC,4bb6807f,32')">Channel down</button><br><br>
<button type="button" onclick="loadDoc('http://192.168.4.138/control?cmd=IRSEND,NEC,4bb641be,32')">(Search) Up</button>
<button type="button" onclick="loadDoc('http://192.168.4.138/control?cmd=IRSEND,NEC,4bb6c13e,32')">(Search) Down</button><br><br>

<button type="button" onclick="loadDoc('http://192.168.4.138/control?cmd=IRSEND,NEC,4bb640bf,32')">Volume +</button>
<button type="button" onclick="loadDoc('http://192.168.4.138/control?cmd=IRSEND,NEC,4bb6c03f,32')">Volume -</button>
<button type="button" onclick="loadDoc('http://192.168.4.138/control?cmd=IRSEND,NEC,4bb6a05f,32')">Volume mute</button><br><br><br>
<button type="button" onclick="loadDoc('http://192.168.4.138/control?cmd=IRSEND,NEC,4bb632cd,32')">Listening mode up</button>
<button type="button" onclick="loadDoc('http://192.168.4.138/control?cmd=IRSEND,NEC,4b36a25d,32')">Listening mode down</button>
<hr>
<h2>TV</h2>
<button type="button" onclick="loadDoc('http://192.168.4.138/control?cmd=IRSEND,SAMSUNG,E0E09966,32')">Power on</button>
<button type="button" onclick="loadDoc('http://192.168.4.138/control?cmd=IRSEND,SAMSUNG,E0E019E6,32')">Power off</button><br><br>
Response: <b><p id="output"></p></b>

<script>
function loadDoc(url) {
  var xhttp = new XMLHttpRequest();
  xhttp.onreadystatechange = function() {
    if (xhttp.readyState == 4 && xhttp.status == 200) {
      document.getElementById("output").innerHTML = xhttp.responseText;
    }
  };
  xhttp.open("GET", url, true);
  xhttp.send();
}
</script>

</body>
</html>


But i am planning on using it with my home automation, 'Home Assistant'.

Acties:
  • 0 Henk 'm!

  • wishmaster1986
  • Registratie: April 2004
  • Laatst online: 18:04
Oh dat ziet er ook wel makkelijk uit. Ik had zelf een sketch gemaakt voor op een ESP als IRblaster alleen dan puur voor mijn Pioneer receiver en Samsung tv. Deze kan ook met Domoticz overweg? Dat was namelijk wel het doel bij mijn sketch.

Edit: oh niet goed gelezen...ESPeasy dus dan kan het met Domoticz inderdaad.

[ Voor 14% gewijzigd door wishmaster1986 op 20-08-2016 12:30 ]


Acties:
  • 0 Henk 'm!

  • ThinkPad
  • Registratie: Juni 2005
  • Nu online
wishmaster1986 schreef op zaterdag 20 augustus 2016 @ 12:29:
Oh dat ziet er ook wel makkelijk uit. Ik had zelf een sketch gemaakt voor op een ESP als IRblaster alleen dan puur voor mijn Pioneer receiver en Samsung tv. Deze kan ook met Domoticz overweg? Dat was namelijk wel het doel bij mijn sketch.

Edit: oh niet goed gelezen...ESPeasy dus dan kan het met Domoticz inderdaad.
Ik gebruik geen Domoticz, dus heb geen idee. Aansturen gaat gewoon via een HTTP-call: http://192.168.4.138/control?cmd=IRSEND,NEC,4bb620df,32

Acties:
  • 0 Henk 'm!

  • LamSchaap
  • Registratie: September 2007
  • Laatst online: 09-09 19:44
Mars Warrior schreef op vrijdag 19 augustus 2016 @ 21:21:
[...]

Zomaar een reminder, soms kunnen 8 weekjes lang duren :X
Ja, zijn Chinese 8 weken... Maar het gaat ergens in september worden dus als je beetje geluk hebt ze voor sinterklaas...

Kwalitatief blaten


Acties:
  • 0 Henk 'm!

  • Brutuss
  • Registratie: Juli 2003
  • Laatst online: 24-09 16:09
Verwijderd schreef op vrijdag 30 januari 2015 @ 11:26:
meet het totale verbruik is.
eea hangt ervan af uiteraard of er veel 'ingebroken' wordt :+
( er bestaan wel leuke charge/protect en step up printjes in 1 )
ben zelf nog wat aan het expirimenteren, mijn doel is/was om een mobiel alarm systeempje te maken dat samenwerkt met de iphone.
zodra er beweging is krijg je (via appje) een push message.
Ben al de hele tijd op zoek naar een bordje wat het allemaal kan. Eindelijk gevonden dank zij deze post ;) thnx

Acties:
  • 0 Henk 'm!

  • Vanx
  • Registratie: Augustus 2008
  • Laatst online: 14-09 21:03
Net mijn eerste ESP projectje gedaan. Dit is echt veel leuker dan alles wat ik hiervoor met arduino heb geprobeerd!

NodeMCU devkit v2 + WS2812 ledstrip, beetje lua scriptjes gebouwd en hij kan nu een roterende regenboog en via http GET request de kleur van de ledstrip aanpassen 8)

Alleen de eerste keer flashen (wilde naar nieuwste NodeMCU versie) van de ESP was een drama. Die esptool.py werkt wel, maar je moet weten wat je doet. Ik was -fm dio vergeten voor een lange tijd en googelen op error codes etc hielp maar matig, uiteindelijk wel gelukt.

[ Voor 3% gewijzigd door Vanx op 26-08-2016 15:57 ]


Acties:
  • 0 Henk 'm!

  • jan--
  • Registratie: December 2010
  • Laatst online: 18-08 20:48
Mede door info hier op dit forum wil ik de ESP8266 (Wemos D1 mini R1) met EPSEasy gebruiken.
Ik heb geen wifirouter of webserver, dus ik wil met mijn PC of telefoon rechtstreeks mijn ESP8266 kunnen bedienen. Via de Arduino IDE was het eenvoudig om ESPEasy op de ESP8266 te zetten. Maar als ik in de brouwser naar http://192.168.4.1 ga krijg ik op mijn scherm:

Welcome to ESP Easy: newdevice
Wifi Setup wizard
o xxxx
o other SSID:
Password:
connect
Powered by www.esp8266.nu

Maar wat moet ik nu bij SSID en password invullen?
Als ik de settings opvraag via COM4 krijg ik:

>settings

System Info
IP Address : 0.0.0.0
Build : 120
Unit : 0
WifiSSID : ssid
WifiKey : wpakey
Free mem : 25192

Als ik inlog met SSID "wpakey" en password "configesp" geeft de COM poort:
WIFI : Connecting... 1
WIFI : Disconnecting!

Als ik de settings weer opvraag is Wifikey leeg.
Als ik inlog met SSID "ssid" zie ik op de COM poort: "WIFI : No SSID!"
Maar ik kom dus steeds weer terug in het inlogscherm

Of is ESPEasy niet geschikt om de ESP8266 zonder wifi router aan te sturen?

[ Voor 3% gewijzigd door jan-- op 27-08-2016 20:29 ]

Pagina: 1 ... 27 ... 80 Laatste