20 431 läst · 47 svar
20k läst
47 svar
Bästa adaptern till elmätare med P1/HAN-port för interaktion med Home Assistant?
Tack för detta tips, men jag har nu hittat rot-orsaken! Jag köpte D1mini på ALIexpress (första bild) och så ser screentrycket ut på kortet jag fick. Men så såg jag att det fanns en annan variant (andra bild) med en annan pin-layout och där D2 och D4 var omkastade, men alla andra jag använder var lika. Desperat provade jag då att kasta om D2 och D4 och MIRAKEL det funkar.redarn skrev:
Jag misstänker att detta fungerar
case states::IDENTIFYING_MESSAGE:
if (!available()) {
constexpr unsigned long max_wait_time_ms{ 60000 };
if (max_wait_time_ms < loop_start_time - m_identifying_message_time) {
ESP_LOGW(TAG, "No data received for %d seconds.", max_wait_time_ms / 1000);
ChangeState(states::ERROR_RECOVERY);
}
break;
}
while (available()) {
char const read_byte{ GetByte() };
if (read_byte == '/') {
ESP_LOGD(TAG, "ASCII data format");
m_data_format = data_formats::ASCII;
m_message_buffer[m_message_buffer_position++] = read_byte;
ChangeState(states::READING_MESSAGE);
break;
}
else if (read_byte == 0x7e) {
ESP_LOGD(TAG, "BINARY data format");
m_data_format = data_formats::BINARY;
m_message_buffer[m_message_buffer_position++] = read_byte;
ChangeState(states::READING_MESSAGE);
break;
}
else {
//ESP_LOGW(TAG, "Unknown data format (0x%02X). Resetting.", read_byte);
//ChangeState(states::ERROR_RECOVERY);
//return;
}
}
// Not breaking here! The delay caused by exiting the loop function here can cause
// the UART buffer to overflow, so instead, go directly into the READING_MESSAGE
// part.
case states::READING_MESSAGE:
Efter att ha läst meddelandet på slutet så ja, det är nog inte snabbt nog att göra exit ur denna klass för att sedan bli återropad lite senare.
(beskyll inte mig för den hemska kodformateringen, behåller bara vad som var där innan)
Alltså är min slutsats att jag fått ett kort av en typ men med screentryck från en annan typ, kanske får man den kvaliteten man betalar för...
Och i och med detta funkar originalkoden. Men en lärdom är att vid 115200 baud funkar det inte utan RTS handskakning.J jerval skrev:Tack för detta tips, men jag har nu hittat rot-orsaken! Jag köpte D1mini på ALIexpress (första bild) och så ser screentrycket ut på kortet jag fick. Men så såg jag att det fanns en annan variant (andra bild) med en annan pin-layout och där D2 och D4 var omkastade, men alla andra jag använder var lika. Desperat provade jag då att kasta om D2 och D4 och MIRAKEL det funkar.
Alltså är min slutsats att jag fått ett kort av en typ men med screentryck från en annan typ, kanske får man den kvaliteten man betalar för...
Den har en hårdvarubuffert på knappt en hundradels sekund vid den hastigheten så det är inte på något sätt omöjligt att lösa men det blir så klart enklare om handskakningen är implementerad.J jerval skrev:
Bra att din enhet funkar.
Nu har jag också byggt ihop en Beaky2000 på P1 mini och skulle behöva tips/support.
Har lött ihop allting. Programmerat D1 via USB och lyckats få den uppkopplad till nätverket och kan besöka dess hemsida. Lysdioder har ett fast blått sken.
Men när jag kopplar den till elmätaren dyker den inte upp i nätverket. Den lyser även här konstant blått. Jag trodde först det var wlan räckvidd men har nu en 3m rj12 förlängning så själva D1'an nu hänger i samma rum 4m från routern.
Men den kopplar ändå inte upp mot routern.
Jag provade också att manuellt spänningssätta 5v via de 2 yttre pinnarna på RJ12 kontakten liggandes på bordet. Då lyser den även konstant blått och kopplat även upp sig mot nätverket.
Så något märkligt är det just när det kopplas upp mot elmätaren.
Någon som haft liknande problem att det lyser blått men helt enkelt inte kopplar upp sig så fort man sätter den i elmätaren?
Har lött ihop allting. Programmerat D1 via USB och lyckats få den uppkopplad till nätverket och kan besöka dess hemsida. Lysdioder har ett fast blått sken.
Men när jag kopplar den till elmätaren dyker den inte upp i nätverket. Den lyser även här konstant blått. Jag trodde först det var wlan räckvidd men har nu en 3m rj12 förlängning så själva D1'an nu hänger i samma rum 4m från routern.
Men den kopplar ändå inte upp mot routern.
Jag provade också att manuellt spänningssätta 5v via de 2 yttre pinnarna på RJ12 kontakten liggandes på bordet. Då lyser den även konstant blått och kopplat även upp sig mot nätverket.
Så något märkligt är det just när det kopplas upp mot elmätaren.
Någon som haft liknande problem att det lyser blått men helt enkelt inte kopplar upp sig så fort man sätter den i elmätaren?
Glömde nämna det, men mätaren är en kamstrup Omnia. Någon som fått projektet att fungera på en sådan?V VallValle skrev:Nu har jag också byggt ihop en Beaky2000 på P1 mini och skulle behöva tips/support.
Har lött ihop allting. Programmerat D1 via USB och lyckats få den uppkopplad till nätverket och kan besöka dess hemsida. Lysdioder har ett fast blått sken.
Men när jag kopplar den till elmätaren dyker den inte upp i nätverket. Den lyser även här konstant blått. Jag trodde först det var wlan räckvidd men har nu en 3m rj12 förlängning så själva D1'an nu hänger i samma rum 4m från routern.
Men den kopplar ändå inte upp mot routern.
Jag provade också att manuellt spänningssätta 5v via de 2 yttre pinnarna på RJ12 kontakten liggandes på bordet. Då lyser den även konstant blått och kopplat även upp sig mot nätverket.
Så något märkligt är det just när det kopplas upp mot elmätaren.
Någon som haft liknande problem att det lyser blått men helt enkelt inte kopplar upp sig så fort man sätter den i elmätaren?
Jepp, jag har det att funka på en Omnia från Gbg energi. Min status led blinkar till varannan sek, när det kommer ett paket.V VallValle skrev:
Låter som din inte bootar om du inte ser den i nätverket. Om du spänningsätter den via USB, kommer den upp då?
Ja. På USB dyker den upp i nätverket och webbsidan fungerar, fast utan data såklart.J jerval skrev:
Men när det kopplas till mätaren verkar den inte bootar upp eller koppla till wifi. Den blå lysdioden lyser men den kopplar aldrig upp moto routern.
Och på samma plats?
Har du mätt att du har 5v över kortet? Och inte råkat ansluta till 3.3v pinnen?
Och ett allmänt tråkigt tips, trippelkolla att du kopplat rätt. 😄 Men det är antagligen bara jag som brukar gör fel😉
Har du mätt att du har 5v över kortet? Och inte råkat ansluta till 3.3v pinnen?
Och ett allmänt tråkigt tips, trippelkolla att du kopplat rätt. 😄 Men det är antagligen bara jag som brukar gör fel😉
Har en Kamstrup Omnipower som initialt hade en RJ45port men var ner på det kommunalägda elnätsbolaget och bytte åt mig en P1 med RJ12 port och kopplade mot en Wemos D1 Mini vilket jag flashat svanströms ESPhome på. vips så ploppade alla elmätarens värden upp som sensorer i HA. Nu till det tråkiga, Kamstrup Omnipower levererar 0V mellan pin 6 och pin 1, men före P1 modulen finns 5V skulle jag kunna smyga bakom med en kabel och plocka 5V där istället för att plocka 5V från en powerbank, vill ha så lite skit som möjligt runt elmätaren. Någon som har liknande problem med spänningsmatningen?
Nu har jag köpt mig en ny D1 mini hårdvara eftersom jag misstänkte att min aliexpress hw krävde för mycket ström vid boot och att kamstrup mätaren begränsade.
Men jag har samma fenomen, D1'an bootar upp bra både med usb och extern matning via RJ12, men inte när man kopplar till mätaren.
Jag har funderat att löda dit en konding mellan gnd och 5v. Men är det någon som vet om något i mätaren kan ta skada om man både har anslutit pin 1 och 6 via mätaren och samtidigt kopplar in en powerbank via USB?
Men jag har samma fenomen, D1'an bootar upp bra både med usb och extern matning via RJ12, men inte när man kopplar till mätaren.
Jag har funderat att löda dit en konding mellan gnd och 5v. Men är det någon som vet om något i mätaren kan ta skada om man både har anslutit pin 1 och 6 via mätaren och samtidigt kopplar in en powerbank via USB?
För- och nackdelen med Beslagsgruppens lås är att du (nästan) alltid har full acces att öppna inifrån oavsett låsmetod.redarn skrev:
Om jag förstår dataformatet rätt så kommer '/' enbart vid start på meddelande. Då borde det räcka med att kommentera ut raderna:
ESP_LOGW(TAG, "Unknown data format (0x%02X). Resetting.", read_byte);
ChangeState(states::ERROR_RECOVERY);
Men ha kvar "return;" på nästföljande rad för att söka tills den hittar '/'.
Så har man en jobbig hund finns det förmodligen bättre alternativ.
Bland det bästa ned BG produkterna är att de har nödöppning utifrån med USB strömkälla ( typ powerbank) och/eller NYCKEL! (Denna sitter undertill och bypasar allt, klockrent för oss!).
På PSvanströms sidor på Github https://github.com/psvanstrom/esphome-p1reader, så kan man se att han satt in i lite strömbegränsande komponenter och nån transistor för 3.3V ingången. Detta behövs alltså inte?
Klurar på denna D1 Mini https://www.amazon.se/gp/product/B0754N794H/ref=ox_sc_act_title_2?smid=A1X7QLRQH87QA3&th=1
Klurar på denna D1 Mini https://www.amazon.se/gp/product/B0754N794H/ref=ox_sc_act_title_2?smid=A1X7QLRQH87QA3&th=1
Diversearbetare
· Göteborg
· 10 041 inlägg
Nej, det behövs inte i p1mini. Motstånden är de inbyggda ”pull-up” och transistorn i Svanströms lösning skall bara invertera signalen. Det görs i konfigurationen på p1mini.Kjelle Mickelsson skrev:
Den D1 mini-klonen du har hittat fungerar bra, men om jag inte minns fel sitter inte GPIO-pinnarna på samma ställe. Läs noga på kortet innan du lödar och provkör.
Hej, ser i ditt inlägg att på bilden har du inte har med filerna som ligger under text_sensor, har du lagt dom någon annan stans?J jerval skrev: