Cookies op Tweakers

Tweakers is onderdeel van DPG Media en maakt gebruik van cookies, JavaScript en vergelijkbare technologie om je onder andere een optimale gebruikerservaring te bieden. Ook kan Tweakers hierdoor het gedrag van bezoekers vastleggen en analyseren. Door gebruik te maken van deze website, of door op 'Cookies accepteren' te klikken, geef je toestemming voor het gebruik van cookies. Wil je meer informatie over cookies en hoe ze worden gebruikt? Bekijk dan ons cookiebeleid.

Meer informatie
Toon posts:

UDP Data ontcijferen Intergas LAN2RF Gateway

Pagina: 1
Acties:

Vraag


  • Blihi
  • Registratie: juni 2018
  • Laatst online: 10:20
Ik ben al een tijdje bezig met het monitoren van mijn CV via sensoren die gekoppeld zijn aan een Rasberry Pi.

Een van de dingen die ik daarbij gebruik is de Intergas LAN2RF gateway. Dit apparaatje heeft een webservertje aan boord om wat basiszaken uit te lezen van de ketel, maar het ding leest veel meer data uit de ketel en stuurt dat op naar Intergas.

Via een app kun je een account aanmaken en de gegevens delen met een installateur, maar je kunt er zelf niet bij. De oudere versie van de app kon nog wel iets aan live informatie laten zien (CV druk en CV vermogen), maar de nieuwe helemaal niet.

Ik heb op de switch de UTP poort van de gateway gemirrored en een tijdje het verkeer bekeken. Het blijkt dat de gateway iedere zoveel seconde een UDP verbinding opzet met intergasdata.nl op UDP poort 4567. Vervolgens wordt er een payload verstuurd van 40 tot 122 bytes waarna de gateway een acknowledgement terug krijgt.

De payload van de UDP pakketten is niet leesbaar (vrijwel geen leesbare ASCII karakters.). Ik heb, voor het gemak, even een man in de middle gezet, dus de gateway stuurt zijn data nu naar mijn Pi in plaats van naar Intergas.

Helaas lukt het me niet om de bytestream te begrijpen. Wellicht hebben jullie nog ideeen?


Voor zover ik weet kan er geen sprake zijn van (gebruikers-specifieke) encryptie. De verbinding wordt door de gateway opgezet en er wordt alleen een acknowledgement verstuurd. Er is dus geen handshake of iets dergelijks.

De gegevens moeten gekoppeld worden aan mijn account bij Intergasdata.nl. Dat betekent dat de gateway iets van een ID mee moet sturen. Waarschijnlijk is dat de ID van de gateway zelf, of dat van de ketel.

Hieronder een hex dump 65 achtereenvolgens verstuurde payloads. Ik heb geprobeerd om deze steeds te unzippen, maar door geen gebrek aan headers heb ik geen idee welk ZIP formaat hier gebruikt zou kunnen zijn.

Iemand nog suggesties?

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
3df12709c3016fca58a6c8930f2b06247b0ad6caa0a1476733119e837d3c61f50bb5e9295b28a8542ef0be6c10a0f14021114abd60ccd57159f89596dfb7d9ec5d3b9bbcba3c59f19d2a46bde3903947
834d878bbfeb2735159843c2e439326027d515921357937a76c19189023f1aaab423e50aa754a5f910501ad785851078feae1c01517d2f04805f2c1279eac9bbf41a82c4a2c1354e47618e6b60a901e7
7cfa5beb551bdf7233e35d813f74ea1b9c20d13493e34e98ae2515ca6021d348926c7f47d10c78c7aaf20e68f186688b655720ff6da995055e0cbb4aec90ee6ac4d542c8a9921465956b2132019ea945
4b902ba12983aa9e273251c37e9767683dc3593c5118905c9ccc00742b96137984e1e6b0cdfea4a277b3d80c0059c26b0fa736a8794efb42d2168928070d09ecf87ab865e3bb11b5232a578c45597cf46abf7262d93c20602f590a7f96374f35
28eac828e76b42023ad93cb80a2291dde193a2898532bee83d03307ebc8e6468ed2add053bd6bc66f372375d43c5de1fc7571535c8515cc1e0eac3b91c88f49d00dc6758c16968f99792c06491335635780de2968ba573c62bf1d08e9e6bf768
025b7bef9371ef9076a0f4da9a8df6f4a934980bebad5cf0f30331d01441cc57b6d1be3863e3039510594ffa6f69028be78ad367bb0a547e39da2ecef2e3cccef42d48ed08c2c9fec40dd73a9c905f503fa117f2cc537c7bae46862e0f4af081
2d6243165df7b3f5b54f6214721ce405d739f0b2c55b39e6606a46223c44a9e2abeb54e629bf7f4245d0559b1252b1c747c203da5c099a2f760b6156f54838ee519507ca560b455a188957f8c477b19d
c50f87b2b306138081e94f7daa7ad767de298727558fedb707b08b9de53e99b2d01db3fb4f67289ebf58250dfaae6cf3e2bdccb4265f672279f1ba747be46100194fce31bf2f2dda158be2c394b8d8aa
e30ccfb0e2e7416c5a330271ceb40eba05b4baa4b2e6882f1d4f8ea3ebf93fd75f4b8cd8bb9965c20230753f10c6c887a7b48c5bb81e5511b0a38d6a4527c0f2ad29d4fdf248fa9bb7f2cf40123c30ce
9972dfb5218968c4b32d885c399c0258286c4c34940c79487402ff9b9f753ce7ad5e58260d1cf238f93c4010cb94bbb7715b8fccc5119a852edd6b2fc1ec7483e15655a2f75340f6af29b5e8b02b5af55c90404fb539bf4d98fd69b94ca2af08
e58784bb7fe41c331787fa37f4134e23eff56e756b839e5a2a33dee2e15f9a53326f0f717e413373b11cf0b43a69e1d53386afe749767192c7cb8376cb691ceca96be4ff27b1a4b191c20082925e4654d3546cc9531a3ff53c607d90cb6da2c6
fc2bb6ead2b71f501aa8c1fb75970a7720bd451e36aa9829fd00d1eadef263514823dad26b9e726d1cf773c132f3fe2d9c3c35c1be6e4abd47397daeac055875d89d6463b7b678575983495c37aecad8bc58556849a79bbc0f7559cecf6fb316
93e7c0d1ace158e7b845389512371444b51db122f1c11f12d6827ab2b8024f31281e23f50887bca953de68ed8ff5343d839535a56caa3ce970714fa0a2be94645a1d9cad44fde7cc054d7b90df6f7b7f
395c0a183d4b886a9e2b541647458036b86555d42d5ae1525171d0d4524da3d32f3554583d03c6232e593b027d1b7f76190d54fae49436f509921efb1634034859dfe19996b54964783742c9f93177c7
35f1c56d25436fdbcbf6c99d6ed424c7f58858da4df005deff1e7bd444f64dfcaefda9cbcae3e199ffa7ce0ecdf0ec4f64f18df9ac3ea65368d95bcee1efe1e3c98fee9af311c98b4668c469bf3e7a1d
5fb1014cf283f7b2ff4f66545879e0efee21ea8b351685db126ee11317f8448316f606b33473c244fb91240797b522852b3219823b19441dd01e94063d9c05fc007f554384bb7a2a25cb532b7b3f74567d5dd4b0b1bf20a4b87f8dda30fe96b4
2594a1543c5b22c62de590af1615096c4468e6d9fa1f962e35f68ef33b96dcd70346bc0a08a72b91ca30fedfada198206594c953926567276ff46e4b7de922a32cf0bc91857d445939e6d1eaad805ffd6cd2fbbeb9b99715121dbe9679797d28
4323307de0f6c9b5b4e12c4db41286c131095e76be68a4e93f02c7b3d3a2276517710d241d22e0bb52476b82597a4eb222adf7eadc1f981ac4807042f87c79708394b4f0b7f526a6cd193af25887bd5d72e296c57d1a39aec6a39c66922641e2
d8a9c7bd3de4b8700eb5d85871b944b98fff4347c964bd1bd0b73cb7d7f751ca79322b184b145c17aecc2f4cfc16d54f8db2acddab4ea28af20dfc4723ee63b1a3c1cb486fbb7d6453541e5a11a74bdf
83ef6295e38c381883ab2ebeb67ab3ef657995cb92ba1e8f9e8dd4377db8734bfcffe4cbec6f4e2ca99de02c6c157cb1d32c88714459548518b31a256ede7a5fb7c96046200ecef6391c8a778df67f56
6b85f2e400ab7b40135519b000804e244be790ca5bbf4d7a7623db0ae7dbec68a25703a87d845f1f4cf376837d73c269c5a5249ad19713bffac2ea1dc074a74cae7fa77b4ef24dadfec850316001d494
7587d24c1bdcb5e6cd140b70b50accb0ce9bbaedfbf0fdc63de9143f5707c9dcc498293054ed286926200372939d79fe2c3c21eca3a76c815a4dcc593e129e064af4b34c0776f022e4f4a0ca76e5d8e3de982c4c3a59659f1a74c01f1a896319
ec3f477ff5e3d66cf231e251ed1d5782a794a76a5037fe9358ec1d8c53532e4c92271d7a11b5e5288f406b055f416dc4ee7eabb67a91011736949faffda3fa29eff082998798f157a50daccfe0910b86a3de55b476df06f27c55253f9a055e35
163d9003c74c07c246134abada71b204301ba38453ad1a766aa8c7e9884c8b1385da3479ea467ebdbdb967bd0ef16205452f268a62767eeb6a21db755eb2e58309083be947f51c1bbcdee07f4f0f2e4101788e1dbcb03bc19fd20a7f16997145
254cacd1d7fed43366f057500640500c7dbece4e4b14cbaa43140b6c606a11cb75284123650ceef333b3a6a701a22f76ec51f96888ff266bdd77ea7a0a07f1e4b6ccd1f4e63b2c754d598dfe5cc31a7c
86a02fad71d2de8ecfbd86b7b08182ada2b28dfc971bf93b5cc69f6e7033bc8a19d148a769b63cb9a7d49fc148007d7279a295f52e3749388cc0cf4a4e279f8bec97022d37b7e25aeaca35d1b252072a
164ba2ab4df50ee13d99a93db37ed400001ac2f9ac12609806492385869db8f7830794e929a07145c91bad084fcdf604e82ec8104a472143fba98cf1c885e1883078c01e59e233fd95f47a11189c8b6f
d7768aacd7728228fde8d9d2850c7eef1d5e8a63e261c233026d8715678d9eec0f7a5af5ffe152399ece06aa008d981680585ef79b03216bda8be20424f9e2679d50d46461a18eec3e10d75f43b30bfd3e50d666fdf512c8b47c2fa466247a04
3e4b39e9fe4602028091f2d4b2d309d25de0d1aacf183314add7eb2b829697e7ca8432e763610d0e98c4a6356ca43485b5e30309ad4875dfc4033c8dcefc20cc794ac012b74536d7bd4f8477e725e28612a584d15ef4f3b1d6e243c63df7440d
5235edb24caca127eb2c90d324f184610aa47f0211dcdc29e973bb99cb487865907ffadc239073a07bb918629a6dd9db5ffde7bcd307be65a52d96ddb958f1d152383cea0aade749c7dfd30aeaa5d905fd22a569b50bcea93e5851512ab7d623
34606cb0a443af2c8e5c3e4e3da4e2aa527bc2826316be15bbfeb6e9ba95141316202d0273e6aba5c178cb061f429a1f25887577f25506f7795ec919bb9710949ce8e87074b2fc6c376f2cb4a75c91cb
08136493a763b56f3522d50bd35fb8c2eb1e6d4fa825dc2ed77bf28cbbea36321c24d44280faf971753303989b83796f9e33ce122071e39cfbf31bb3b2f5c59da99b71ef36132c66a15128c51bf49b2c
03c998f2775f92f9937073b3ebc664765f6f04ccab3ccefa3d30890229936c477142f443a45843023244bd41d8b6e16dcbd51f16e500f5f611b063b99a76bcd722ec45e2df279cc5889067cc5f79fb0a
1a00cb75310e3fc1f80d227ac89e8279d7cbffee701f4044698dc3ecc7da3b9a7f03b85bcb33106f40b4292d32252700dc185dc21e3f9981a986287965fdc1ce89f775499e3d71ebb4ebee8845507a8ab28540b597893fba321b57b8c6c827b2
333c89f891417648db340d85cf1d110ad0e9892c1a8f19ca151e79400a651eb3c565857fadced51de6dbdc8d6b9ad80922ed384da0c066cd0dfdb09a64b67253df802f52f20c196177123d314cb58613dc89a8edda96437dac9b7f47bc5a519d
e26aaae7005cb134146dc21b410aacd36f02f352617c2bc9bcc06ed208943f6713796d0de132658ca195669e37e6738854d5c6c84a12bb33d17dbb7b76e50f6ed79768195f132fa62fba6fa950f42d7e6da08ded7807d734e0c666740d848f54
149fd6208cb7283c44617ca35f4793199fbda983eadb458628520d4e8d2a385329ffa7fb1150e2cddf5ebd05aef85b437d273139fc0aa11911ffa611526cf4ad4e54833009263f9938526f7fee6d6bd3
1957fc372bf1aa04d90b5146ed267b329d51c6a3b3cc8cfe95280037f3a2f1b9c4fbb786dec82bd55b379a5f7c6d1ebbc187ffe0fa77789393cba693970b6e1a20caa14b58aac02b00eb8a3d19f9352e
4d9cb9dd5ba05855c5ac7a7266250cbb4578fae0eecb5a214518b4c8745690119ac8e3e3942fb6c587d480bfc496e25b0af0726b73d65251a79ecbdf6035f66e29dbf86fb5e94cef68922181aededbbc
91024f0db5066728b8d2268f0aa87e673ca5c2eebe603dfac9a2c0ed0ffce0e5f7c7dbf5fbe34b83e31344adff3bff8a853f4d6ebd0d962722f1a563c2108c8cc16b62951936919effd26b0ad46a93c6d2e057b80332c9f1e9904b635f424481
19f555be20b0e4265991fe3d0133935bf14bbc381480cde8a6a1fe765f831730057d861c0d6789aefb64515699ab742a89c9cd0b5152910308d96eb4d498ad84e9ea2bdf2f9d66c5a61ce8fe992abcf0091ab630405cf3b03f0f5d816be8311b
79f64111f9b60d0a410b3fcdb609eadff7e985a460d8f679c8d91edaa5aecf18124febf921f709a67d2d17be29e074a3d2ef15c2a7c593fff9b0dd0291860f5005d372125abd797f14e6cb05e26cafb2295038ca510d68772f4c291388c47664
0a727539a796554106ebb23468ce6f542ee21189142dbca1c66307eb9d9afe2338a58d24afcd7f003aeed2ea9df59fea157959255b5c62cb1b483534ff4482cfbb1eb7f783eb487fe55ea650d9eaa02d
1c1284d13ba79416cb28efa457b706e1ccbb1f3db9ef22395c8d0ec5ad098a9c629f2d08415ccdc6e5288745ad40e3c032c14cfffe86b92478ebb641ede2510dd865359bac0c1f4062b9d0688d56f213
0efe7936b73511ebd8e8087940937ca1e2f8a4b07869bbfdbfef7846aa77784bcd574cc37f2de1cdb7b5672505101e3e9ec09430d63e9cf5f1454e27b770e0e33ea0b52e3fcc65e44d3e2c464fbeee99
372de3b31480a6338a75ed67fe0eb71e9d75e6f3fb47c3cf8d69e4f1723b7f72ffbd5a4f9696854a01bd23aaafababdbf575ae6cce2bf147ceb26d7ff54f28c71d3cc4c34eaa1f45b64e8db11c7c89b60cdba87740d3cd299a390a6cb6d015ad
792275bbe60869fb31e985e5eaaf5330a8c50bf252a09dce9f7ee2560f348432c56c45737690321c9e33d8f6946a66084331d3f2af0fbbcaf2b43dcc20b69ae9e54fb1a82ec1eb0320739f2f4a70bdfb8992c5abf8aeb3b869a3dc246b29effc
ac0af98fecb7fa21f00735edaf8bbe2355bb184016078cc85be65e4d2481839d57880645ba18a546a569f0a23bcb3c35004976ec8c4f30a1f27ffe7e38e419655d7bb03a0f735a680c20a01c67da8e707019bed62d08247c302cf50dbc39f8e7
7256ef041eddaf8c585808265ea9d851f20efbbd2a638766f32eb47ec7e9f98618ff8dc9cd8f1663f3a657b301ee8fab1f4dcb1b2267d39e2510c00a3311e432a76e4923f23ff00a06dfae3abfd363cd
d6d3a5c43886b71823b4e792ee77e0baa45592bc586ad23eae9504197217c7cae6cfc5fe9ca673b6d0f5fe53a91b3b641a89e065a90d34d9cb056fe269c8d9908ca79e9ad25018027045b11594e2ba20
cedc238e083a5d6b4463f7d1eb2566a5fb589251c26ed5cda12481e981ab020712b0b9615dbacf425e368caebb2c1a66e95f015562b7a07ca278173065781ce4c01d81aca15485a808bf4f305ad55a80
24c90356a1707dd42b3d4c715abc29a82d4902724588b11eee5bf1482a4acf0d5d89d9efe9c7b0029c7d23d8a5c380ab01db523c9805c44393410fcba326f7c2caa50af7394d308b03c44c799e892e070f30ce085489619cf28709a5ff3a5c7b
b2fce0778370689be48ea2a0cb14a7646e32db5671e6cbf0a37527e13b4b8b21dac002f0fca45267e8a0a21106bec942d26ee6a8ccb04dc98f98d79ea5bf97cc0876c4af191953a2a576c9f7ef77ddee028a72c83304f7810b120c4dc6d35475
f275d07cca2e4d5b1b163c72c71bb45ab63a01b7bea767293d3759640fba08bdd1c1778a73d44aabde0bd07cf84f97375bc284b293cd3623f5625659b98a27f82ca0c4d246dbeb389ca13dbc3df0e64fb64d0bce8b06a4275e347f2daca9240f
4967793d3894bcd0867dbca36587313ab1d79e3b277eaeccb28f63c014af4f4ea72b94e6822cdb0f1dc4337ef9805e9706b1a5e905075529db139495474896cd966d1567de3626f74c6480b5cd8e9d2d
f87c48d32966cec26dcd6487059d2a488d07e83d2cecbe07286a362421a97777895d66281cb517048e09a07dbdec7663afcb8485eed1db651fa66e7144b6f58a450c888f86bf44ddebdcc6038b2ea5ce
70f7c00dcc6e890be0ac4634326fb7d084dc6832d27be0c3512f161013e99e25c6e13d3b11b9a940b342eecce3f17d629330e740b428323d633710df658664f288e29da4fc75c5dbaefa45a097ef7806
0ab3fc18ec4cf95688ec1757dfccf5089600b9e3294a975e33471b5a26ea79a42f85ac46fdcc9a568fc0425186eba83cd3071607eb7f9b4efd00ac3c2f40fa3e25bf8083f10e783217caf7cb914510c0e83604f5b34735d6809f072c1a979e8f
0bce2e402a26d7ad83d2bc1b223ff79530a0c0b7d148e55bc6709af8388623612f342a16b1c29d40c6ec97cd2b2c78fdc536a93ba745d779f5ef061e8a3d0281742cf46688bbc409ee4643bf2c1d9fe05ecac5c5aa7ed6b472637c98fcce7002
04f97ed3386db1f417402e736867f4fa3b8b79d1423a69dce13ddd3e19f8eb6595ca87d5f9a7987f342e506ed188d87de46176ebefcb6815f514ae9bfeea0ab6106d40db0414ef15650a19a4617045772c5e0a8772c7e278356898a5e59893da
4e5c75480d893559d55dbd92bbdb20e199ee753f6d026519b6c28ef8e52d8a83d23da05fc11dc022e0ed02e68d6faa432f75f4504c1592956aac840747b118760b25be5b0602358f2757496b2d06aaf9
1d0f587995f23233998274038642051de9182562a517b21db39cf0a7e749c05eb675b07fe2113a08d6b1fd2de5e22a26744b3d2bfc52c153c5b7dfbb7b2b6962c3f003aad8d1501c1625538b1efcdb97
a0c5c0e4b335fff21d43d0b4d4e10c190964709943bb74e3d1633d8bce04aae81cb028d71b78b620a0b792403662411fcd05a74e2cec05df7880a3fb05aeb001ad800a5b0ffbc9e09d206ab387d4c427
4401ec50bafada68f16f8169ee3ab8a868b91c5273d25fe7566d303e52a9374f5d53de2a8d102305cddf579bcf14e0903cadbfeb181f5bbca5e1d3a15dc6ddd40f79a28f3190dd3612f27c9d7f01701e8cd5916f26ef072307a426185c51439f
e8d895ac5a8d1788d8324280ed062a416b296fcac4a91f61806f925efa244757bb2652e36e74e0783b4834c6db3825c29e7c718b6d9326017124433008de76032d02a7d169fb746f650a5fe49ed7d51c3b15f90da28d4fbbc8b45f1ced93e4ad

Alle reacties


  • farlane
  • Registratie: maart 2000
  • Laatst online: 11:33
Die payloads zien er zo random uit dat ik vermoed dat er wel degelijk een vorm van encryptie is. Als er geen handshake is kan dat ook met een shared secret zijn.

Somniferous whisperings of scarlet fields. Sleep calling me and in my dreams i wander. My reality is abandoned (I traverse afar). Not a care if I never everwake.


  • Blihi
  • Registratie: juni 2018
  • Laatst online: 10:20
Intergas biedt ook software aan om de ketel uit te lezen. Dit pakket heet IDS en is geschreven in Python. Met behulp van een seriele kabel of een RF dongle kun je de ketel dan uitlezen. Via een Engelse leverancier van Intergas systemen heb ik de software kunnen downloaden. De gecompileerde python files kun je weer omzetten naar code en dat geeft de volgende informatie:

Er kunnen de volgende datablokken gedownload worden uit de ketel:
1) De 'status'. Dat zijn 32 bytes met daarin:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
't1',
't2',
't3',
't4',
't5',
't6',
'temp_set',
'fanspeed_set',
'fanspeed',
'fan_pwm',
'opentherm',
'roomtherm',
'tap_switch',
'gp_switch',
'pump',
'dwk',
'gasvalve',
'io_signal',
'spark',
'io_curr',
'displ_code',
'ch_pressure',
'rf_rth_bound',
'rf_rth_communication',
'rf_rth_battery_info',
'rf_rth_battery_ok'

