Värmepumpsforum allt om värmepump och värmepumpar

VärmepumpsForum Allmänt => Värmepumpar - Märkesspecifikt => Värmepumpar - Mark/Berg och Sjövärmepumpar. => Värmepumpar och installationsfrågor. => Nibe => Ämnet startat av: mexitegel skrivet 14 januari 2011, 15:24:51

Titel: Någon som köpt MODBUS 40
Skrivet av: mexitegel skrivet 14 januari 2011, 15:24:51
Hade missat att NIBE äntligen har släppt MODBUS 40, tänkte höra om någon här har den och om den funkar bra? Följer det med någon resource kit el motsv.? Skulle gärna bygga ett schysst webgränssnitt mot den där...
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: mexitegel skrivet 16 januari 2011, 16:57:08
Ingen?  :'(

Inte ens nån som känner nån som har en, eller nån som vet något mera om den än det som står på www.nibe.se?  studs
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: f95heka skrivet 17 januari 2011, 12:44:29
Har oxå blivit sugen på en modbus 40 de senaste dagarna.. Svårt att motivera en kostnad på 6000 bara..

Har en kollega som rekommenderade en manick som heter LANTRONIX UDS-10.
Denna får man för under tusenlappen via Ebay och det är inte omöjligt att den gör ungefär samma sak som hårdvaran i Modbus 40. Dvs översätter från RS485 till Tcp.
Så är det bara realtidsloggning du är ute efter så är nog detta en bra variant. (Styrning skulle jag nog inte våga mig på om man hackat själv)

Okänt hur mycket man måste programmera för att få ut datat i en läsbar form, men Modbus används ju på många ställen, så det bör finnas färdiga bibliotek att ladda ned så att man kan komma en bit på vägen.

Mvh Henrik
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: purjo__ skrivet 17 januari 2011, 13:18:09
Varför inte en PC och en RS232-RS485 adapter (eller en PC med inbyggd RS485-port)? Visserligen måste man läsa ut och tolka datat själv, men det borde inte vara så svårt...
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: tipo874 skrivet 17 januari 2011, 14:14:35
Vad använder VP:n för protokoll mot MODBUS, SMS40 och RMU40?
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: purjo__ skrivet 17 januari 2011, 14:17:01
Vad använder VP:n för protokoll mot MODBUS, SMS40 och RMU40?


Modbus/RS485 skulle jag tro?
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: utopiazz skrivet 17 januari 2011, 14:44:03
Ingen?  :'(

Inte ens nån som känner nån som har en, eller nån som vet något mera om den än det som står på www.nibe.se?  studs

Har du läst denna http://www.nibeonline.com/pdf/031725-2.pdf
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: purjo__ skrivet 17 januari 2011, 15:17:31
Hmm... Är det inte Modbus på pumpen? Vilket protokoll används mellan Modbus40 och VP'n?
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: tipo874 skrivet 17 januari 2011, 15:36:24
Hmm... Är det inte Modbus på pumpen? Vilket protokoll används mellan Modbus40 och VP'n?


Om man läser MODBUS40 dokumentationen så tolkar jag det som att man får modbus externt, det finns ingen spec av protokoll mellan MODBUS40 och VP, så för att få det till nåt användbart måste man ha ytterligare en moj som pratar t ex http/tcp/ip externt och modbus mot MODBUS40. Många pryttlar blir det. Man skulle ju vilja ha nåt som pratar ethernet (tcp/ip) i ena änden och direkt mot VP:n i andra änden.

Jag tycker de borde fixa SMS40 att prata http/tcp/ip/gprs också.
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: purjo__ skrivet 17 januari 2011, 15:46:49
Jag tycker de borde fixa SMS40 att prata http/tcp/ip/gprs också.

Det är väl det RCU11 är till för...
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: mexitegel skrivet 17 januari 2011, 16:16:23
Det finns ju flera som hackat egna avläsningsmojjänger till NIBE-pumpar (dock inte 1x45 vad jag känner till)  som verkar funka bra.
Personligen var jag ute efter både realtidsavläsning(nåväl...avläsning i vart fall) och att kunna ändra värden och då kändes MODBUS40 rätt väg att gå. Dock är det "några" rader kod som saknas innan man har en app i telefonen för att styra och läsa pumpen....

Har bett om lite ÅF priser på den så får vi se vad slutpriset blir...
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: purjo__ skrivet 17 januari 2011, 16:19:57
Det verkar vara RS485 på pumpen, så Modbus40 är bara en ovanligt dyr protokollkonverterare från Nibes protokoll över RS485 till MobBus över RS485...

Köp en RS485/RS232-adapter till datorn, ställ in serieporten på 19200N91 och kör...
http://elektronikforumet.com/forum/viewtopic.php?f=4&t=13714&start=83

Ett tips: Loggdatorn jag har, MSI MS-9A19, är strömsnål, utan rörliga delar och har fyra serieportar som kan ställas om mellan RS232 och RS485...
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: tipo874 skrivet 17 januari 2011, 22:34:47
Jag tycker de borde fixa SMS40 att prata http/tcp/ip/gprs också.

Det är väl det RCU11 är till för...

Men funkar den till 1245? Den är inte listad som ett tillbehör till den VP:n
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: mexitegel skrivet 18 januari 2011, 16:19:10
Hade det bara funnits en tillförliglig dokumentation så vore saken inte så svår... Är själv inte så sugen på att lägga X timmar på att laborera och dekoda protokoll...  ;D
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: Danred skrivet 03 februari 2011, 10:21:42
Kan vi dra slutsatsen att man alltså kan ansluta t ex en Bas2 DUC rakt in på Modbusutgången på t ex F470?

Som sagt så krävs en del programmering osv men man har ju enormt mycket större möjligheter med ett annat system än Modbus40.
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: Norre17 skrivet 04 maj 2011, 21:18:22
man kan koppla in sig på RS485 porten protokollet är Modbus. Modbuslistan finns på Nibes hemsida.

Jag ska köpa en värmepump för jordvärme, någon som vet vilka av dom stora tillverkarna som har kom.port med RS485 modbus?
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: ORAKLET skrivet 04 maj 2011, 21:20:39
Qvantum *vinkar*
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: purjo__ skrivet 04 maj 2011, 22:22:25
man kan koppla in sig på RS485 porten protokollet är Modbus. Modbuslistan finns på Nibes hemsida.

Jag ska köpa en värmepump för jordvärme, någon som vet vilka av dom stora tillverkarna som har kom.port med RS485 modbus?

Varför vill du ha just modbus?
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: mexitegel skrivet 09 februari 2012, 02:21:47
Fortfarande ingen som slagit till på en Modbus40 ? :)
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: Pansatonic skrivet 09 februari 2012, 08:07:48
Citera
Ett tips: Loggdatorn jag har, MSI MS-9A19, är strömsnål, utan rörliga delar och har fyra serieportar som kan ställas om mellan RS232 och RS485...

Perfa! har letat en dator med just dessa specar, skall ha den som allt i allo server.
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: mexitegel skrivet 09 februari 2012, 14:52:28
Jag köpte mig en rs485-usb sent i går, så nu ska det mixtras. Men det hade varit schysst att få ut hela parameterlistan som MODBUS40 använder, det finns några exempel på sidan 8 i manualen till modbus40. Kan man få ut samtliga med den programvara som följer med modbud40 tro?  :D
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: purjo__ skrivet 09 februari 2012, 15:02:39
Det finns parameterlistor på nätet till Nibes fastighetspumpar. Dom kanske stämmer även för de mindre pumparna?
http://www.nibe.se/Fastighetsguiden/Bergvarmepumpar/Extern-kommunikation/Modbusprotokoll/ (http://www.nibe.se/Fastighetsguiden/Bergvarmepumpar/Extern-kommunikation/Modbusprotokoll/) bl a...
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: mexitegel skrivet 09 februari 2012, 15:26:20
Jo, de där har jag sett och det verkar finnas vissa likheter men det ger sig väl snart.  ;D
De kan nog ge viss vägledning i alla fall.
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: tipo874 skrivet 09 februari 2012, 15:58:09
Behöver man verkligen MODBUS40? Är inte kommunikationen mellan MODBUS40 och VP nån RS-485 variant också? Vore ju najs att slippa köpa en dyr moj. ;)
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: mexitegel skrivet 09 februari 2012, 16:06:32
Modbus är protokollet och rs-485 är gränssnittet. Nej, en modbus40 är överflödig rent tekniskt, problemet är att det är inte känt hur NIBE implementerat modbus-protokollet. Vilka adresser och coils som används. En del är känt men inte allt. Än....  :D
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: tipo874 skrivet 09 februari 2012, 16:38:28
Modbus är protokollet och rs-485 är gränssnittet. Nej, en modbus40 är överflödig rent tekniskt, problemet är att det är inte känt hur NIBE implementerat modbus-protokollet. Vilka adresser och coils som används. En del är känt men inte allt. Än....  :D

Jag förväntar mig snart en WEB40 modul som man kopplar in istället för MODBUS40 eller SMS40 och som tillåter övervakning och konfiguration via en vanlig browser, och som inte kostar mer än typ 1000:-  Thumbsup
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: mexitegel skrivet 09 februari 2012, 16:56:10
Jag förväntar mig snart en WEB40 modul som man kopplar in istället för MODBUS40 eller SMS40 och som tillåter övervakning och konfiguration via en vanlig browser, och som inte kostar mer än typ 1000:-  Thumbsup
WEB40 var ett bra namn, OK om jag sätter det som arbetsnamn på mitt lilla projekt? Du kan få 50% rabatt på förserien  *roflmao*
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: tipo874 skrivet 09 februari 2012, 17:24:13
WEB40 var ett bra namn, OK om jag sätter det som arbetsnamn på mitt lilla projekt? Du kan få 50% rabatt på förserien  *roflmao*

Klockrent!

När blir den klar, nästa vecka?  :D
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: mexitegel skrivet 10 februari 2012, 19:34:55
Ehhm, mentalt kanske den är färdig nästa vecka.  ;D
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: Wallac skrivet 11 februari 2012, 20:16:55
Perfekt jag ställer också mig i kö  b00k  ;D

Undertiden jag väntar tänkte jag prova lite själv.
Lånade hem en edw100 och kopplade in i pumpen.
http://www.westermo.com/Resource.phx/content/se/products/ethernet/serial-eternet-adapters/edw-100.htx (http://www.westermo.com/Resource.phx/content/se/products/ethernet/serial-eternet-adapters/edw-100.htx)
Men nu körde jag fast, finns det någon modbus guru som kan knuffa mig i rätt riktning?
Jag behöver något program som visar det som sänds på bussen.
Har googlat på modbus tcp sniffer med mera men hoppas på tips innan jag river av mig allt hår Sc:,h


Titel: SV: Någon som köpt MODBUS 40
Skrivet av: mexitegel skrivet 11 februari 2012, 20:24:00
Den här youtubevideon ger dig en del grundläggande kunskaper om modbus: All Need to Know About Modbus RTU (http://www.youtube.com/watch?v=OvRD2UvrHjE#)

I den programvara som följer med EDW-100 borde du kunna få en bra start  Thumbsup
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: Wallac skrivet 03 mars 2012, 14:55:38
Fick inte någon ordning på komunikationen, tröttnade och beställde en modbus 40.

Och får fortfarande inte ut något vettigt ur pumpen ... suck.
Jag har väll iofs inte tillbringat så många timmar i källaren än och felsökandet har inte heller vart så systematiskt.
Modbus kortet är som jag ser det samma kort som sms40 fast utan något gsm modem monterat.
Någon som kan tyda skärmdumparna från modscan32 ?
Misstänker att någon inställning är fel, men vet inte vad.
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: tipo874 skrivet 03 mars 2012, 16:14:09
Och du har kopplat rätt och klickat för tillbehöret i Systemmenyn (5.2)?
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: tipo874 skrivet 03 mars 2012, 16:19:25
Det ser ju ut som att MODBUS40 är en SMS40 minus GSM-modulen. Ser att SMS40 har anslutningsplinten för extern modbus.

Undrar om man kan köra en SMS40 som MODBUS40?
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: Gäst1001 skrivet 03 mars 2012, 17:05:17
Du,läser fel register. Ist för 0001 testa 40004. Utetemp är ju alltid där. Hex blir det 9c44.
Du får lägga till en på modscan så skriv 40005.

Har du gjort en log.set? Annars får du ändra från 1000ms till 3000ms eller liknande.
Gör en log.set och ta enbart utetemp och läs enbart den tills det fungerar. Längd likamed  1 dvs.

Fan vad jag kan.
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: Gäst1001 skrivet 03 mars 2012, 17:12:58
Det ser ju ut som att MODBUS40 är en SMS40 minus GSM-modulen. Ser att SMS40 har anslutningsplinten för extern modbus.

Undrar om man kan köra en SMS40 som MODBUS40?

Nej.
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: Wallac skrivet 03 mars 2012, 18:59:59
Grymt !  Thumbsup
Tack för hjälpen. Nu vet jag att prylarna funkar.

Nu återstår "bara" att göra något av detta.  Sc:,h

Vet du om det finns några färdiga program att använda ?
Önskemålen är loggning, driftbild, plotta grafer.
Har tittat lite på integraxor.
http://www.integraxor.com/index.htm (http://www.integraxor.com/index.htm)

Titel: SV: Någon som köpt MODBUS 40
Skrivet av: Gäst1001 skrivet 03 mars 2012, 21:51:27
Lugnt.
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: Wallac skrivet 16 mars 2012, 20:09:17
Hej
Efter hjälpen från Uber visste jag att kommunikationen fungerade och började leta efter lämplig programvara. Bäst vore att skriva något själv, men har inte programmerat sedan man knackade basic på en ABC 80. Provade några nedladdningsbara SCADA program, men alla var komplicerade och ganska begränsade i trial versionerna.Snubblade över Mango m2m som verkade fylla mina krav och lite till. http://mango.serotoninsoftware.com/ (http://mango.serotoninsoftware.com/)

Hurra  :-))

Mycket kvar att göra men det funkar. Bilden har jag bara kopierat och den stämmer inte helt med min installation.
Prefix och antal decimaler är kvar att rätta till. Samt sist men inte minst välja vilka data jag ska plocka ut ur pumpen.
Tycker att priset för modbus 40 är alldeles för högt, då kortet verkar vara samma som sms 40 utan gsm modemet.
Någonstans runt halva listpriset (3000 kr) vore vettigare, då tror jag att fler skulle köpa och lite roliga applikationer skulle ploppa upp.

Titel: SV: Någon som köpt MODBUS 40
Skrivet av: thwp skrivet 26 mars 2012, 16:31:07
Hello,
I am from Germany and I will write in english because I am unable understand swedish.

I want to find out the protocol between Modbus 40 and the heat pump.
I have connected my pc with an standard USB rs 485 converter to the heat pump (F1245) pins 10 and 11.
After turn on the Modbus 40 in the heat pump configuration it sends a serial message to the bus. But now I dont know how the Modbus 40 answers to the heat pump?
Unfortunately I have no Modbus 40 to log the protocol.

@Wallac
Wallac maybe you can help me. Could you try to log the data between the heat pump and your Modbus 40? You only need to connect the rs 485 converter to pin 10 and 11 and log the data with a serial monitor program?

Best regards
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: Wallac skrivet 26 mars 2012, 22:22:02
I’ can try.
Unfortunately i don’t think i can squeeze it in before the weekend.
Any hints about the baud rate and appropriate software.
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: katoth skrivet 30 mars 2012, 17:25:21
Hi Wallac!

Please use the following communication settings: 9600,8N1
9600 baud, 8 bits, Parity: none, Stop bits 1

After turn on the MODBUS module in the heatpump configuration the Nibe begins with sending data.

I find out the following information. The Nibe telegram looks like this:
5C    always 5C (maybe the address of the Nibe?)
00    always 00
20    Destination address (20 = MODBUS)
68    Command?
50    Length
...   Data
D2    Checksum (XOR: data + cmd + len)

I get the following telegram data when turn on the MODBUS settings:

It begins with the following block:
5C 00 20 6B 00 4B
5C 00 20 6B 00 4B
5C 00 20 6B 00 4B
5C 00 20 69 00 49
5C 00 20 69 00 49
5C 00 20 69 00 49

The next three telegrams contains data from the heatpump (including 20 fix parameters):
5C 00 20 68 50
89 9C 00 00   40073   EB100-BEx Energy [kW]
44 9C 48 00   40004   EB100-BT1 Outdoor temp S1 [ºC]      7,2
43 9C 00 00   40003   EB100-BT1 Outdoor temp S2 [ºC]
42 9C 00 00   40002   EB100-BT1 Outdoor temp S3 [ºC]
41 9C 00 00   40001   EB100-BT1 Outdoor temp S4 [ºC]
52 9C 42 01   40018   EB100-BT14 Hot gas temp [ºC]      32,2
97 9C 00 00   40087   EB100-BT14 Hot gas temp [ºC]
48 9C F2 00   40008   EB100-BT2 Supply temp S1 [ºC]      24,2
87 9C 00 80    40071   EB100-BT25 external supply temp [°C]   ?
4C 9C EE 00   40012   EB100-BT3 Return temp S1 [ºC]      23,8
61 9C 00 80   40033   EB100-BT50 Room Temp S1 [ºC]      ?
4E 9C EA 01   40014   EB100-BT6 Hot Water load [ºC]      49,0
4D 9C 01 02   40013   EB100-BT7 Hot Water top [ºC]      51,3
FF FF 00 00
FF FF 00 00
FF FF 00 00
FF FF 00 00
FF FF 00 00
FF FF 00 00
FF FF 00 00 D2

This is also described in the manual document of the MODBUS 40.
See -> http://www.nibeonline.com/pdf/031725-2.pdf (http://www.nibeonline.com/pdf/031725-2.pdf)

Next next block is the following:
5C 00 20 EE 00 CE
5C 00 20 EE 00 CE
5C 00 20 EE 00 CE

Then it sends the beginning block again (6 telegrams):
5C 00 20 6B 00 4B
...

The next telegram contains the version and product info (three times):
5C 00 20 6D 13 01 06 E8 46 31 32 34 35 2D 36 20 45 2C 20 50 43 20 44 45 B5
13   len
01   ?
06 E8   Version      1768
...   Product      F1245-6 E, PC DE
b5    Checksum

Then  the last block again (three times):
5C 00 20 EE 00 CE

After this the heatpump goes into the alarm mode. :-(

I think the MODBUS module sends a responds to the Nibe. I hope you can help me to find out the response telegram from the MODBUS. And any other commands...

Best regargs
Thorsten
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: katoth skrivet 30 mars 2012, 17:31:04
Hi all,
I could not login with my existing user (thwp) so I will now use the guest user.
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: Wallac skrivet 31 mars 2012, 15:42:12
Hi
First log recorded as following
Turned off sms-40 and modbus-40
Started logging
Turned on modbus-40 (in the heatpump)
Stop logging after a little while
I was not asking modbus-40 for any data.

Log 2
Logged when asking modbus 40 to send data

ps. I also have accessory ECS 40.
Don't know if this communication shows in the logs
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: Wallac skrivet 31 mars 2012, 16:51:26
New one.
Also turned off ECS-40
Now no data was sent
Turned on modbus 40

Bear in mind that I dont have the standard 20 fixed parameters

Let me know if I should try someting more, or different.

Having a good time in the basement.
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: thwp skrivet 01 april 2012, 12:02:07
Hello Wallac,

thank you for the log file!

In 3.txt I see the following information:

5C 00 20 6B 00 4B 06
5C 00 20 69 00 49 C0 69 00 A9 06
5C 00 20 6B 00 4B 06
5C 00 20 69 00 49 C0 69 00 A9 06
5C 00 20 68 50
01 A8 24 01       43009    Calculated Supply Temperature S1 [°C]
00 A8 64 00       43008    Calculated Supply Temperature S2 [°C]
FD A7 BE FE       43005    Degree Minutes [DM]
44 9C 0E 00       40004    EB100-BT1 Outdoor temp S1 [ºC]
4F 9C A7 00       40015    EB100-BT10 Brine in temp [ºC]
50 9C 7B 00       40016    EB100-BT11 Brine out temp [ºC]
51 9C EE 00       40017    EB100-BT12 Cond. out [ºC]
52 9C 11 01       40018    EB100-BT14 Hot gas temp [ºC]
87 9C F1 00       40071    EB100-BT25 external supply temp [°C]
4E 9C F0 01       40014    EB100-BT6 Hot Water load [ºC]
47 9C F8 00       40007    EB21-BT2 Supply temp S2 [ºC]
15 B9 B0 FF       47381    Low brine out temp. [°C]
3A B9 4B 00       47418    Speed brine pump [%]
C9 AF 00 00       45001    Alarm number
48 9C EC 00       40008    EB100-BT2 Supply temp S1 [ºC]
4C 9C ED 00       40012    EB100-BT3 Return temp S1 [ºC]
4B 9C 00 00       40011    EB21-BT3 Return temp S2 [ºC]
FF FF 00 00
FF FF 00 00
FF FF 00 00 DF 06

You dont use the 20 fixed parameters, but nevertheless the Nibe heatpump sends the 20 parameters to the MODBUS module.

Can you try the manual mode by using the "Read holding register" command to read a single value?

Can you also try the "Write holding register" command?

Thank you for your support!
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: Wallac skrivet 01 april 2012, 14:29:15
Hi
I think this is when I read a single register not included in the 20 fixed
Register 47206 / B866 DM start heat (answer -70)
5C 00 20 6B 00 4B 06
5C 00 20 69 00 49 C0 69 02 66 B8 75 06
5C 00 20 6A 06 66 B8 BA FF 00 00 D7 06
5C 00 20 6B 00 4B 06
5C 00 20 69 00 49 C0 69 00 A9 06  
5C 00 20 68 50
01 A8 1C 01
00 A8 64 00
FD A7 A8 02
44 9C 22 00
4F 9C 3D 00
50 9C 36 00
51 9C D9 01
52 9C 8C 02
87 9C 21 01
4E 9C F9 01
47 9C 01 01
15 B9 B0 FF
3A B9 4B 00
C9 AF 00 00
48 9C B8 01
4C 9C F4 00
4B 9C 00 00
FF FF 00 00
FF FF 00 00
FF FF 00 00 32 06

Full log below.

No luck with write holding register. Probably because of some wrong setting in the program I use.
"14:06:55: 'Nibe F1145': Dm start heating: Illegal function "
 
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: thwp skrivet 02 april 2012, 15:45:24
Hi Wallac,

great!

Regarding write holding register... are you sure you tried to write a writable register?
You should contact the Nibe support to solve this problem. The MODBUS module is too expensive to refuse this feature.

Which program do you use for communication?

By the way, nice whiskey!  tummenupp

Best regards
Thorsten
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: Wallac skrivet 04 april 2012, 20:06:57
Hi

Yes I tried 47206 (DM start heating)
One time I was able to change the value, but I tried so many settings so I didn't find my way back.

I tried modscan32 and through mango m2m.

Today i got some more time to test and i found the problem.

In mango the setting "Use multiple write commands only" must be activated and I can't read any of the 20 fixed registers at the same time.
I think it has someting to do with the way mango handles the communication.

In the log I first changed 47206 to -100 and then back to -50

woops the second boss is caling , no more basement time today.  dontknaow
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: JohanElmis skrivet 10 april 2012, 14:51:55
Köpte Modbus 40 för ett halvår sedan men fick sedan aldrig tid att installera den.
Den kom på plats nu i påsken - men fungerade inte med det nya firmware som medleverarades (v1270).
Fanns helt enkelt ingen Modbus att bocka för i System-installningsmenyn.

Skulle ringa Nibe idag - men hittade till min förvåning att de lagt upp sina firmware på webben.
http://www.nibe.se/Support/programvara/ (http://www.nibe.se/Support/programvara/)
Jippi - som jag har väntat på - och frågat efter detta.

Har en liten liux-dator som jag tänkte använda för läsning och styrning.
Återkommer med hur det går senare.


Titel: SV: Någon som köpt MODBUS 40
Skrivet av: mexitegel skrivet 11 april 2012, 20:15:03
Oj, här händer det saker. Kul att se  - själv har jag inte kommit så långt på grund av FVJ (Familj, Villa och Jobb)...
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: JohanElmis skrivet 24 april 2012, 11:50:09
Strulade en hel del med kommunikationen.
ModScan64 (64-bitarsversionen av ModScan32) visade sig vara underbar.
Testversionen fungerar ju så länge man inte får vettig data tillbaka, och har först därefter begränsningar.
Det går också enkelt att se om man får någonting tillbaka eller ej, vilket också är till väldigt stor hjälp.
Det visade sig att jag fått data+/- felvänt - även om jag kollat det hundratals gånger tidigare.
Normalt är väl A (-) och B (+) ?
Terminerings-motstånd mellan signal-ledarna - men ingen pull-upp/down.

Har nu en lista på alla Nibes parametrar - och ett litet c-program som kan läsa ut parametrarna.
Jag kör det på en liten Arm-baserad Linux. Arbetar fortfarande på hur jag ska få data därifrån till resten av systemet.
Funderar starkt på SNMP - eller någan annan typ av daemon som cachar alla värden mellan mina läsningar.
Att läsa 39 värden tar ca 40s. (då bara 20 kan vara fördefinierade).

Nu har jag ett Enervent LTR-6 FTX-aggregat med EDA-styrning som kan ska koppla upp mig mot också.
Och så de 3 M-Bus energimätarna som kan skymtas på bilden. Vi får väl se om jag får tid till att sätta ihop ett interface i helgen. :-)

(http://www.villaelmerfjord.se/drupal6/sites/villaelmerfjord.se/files/images/Modbus40_VillaElmerfjord.JPG)
Nibe Modbus 40 - med RS-485 till USB converter (USB-COMi-TB) samt Energimätare.

Bild på Modbus-signalerna (kurvorna är justerade i Y-led). http://www.villaelmerfjord.se/drupal6/node/90 (http://www.villaelmerfjord.se/drupal6/node/90)
Klicka här för en kopia på Nibes parameterlista: http://www.villaelmerfjord.se/drupal6/sites/villaelmerfjord.se/files/nibeparams_list.txt (http://www.villaelmerfjord.se/drupal6/sites/villaelmerfjord.se/files/nibeparams_list.txt)
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: purjo__ skrivet 24 april 2012, 13:06:58
Arbetar fortfarande på hur jag ska få data därifrån till resten av systemet.
Funderar starkt på SNMP - eller någan annan typ av daemon som cachar alla värden mellan mina läsningar.
Att läsa 39 värden tar ca 40s. (då bara 20 kan vara fördefinierade).

Varför inte en webserver på Linuxburken?
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: mexitegel skrivet 25 april 2012, 00:05:32
Varför inte en webserver på Linuxburken?
Hellre en webservice, då blir det lättare för andra att fortsätta utveckla tillämpningar också.
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: ducken skrivet 09 oktober 2013, 08:43:42
Var står alla i detta?
Är det inköp av MODBUS40 som gäller eller går det att läsa data ur pumparna på annat sätt?
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: mexitegel skrivet 17 oktober 2013, 20:03:57
Mitt projekt har hamnat på is på grund av andra prioriteringar. Blir det aktuellt att kika på det igen så köper jag antagligen en uppgraderingskit för nibe uplink.
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: Raniman skrivet 18 oktober 2013, 23:54:11
Satte in en länk till en sida med en lösning hur man får ut all logdata direkt ur pumpen utan modbus40, tidigare idag. Men den har tagits bort. Har jag brutit mot någon regel?  Det var ju bara ett litet program och en kabel till serieporten som behövdes.  Sc:,h
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: Smurfen. skrivet 19 oktober 2013, 07:52:46
Är intresserad av den lösningen kan du skicka länken till mig eller lägga in den igen borde vara ok bryter du mot nått borde du fått höra det.
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: Raniman skrivet 19 oktober 2013, 08:46:56
Jag provar igen utan länk. Det är en del av ett hemautomationsprogram. Openhab heter det och har org i slutet. Modulen för nibe går under namnet nibegw.
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: tipo874 skrivet 19 oktober 2013, 19:03:50
Om inte ens denna typ av information får avhandlas på forumet tycker jag det har gått för långt med censuren.

Jag har köpt Logger 2020, och är väldigt nöjd med det, jag betalar ett abonnemang till E-logger, och denna typ av information är ingen konkurrent i mitt tycke.
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: Bergen77 skrivet 11 mars 2016, 00:45:45
Noen som har sett noe mer på modbus til Nibe? Må man ha denne modbus-40 eller klarer man å lese ut modbus uten?
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: Andybaa skrivet 21 mars 2016, 16:04:43
Hei,

Jeg har jobba en del med dette for noen måneder siden. Jeg har fått til å lese ut sykliske data ved bruk av en Arduino og nibegw programmet (søk på Google). Videre har jeg fått til å skrive og lese spesifikke parametre fra en VVM320. Alt er gjort uten Modbus-40.
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: 944_Driver skrivet 28 mars 2017, 23:24:12
Jag har lyckats läsa och skriva till register på min F1155 med en Arduino och en RS485 omvandlare nu.
Protokollet bygger på att VP:n inleder all kommunikation och den anslutna enheten svarar med NAK, ACK eller med sitt eget meddelande.

Exempel, skicka -50 till register 47206:
Allt i HEX.
Detta kanske först framstår som ett meddelande men är tre stycken.
5C 00 20 6B 00 4B C0 6B 06 66 B8 CE FF 00 00 42 06

VP skickar
5C 00 20 6B 00 4B
nedbrutet:
5C= start på kommunikation
00= alltid 00?
20= adress till modbus40
6B= kommando, fråga från VP till modbus40 om den vill skriva till något register i VP
00= längd på data, 0 bytes i detta fall eftersom VP inte skickar någon data, bara en fråga.
4B= checksum

...och arduino/modbus svarar:
C0 6B 06 66 B8 CE FF 00 00 42
nedbrutet:
C0= meddelande inleds med C0
6B= kommando, skriva till register i VP
06= 6 bytes data i meddelandet, adress*2 + data*4, i detta exempel är det en 16-bitars int så två bytes används.
66 B8 CE FF 00 00= addressLSB addressMSB dataLSB dataMSB 0 0
10= checksum XOR

VP svarar
06 (ack)

Vill man läsa av samma register ser det ut så här:
Invänta att VP skickar meddelande med kommando 69, skicka C0 69 02 66 B8 [checksum] och VP skickar svaret i nästa meddelande.

// Magnus
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: 944_Driver skrivet 28 mars 2017, 23:30:41
Här är lite kod jag knåpat ihop för att testa det hela med. I grunden är det NibeGW som jag utgått från och lagt till funktioner för att skriva till VP i. Troligen inte nått vidare optimal kod men det kan kanske hjälpa någon att förstå och utveckla det vidare.

OBS!! testa på egen risk, du skriver data rakt in i maskin och det kan bli väldigt fel.

// Magnus

/* ----------------------------------------------------------------------------
 *  Arduino Mega used.
 *  Serial1 used for RS485, settings: 9600 baud, 8 bits, Parity: none, Stop bits 1
 *  Modbus40 must be selected in heat pump.
 *
 *  Message:
 *  +----+----+----+-----+-----+----+-...---+-----+
 *  | 5C | 00 | 20 | CMD | LEN |  DATA...   | CHK |
 *  +----+----+----+-----+-----+----+-...---+-----+
 *
 *   ACK = 0x06
 *   NAK = 0x15
 */


// ######### CONFIGURATION #######################

// enable debug printouts, put '//' before to disable
#define ENABLE_DEBUG

// ######### VARIABLES #######################

// direction change pin for RS-485 port
#define directionPin  22

#ifdef ENABLE_DEBUG
char verbose = 9; 
char debug_buf[50];
#endif

const byte numChars = 16;
char receivedChars[numChars]; // an array to store the received data

boolean newData = false;
String addrString = "";     // string to hold input
byte bytesBuff[5];
byte addrBuff[2];   // addr should be in 40000-49999 range
byte dataBuff[4];   // data can 1 to 4 bytes depending on address, look in Nibe documentation
long dataLong;

// state machine states
enum e_state {
  STATE_WAIT_START,
  STATE_WAIT_DATA,
  STATE_OK_MESSAGE_RECEIVED,
  STATE_CRC_FAILURE,
  STATE_SEND_MESSAGE,
};

e_state state = STATE_WAIT_START;


// message buffers for RS-485 communication 
#define MAX_DATA_LEN 127
byte rx_buffer[MAX_DATA_LEN];
byte tx_buffer[30];     // just a guesss... needs to be checked up.

byte index = 0;
byte LastMessageCommand;
boolean WantToTx, PrintNextMess;
byte TxCommand = 0;
byte BytesToSend = 0;

// ######### SETUP #######################

void setup()  {
//  wdt_enable (WDTO_1S);
 
  pinMode(directionPin, OUTPUT);
  digitalWrite(directionPin, LOW);

  Serial.begin(115200, SERIAL_8N1);
  Serial1.begin(9600, SERIAL_8N1);
 
//  Ethernet.begin(mac,ip);
 // udp.begin(udp_port);
 
  #ifdef ENABLE_DEBUG
  if (verbose) {
    debugPrint("\nStarted...\n");
  }
  #endif
}

// ######### MAIN LOOP #######################

void loop() {

  recvWithEndMarker();    // read user input on serial

  // Read data from register x, syntax: r4xxxx
  if ((receivedChars[0] == 'r') && (receivedChars[1] == '4') && (receivedChars[7] == '\0') && (newData == true))  // look for r4xxxx data...
  {
    // create string for address
    addrString = "";    // clear before using
    addrString += receivedChars[1];
    addrString += receivedChars[2];
    addrString += receivedChars[3];
    addrString += receivedChars[4];
    addrString += receivedChars[5];
 
    dataLong = addrString.toInt();
    addrBuff[0] = (dataLong >> 0x08 )& 0xFF;   // high byte
    addrBuff[1] = dataLong & 0xFF;             // low byte
 
   // create buffer to send
    tx_buffer[0] = 0xC0;  // start?
    tx_buffer[1] = 0x69;  // Request data command 69
    tx_buffer[2] = 0x02;  // lenght
    tx_buffer[3] = addrBuff[1];
    tx_buffer[4] = addrBuff[0]; 
    tx_buffer[5] = CalcChecksum(tx_buffer, (2+3));
    // set some control variables
    TxCommand = tx_buffer[1];
    WantToTx = true;
    newData = false;    //true for test, false for live
    BytesToSend = tx_buffer[2];
  }

// Write data y to register x, syntax: w4xxxx=yyyyy
// test with room temp setpoint 47398=200 => 20,0C
// test with GM between elec. add on steps 47209=300

  if ((receivedChars[0] == 'w') && (receivedChars[1] == '4') && (receivedChars[6] == '=') && (receivedChars[14] == '\0') && (newData == true))  // look for w4xxxx:yyyyy...
  {
    // create string for address
    addrString = "";    // clear before using
    addrString += receivedChars[1];
    addrString += receivedChars[2];
    addrString += receivedChars[3];
    addrString += receivedChars[4];
    addrString += receivedChars[5];
 
    dataLong = addrString.toInt();
    addrBuff[0] = (dataLong >> 0x08 )& 0xFF;   // high byte
    addrBuff[1] = dataLong & 0xFF;             // low byte

    // create string for data
    addrString = "";    // clear before using
    addrString += receivedChars[7];
    addrString += receivedChars[8];
    addrString += receivedChars[9];
    addrString += receivedChars[10];
    addrString += receivedChars[11];

    dataLong = addrString.toInt();
    dataBuff[0] = (dataLong >> 0x08 )& 0xFF;   // high byte
    dataBuff[1] = dataLong & 0xFF;             // low byte

   // create buffer to send
    tx_buffer[0] = 0xC0;  // start?
    tx_buffer[1] = 0x6B;  // Write data command 6B (from modbus40)
    tx_buffer[2] = 0x06;  // lenght, need to check if last 0x00 bytes can be omitted and use length 4 instead?
    tx_buffer[3] = addrBuff[1];
    tx_buffer[4] = addrBuff[0]; 
    tx_buffer[5] = dataBuff[1];
    tx_buffer[6] = dataBuff[0];
    tx_buffer[7] = 0x00;
    tx_buffer[8] = 0x00;
    tx_buffer[9] = CalcChecksum(tx_buffer, (6+3));
    // set some control variables
    TxCommand = tx_buffer[1];
    WantToTx = true;
    newData = false;   //true for test, false for live
    BytesToSend = tx_buffer[2];
  }

 
  #ifdef ENABLE_DEBUG
 
  #endif
 
  switch(state) {
 
    case STATE_WAIT_START:
      if (Serial1.available() > 0) {
        byte b = Serial1.read();
 
        #ifdef ENABLE_DEBUG
        if (verbose > 2) {
          sprintf(debug_buf,"%02x", b);
        }
        #endif
       
        if (b == 0x5C) {
          rx_buffer[0] = b;
          index = 1;
          state = STATE_WAIT_DATA;
         
          #ifdef ENABLE_DEBUG
          if (verbose > 1) {
            debugPrint("Frame start found\n");
          }
          #endif
        }
      }
      break;
     
    case STATE_WAIT_DATA:
      if (Serial1.available() > 0) {
        byte b = Serial1.read();
 
        #ifdef ENABLE_DEBUG
        if (verbose > 2) {
          sprintf(debug_buf, "%02x", b);
        }
        #endif
     
        if (index >= MAX_DATA_LEN)
        {
          // too long message
          state = STATE_WAIT_START;
        }
        else
        {
          rx_buffer[index++] = b;
         
          int msglen = checkNibeMessage(rx_buffer, index);
         
          #ifdef ENABLE_DEBUG
          if (verbose > 1) {
            sprintf(debug_buf,"\ncheckMsg=%d\n", msglen);
          }
          #endif
             
          switch (msglen)
          {
            case 0:   break; // Ok, but not ready
            case -1:  state = STATE_WAIT_START; break; // Invalid message
            case -2:  state = STATE_CRC_FAILURE; break; // Checksum error
            default:  state = STATE_OK_MESSAGE_RECEIVED; break;
          }
        }
      }
      break;

    case STATE_CRC_FAILURE:
      #ifdef ENABLE_DEBUG
      if (verbose) {
        debugPrint("CRC failure\n");
      }
      #endif
     
      sendNak();
      state = STATE_WAIT_START;
      break;
   
    case STATE_OK_MESSAGE_RECEIVED:
      #ifdef ENABLE_DEBUG
      if (verbose) {
        debugPrint("Message received\n");
      }
      #endif

      LastMessageCommand = rx_buffer[3];

      // ****************** time to transmitt some data **********************
      if (WantToTx && (TxCommand == LastMessageCommand))
      {
        sendDataBytes(tx_buffer, (BytesToSend+4));
        PrintNextMess = true; // print respons for debug..
        WantToTx = false;
      }
      else
      {
        sendAck();
      }
     
      // print packet if....
      // if data contains 0x5C (start character)
      if (rx_buffer[0] == 0x5C)
        sendUdpPacket(rx_buffer, index);

      if (PrintNextMess && rx_buffer[3] == 0x6A)  // print for debug purpose...
      {
        PrintNextMess = false;
        for (int i=0 ; i<index ; i++)
        {
          Serial.print(rx_buffer,HEX);
          Serial.print(" ");
        }
        Serial.print('\n');
      }
     
      state = STATE_WAIT_START;
      break;
  }
}

// ######### FUNCTIONS #######################

// read data from serial port
void recvWithEndMarker()
{
 static byte ndx = 0;
 char endMarker = '\n';
 int rc;
 
 // if (Serial.available() > 0) {
  while (Serial.available() > 0 && newData == false)
  {
    rc = Serial.read();
    if (rc != endMarker)
    {
      receivedChars[ndx] = rc;
      ndx++;
      if (ndx >= numChars)
      {
        ndx = numChars - 1;
      }
    }
    else
    {
      receivedChars[ndx] = '\0'; // terminate the string
      ndx = 0;
      newData = true;
    }
  }
}


/*
 * Return:
 *  >0 if valid message received (return message len)
 *   0 if ok, but message not ready
 *  -1 if invalid message
 *  -2 if checksum fails
 */
int checkNibeMessage(const byte* const data, byte len)
{
    #ifdef ENABLE_DEBUG
    if (verbose > 2) {
      sprintf(debug_buf,"\nlen=%u\n", len);
    }
    #endif
   
    if (len <= 0)
        return 0;
   
    if (len >= 1)
    {
        if (data[0] != 0x5C)
            return -1;
       
        if (len >= 3)
        {
            if (data[1] != 0x00 && data[2] != 0x20)
                return -1;
        }
       
        if (len >= 6)
        {
            int datalen = data[4];
           
            if (len < datalen + 6)
                return 0;
           
            byte checksum = 0;
           
            // calculate XOR checksum
            for(int i = 2; i < (datalen + 5); i++)
                checksum ^= data;
           
            byte msg_checksum = data[datalen + 5];
           
            #ifdef ENABLE_DEBUG
            if (verbose > 1) {
              sprintf(debug_buf,"%02x", checksum, msg_checksum);
            }
            #endif
                     
            if (checksum != msg_checksum) {
             
              // check special case, if checksum is 0x5C (start character),
              // heat pump seems to send 0xC5 checksum
              if (checksum != 0x5C && msg_checksum != 0xC5)
                return -2;
            } 
            return datalen + 6;
        }     
    }
   
    return 0;
   
}

byte CalcChecksum(const byte* const data, int len)
{
  // calculate XOR checksum
  byte checksum = 0;
  for(int i = 0; i < len; i++)
    checksum ^= data;

    // check special case, if checksum is 0x5C (start character),
    // heat pump seems to want 0xC5 checksum back
  if (checksum == 0x5C)
    checksum = 0xC5;
  return checksum;
}

void sendAck()
{
  #ifdef ENABLE_DEBUG
  if (verbose) {
    debugPrint("Sending ACK\n");
  }
  #endif
 
  digitalWrite(directionPin, HIGH);
  delay(1);             // 1ms
  Serial1.write(0x06);
  Serial1.flush();       // Wait for tx to finish
  delay(1);
  digitalWrite(directionPin, LOW);
}

void sendNak()
{
  #ifdef ENABLE_DEBUG
  if (verbose) {
    debugPrint("Sending NAK\n");
  }
  #endif
 
  digitalWrite(directionPin, HIGH);
  delay(1);
  Serial1.write(0x15);
  Serial1.flush();
  delay(1);
  digitalWrite(directionPin, LOW);
}

void sendDataBytes(const byte* const data, int len)
{
  #ifdef ENABLE_DEBUG
  if (verbose) {
    debugPrint(" **** Sending data ****\n");
  }
  #endif
 
  digitalWrite(directionPin, HIGH);
  delay(1);
  int i;
  for (i=0; i<len; i++)
  {
    Serial1.write(data);
  }
  Serial1.flush();
  delay(1);
  digitalWrite(directionPin, LOW);
}

void sendUdpPacket(const byte* const data, int len) {
 
  #ifdef ENABLE_DEBUG
  if (verbose) {
    sprintf(debug_buf, "Sending UDP packet, len=%d\n", len);
    if (verbose > 2) {
      int i;
      for (i=0; i<len; i++) {
        sprintf(debug_buf,"%02x", data);
      }
      debugPrint("\n");
    }
  }
  #endif
 
}

#ifdef ENABLE_DEBUG

void debugPrint(char* data) {
  Serial.write(data);

}
#endif
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: Bergen77 skrivet 20 oktober 2017, 21:20:53
Jeg sliter med å lese ut verdien fra DMstart heating (47206), jeg får ut verdien -30 uansett hva GMstart står innstillit på. Er det andre her som leser og skriver modbus data her?
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: 944_Driver skrivet 20 oktober 2017, 22:09:22
Jag har legat lågt på VP fronten i väntan på kyla så jag har inte gjort några mer tester.

// Magnus
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: Bergen77 skrivet 20 oktober 2017, 22:17:53
Jag har legat lågt på VP fronten i väntan på kyla så jag har inte gjort några mer tester.
Jeg forstår, jeg sliter fortsatt med å få jevn temperatur på pumpen men har ikke fått testet noe nå før det har begynt å bli kaldt. Nå kan jeg forske mer her. Har du muligheten for å teste ut å hente 47206 fra varmepumpen? Jeg får lest ander verdier fint men ikke akkurat denne.
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: 944_Driver skrivet 22 oktober 2017, 21:56:24
Min utrustning för test är tyvärr inte inkopplad nu, det är lite uppstartstid för att få igång den igen efter ett halvår i malpåse. Jag återkommer när jag tar tag i det men det kan ta sin tid.

// Magnus
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: Bergen77 skrivet 09 november 2017, 14:57:16
Nibe Modbus Manager er kommet i en ny versjon nå. Der finner man en rekke nye modbus registre for dere som liker sånt. Jeg får fortsatt ikke lest ut GMstart fra pumpen, noen andre som kan prøve dette?
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: 944_Driver skrivet 13 november 2017, 22:04:06
Nu fick jag igång min testutrustning igen. Det gick fint att läsa ut 47206. Fick ut FFBA i hex eller -70 i decimalform vilket är vad jag ställt in just nu.

Hela strängen blev 5C 0 20 6A 6 66 B8 BA FF 0 0 D7

// Magnus
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: Bergen77 skrivet 13 november 2017, 22:08:49
Nu fick jag igång min testutrustning igen. Det gick fint att läsa ut 47206. Fick ut FFBA i hex eller -70 i decimalform vilket är vad jag ställt in just nu.
Hela strängen blev 5C 0 20 6A 6 66 B8 BA FF 0 0 D7
// Magnus
Har du noen andre verdier du leser med samme formatet? Hvilken versjon har du på programvaren, siste?
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: Bergen77 skrivet 14 november 2017, 09:38:52
Jeg klarer fint å lese ut eksempelvis DM Between add. steps register 47209. Bruker du samme format på 47209 som 47206?
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: 944_Driver skrivet 14 november 2017, 14:17:00
Jag får prova på 47209 när jag får tid.
Det som skulle kunna spöka för dig är att 47206 innehåller negativa tal och då måste man ju kunna hantera 2-komplement representation av tal för att kunna tyda det.

// Magnus
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: Bergen77 skrivet 14 november 2017, 20:08:29
Det som skulle kunna spöka för dig är att 47206 innehåller negativa tal och då måste man ju kunna hantera 2-komplement representation av tal för att kunna tyda det.
Gradminutt i register 40940 leser jeg fint ut, den er jo som oftest negativ. Hvis jeg leser 47206 på samme måte som 40940 leser jeg alltid ut -30.
Var det slik at du ikke hadde modbus-40 men henter rett fra pumpen? Kunne du oppgitt software versjon så jeg kan sammenligne? Jeg har siste versjonen instalert.
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: 944_Driver skrivet 14 november 2017, 23:08:09
Jag ligger lite efter på mjukvaran i pumpen, kör fortfarande 7998R3 då det senare inte verkar innehålla någon förändring jag har nytta av enligt change log. Jag ska uppdatera någon dag när jag får tid.

Jag har tyvärr inte hunnit testa med några fler register nu men jag testade med några olika förra säsongen och såg inga konstigheter. Det är lite omständigt att testa för mig eftersom jag inte skrivit klart koden för att översätta värdena från hex till decimal ännu utan det får jag göra manuellt vid varje test..

// Magnus
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: Bergen77 skrivet 14 november 2017, 23:13:19
Det går helt fint det, jeg er bare takknemlig noen andre tester dette i det hele tatt!
Jeg vet det stod noe om Modbus i den nest siste oppdateringen. Er litt rart at jeg får lest alle slags verdier men akkurat 47206 får jeg ikke lest rett. Forsøk med GM 40940 når du får tid, helst før du oppgraderer software  tummenupp

Jeg kjører 8218R3.
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: 944_Driver skrivet 15 november 2017, 23:09:37
Har du testat att läsa av 43005 istället? Det ska vara samma som 40940 men i 16-bitar istället för 32-bitar.

// Magnus
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: Bergen77 skrivet 15 november 2017, 23:47:21
Har du testat att läsa av 43005 istället? Det ska vara samma som 40940 men i 16-bitar istället för 32-bitar.
43005 bruker jeg for å sette Gradminutter, det fungerer fint med 16 bit.
40940 bruker jeg for å lese Gradminutter, det fungerer fint med 16 bit.
47206 får jeg ikke til å virke, der leser jeg verdien -30 uansett hva jeg setter GMstart til.
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: 944_Driver skrivet 18 november 2017, 23:49:49
Fortfarande inte uppdaterat mjukvaran, kvar på 7998R3
Alla, typ 15, register jag testat att läsa ger mig rätt resultat.
Det som är lite förvånande eller felaktigt är att nibe alltid skickar 4 bytes data även om det bara är en eller två bytes som innehåller något. Längden är dock rätt, alltid 6 när man frågar efter data, så får man själv hålla ordning på hur många bytes man ska läsa.

Två exempel från dagens test.

40940
5C 0 20 6A 6 EC 9F 92 F4 FF FF 59
värdet blir då -2926 eller -291,6 GM

43005
5C 0 20 6A 6 FD A7 73 F4 0 0 91
värdet blir då -2957 eller -295,7 GM
 
// Magnus
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: Bergen77 skrivet 19 november 2017, 00:46:55
Två exempel från dagens test.

40940
5C 0 20 6A 6 EC 9F 92 F4 FF FF 59
värdet blir då -2926 eller -291,6 GM

43005
5C 0 20 6A 6 FD A7 73 F4 0 0 91
värdet blir då -2957 eller -295,7 GM
 
Er det slik at du kan lese GM fra både 40940 og 43005? Hos meg kan jeg lese begge men 43005 oppdaterer seg ikke med mindre jeg selv skriver til registeret. Jeg leser samme verdi som displayet på 40940 mens på 43005 leser jeg ikke ut noe. Derimot kan jeg skrive til 43005 og endre GM i displayet, etter å ha skrevet verdien kan jeg også lese verdien tilbake.

47206 får jeg fortsatt ikke noe fornuftig verdi fra.
I firmware 8218R2 står det i changeloggen: MODBUS40: Improved control of 32-bites register
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: TeamT skrivet 07 januari 2018, 21:13:55
Hej !

Många tack för denna tråd och info om protokollet.

Ser att det kommer ett paket med 5C 00 20 EE 00 CE.

Är det någon som har koll på vad cmd EE används till?

/ TeamT

Titel: SV: Någon som köpt MODBUS 40
Skrivet av: Bergen77 skrivet 22 januari 2018, 21:59:30
Hvor mange her er det som har mulighet for å snakke med pumpen via modbus nå? Ser flere leser av men er det noen som skriver til pumpen?
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: 944_Driver skrivet 24 januari 2018, 15:19:21
Tyvärr råder det brist på hobby tid i mitt liv så jag har inte gjort något vettigt av detta ännu. Det är fortfarande bara en provisorisk uppkoppling som ligger i pannrummet och väntar...

@Team T, vad är det du har för planer? Själv försöker jag tämja 1x55 pumpens envisa självsvängningar...

// Magnus 
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: Bergen77 skrivet 24 januari 2018, 15:25:11
Själv försöker jag tämja 1x55 pumpens envisa självsvängningar...
Jeg har endel tanker rundt dette men ønsker ikke å diskutere det i åpent forum.
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: TeamT skrivet 30 januari 2018, 22:35:10
Tyvärr råder det brist på hobby tid i mitt liv så jag har inte gjort något vettigt av detta ännu. Det är fortfarande bara en provisorisk uppkoppling som ligger i pannrummet och väntar...

@Team T, vad är det du har för planer? Själv försöker jag tämja 1x55 pumpens envisa självsvängningar...

// Magnus

Googla "elektronikforum teamt"  ;) Hör av dig om du vill hjälpa till.
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: Bergen77 skrivet 30 januari 2018, 23:26:18
Googla "elektronikforum teamt"  ;) Hör av dig om du vill hjälpa till.
tummenupp
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: Krtek skrivet 04 mars 2021, 21:18:54
Gammal tråd men försöker trots det.

Jag skulle vilja hitta bättre verktyg för att styra och tämja F2120 pumpen och många gånger synes det mig att SMO40:s logik och agerande är långt ifrån sunt och ekonomiskt driftsmässigt.

Känns som SMO:n främst strävar till att köra bort gradminuterna fortast möjligt med högsta möjliga fart för att sedan ta paus. Jag skulle vilja hitta ett sätt där jag externt kunde ge pumpen kommandon tex gällande driftshastighet, typ 40hz eller så. Jag har ställt kompressorkuva mm och twekat det man i stort sett kan göra från SMO:n men tycker det fortfarande är långt från optimalt.

Nu vet jag inte om det är möjligt men satt och tittade på Modbus 40 modulen, går det att styra pumpen via denna eller är modulen närmast för loggning och uppföljning av pumpen?

Jag ser i denna  tråd att det är några av medlemmarna på forumet som har labbat en del med Nibes modbus kommunikation och hoppas således att ni kan dela med er lite av vad ni kommit fram till.

Tack på förhand!

Titel: SV: Någon som köpt MODBUS 40
Skrivet av: Bergen77 skrivet 05 mars 2021, 03:02:21
Nu vet jag inte om det är möjligt men satt och tittade på Modbus 40 modulen, går det att styra pumpen via denna eller är modulen närmast för loggning och uppföljning av pumpen?
Ja det går fint å sette modbus registre ved hjelp av Modbus 40. Men å sette frekvensen direkte er ikke mulig. Men man kan både skrive gradminutter, varmekurve, kurveforskyvning og mye annet. Nibes modbus grensesnitt er tregt og man må kunne sette lang timeout på sin modbus master.
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: Krtek skrivet 05 mars 2021, 16:42:19
Ja det går fint å sette modbus registre ved hjelp av Modbus 40. Men å sette frekvensen direkte er ikke mulig. Men man kan både skrive gradminutter, varmekurve, kurveforskyvning og mye annet. Nibes modbus grensesnitt er tregt og man må kunne sette lang timeout på sin modbus master.

