Svenska ElektronikForumet
https://elektronikforumet.com/forum/

Nybörjare med modbus och RS485 ihop med Nibe värmepump
https://elektronikforumet.com/forum/viewtopic.php?f=2&t=94513

Författare:  Schlbuditz [ 14.41 2019-03-17 ]
Inläggsrubrik:  Nybörjare med modbus och RS485 ihop med Nibe värmepump

Hej!

Jag försöker att kommunicera med min Nibe F750 frånluftsvärmepump via Modbus och RS485 på en RPi Zero men det går sådär och jag hoppas att ni kan ge mig lite guidning i rätt riktning.

Hårdvaran som är byggd är testad på en annan värmepump och den fungerar utan anmärkning där, så dåliga lödningar m.m. borde vara uteslutet.

Om man loggar kommunikationen ska man se någonting i stil med följande:
Bilaga:
53348932_2257238964299588_7953778136494112768_n.png


När jag loggar mot min pump ser det dock oftast ut så här:
Bilaga:
53067853_372047990047956_2186693744474980352_n.png


Eller i vissa fall så här:
Bilaga:
53100499_1688815197918906_4014081309629480960_n.png


Är det någon som har en aning om vad felet kan vara?

I bild nummer tre ser man att det är lite mer data i ett meddelande och alla korrekta meddelanden ska också inledas med 5C, men det är ändå inte komplett.

Hård- och mjukvara är densamma som listas här och det är också skaparen som har provkört min hårvara i sin värmepump:
https://github.com/bebben88/NibePi
https://github.com/bebben88/nibe2mqtt

Jag har provat olika varianter av kablage och nu senast med skärmad nätverkskabel med skärmen inkopplad endast på pumpsidan och gnd i båda ändar men kablarna har inte gjort någon skillnad alls på resultatet.

Jag har läst lite om bias-motstånd, men det verkar sällan ska behövas på lite modernare prylar?

Det jag är inne på nu är att ingångskortet i min värmepump inte stödjer Modbus, även fast den ska göra det? Min pump är av väldigt tidig modell. Det som talar emot är att jag ju ändå får ut någon form av data, men det är "skräp" och dataflödet slutar också om jag väljer att stänga av Modbus på värmepumpen.

Basen för koden är från openHAB och kan hittas här:
https://github.com/bebben88/nibe2mqtt/blob/master/nibegw.c

Stort tack på förhand om någon lyckas lösa detta!

Författare:  Pen [ 14.31 2019-03-19 ]
Inläggsrubrik:  Re: Nybörjare med modbus och RS485 ihop med Nibe värmepump

Kolla den här tråden från 2006 som fortfarande är aktiv!

https://elektronikforumet.com/forum/vie ... hp?t=13714

(själv gav jag upp för länge sen och köpte Nibes RCU, men nu verkar tråden ha löst det)

Författare:  ecenier [ 14.42 2019-03-19 ]
Inläggsrubrik:  Re: Nybörjare med modbus och RS485 ihop med Nibe värmepump

Det dyker snart upp en tråd från mig i Arduino-tävligen 2019.
Det är en lösning som fungerar mot F1235, men borde fungera på alla de värmepumpar som kopplas mot RCU10 och RCU11.
Om din VP hör dit vet jag inte.

Koden finns i alla fall här, https://bitbucket.org/foogadgets/bvptograf

Projekttråden dyker upp inom en vecka.

Författare:  Borre [ 14.55 2019-03-19 ]
Inläggsrubrik:  Re: Nybörjare med modbus och RS485 ihop med Nibe värmepump

Projekttråden finns väl redan?
https://elektronikforumet.com/forum/vie ... 48&t=94511

Författare:  ecenier [ 14.57 2019-03-19 ]
Inläggsrubrik:  Re: Nybörjare med modbus och RS485 ihop med Nibe värmepump

Ja, ser man på! Hade missat det.

Författare:  Elman [ 06.33 2019-03-20 ]
Inläggsrubrik:  Re: Nybörjare med modbus och RS485 ihop med Nibe värmepump

NIBE pumparna är jobbiga med deras EGNA Modbusmodul
, man kan inte läsa för snabbt och för många värden
Samtidigt. Tydligen via RTU
Fanns någon inställning så vissa värden kunde uppdateras oftare. Gissar att dom själva byggt in en proxy funktion i deras egen modul ..så man läser samma värde igen fast det inte är uppdaterat mot internbussen och skickar samma data till överordnat BMS/scada system igen.

(Kollegan löste det,så jag har inte 100koll på själva fixen bara att det fungerar bättre mot överordnat)

Modbus på alla värmepumpar, verkar vara tyvärr ofta 3parts utvecklingar med någon extra modul i en sladd som Skall hängas på den befintliga interna bussen ..skall driftsätta en anläggning med 4 kompressorer idag även där hänger en extra modul med en sladd och med tejp.

Själv

Författare:  TomasL [ 07.39 2019-03-20 ]
Inläggsrubrik:  Re: Nybörjare med modbus och RS485 ihop med Nibe värmepump

Det där ser definitivt inte ut som Modbus/RTU, utan verkar vara något helt annat.

Data och paketlängder stämmer inte med Modbus/RTU

Författare:  Schlbuditz [ 13.03 2019-03-22 ]
Inläggsrubrik:  Re: Nybörjare med modbus och RS485 ihop med Nibe värmepump

Tack för alla svar!

Problemet är ju just att jag inte får ut förväntade paket.

Så här är tanken att det ska se ut:
5C | 00 | ADDR | CMD | LEN | DATA | CHK

Jag får ju dock bara ut skräp och ingenting inleds med 5C, vilket det ska, förutom vid något enstaka tillfälle, men inte ens då är det ett komplett paket.

Hårdvaran är som sagt testad på en annan pump av samma fabrikat och modell och fungerar bra där. Risken är väl kanske att det är något fel på ingångskortet i min värmepump.

Författare:  TomasL [ 13.42 2019-03-22 ]
Inläggsrubrik:  Re: Nybörjare med modbus och RS485 ihop med Nibe värmepump

Det är inte modbus.
Oavsett. Du har inte skiftat B/A?

Författare:  Schlbuditz [ 13.47 2019-03-22 ]
Inläggsrubrik:  Re: Nybörjare med modbus och RS485 ihop med Nibe värmepump

Okej, Nibe kör något eget, men Nibe har en modbusmodul och menyvalet för att aktivera dataflödet i pumpen heter också Modbus.

Jag har provat att skifta A och B och då får jag bara ut nollor istället.

Författare:  Schlbuditz [ 20.00 2019-05-03 ]
Inläggsrubrik:  Re: Nybörjare med modbus och RS485 ihop med Nibe värmepump

Hej igen!

En liten uppdatering. Det visade sig att displaymodulen i värmepumpen är boven och gör att inte en korrekt datasträng skickas ut. Jag har provat med en displaymodul från en annan modell och då fungerar det, men med ett problem.

När en displaymodul installeras för första gånger när den är ny får man lägga in pumpens serienummer vilket även styr vilken mjukvara som är tillåten på den. Hårdvaran är densamma i många pumpar. Problemet är att serienumret sedan inte kan ändras och nu när jag har lagt in mjukvara tillhörande min pump men i en modul tillhörande en annan så klagar pumpen på att serienumret är fel och den blockerar all form av uppvärmning.

Någon klurig som har en idé om hur man skulle kunna byta ut serienumret?

Bilaga:
DSC_0533.JPG

Bilaga:
DSC_0535.JPG

Bilaga:
DSC_0534.JPG

Bilaga:
DSC_0566.JPG

Författare:  Schlbuditz [ 13.34 2019-09-09 ]
Inläggsrubrik:  Re: Nybörjare med modbus och RS485 ihop med Nibe värmepump

Hej igen!

Jag har fortfarande inte någon lösning på detta. Är det någon programmeringskunnig som tror att man kan hitta och modifiera serienummersträngen på något sätt i koden som är lagrad?
Processorn är en AT91SAM9261S CU och det finns en USB-anslutning som skapar upp en COM-port när man pluggar in den till en dator om det är någon ledtråd? Det sitter även en ATMLH028 på kortet som verkar vara en EEPROM.

Ett alternativ om man är vågad är väl att löda loss och flytta EEPROM:en mellan korten och hoppas att det är där det ligger lagrat.

Jag lär sakna kunskapen själv för att lösa det, men någon kanske har en känsla av om det bara är att lägga ner eller om det kan finnas en möjlighet?