De meeste van deze getallen zijn 2 bytes voor een float (integer/100), sommige zijn 1 bit vlagjes.

2) De 'extra status'. Ook dat zijn 32 bytes met daarin:
code:
1
2
3
4
5
6
7
8
9
10
11
12
'bc_tapflow',
'pump_pwm',
'room_override_zone1',
'room_set_zone1',
'room_temp_zone1',
'room_override_zone2',
'room_set_zone2',
'room_temp_zone2',
'outside_temp',
'OT_master_member_id',
'OT_therm_prod_version',
'OT_therm_prod_type'

In alle gevallen zijn dit 2-byte floats (integer/100).

3) De versie van de branderautomaat. Ook weer 32 bytes met daarin:
code:
1
2
3
4
'Hardware release',
'Software release',
'ROM test 1 checksum',
'ROM test 2 checksum'


4) De branderautomaat CRC. Ook weer 32 bytes met daarin
code:
1
2
3
4
5
6
7
'Interrupt_time',
'Interrupt_load (%)',
'Main_load (%)',
'Net fequency (Hz)',
'Voltage ref. (V)',
'Checksum1',
'Checksum2'


5) De draaiuren. Ook weer 32 bytes met daarin:
code:
1
2
3
4
5
6
7
8
9
10
11
12
'Line power connected (hours)',
'Line power disconnected (number of times)',
'CH function(hours)',
'DHW function(hours)',
'Burnerstarts (number of times)',
'Ignition failed (number of times)',
'Flame lost (number of times)',
'Reset (number of times)',
'Gasmeter_ch',
'Gasmeter_dhw',
'watermeter',
'burnerstarts_dhw'