Hej,

Mange tack för svar!

Jag försöker fundera ut ifall man med modbusens hjälp kunde få bättre och mer hanterbara verktyg att styra pumpen med.

Har du nån programvara som snurrar i datorn och kontinuerligt justerar parametrarna via modbus efter behov och väder eller hur har du löst det?

Mvh,
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: tipo874 skrivet 05 mars 2021, 18:14:57
Man kunde ju önska att Nibe gjort som SolarEdge. Min SolarEdge växelriktare tankar normalt upp driftdata till SolarEdges molntjänst och man kan övervaka det via en webbläsare eller deras app, men man också köra modbus över TCP till växelriktaren direkt. Ingen extra hårdvara behövs.

Nu tvivlar jag på att man kan styra så mycket i växelriktaren, det är mest solen som styr där.

Min gamla F1245-12 har inget nätverk, men de nyare är ju klara för detta från början.
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: 944_Driver skrivet 05 mars 2021, 23:02:50
Eftersom NIBE uppdaterad mjukvaran så maskin började fungera bra la jag ner mitt projekt. Annars var det väl på väg att börja fungera ungefär som tänkt, jag styrde cirkulationspumpen efter utetemp och labbade med att tvinga kompressorn till önskad frekvens genom att sätta spärrbanden beroende på vad jag ville.