Författare:  TomasL [ 14.05 2019-09-09 ]
Inläggsrubrik:  Re: Nybörjare med modbus och RS485 ihop med Nibe värmepump

Varför gör du inte som det står på displayen, ringer installatör eller NIBE support.

Författare:  Lasp [ 14.06 2019-09-09 ]
Inläggsrubrik:  Re: Nybörjare med modbus och RS485 ihop med Nibe värmepump

Förlåt en enkel fråga. Men vad säger Nibe om att hjälpa till?
Det kanske finns en kundvänlig själ på supporten!

Författare:  TomasL [ 14.15 2019-09-09 ]
Inläggsrubrik:  Re: Nybörjare med modbus och RS485 ihop med Nibe värmepump

Inte vet jag, men det skadar ju aldrig att fråga hur man återställer serienumret.

Författare:  swesysmgr [ 14.30 2019-09-09 ]
Inläggsrubrik:  Re: Nybörjare med modbus och RS485 ihop med Nibe värmepump

Om du tar en lite skarpare bild på kretsarna ovanför den guldbruna kabeln till displayen så kanske det kan gå att komma med förslag. Det ser ut som en AT91 processor, ett DRAM-minne från Micron, en superkondensator och någon form av annan minneskrets alldeles ovanför den.

Det kan vara så att serienummer m.m. lagras i kretsen som är kopplad till superkondensatorn (motsvarar backupbatteri), det kan även vara så att det lagras i AT91-kretsens flashminne när den programmeras på fabriken.

Författare:  Schlbuditz [ 14.44 2019-09-09 ]
Inläggsrubrik:  Re: Nybörjare med modbus och RS485 ihop med Nibe värmepump

Relevanta frågor! Nibe hjälper inte till, det är tvärstopp den vägen, jag har provat! Jag har också haft kontakt med en installatör som lämnade prisuppgift på att byta serienummer (alltså lär det gå) men som sedan slutade att höra av sig. Går det inte att lösa själv så köper jag en ny displaymodul, men det är ju onödiga pengar att lägga ut om det på något sätt skulle gå att fixa.

Jag ska fixa skarpare bilder på kretsarna, återkommer! Processorn är som sagt en AT91SAM9261S CU.

Författare:  Schlbuditz [ 17.14 2019-09-09 ]
Inläggsrubrik:  Re: Nybörjare med modbus och RS485 ihop med Nibe värmepump

Här kommer lite bättre bilder på kretsarna

Tillägg: Om man kopplar in den till datorn via USB och strömsätter den så får man en serieport benämnd AT91 USB Serial Converter.

Författare:  swesysmgr [ 19.37 2019-09-09 ]
Inläggsrubrik:  Re: Nybörjare med modbus och RS485 ihop med Nibe värmepump

DS3232 är en klockkrets med lite minne, backupkondensatorn gör att klockan inte tappar tiden om det blir strömavbrott och minnet gissar jag håller de parametrar du valt via frontpanelen.

https://www.maximintegrated.com/en/products/analog/real-time-clocks/DS3232.html

Författare:  swesysmgr [ 19.46 2019-09-09 ]
Inläggsrubrik:  Re: Nybörjare med modbus och RS485 ihop med Nibe värmepump

Kretsen märkt "64C" på bild nr 2 ser ut att vara ett I2C EEPROM, du kanske kan lyssna på kommunikationen och se om serienumret läses av när pumpen startar upp? Jag antar att du vet hur det skall se ut, finns väl risk att det inte ligger i klartext heller.

https://www.mouser.se/datasheet/2/268/doc5298-1180814.pdf

Författare:  Schlbuditz [ 20.31 2019-09-09 ]
Inläggsrubrik:  Re: Nybörjare med modbus och RS485 ihop med Nibe värmepump

Tack för analysen!

Tyvärr vet jag inte ens var jag ska börja för att avlyssna den trafiken.

Jag vet hur serienumret ska se ut i klartext.

Om någon här sitter på en tänkbar lösning så anlitar jag gärna denne för en omprogrammering och betalar såklart för det. Hojta till i så fall. ☺️

Jag tänker mig att det kanske skulle kunna vara att läsa/skriva till eepromet?

Författare:  swesysmgr [ 20.51 2019-09-09 ]
Inläggsrubrik:  Re: Nybörjare med modbus och RS485 ihop med Nibe värmepump