6) De fouten. Ook weer 32 bytes met foutcodes als string.

7) De parameters. Ook weer 32 bytes met:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
'HEATER_ON',
'COMFORT_MODE',
'CH_SET_MAX',
'DHW_SET',
'ECO_DAYS',
'COMFORT_SET',
'DHW_AT_NIGHT',
'CH_AT_NIGHT',
'Parameter 1',
'Parameter 2',
'Parameter 3',
'Parameter 4',
'Parameter 5',
'Parameter 6',
'Parameter 7',
'Parameter 8',
'Parameter 9',
'Parameter A',
'Parameter b',
'Parameter C',
'Parameter c',
'Parameter d',
'Parameter E',
'Parameter E.',
'Parameter F',
'Parameter H',
'Parameter n',
'Parameter o',
'Parameter P',
'Parameter r',
'Parameter F.'


8 ) De extra parameters. Een niet nader gespecificeerde lijst strings van willekeurige lengte.

9) Het infoblok. Een string met daarin
code:
1
2
3
4
5
6
7
8
'id_dongle0',
'id_dongle1',
'id_dongle2',
'id_dongle3',
'id_lan0',
'id_lan1',
'id_lan2',
'id_lan3'


10) Een tweede infoblok met daarin:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
'Node nr',
         'Cloud id0',
         'Cloud id1',
         'Cloud id2',
         'Rf cloud nr',
         'rssi_lower',
         'rssi_upper',
         'rssi_wait',
         'attention_period',
         'attention_number',
         'ramses_thermostat_idH',
         'ramses_thermostat_idM',
         'ramses_thermostat_idL',
         'ramses_boiler_idH',
         'ramses_boiler_idM',
         'ramses_boiler_idL',
         'Productioncode'