// Magnus
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: Bergen77 skrivet 06 mars 2021, 10:36:06
Jag försöker fundera ut ifall man med modbusens hjälp kunde få bättre och mer hanterbara verktyg att styra pumpen med.

Har du nån programvara som snurrar i datorn och kontinuerligt justerar parametrarna via modbus efter behov och väder eller hur har du löst det?
Jeg har en ekstern logikk som lytter på modbus registre og påvirker varmepumpen. Dette har surret og gått i 2 år og virker fint. Ettersom Nibe ikke klarer å lage software som fungerer fortsetter jeg å med dette. Om logikken slutter å virke vil Nibe operere på egenhånd.
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: Bergen77 skrivet 06 mars 2021, 10:40:53
Eftersom NIBE uppdaterad mjukvaran så maskin började fungera bra la jag ner mitt projekt. Annars var det väl på väg att börja fungera ungefär som tänkt, jag styrde cirkulationspumpen efter utetemp och labbade med att tvinga kompressorn till önskad frekvens genom att sätta spärrbanden beroende på vad jag ville.
Nibe sin programvare har blitt bedre, men så lenge Nibe tviholder på gradminutter på en inverterpumpe så blir reguleringen aldri god nok.
Nibe kunne gjort bruk av gradminutt valgfritt slik at vi med romtermostater også kunne få en varmepumpe som fungerer.