Många moderna oscilloskop har inbyggd avkodning av vanliga protokoll där du ser vad som skickas direkt på skärmen.

De här har en väldigt fin och lättanvänd mjukvara som avkodar kommunikationen och du kan lagra så mycket som ryms på din hårddisk för att analysera den i efterhand. Tyvärr ganska dyra numera.
https://www.saleae.com/

Annars tror jag en sådan här skulle fungera:
https://www.electrokit.com/produkt/bus-pirate/

Författare:  Schlbuditz [ 12.40 2019-09-10 ]
Inläggsrubrik:  Re: Nybörjare med modbus och RS485 ihop med Nibe värmepump

En Bus Pirate beställd! Verkar vara en kul sak att ha oavsett hur det går med det här. :)

Efter lite snabbgoogling verkar det som att man kan läsa ut från- och skriva till en IC2 EEPROM med den också. Om man kan dumpa det till fil på något sätt så borde det väl teoretiskt möjligt gå att läsa ur EEPROMEN som har rätt serienummer (under förutsättning att det är där det är lagrat) och skriva över det på den som har fel?

Författare:  mrfrenzy [ 13.10 2019-09-10 ]
Inläggsrubrik:  Re: Nybörjare med modbus och RS485 ihop med Nibe värmepump

Om det är olika mjukvara i den gamla och den nya (eftersom den ena klarar rs485) så är det ju inte säkert båda passar med din version av huvudkortet.

Dom kan ju ha lagt in spärren just för att man inte ska blanda inkompatibla enheter.

Säkert finns också en checksumma på eeprom men det kan ju vara roligt att klura ut.

Författare:  Schlbuditz [ 13.20 2019-09-10 ]
Inläggsrubrik:  Re: Nybörjare med modbus och RS485 ihop med Nibe värmepump

Det är samma hård- och mjukvara i dom, men någon krets har lagt av på den som sitter i pumpen nu som gör att rs485-kommunikationen inte fungerar.

Själva displaymodulen är samma hårdvara mellan många olika värmepumpar. En annan sak som lagras "hårt" är installerade tillbehör, t.ex. cirkulationspump. I något reservdelspaket till en bergvärmepump där man har bytt ut cirkulationspumpen mot en annan så följer det med ett USB-minne som tillåter just denna ändring.

Författare:  ToPNoTCH [ 19.06 2019-09-10 ]
Inläggsrubrik:  Re: Nybörjare med modbus och RS485 ihop med Nibe värmepump

Jag tror att förutsättningarna är bättre att vi lyckas hjälpa dig felsöka det kortet som har trasig kommunikation, jämfört att hacka serienumret.

Jag utgår ifrån det värsta när det gäller företag och att denna låsning är till för att "skydda kunden" tror jag inte alls på.
Enbart ett sätt att få extra inkomster och nyförsäljning. Nästan lite "Apple stuk".

Att tro att innehållet på EEPROM skulle vara i klartext och begripligt är aningen naivt.
Att felsöka befintliga kortet måste vara mycket enklare om det bara är kommunikationen som felar.

Jag fattar att det är ett problem med att du måste använda det för att tillvaron skall funka, så du inte kan felsöka så lätt.

Författare:  mrfrenzy [ 19.35 2019-09-10 ]
Inläggsrubrik:  Re: Nybörjare med modbus och RS485 ihop med Nibe värmepump

OM det är samma mjukvara så räcker det förmodligen med att flytta över hela EEPROMET. Man kommer då märka att dom är väldigt lika.

Det kan ju dock vara så att datat är krypterat med en nyckel som ligger i flash någonstans.

Författare:  TomasL [ 21.18 2019-09-10 ]
Inläggsrubrik:  Re: Nybörjare med modbus och RS485 ihop med Nibe värmepump

Citera:
Jag utgår ifrån det värsta när det gäller företag och att denna låsning är till för att "skydda kunden" tror jag inte alls på.

Nej, det handlar om CE och garantiåtaganden.

Författare:  jah [ 21.19 2019-09-12 ]
Inläggsrubrik:  Re: Nybörjare med modbus och RS485 ihop med Nibe värmepump

Schlbuditz skrev:
Det är samma hård- och mjukvara i dom, men någon krets har lagt av på den som sitter i pumpen nu som gör att rs485-kommunikationen inte fungerar..