Het ruwe uitlezen gebeurt in een methode die een commando naar de ketel stuurt. Vervolgens wordt er gewacht tot er 24 bytes ontvangen zijn. Afhankelijk van de waarde van byte 5 wordt er nog langer gewacht tot er 40 or 42 bytes ontvangen zijn. Die 24, 40 of 42 bytes worden vervolgens gedecodeerd, waarbij de het eennalaatste byte een checksum is en byte 4 een packet id. Als bytes 14 t/m 22 'ERROR' spellen is er sprake van een foutmelding. In alle andere gevallen worden de 32 bytes vanaf positie 6 doorgestuurd voor decodering zoals hierboven staat.


Dit doet mij vermoeden dat die RF unit dus ook steeds blokken data bij de ketel opvraagt en deze doorstuurt. Sommige frequenter dan andere. Ik zie bijvoorbeeld af en toe wat kleinere pakketten en ook in de app kun je zien dat het aantal branduren bijvoorbeeld niet real-time aangepast wordt, maar slechts af en toe.

Wel realtime is de systeemdruk te volgen en die zit in de status (ch_pressure). Dus in ieder geval die status wordt zeer geregeld verstuurd.

Omdat er gebruik gemaakt wordt van een eenvoudige XOR-Checksum heb ik geprobeerd of in deze data ergens een dergelijke checksum zit (gewoon bruteforce kijken of ik op elk mogelijke substring een checksum waarde kan berekenen volgens de IDS code en kijken of die in de data staat.) Dat is niet het geval.