Jeg fraråder alle å kjøpe inverter-varmepumpe som bruker gradminutter, vi er ferdig med steinalderen nå!
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: Bergen77 skrivet 08 mars 2021, 09:55:45
Er det forresten noen som vet om man kan oppgradere software på modbus-40?
Nibe krever timeout på hele 2,1 sekund, ikke i henhold til standarden altså. Man er avhengig av en modbus master som takler unaturlig høy timeout.
Skulle gjerne sett at modbus-40 svarte raskere...
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: Uffen skrivet 09 mars 2021, 19:42:06
Man kunde ju önska att Nibe gjort som SolarEdge. Min SolarEdge växelriktare tankar normalt upp driftdata till SolarEdges molntjänst och man kan övervaka det via en webbläsare eller deras app, men man också köra modbus över TCP till växelriktaren direkt. Ingen extra hårdvara behövs.

Nu tvivlar jag på att man kan styra så mycket i växelriktaren, det är mest solen som styr där.

Min gamla F1245-12 har inget nätverk, men de nyare är ju klara för detta från början.
Kommunicerar du med växelriktaren via deras wifi modul eller har har du nätverk rakt in i den?
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: tipo874 skrivet 09 mars 2021, 22:00:02
Ethernet rakt in. Kör kablat nät så mycket det går.
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: Krtek skrivet 11 maj 2021, 13:51:40
Hej,

lite uppdatering till mina tidigare inlägg i det här ämnet. Jag har laborerat en del den här våren med att få Niben ansluten till hemautomationen och därtill även med målet att få en bättre styrning än Nibes orginal. Ifall ärendet intresserar nån annan så tänkte jag kort beskriva hur jag gått till väga och vilken hård- och mjukvara jag använt.

Jag har då Nibes F2120-16 pump och styningen med den gamla modellen (F) av SMO40.

Till detta köpte jag en raspberry pi 4b 4gb med strömkälla och en adapter usb-rs485 samt ett minneskort. Allt tillsammans kostade väl dryga 120 euro köpt i affär här i Finland. På nätet får man säkert billigare.

På raspberryn kör jag OpenHAB (v 3.1.0.M4) och har kompletterat med Nibe Heatpump binding och Nibe Uplink binding. Nibe Heatpump bindingen emulerar Modbus40 men utan att man behöver köpa Nibes dyra låda. Uplink bindingen har jag paralellt för att hålla kontroll på så inte raspberryn tiltar. Akilleshälen här är nämligen att ifall raspberryn slutar svara så går värmepumpen i felläge.

https://www.openhab.org/addons/bindings/nibeheatpump/#supported-things

https://www.openhab.org/addons/bindings/nibeuplink/

Med hjälp av dessa går det då att läsa samtliga modbusregister i pumpen/styret och efter en del försök och misstag även skriva till behövliga register med hjälp av hemautomationen.

Nu återstår det att testa det hela i praktiken och se ifall kombinationen är pålitlig eller om man måste till med nån form av vakthund på raspberryn för att kunna boota den vid behov.

Detta då ifall det är nån annan som är intresserad av ett budgetalternativ till inköp av modbus40 för styrande av sin Nibe. Stort tack även till @Bergen77 för hjälp och stöd under projektets gång.
Titel: SV: Någon som köpt MODBUS 40
Skrivet av: Bergen77 skrivet 11 september 2021, 03:47:20
Hvordan går det prosjektet? Hva har dere satt som timout?