Arduino Mega slimme meter uitlezen met Solarmeter Harold65
Re: Arduino Mega slimme meter uitlezen met Solarmeter Harold
sorry overheen gelezen, maar kijk maar eens naar de verschillen op de site.
paul deelen
shooter@home.nl
shooter@home.nl
Advertisement
- master64nl
- Berichten: 117
- Geregistreerd: 10 Jun 2019, 12:16
- Woonplaats: Amsterdam
Re: Arduino Mega slimme meter uitlezen met Solarmeter Harold
Ja, dat weet ik. Op de Mega zit hij op pin 19 en op de Leonardo op pin 0. Dat heb ik ook zo. De Mega draait nu met oude Solarmeter software van Harold en een kleine aanpassing van Koepel om gas te meten.
Koepel heeft een P1 test sketch en P1 vertrager sketch gemaakt. De P1 test sketch werkt op de Mega maar niet op de Leonardo. Serial1 is bij de Mega pin 19 en bij de Leonardo pin 0. Hier ga ik ook naar toe vanaf het IC. Enige verschil is dat ik op de Mega mooi alle getallen zie voorbij komen elke seconde en bij de Leonardo alleen maar de melding dat de sketch loopt maar geen getallen.
Koepel heeft een P1 test sketch en P1 vertrager sketch gemaakt. De P1 test sketch werkt op de Mega maar niet op de Leonardo. Serial1 is bij de Mega pin 19 en bij de Leonardo pin 0. Hier ga ik ook naar toe vanaf het IC. Enige verschil is dat ik op de Mega mooi alle getallen zie voorbij komen elke seconde en bij de Leonardo alleen maar de melding dat de sketch loopt maar geen getallen.
- master64nl
- Berichten: 117
- Geregistreerd: 10 Jun 2019, 12:16
- Woonplaats: Amsterdam
Re: Arduino Mega slimme meter uitlezen met Solarmeter Harold
Goedemorgen allemaal, ik had gehoopt iets meer tips te krijgen. Ondertussen ben ik op deze website https://learn.sparkfun.com/tutorials/pro-micro--fio-v3-hookup-guide gaan kijken.
Via deze website heb van boven naar beneden de stappen doorlopen tot aan de test sketch met het knipperen van de rx en tx led. Ik heb hierdoor ook de juiste driver kunnen installeren zodat nu mijn laptop daadwerkelijk een SparkFun Pro Micro aan de com poort ziet.
Toch weer terugkomend op dit stukje code waar ik dan met mijn Jan Klootjes verstand naar zit te kijken en mij afvraag wat die pin 13 nu eigenlijk is want ik zie deze pin 13 namelijk niet op de foto, wel zie ik als ik door tel pin RST op plek 12 maar pin 10 zit weer aan de onderkant bij pin 16. Dus als je die pin 10 meeneemt in de telling dan zou pin RST weer pin 13 zijn.
Test 3:
Juiste driver SparkFun Pro Micro en juiste board SparkFun Pro Micro met de sketch P1 tester uitesten. Helaas geen succes, precies hetzelfde als hiervoor. Alleen maar de melding dat de sketch loopt zonder getallen.
Test 4:
Wat ik ook verwarrend vind is dat de P1 tester code zegt:
Werking
// -------
// De 115200 8N1 seriele data van de P1 poort wordt ingelezen op pin 0 (is TX 0 van de SparkFun Pro Micro).
// bij een Leonardo of anders de RX pin van Serial1 bij een Mega 2560 (dat is RX pin 19).
// Vanzelfsprekend het signaal van de P1 poort inverteren zodat het
// een normaal serieel signaal wordt met idle hoog en startbit laag.
// In de seriele monitor wordt het telegram weergegeven.
// Ze de seriele monitor ook op 115200 baud !
Worden hier boven nu de RX en de TX door elkaar gehaald of is het een typfout?
Volgens afbeelding is pin 0 de RX1 en pin 1 is TX0. Ik zit met mijn draadje op TX0 of te wel TX1. Zit het hier in dan?
Dus test 4 is draadje op RX0 oftewel RX1 zetten. Dit is een succes De P1 tester werkt als een tierelier. Ik zie ook de rode led knipperen dat er data loopt en de Arduino monitor laat nu netjes alle regels zien. Pfffff zo kan het fout gaan dus
Via deze website heb van boven naar beneden de stappen doorlopen tot aan de test sketch met het knipperen van de rx en tx led. Ik heb hierdoor ook de juiste driver kunnen installeren zodat nu mijn laptop daadwerkelijk een SparkFun Pro Micro aan de com poort ziet.
Toch weer terugkomend op dit stukje code waar ik dan met mijn Jan Klootjes verstand naar zit te kijken en mij afvraag wat die pin 13 nu eigenlijk is want ik zie deze pin 13 namelijk niet op de foto, wel zie ik als ik door tel pin RST op plek 12 maar pin 10 zit weer aan de onderkant bij pin 16. Dus als je die pin 10 meeneemt in de telling dan zou pin RST weer pin 13 zijn.
- Code: Alles selecteren
// Maak pin 13 hoog, die is misschien verbonden met het RTS signaal.
// Bijvoorbeeld als iemand de "P1 poort vertrager" met pin 13 heeft gebruikt.
pinMode( 13, OUTPUT);
digitalWrite( 13, HIGH);
}
Test 3:
Juiste driver SparkFun Pro Micro en juiste board SparkFun Pro Micro met de sketch P1 tester uitesten. Helaas geen succes, precies hetzelfde als hiervoor. Alleen maar de melding dat de sketch loopt zonder getallen.
Test 4:
Wat ik ook verwarrend vind is dat de P1 tester code zegt:
Werking
// -------
// De 115200 8N1 seriele data van de P1 poort wordt ingelezen op pin 0 (is TX 0 van de SparkFun Pro Micro).
// bij een Leonardo of anders de RX pin van Serial1 bij een Mega 2560 (dat is RX pin 19).
// Vanzelfsprekend het signaal van de P1 poort inverteren zodat het
// een normaal serieel signaal wordt met idle hoog en startbit laag.
// In de seriele monitor wordt het telegram weergegeven.
// Ze de seriele monitor ook op 115200 baud !
Worden hier boven nu de RX en de TX door elkaar gehaald of is het een typfout?
Volgens afbeelding is pin 0 de RX1 en pin 1 is TX0. Ik zit met mijn draadje op TX0 of te wel TX1. Zit het hier in dan?
Dus test 4 is draadje op RX0 oftewel RX1 zetten. Dit is een succes De P1 tester werkt als een tierelier. Ik zie ook de rode led knipperen dat er data loopt en de Arduino monitor laat nu netjes alle regels zien. Pfffff zo kan het fout gaan dus
- Bijlagen
-
- Pro Micro Pinout.png (247.2 KiB) 5988 keer bekeken
- master64nl
- Berichten: 117
- Geregistreerd: 10 Jun 2019, 12:16
- Woonplaats: Amsterdam
Re: Arduino Mega slimme meter uitlezen met Solarmeter Harold
Je raadt het misschien al?
Test 5:
Nu de P1 tester sketch werkt kunnen we de P1 verslomer sketch erin zetten en de baudrate van de Solarmeter sketch op 9600 baudrate zetten. Zo gezegd zo gedaan!
SparkFun Pro Micro naar Mega:
- Pin 0 = RX0/RX1 naar pin 2 van IC 7804
- Pin 9 naar de Mega pin RX 19
- 5 Volt aan elkaar knopen
- Ground aan elkaar knopen
Yeah, het werkt zoals ik het kan beoordelen. Ik zie geen led meer kippenren op de SparkFun Pro Micro maar wel op de Mega. In de webbrowser van Solarmeter zie ik de getallen veranderen dus dat houd volgens mij in dat er data in de Mega komt en het verstuurd naar het net/PVOutput.
Vandaag maar eens aankijken en of ik ook van die rare powerpieken af ben die te zijn in PVOutput.
Test 5:
Nu de P1 tester sketch werkt kunnen we de P1 verslomer sketch erin zetten en de baudrate van de Solarmeter sketch op 9600 baudrate zetten. Zo gezegd zo gedaan!
SparkFun Pro Micro naar Mega:
- Pin 0 = RX0/RX1 naar pin 2 van IC 7804
- Pin 9 naar de Mega pin RX 19
- 5 Volt aan elkaar knopen
- Ground aan elkaar knopen
Yeah, het werkt zoals ik het kan beoordelen. Ik zie geen led meer kippenren op de SparkFun Pro Micro maar wel op de Mega. In de webbrowser van Solarmeter zie ik de getallen veranderen dus dat houd volgens mij in dat er data in de Mega komt en het verstuurd naar het net/PVOutput.
Vandaag maar eens aankijken en of ik ook van die rare powerpieken af ben die te zijn in PVOutput.
- master64nl
- Berichten: 117
- Geregistreerd: 10 Jun 2019, 12:16
- Woonplaats: Amsterdam
Re: Arduino Mega slimme meter uitlezen met Solarmeter Harold
So far so good Ik zie ook geen vreemde pieken in PVOutput meer. De getallen kloppen in de webbrouwser van Solarmeter die nu op een baudrate van 9600 draait Het lijkt er op dat wat Koepel gemaakt heeft werkt wat inhoud dat iedereen verder kan met Solarmeter van Harold.
Re: Arduino Mega slimme meter uitlezen met Solarmeter Harold
De labels op het printje "RXI" en "TXO" is alleen maar om verwarring te zaaien en het leven moeilijker te maken
Het is trouwens een "I" (van knullige labels) en een "O" (van teveel gezopen). Misschien bedoelen ze "Input" en "Output" ? Iemand had vast teveel gezopen toen hij die knullige labels bedacht.
Pin 0 is RX en pin 1 is TX.
Ik ging er van uit dat al die boardjes dezelfde bootloader hebben, en dat het mogelijk is om jouw boardje ook als "Leonardo" of "Micro" te gebruiken. Uit jouw beschrijving kan ik niet lezen of dat echt zo is.
Dus het werkt Dat valt ook tegen zeg Nu duurt het nog langer voordat je overstapt op iets beters
Als je een dag de "Tester" laat lopen, dan kun je zien hoeveel telegrammen er verkeerd gaan via de checksum berekening. Als het goed is zijn ze allemaal in orde.
O ja, die pin 13. Ik heb een printje om het signaal van de P1-poort te inverteren met een transistor. Daar zit ook RTS signaal op, die 5V nodig heeft. Bij een sketch heb ik pin 13 aan de RTS verbonden. Dus dat heb ik in de volgende test nog even meegenomen omdat ik (en misschien anderen) die nog aan RTS hebben zitten.
De meesten hebben RTS gewoon vast aan 5V, dus dan kan dat met die pin 13 uit de sketch gehaald worden.
Het is trouwens een "I" (van knullige labels) en een "O" (van teveel gezopen). Misschien bedoelen ze "Input" en "Output" ? Iemand had vast teveel gezopen toen hij die knullige labels bedacht.
Pin 0 is RX en pin 1 is TX.
Ik ging er van uit dat al die boardjes dezelfde bootloader hebben, en dat het mogelijk is om jouw boardje ook als "Leonardo" of "Micro" te gebruiken. Uit jouw beschrijving kan ik niet lezen of dat echt zo is.
Dus het werkt Dat valt ook tegen zeg Nu duurt het nog langer voordat je overstapt op iets beters
Als je een dag de "Tester" laat lopen, dan kun je zien hoeveel telegrammen er verkeerd gaan via de checksum berekening. Als het goed is zijn ze allemaal in orde.
O ja, die pin 13. Ik heb een printje om het signaal van de P1-poort te inverteren met een transistor. Daar zit ook RTS signaal op, die 5V nodig heeft. Bij een sketch heb ik pin 13 aan de RTS verbonden. Dus dat heb ik in de volgende test nog even meegenomen omdat ik (en misschien anderen) die nog aan RTS hebben zitten.
De meesten hebben RTS gewoon vast aan 5V, dus dan kan dat met die pin 13 uit de sketch gehaald worden.
- master64nl
- Berichten: 117
- Geregistreerd: 10 Jun 2019, 12:16
- Woonplaats: Amsterdam
Re: Arduino Mega slimme meter uitlezen met Solarmeter Harold
Hé Koepel, goed hè dat jouw sketch werkt. Ik ga zeker nu niet over op iets anders. Ik ben hier zo blij mee als een klein kind. Klopt het dat de Pro Micro nu niet met zijn tx of rx led knippert?
Re: Arduino Mega slimme meter uitlezen met Solarmeter Harold
Als er niets naar de seriële monitor gestuurd of ontvangen wordt, dan blijven die ledjes uit.
Bij de Pro Micro heet de seriële verbinding naar de computer "SerialUSB", en daar zijn de ledjes rx en tx voor.
Om compatible te zijn met andere boards, mag de naam "Serial" gebruikt worden in plaats van de naam "SerialUSB".
Bij de Pro Micro heet de seriële verbinding naar de computer "SerialUSB", en daar zijn de ledjes rx en tx voor.
Om compatible te zijn met andere boards, mag de naam "Serial" gebruikt worden in plaats van de naam "SerialUSB".
- master64nl
- Berichten: 117
- Geregistreerd: 10 Jun 2019, 12:16
- Woonplaats: Amsterdam
Re: Arduino Mega slimme meter uitlezen met Solarmeter Harold
Dus als ik die liedjes wil laten knipperen wanneer er data loopt.moet ik er zeker iets bij zetten in de sketch?
Re: Arduino Mega slimme meter uitlezen met Solarmeter Harold
Ja, je mag die ledjes gewoon gebruiken als "SerialUSB" of "Serial" niet gebruikt wordt.
Hun pin nummer is LED_BUILTIN_RX en LED_BUILTIN_TX.
Let op: LOW is aan en HIGH is uit.
Als er toch iets gedaan wordt met "SerialUSB" of "Serial", dan knipperen ze en kunnen daarna uit blijven. Maar er gaat niets stuk, dus dat geeft niets.
Eerst in setup():
En dan bijvoorbeeld:
Kijken of er een telegram binnenkomt, dat kan natuurlijk. Bijvoorbeeld aanzetten als de beginnende '/' is gevonden en uitzetten bij de afsluitende '!'.
Maar kijken of het vertraagde telegram goed wordt afgeleverd aan de Mega, dat kan niet. Het wordt gewoon verstuurd, of het nu aankomt bij de Mega of niet.
Hun pin nummer is LED_BUILTIN_RX en LED_BUILTIN_TX.
Let op: LOW is aan en HIGH is uit.
Als er toch iets gedaan wordt met "SerialUSB" of "Serial", dan knipperen ze en kunnen daarna uit blijven. Maar er gaat niets stuk, dus dat geeft niets.
Eerst in setup():
- Code: Alles selecteren
pinMode( LED_BUILTIN_RX, OUTPUT);
pinMode( LED_BUILTIN_TX, OUTPUT);
En dan bijvoorbeeld:
- Code: Alles selecteren
digitalWrite( LED_BUILTIN_RX, LOW); // LOW = aan zetten
Kijken of er een telegram binnenkomt, dat kan natuurlijk. Bijvoorbeeld aanzetten als de beginnende '/' is gevonden en uitzetten bij de afsluitende '!'.
Maar kijken of het vertraagde telegram goed wordt afgeleverd aan de Mega, dat kan niet. Het wordt gewoon verstuurd, of het nu aankomt bij de Mega of niet.
Wie is er online?
Gebruikers in dit forum: axuypepafa, azojonovebo, ebaqamu en 19 gasten