Ook heb ik geprobeerd om deze byte arrays uit te pakken met Python's ZLIB library waarbij ik de headers uitzet, want er zitten duidelijk geen headers in de data. Ook dat lukt niet.

Het enige wat ik me nog voor kan stellen is dat deze data ge-encrypt is met een vooraf ingestelde key waardoor de ontvanger de data weer kan decrypten. Zolang ik die key niet heb zal dat dus niet lukken.

  • Ben(V)
  • Registratie: december 2013
  • Laatst online: 13:10

All truth passes through three stages: First it is ridiculed, second it is violently opposed and third it is accepted as being self-evident.


  • Blihi
  • Registratie: juni 2018
  • Laatst online: 10:20
Die link had ik ook al gevonden, maar zijn code refereert aan het uitlezen via een seriele kabel. Dat is ook mogelijk, maar is slechts een deel van het protocol (alleen de statusvraag).

Acties:
  • 0Henk 'm!

  • johanbarelds
  • Registratie: mei 2021
  • Laatst online: 02-06 10:36
Ik heb vandaag ook mijn Intergas LAN2RF gateway binnengekregen.
Helaas wil het ding niet koppelen via RF met mijn CV.
Alles gaat volgens de instructies en verloopt goed totdat ik mijn CV moet koppelen door het knopje met het sleuteltje op de CV kort in te drukken. Helaas gebeurd er dan niks en timed mijn app out.
Netwerk verbindingen lijken wel allemaal goed te werken (lampjes 1,2 en 3 branden).
Zie ik iets over het hoofd? Is er een andere truc om de CV via RF te pairen? Iemand een idee?
Thanks!

Gr Johan

Acties:
  • 0Henk 'm!

  • Blihi
  • Registratie: juni 2018
  • Laatst online: 10:20
@johanbarelds Ja, dat is even een dingetje. Je moet die LAN2RF gateway eerst even een reset geven. Dat doe je door de voeding er in te doen en dan op het juiste moment de voeding er weer uit te trekken. (vergeef me dat ik even uit mijn hoofd niet weet na hoeveel seconde).

Zodra dat gebeurt is kun je wel pairen. Inderdaad de spanning op de LAN2RF gateway en dan even kort op het sleuteltje.
Pagina: 1


Apple iPad Pro (2021) 11" Wi-Fi, 8GB ram Microsoft Xbox Series X LG CX Google Pixel 5a 5G Sony XH90 / XH92 Samsung Galaxy S21 5G Sony PlayStation 5 Nintendo Switch Lite

Tweakers vormt samen met Hardware Info, AutoTrack, Gaspedaal.nl, Nationale Vacaturebank, Intermediair en Independer DPG Online Services B.V.
Alle rechten voorbehouden © 1998 - 2021 Hosting door True