f6dcf6e8d1
Fixed naming in declaration
...
Signed-off-by: Stefan Wahren <info@lategoodbye.de >
2016-01-31 17:41:08 +00:00
5674b30a6c
Make use of package version from autotools
...
Signed-off-by: Stefan Wahren <info@lategoodbye.de >
2016-01-31 17:40:58 +00:00
ef6c4be655
Safer IEEE754 conversion.
...
The conversion given assumed two things:
1. the pointer was either 32-bit aligned or that unaligned word access
was safe. (Not the case on ARM)
We avoid this by using memcpy to copy to a buffer that *is*
32-bit-word-aligned.
2. the word was in native-endian format.
The original code appeared to assume the given word would be in
big-endian format (aka "network" byte order), so we convert it to the
host's native format before casting.
We re-instate the original implementation, controlled by a compiler
switch to allow easy rollback if problems are encountered.
2015-12-03 08:08:22 +10:00
583a397e8e
Needless math.h include
2015-12-03 07:52:23 +10:00
7e1be93dbd
Needless IEEE754 conversion, float pointer cast instead
2015-12-03 07:51:26 +10:00
5f0b5d5dd1
Beautify: replace tabs with spaces and remove trailing spaces
2014-02-24 15:20:42 +01:00
f47caf151e
add manufacturer id / product string of some meters:
...
Aquametro CALEC MB
Aquametro CALEC ST
Elster SensoStar 2
Elster F96 Plus
Elster F4
EMU Professional 3/75 M-Bus
Deltamess F2
Sensus PolluTherm
Sensus PolluStat E
NZR IC-M2
Saia-Burgess ALE3
Saia-Burgess AWD3
2014-02-24 11:22:40 +01:00
781736fe4c
add codepage to XML output
2014-02-24 11:02:26 +01:00
8197874fe7
bugfix, the functions
...
mbus_data_record_storage_number()
mbus_data_record_tariff()
mbus_data_record_device()
did return bogus random values, because of uninitialized variables
2014-02-20 11:26:31 +01:00
f262138572
mbus_manufacturer_id: add error checking code
...
Signed-off-by: Michael Heimpold <mhei@heimpold.de >
2014-01-18 20:43:57 +01:00
0fccc0e337
Add a function to calculate the manufacturer ID from the 3 byte ASCII
...
code. The formula can be found at http://www.m-bus.com/files/w4b21021.pdf ,
chapter 3.3 at page 6.
This obsoletes the static defines, so remove them.
Signed-off-by: Michael Heimpold <mhei@heimpold.de >
2014-01-18 13:44:01 +01:00
f42c56f19c
fix 2nd address scanning bug, add some comments
...
code merge from arska/libmbus without debug
2013-11-07 11:14:15 +01:00
0d9f83ba88
Extend XML output with storage number, tariff and device
2013-11-07 00:32:01 +01:00
e1ca652bf0
Extend mbus_record with storage number, tariff and device
2013-11-07 00:31:03 +01:00
58778ba9bc
Add functions to decode storage number, tariff and device from DIF
2013-11-07 00:24:11 +01:00
d79cb1c998
Fix BCD decoding bug
2013-11-07 00:13:56 +01:00
e9d39d4708
Extend DIF debug output (storage number LSB)
...
Fix DIFE debug output (storage number, tariff, device unit)
Fix typos in comments
Replace magic bit masks with defines
2013-11-06 11:11:43 +01:00
3aa81cfb23
Add DIF extension bit masks
2013-11-06 10:15:15 +01:00
7f00f72b69
Add missing VIF=7Eh / FEh
2013-11-01 17:17:57 +01:00
6021f3cc65
Fix VIF extension mappings for VIF=0FBh
2013-11-01 17:13:49 +01:00
4b82502c06
Add product name mapping for GMC-I EMMOD206
2013-10-31 23:01:06 +01:00
9d84318631
Add manufacturer ID for GMC
2013-10-31 22:59:59 +01:00
6afe7a10dc
fix wrong decoding of integer / type B (now handle signedness correctly)
...
separate result code und decoded value for integer decoding (new
parameter)
refactor variable names
2013-10-31 22:25:34 +01:00
663642b7ec
Adopt retransmission for secondary address probing
2013-10-19 13:56:58 +02:00
e6173103e2
Avoid unnecessary data request in mbus_read_slave
2013-10-19 13:43:00 +02:00
31016929bc
Seperate retransmission maximum in two parameters
...
one for data requests and another for search requests
- add new handle member for max search retransmission
- set default maximum for search retransmission to one
- rename define for retransmission option
2013-10-18 20:15:53 +02:00
7ca329ee40
Add product name mapping for Rossweiner Modularis
2013-10-18 17:32:22 +02:00
28b73bf9d8
Add manufacturer ID for Rossweiner
2013-10-17 13:45:45 +02:00
0cf57bfc35
Move event handling from global variable to handle
...
- remove global event function pointer
- add event function pointer to handle structure
- add handle parameter to register functions
- move all register functions to mbus-protocol-aux.c
2013-10-13 21:49:40 +02:00
9e23818152
Add new function to send a user data packet from master to slave
2013-10-13 14:52:45 +02:00
d5f06ec910
Replace magic number for M-Bus frame data length with define
2013-10-05 10:38:07 +02:00
55d4c0fba2
Remove trailing whitespace
...
Signed-off-by: Stefan Wahren <info@lategoodbye.de >
2013-09-13 17:53:33 +02:00
654905a94d
bug fix in timeout config
2013-08-30 00:20:35 +09:00
fd5c9adffb
made it possible to configure the TCP read timeout parameter
2013-08-30 00:05:22 +09:00
d9dd055bea
Fix mbus_vib_unit_lookup
...
remove unreachable code
add missing unit password
fix typo
Signed-off-by: Stefan Wahren <info@lategoodbye.de >
2013-08-03 16:35:09 +02:00
5160a10211
fixed warning
2013-07-04 23:59:41 +09:00
5b83cad8fb
only show timestamp in XML output if it is set (not all frames that goes into mbus_parse passes through timestamp), to avoid a lot of '<Timestamp>1970-01-01T00:00:00</Timestamp>'
2013-07-04 23:47:06 +09:00
1fee3d9a5a
bug fix: don't assume that frame->next is zeroed before mbus_parse is called
2013-07-04 23:30:27 +09:00
dcc9e2c2b4
fix indent
2013-07-03 20:52:27 +02:00
7b897494fd
Improve wildcard search
...
- handle collisions after request for secondary address
- check frame type correctly
- ignore M-Bus devices without secondary address
2013-07-03 20:46:47 +02:00
70f23567a8
fix potential segmentation fault
2013-07-03 20:36:43 +02:00
551176911f
fix memory leaks in error case
2013-07-03 20:34:30 +02:00
8dd1d4e4ae
bugfix for +1 error in VIFE parser
...
now VIFE and DIFE behave equal
2013-07-03 20:30:20 +02:00
88b2b9fafa
bugfix in VIFE parser
2013-07-03 22:50:03 +09:00
e1164c87c9
error message if secondary address generation fails
2013-07-03 22:20:44 +09:00
31f17ab4c2
use error_str instead of direct console output
2013-07-03 22:18:06 +09:00
973cc7ba30
use MBUS_ERROR instead of fprintf(stderr
2013-07-03 22:11:13 +09:00
dd56a08811
Improve data parsing
...
- add length defines for variable data header and fixed data
- add size check for fixed data
- avoid problems with memory alignment / padding in mbus structures
(improve portability)
- abort parsing if there are too many DIFE or VIFEs
- check for premature end of variable data
- check size of variable length VIF
2013-06-22 11:50:36 +02:00
687ea60f54
Fixed correction in mbus_vib_unit_normalize
2013-06-09 23:14:08 +02:00
d7168a4ea4
Fix return value and error message
2013-05-13 08:47:19 +02:00