Det är inte alls svårt att ta död på en RS485-transceiver, och ibland "halvdör" de bara, och fortsätter funka halvtaskigt istället.
Lyckades själv göra det för en vecka sedan på min Nibe1235 där jag dödade CPU-kortet när jag slant med mätproben i RJ45-kontakten :(
Dock oftast enkelt att laga, även min :D
Det sitter en 8-pin krets med beteckning ADM483 på ditt kort intill kontakten X8 - byt den!
Det är en "standard"-komponent som kan ersättas av div fabrikat/versioner. Sök på ADM483, MAX485, LTC485 etc. Det är en 5V-variant du ska ha.
Hittar du ingen så har jag liggande.

/J

Författare:  Schlbuditz [ 21.34 2019-09-12 ]
Inläggsrubrik:  Re: Nybörjare med modbus och RS485 ihop med Nibe värmepump

Fantastiskt, tack för tipset! Jag borde ju kunna flytta den från det friska kortet då?

Författare:  jah [ 21.37 2019-09-12 ]
Inläggsrubrik:  Re: Nybörjare med modbus och RS485 ihop med Nibe värmepump

Absolut, om du känner dig bekväm med det.
Är ju annars lite trist om man råkar sabba det friska kortet bara...

/J

Författare:  TomasL [ 21.39 2019-09-12 ]
Inläggsrubrik:  Re: Nybörjare med modbus och RS485 ihop med Nibe värmepump

Jag hoppas att du är medveten om att alla garantier och försäkringar blir ogiltiga för värmepumpen.

Författare:  Schlbuditz [ 18.50 2019-09-23 ]
Inläggsrubrik:  Re: Nybörjare med modbus och RS485 ihop med Nibe värmepump

Ja, jag är medveten om riskerna.

Efter en snabbkurs i att löda ytmonterat med varmluft så gick det galant att flytta ADM483 från det friska kortet till det som inte kommunicerar. Tyvärr kvarstår dock samma fel och jag lödde även fast ADM483 från det sjuka kortet till det friska som fortsatte fungera som det har gjort innan. Det är alltså någon annan komponent som spökar.

Författare:  jah [ 19.18 2019-09-23 ]
Inläggsrubrik:  Re: Nybörjare med modbus och RS485 ihop med Nibe värmepump

Det sitter en komponent precis intill 485-kretsen (den svarta kuben) som är ett common-modefilter för 485-signalerna.
Denna komponent kan ha lite kinkiga paddar, så det kan vara värt att ohm-mäta från 485-kretsens pin 6 och 7 mot pinnarna i kontakten X8 där signalen går ut, förmodligen pinne 1 och 6 (lite svårt att se på bilderna).
Det bör vara < 10 ohm där, annars är det sannolikt en dålig lödning, men kan även vara komponentfel.
Är du lite dristig kan du prova värma loss det och bygla paddarna med tråd, alt. bygla med (vir)trådar från pin 6/7 till pinnarna i X8.
Filtret har högst sannolikt ingen annan funktion än att dämpa utstrålad RF, så det bör funka att kortsluta det.

/J

Författare:  Schlbuditz [ 19.54 2019-09-23 ]
Inläggsrubrik:  Re: Nybörjare med modbus och RS485 ihop med Nibe värmepump

Först, stort tack för din hjälp jah!

Jag ohm-mätte pin 6 och 7 på ADM483 mot pinne 1 och 2 på X8 (det är dom och inte 1, 6) och resultatet är 0-1 ohm så jag antar att det inte är någon mening att bygla någonting?

Författare:  jah [ 22.40 2019-09-23 ]
Inläggsrubrik:  Re: Nybörjare med modbus och RS485 ihop med Nibe värmepump

Nej det är ju inte meningsfullt att bygla något.
Själv skulle jag försöka spåra bakåt från andra sidan 485-kretsen (pin 1,2,3,4) och kolla att de har kontakt hela vägen tillbaka till MCU:n (blir ju liiite svårt om det är en BGA förstås), samt även kolla att de resistorer som sitter på vägen verkligen har kontakt på båda sidor samt rätt resistans.
Sen börjar idéerna ta slut, om man inte vill ge sig på med oscilloskop också, för då kan man ju kolla lite signalnivåer och liknande... Var försiktig med oscilloskop-jorden bara isf!

/J

Alla tidsangivelser är UTC + 1 timme
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/