got rid of duplicate catalog libmbus/libmbus

This commit is contained in:
Robert
2012-04-15 10:51:15 +09:00
parent a7b6f180a3
commit c10b37e53d
89 changed files with 0 additions and 0 deletions

29
test/Makefile.am Normal file
View File

@ -0,0 +1,29 @@
# ------------------------------------------------------------------------------
# Copyright (C) 2010, Raditex AB
# All rights reserved.
#
# rSCADA
# http://www.rSCADA.se
# info@rscada.se
#
# ------------------------------------------------------------------------------
PACKAGE = @PACKAGE@
VERSION = @VERSION@
AM_CPPFLAGS = -I$(top_builddir) -I$(top_srcdir) -I$(top_srcdir)/mbus
noinst_HEADERS =
noinst_PROGRAMS = mbus_unit_test1 mbus_parse mbus_parse_hex
mbus_unit_test1_LDFLAGS = -L$(top_builddir)/mbus
mbus_unit_test1_LDADD = -lmbus -lcunit -lncurses
mbus_unit_test1_SOURCES = mbus_unit_test1.c
mbus_parse_LDFLAGS = -L$(top_builddir)/mbus
mbus_parse_LDADD = -lmbus
mbus_parse_SOURCES = mbus_parse.c
mbus_parse_hex_LDFLAGS = -L$(top_builddir)/mbus
mbus_parse_hex_LDADD = -lmbus
mbus_parse_hex_SOURCES = mbus_parse_hex.c

518
test/Makefile.in Normal file
View File

@ -0,0 +1,518 @@
# Makefile.in generated by automake 1.11.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
# Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
@SET_MAKE@
VPATH = @srcdir@
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c
INSTALL_HEADER = $(INSTALL_DATA)
transform = $(program_transform_name)
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
noinst_PROGRAMS = mbus_unit_test1$(EXEEXT) mbus_parse$(EXEEXT) \
mbus_parse_hex$(EXEEXT)
subdir = test
DIST_COMMON = $(noinst_HEADERS) $(srcdir)/Makefile.am \
$(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/libtool.m4 \
$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
$(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
PROGRAMS = $(noinst_PROGRAMS)
am_mbus_parse_OBJECTS = mbus_parse.$(OBJEXT)
mbus_parse_OBJECTS = $(am_mbus_parse_OBJECTS)
mbus_parse_DEPENDENCIES =
mbus_parse_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \
$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
$(mbus_parse_LDFLAGS) $(LDFLAGS) -o $@
am_mbus_parse_hex_OBJECTS = mbus_parse_hex.$(OBJEXT)
mbus_parse_hex_OBJECTS = $(am_mbus_parse_hex_OBJECTS)
mbus_parse_hex_DEPENDENCIES =
mbus_parse_hex_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \
$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
$(mbus_parse_hex_LDFLAGS) $(LDFLAGS) -o $@
am_mbus_unit_test1_OBJECTS = mbus_unit_test1.$(OBJEXT)
mbus_unit_test1_OBJECTS = $(am_mbus_unit_test1_OBJECTS)
mbus_unit_test1_DEPENDENCIES =
mbus_unit_test1_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \
$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
$(mbus_unit_test1_LDFLAGS) $(LDFLAGS) -o $@
DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
depcomp = $(SHELL) $(top_srcdir)/depcomp
am__depfiles_maybe = depfiles
am__mv = mv -f
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
--mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
CCLD = $(CC)
LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
--mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
$(LDFLAGS) -o $@
SOURCES = $(mbus_parse_SOURCES) $(mbus_parse_hex_SOURCES) \
$(mbus_unit_test1_SOURCES)
DIST_SOURCES = $(mbus_parse_SOURCES) $(mbus_parse_hex_SOURCES) \
$(mbus_unit_test1_SOURCES)
HEADERS = $(noinst_HEADERS)
ETAGS = etags
CTAGS = ctags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
AR = @AR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
AWK = @AWK@
CC = @CC@
CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
DLLTOOL = @DLLTOOL@
DSYMUTIL = @DSYMUTIL@
DUMPBIN = @DUMPBIN@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
EXEEXT = @EXEEXT@
FGREP = @FGREP@
GREP = @GREP@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LIBTOOL = @LIBTOOL@
LIPO = @LIPO@
LN_S = @LN_S@
LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@
MANIFEST_TOOL = @MANIFEST_TOOL@
MKDIR_P = @MKDIR_P@
NM = @NM@
NMEDIT = @NMEDIT@
OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
OTOOL = @OTOOL@
OTOOL64 = @OTOOL64@
# ------------------------------------------------------------------------------
# Copyright (C) 2010, Raditex AB
# All rights reserved.
#
# rSCADA
# http://www.rSCADA.se
# info@rscada.se
#
# ------------------------------------------------------------------------------
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
RANLIB = @RANLIB@
SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
STRIP = @STRIP@
VERSION = @VERSION@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_AR = @ac_ct_AR@
ac_ct_CC = @ac_ct_CC@
ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@
build = @build@
build_alias = @build_alias@
build_cpu = @build_cpu@
build_os = @build_os@
build_vendor = @build_vendor@
builddir = @builddir@
datadir = @datadir@
datarootdir = @datarootdir@
docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@
host = @host@
host_alias = @host_alias@
host_cpu = @host_cpu@
host_os = @host_os@
host_vendor = @host_vendor@
htmldir = @htmldir@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
AM_CPPFLAGS = -I$(top_builddir) -I$(top_srcdir) -I$(top_srcdir)/mbus
noinst_HEADERS =
mbus_unit_test1_LDFLAGS = -L$(top_builddir)/mbus
mbus_unit_test1_LDADD = -lmbus -lcunit -lncurses
mbus_unit_test1_SOURCES = mbus_unit_test1.c
mbus_parse_LDFLAGS = -L$(top_builddir)/mbus
mbus_parse_LDADD = -lmbus
mbus_parse_SOURCES = mbus_parse.c
mbus_parse_hex_LDFLAGS = -L$(top_builddir)/mbus
mbus_parse_hex_LDADD = -lmbus
mbus_parse_hex_SOURCES = mbus_parse_hex.c
all: all-am
.SUFFIXES:
.SUFFIXES: .c .lo .o .obj
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
&& { if test -f $@; then exit 0; else break; fi; }; \
exit 1;; \
esac; \
done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign test/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --foreign test/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
*) \
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
esac;
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(top_srcdir)/configure: $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
clean-noinstPROGRAMS:
@list='$(noinst_PROGRAMS)'; test -n "$$list" || exit 0; \
echo " rm -f" $$list; \
rm -f $$list || exit $$?; \
test -n "$(EXEEXT)" || exit 0; \
list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
echo " rm -f" $$list; \
rm -f $$list
mbus_parse$(EXEEXT): $(mbus_parse_OBJECTS) $(mbus_parse_DEPENDENCIES)
@rm -f mbus_parse$(EXEEXT)
$(mbus_parse_LINK) $(mbus_parse_OBJECTS) $(mbus_parse_LDADD) $(LIBS)
mbus_parse_hex$(EXEEXT): $(mbus_parse_hex_OBJECTS) $(mbus_parse_hex_DEPENDENCIES)
@rm -f mbus_parse_hex$(EXEEXT)
$(mbus_parse_hex_LINK) $(mbus_parse_hex_OBJECTS) $(mbus_parse_hex_LDADD) $(LIBS)
mbus_unit_test1$(EXEEXT): $(mbus_unit_test1_OBJECTS) $(mbus_unit_test1_DEPENDENCIES)
@rm -f mbus_unit_test1$(EXEEXT)
$(mbus_unit_test1_LINK) $(mbus_unit_test1_OBJECTS) $(mbus_unit_test1_LDADD) $(LIBS)
mostlyclean-compile:
-rm -f *.$(OBJEXT)
distclean-compile:
-rm -f *.tab.c
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mbus_parse.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mbus_parse_hex.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mbus_unit_test1.Po@am__quote@
.c.o:
@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(COMPILE) -c $<
.c.obj:
@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
.c.lo:
@am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $<
mostlyclean-libtool:
-rm -f *.lo
clean-libtool:
-rm -rf .libs _libs
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
mkid -fID $$unique
tags: TAGS
TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
set x; \
here=`pwd`; \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
shift; \
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \
if test $$# -gt 0; then \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
"$$@" $$unique; \
else \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
$$unique; \
fi; \
fi
ctags: CTAGS
CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
test -z "$(CTAGS_ARGS)$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$unique
GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
dist_files=`for file in $$list; do echo $$file; done | \
sed -e "s|^$$srcdirstrip/||;t" \
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
case $$dist_files in \
*/*) $(MKDIR_P) `echo "$$dist_files" | \
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
sort -u` ;; \
esac; \
for file in $$dist_files; do \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
if test -d $$d/$$file; then \
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \
test -f "$(distdir)/$$file" \
|| cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \
fi; \
done
check-am: all-am
check: check-am
all-am: Makefile $(PROGRAMS) $(HEADERS)
installdirs:
install: install-am
install-exec: install-exec-am
install-data: install-data-am
uninstall: uninstall-am
install-am: all-am
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
installcheck: installcheck-am
install-strip:
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
`test -z '$(STRIP)' || \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
mostlyclean-generic:
clean-generic:
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
clean: clean-am
clean-am: clean-generic clean-libtool clean-noinstPROGRAMS \
mostlyclean-am
distclean: distclean-am
-rm -rf ./$(DEPDIR)
-rm -f Makefile
distclean-am: clean-am distclean-compile distclean-generic \
distclean-tags
dvi: dvi-am
dvi-am:
html: html-am
html-am:
info: info-am
info-am:
install-data-am:
install-dvi: install-dvi-am
install-dvi-am:
install-exec-am:
install-html: install-html-am
install-html-am:
install-info: install-info-am
install-info-am:
install-man:
install-pdf: install-pdf-am
install-pdf-am:
install-ps: install-ps-am
install-ps-am:
installcheck-am:
maintainer-clean: maintainer-clean-am
-rm -rf ./$(DEPDIR)
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
mostlyclean: mostlyclean-am
mostlyclean-am: mostlyclean-compile mostlyclean-generic \
mostlyclean-libtool
pdf: pdf-am
pdf-am:
ps: ps-am
ps-am:
uninstall-am:
.MAKE: install-am install-strip
.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
clean-libtool clean-noinstPROGRAMS ctags distclean \
distclean-compile distclean-generic distclean-libtool \
distclean-tags distdir dvi dvi-am html html-am info info-am \
install install-am install-data install-data-am install-dvi \
install-dvi-am install-exec install-exec-am install-html \
install-html-am install-info install-info-am install-man \
install-pdf install-pdf-am install-ps install-ps-am \
install-strip installcheck installcheck-am installdirs \
maintainer-clean maintainer-clean-generic mostlyclean \
mostlyclean-compile mostlyclean-generic mostlyclean-libtool \
pdf pdf-am ps ps-am tags uninstall uninstall-am
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:

57
test/mbus_parse.c Normal file
View File

@ -0,0 +1,57 @@
//------------------------------------------------------------------------------
// Copyright (C) 2010, Raditex AB
// All rights reserved.
//
// rSCADA
// http://www.rSCADA.se
// info@rscada.se
//
//------------------------------------------------------------------------------
#include <sys/types.h>
#include <err.h>
#include <fcntl.h>
#include <stdio.h>
#include <termios.h>
#include <unistd.h>
#include <string.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <mbus/mbus-protocol.h>
int
main(int argc, char *argv[])
{
int fd, len;
u_char buf[1024];
mbus_frame reply;
mbus_frame_data frame_data;
if (argc != 2)
{
fprintf(stderr, "%s binary-file\n", argv[0]);
return 1;
}
if ((fd = open(argv[1], O_RDONLY, 0)) == -1)
{
fprintf(stderr, "%s: failed to open '%s'", argv[0], argv[1]);
return 1;
}
bzero(buf, sizeof(buf));
len = read(fd, buf, sizeof(buf));
close(fd);
bzero(&reply, sizeof(reply));
bzero(&frame_data, sizeof(frame_data));
mbus_parse(&reply, buf, len);
mbus_frame_data_parse(&reply, &frame_data);
mbus_frame_print(&reply);
printf("%s", mbus_frame_data_xml(&frame_data));
}

95
test/mbus_parse_hex.c Normal file
View File

@ -0,0 +1,95 @@
//------------------------------------------------------------------------------
// Copyright (C) 2010, Raditex AB
// All rights reserved.
//
// rSCADA
// http://www.rSCADA.se
// info@rscada.se
//
//------------------------------------------------------------------------------
#include <sys/types.h>
#include <err.h>
#include <fcntl.h>
#include <stdio.h>
#include <termios.h>
#include <unistd.h>
#include <string.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <mbus/mbus-protocol.h>
int
main(int argc, char *argv[])
{
int fd, len, i, result;
u_char raw_buff[4096], buff[4096], *ptr, *endptr;
mbus_frame reply;
mbus_frame_data frame_data;
if (argc != 2)
{
fprintf(stderr, "%s binary-file\n", argv[0]);
return -1;
}
if ((fd = open(argv[1], O_RDONLY, 0)) == -1)
{
fprintf(stderr, "%s: failed to open '%s'", argv[0], argv[1]);
return -1;
}
bzero(raw_buff, sizeof(raw_buff));
len = read(fd, raw_buff, sizeof(raw_buff));
close(fd);
i = 0;
ptr = 0;
endptr = raw_buff;
while (i < sizeof(buff)-1)
{
ptr = endptr;
buff[i] = (u_char)strtol(ptr, (char **)&endptr, 16);
// abort at non hex value
if (ptr == endptr)
break;
i++;
}
bzero(&reply, sizeof(reply));
bzero(&frame_data, sizeof(frame_data));
//mbus_parse_set_debug(1);
result = mbus_parse(&reply, buff, i);
if (result < 0)
{
fprintf(stderr, "mbus_parse: %s\n", mbus_error_str());
return -1;
}
else if (result > 0)
{
fprintf(stderr, "mbus_parse: need %d more bytes\n", result);
return -1;
}
result = mbus_frame_data_parse(&reply, &frame_data);
if (result != 0)
{
mbus_frame_print(&reply);
fprintf(stderr, "mbus_frame_data_parse: %s\n", mbus_error_str());
return 1;
}
//mbus_frame_print(&reply);
//mbus_frame_data_print(&frame_data);
printf("%s", mbus_frame_data_xml(&frame_data));
}

182
test/mbus_unit_test1.c Normal file
View File

@ -0,0 +1,182 @@
//------------------------------------------------------------------------------
// Copyright (C) 2010, Raditex AB
// All rights reserved.
//
// rSCADA
// http://www.rSCADA.se
// info@rscada.se
//
//------------------------------------------------------------------------------
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include "CUnit/Basic.h"
#include <mbus/mbus-protocol.h>
static char *test_frame_table[][2] = {
// {"test-frames/frame1.hex", "test-frames/frame1.xml"},
{"test-frames/frame2.hex", "test-frames/frame2.xml"},
{"test-frames/kamstrup_multical_601.hex", "test-frames/kamstrup_multical_601.xml"},
{"test-frames/manual_frame2.hex", "test-frames/manual_frame2.xml"},
{"test-frames/manual_frame3.hex", "test-frames/manual_frame3.xml"},
{"test-frames/manual_frame7.hex", "test-frames/manual_frame7.xml"},
{"test-frames/svm_f22_telegram1.hex", "test-frames/svm_f22_telegram1.xml"},
{"test-frames/electricity-meter-1.hex", "test-frames/electricity-meter-1.xml"},
{"test-frames/electricity-meter-2.hex", "test-frames/electricity-meter-2.xml"},
};
static int no_test_frames = 6;
//------------------------------------------------------------------------------
//------------------------------------------------------------------------------
char *read_file(char *filename)
{
FILE *f;
size_t size, size2;
char *file_content;
if ((f = fopen(filename, "r")) == NULL)
{
fprintf(stderr, "%s: Failed to open file %s.\n", __PRETTY_FUNCTION__, filename);
return NULL;
}
fseek(f, 0, SEEK_END);
size = ftell(f);
fseek(f, 0, SEEK_SET);
if ((file_content = (char *)malloc(size+1)) == NULL)
{
fprintf(stderr, "%s: Failed to allocate memory of size %d.\n", __PRETTY_FUNCTION__, size);
fclose(f);
return NULL;
}
if ((size2 = fread(file_content, 1, size, f)) != size)
{
fprintf(stderr, "%s: Failed to read file content (%s, %d:%d).\n", __PRETTY_FUNCTION__, filename, size, size2);
free(file_content);
fclose(f);
return NULL;
}
file_content[size] = 0;
fclose(f);
return file_content;
}
//------------------------------------------------------------------------------
//------------------------------------------------------------------------------
int
hex_to_bin(char *buff, size_t buff_size, char *hex_buff)
{
char *ptr, *endptr;
int i;
i = 0;
ptr = 0;
endptr = hex_buff;
while ((ptr != endptr) && i < buff_size-1)
{
ptr = endptr;
buff[i++] = (u_char)strtol(ptr, (char **)&endptr, 16);
}
return i;
}
//------------------------------------------------------------------------------
//------------------------------------------------------------------------------
int init_suite(void)
{
return 0;
}
//------------------------------------------------------------------------------
//------------------------------------------------------------------------------
int clean_suite(void)
{
return 0;
}
//------------------------------------------------------------------------------
//------------------------------------------------------------------------------
void test_frames(void)
{
int i, len;
for (i = 0; i < no_test_frames; i++)
{
mbus_frame frame;
mbus_frame_data frame_data;
char *hex, bin[2048], *xml_ref, *xml = NULL;
hex = read_file(test_frame_table[i][0]);
xml_ref = read_file(test_frame_table[i][1]);
len = hex_to_bin(bin, sizeof(bin), hex);
mbus_parse(&frame, bin, len);
mbus_frame_data_parse(&frame, &frame_data);
xml = mbus_frame_data_xml(&frame_data);
//printf("xml = %s\n", xml);
//printf("xml_ref = %s\n", xml_ref);
CU_ASSERT(xml != NULL);
if (xml)
{
int res = strcmp(xml, xml_ref);
CU_ASSERT(res == 0);
if (res != NULL)
{
printf("Unit test failed for %s\n", test_frame_table[i][0]);
}
}
if (hex) free(hex);
if (xml_ref) free(xml_ref);
}
return;
}
//------------------------------------------------------------------------------
// setup and run the tests
//------------------------------------------------------------------------------
int main()
{
CU_pSuite pSuite = NULL;
if (CUE_SUCCESS != CU_initialize_registry())
{
return CU_get_error();
}
if ((pSuite = CU_add_suite("MBUS frame parse test suite", init_suite, clean_suite)) == NULL)
{
CU_cleanup_registry();
return CU_get_error();
}
if (NULL == CU_add_test(pSuite, "test_frames", test_frames))
{
CU_cleanup_registry();
return CU_get_error();
}
CU_basic_set_mode(CU_BRM_VERBOSE);
CU_basic_run_tests();
CU_cleanup_registry();
return CU_get_error();
}

View File

@ -0,0 +1 @@
68 92 92 68 08 01 72 3E 02 00 05 43 4C 12 02 13 00 00 00 8C 10 04 52 12 00 00 8C 11 04 52 12 00 00 8C 20 04 33 44 77 01 8C 21 04 33 44 77 01 02 FD C9 FF 01 ED 00 02 FD DB FF 01 20 00 02 AC FF 01 4F 00 82 40 AC FF 01 EE FF 02 FD C9 FF 02 E7 00 02 FD DB FF 02 23 00 02 AC FF 02 51 00 82 40 AC FF 02 F1 FF 02 FD C9 FF 03 E4 00 02 FD DB FF 03 45 00 02 AC FF 03 A0 00 82 40 AC FF 03 E0 FF 02 FF 68 00 00 02 AC FF 00 40 01 82 40 AC FF 00 BF FF 01 FF 13 04 D9 16

View File

@ -0,0 +1,133 @@
<MBusData>
<SlaveInformation>
<Id>5000244</Id>
<Manufacturer>SBC</Manufacturer>
<Version>18</Version>
<Medium>Electricity</Medium>
<AccessNumber>19</AccessNumber>
<Status>00</Status>
<Signature>0000</Signature>
</SlaveInformation>
<DataRecord id="0">
<Function>Instantaneous value</Function>
<Unit>Energy (10 Wh)</Unit>
<Value>1252</Value>
</DataRecord>
<DataRecord id="1">
<Function>Instantaneous value</Function>
<Unit>Energy (10 Wh)</Unit>
<Value>1252</Value>
</DataRecord>
<DataRecord id="2">
<Function>Instantaneous value</Function>
<Unit>Energy (10 Wh)</Unit>
<Value>1774433</Value>
</DataRecord>
<DataRecord id="3">
<Function>Instantaneous value</Function>
<Unit>Energy (10 Wh)</Unit>
<Value>1774433</Value>
</DataRecord>
<DataRecord id="4">
<Function>Instantaneous value</Function>
<Unit> V</Unit>
<Value>237</Value>
</DataRecord>
<DataRecord id="5">
<Function>Instantaneous value</Function>
<Unit>1e-1 A</Unit>
<Value>32</Value>
</DataRecord>
<DataRecord id="6">
<Function>Instantaneous value</Function>
<Unit>Power (10 W)</Unit>
<Value>79</Value>
</DataRecord>
<DataRecord id="7">
<Function>Instantaneous value</Function>
<Unit>Power (10 W)</Unit>
<Value>65518</Value>
</DataRecord>
<DataRecord id="8">
<Function>Instantaneous value</Function>
<Unit> V</Unit>
<Value>231</Value>
</DataRecord>
<DataRecord id="9">
<Function>Instantaneous value</Function>
<Unit>1e-1 A</Unit>
<Value>35</Value>
</DataRecord>
<DataRecord id="10">
<Function>Instantaneous value</Function>
<Unit>Power (10 W)</Unit>
<Value>81</Value>
</DataRecord>
<DataRecord id="11">
<Function>Instantaneous value</Function>
<Unit>Power (10 W)</Unit>
<Value>65521</Value>
</DataRecord>
<DataRecord id="12">
<Function>Instantaneous value</Function>
<Unit> V</Unit>
<Value>228</Value>
</DataRecord>
<DataRecord id="13">
<Function>Instantaneous value</Function>
<Unit>1e-1 A</Unit>
<Value>69</Value>
</DataRecord>
<DataRecord id="14">
<Function>Instantaneous value</Function>
<Unit>Power (10 W)</Unit>
<Value>160</Value>
</DataRecord>
<DataRecord id="15">
<Function>Instantaneous value</Function>
<Unit>Power (10 W)</Unit>
<Value>65504</Value>
</DataRecord>
<DataRecord id="16">
<Function>Instantaneous value</Function>
<Unit>Manufacturer specific</Unit>
<Value>0</Value>
</DataRecord>
<DataRecord id="17">
<Function>Instantaneous value</Function>
<Unit>Power (10 W)</Unit>
<Value>320</Value>
</DataRecord>
<DataRecord id="18">
<Function>Instantaneous value</Function>
<Unit>Power (10 W)</Unit>
<Value>65471</Value>
</DataRecord>
<DataRecord id="19">
<Function>Instantaneous value</Function>
<Unit>Manufacturer specific</Unit>
<Value>4</Value>
</DataRecord>
</MBusData>

View File

@ -0,0 +1 @@
68 92 92 68 08 02 72 E5 02 00 05 00 00 12 02 25 00 00 00 8C 10 04 54 02 00 00 8C 11 04 54 02 00 00 8C 20 04 28 41 44 00 8C 21 04 28 41 44 00 02 FD C9 FF 01 E9 00 02 FD DB FF 01 01 00 02 AC FF 01 00 00 82 40 AC FF 01 00 00 02 FD C9 FF 02 EA 00 02 FD DB FF 02 00 00 02 AC FF 02 00 00 82 40 AC FF 02 00 00 02 FD C9 FF 03 EB 00 02 FD DB FF 03 01 00 02 AC FF 03 00 00 82 40 AC FF 03 00 00 02 FF 68 00 00 02 AC FF 00 00 00 82 40 AC FF 00 00 00 01 FF 13 04 E9 16

View File

@ -0,0 +1,133 @@
<MBusData>
<SlaveInformation>
<Id>5000345</Id>
<Manufacturer>@@@</Manufacturer>
<Version>18</Version>
<Medium>Electricity</Medium>
<AccessNumber>37</AccessNumber>
<Status>00</Status>
<Signature>0000</Signature>
</SlaveInformation>
<DataRecord id="0">
<Function>Instantaneous value</Function>
<Unit>Energy (10 Wh)</Unit>
<Value>254</Value>
</DataRecord>
<DataRecord id="1">
<Function>Instantaneous value</Function>
<Unit>Energy (10 Wh)</Unit>
<Value>254</Value>
</DataRecord>
<DataRecord id="2">
<Function>Instantaneous value</Function>
<Unit>Energy (10 Wh)</Unit>
<Value>444128</Value>
</DataRecord>
<DataRecord id="3">
<Function>Instantaneous value</Function>
<Unit>Energy (10 Wh)</Unit>
<Value>444128</Value>
</DataRecord>
<DataRecord id="4">
<Function>Instantaneous value</Function>
<Unit> V</Unit>
<Value>233</Value>
</DataRecord>
<DataRecord id="5">
<Function>Instantaneous value</Function>
<Unit>1e-1 A</Unit>
<Value>1</Value>
</DataRecord>
<DataRecord id="6">
<Function>Instantaneous value</Function>
<Unit>Power (10 W)</Unit>
<Value>0</Value>
</DataRecord>
<DataRecord id="7">
<Function>Instantaneous value</Function>
<Unit>Power (10 W)</Unit>
<Value>0</Value>
</DataRecord>
<DataRecord id="8">
<Function>Instantaneous value</Function>
<Unit> V</Unit>
<Value>234</Value>
</DataRecord>
<DataRecord id="9">
<Function>Instantaneous value</Function>
<Unit>1e-1 A</Unit>
<Value>0</Value>
</DataRecord>
<DataRecord id="10">
<Function>Instantaneous value</Function>
<Unit>Power (10 W)</Unit>
<Value>0</Value>
</DataRecord>
<DataRecord id="11">
<Function>Instantaneous value</Function>
<Unit>Power (10 W)</Unit>
<Value>0</Value>
</DataRecord>
<DataRecord id="12">
<Function>Instantaneous value</Function>
<Unit> V</Unit>
<Value>235</Value>
</DataRecord>
<DataRecord id="13">
<Function>Instantaneous value</Function>
<Unit>1e-1 A</Unit>
<Value>1</Value>
</DataRecord>
<DataRecord id="14">
<Function>Instantaneous value</Function>
<Unit>Power (10 W)</Unit>
<Value>0</Value>
</DataRecord>
<DataRecord id="15">
<Function>Instantaneous value</Function>
<Unit>Power (10 W)</Unit>
<Value>0</Value>
</DataRecord>
<DataRecord id="16">
<Function>Instantaneous value</Function>
<Unit>Manufacturer specific</Unit>
<Value>0</Value>
</DataRecord>
<DataRecord id="17">
<Function>Instantaneous value</Function>
<Unit>Power (10 W)</Unit>
<Value>0</Value>
</DataRecord>
<DataRecord id="18">
<Function>Instantaneous value</Function>
<Unit>Power (10 W)</Unit>
<Value>0</Value>
</DataRecord>
<DataRecord id="19">
<Function>Instantaneous value</Function>
<Unit>Manufacturer specific</Unit>
<Value>4</Value>
</DataRecord>
</MBusData>

View File

@ -0,0 +1 @@
68 54 54 68 08 00 72 58 09 06 10 65 32 16 0E 7B 00 00 00 0F 5F 42 01 11 FF FF FF FF 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 E6 16

View File

@ -0,0 +1,17 @@
<MBusData>
<SlaveInformation>
<Id>10060958</Id>
<Manufacturer>LSE</Manufacturer>
<Version>22</Version>
<Medium>Bus/System</Medium>
<AccessNumber>123</AccessNumber>
<Status>00</Status>
<Signature>0000</Signature>
</SlaveInformation>
<DataRecord id="0">
<Function>Manufacturer specific</Function>
</DataRecord>
</MBusData>

View File

@ -0,0 +1 @@
68 1F 1F 68 08 02 72 78 56 34 12 24 40 01 07 55 00 00 00 03 13 15 31 00 DA 02 3B 13 01 8B 60 04 37 18 02 18 16

View File

@ -0,0 +1,31 @@
<MBusData>
<SlaveInformation>
<Id>12345678</Id>
<Manufacturer>PAD</Manufacturer>
<Version>1</Version>
<Medium>Water</Medium>
<AccessNumber>85</AccessNumber>
<Status>00</Status>
<Signature>0000</Signature>
</SlaveInformation>
<DataRecord id="0">
<Function>Instantaneous value</Function>
<Unit>Volume (m m^3)</Unit>
<Value>12565</Value>
</DataRecord>
<DataRecord id="1">
<Function>Maximum value</Function>
<Unit>Volume flow (m m^3/h)</Unit>
<Value>113</Value>
</DataRecord>
<DataRecord id="2">
<Function>Instantaneous value</Function>
<Unit>Energy (10 Wh)</Unit>
<Value>21837</Value>
</DataRecord>
</MBusData>

View File

@ -0,0 +1 @@
68 F7 F7 68 08 11 72 17 58 85 06 2D 2C 08 04 04 00 00 00 0C 78 17 58 85 06 04 06 E7 91 00 00 04 14 2C DB 00 00 04 22 D9 03 00 00 04 59 B9 27 00 00 04 5D 08 12 00 00 04 61 B1 15 00 00 04 2D 5B 01 00 00 14 2D C0 01 00 00 04 3B 1F 02 00 00 14 3B 74 02 00 00 84 10 06 00 00 00 00 84 20 06 00 00 00 00 84 40 14 00 00 00 00 84 80 40 14 00 00 00 00 84 C0 40 06 00 00 00 00 04 6D 1A 2F 65 11 44 06 51 82 00 00 44 14 B2 C3 00 00 54 2D 26 02 00 00 54 3B 03 04 00 00 C4 10 06 00 00 00 00 C4 20 06 00 00 00 00 C4 40 14 00 00 00 00 C4 80 40 14 00 00 00 00 C4 C0 40 06 00 00 00 00 42 6C 5F 1C 0F 00 00 00 00 E7 E4 00 00 63 66 00 00 00 00 00 00 00 00 00 00 00 00 00 00 5B C9 A5 02 34 53 00 00 E0 B2 03 00 89 9C 68 00 00 00 00 00 01 00 01 07 07 09 01 03 00 00 00 00 00 98 16

View File

@ -0,0 +1,179 @@
<MBusData>
<SlaveInformation>
<Id>6855817</Id>
<Manufacturer>KAM</Manufacturer>
<Version>8</Version>
<Medium>Heat</Medium>
<AccessNumber>4</AccessNumber>
<Status>00</Status>
<Signature>0000</Signature>
</SlaveInformation>
<DataRecord id="0">
<Function>Instantaneous value</Function>
<Unit>Fabrication number</Unit>
<Value>6855817</Value>
</DataRecord>
<DataRecord id="1">
<Function>Instantaneous value</Function>
<Unit>Energy (kWh)</Unit>
<Value>37351</Value>
</DataRecord>
<DataRecord id="2">
<Function>Instantaneous value</Function>
<Unit>Volume (1e-2 m^3)</Unit>
<Value>56108</Value>
</DataRecord>
<DataRecord id="3">
<Function>Instantaneous value</Function>
<Unit>On time (hours)</Unit>
<Value>985</Value>
</DataRecord>
<DataRecord id="4">
<Function>Instantaneous value</Function>
<Unit>Flow temperature (1e-2 deg C)</Unit>
<Value>10169</Value>
</DataRecord>
<DataRecord id="5">
<Function>Instantaneous value</Function>
<Unit>Return temperature (1e-2 deg C)</Unit>
<Value>4616</Value>
</DataRecord>
<DataRecord id="6">
<Function>Instantaneous value</Function>
<Unit>Temperature Difference (1e-2 deg C)</Unit>
<Value>5553</Value>
</DataRecord>
<DataRecord id="7">
<Function>Instantaneous value</Function>
<Unit>Power (100 W)</Unit>
<Value>347</Value>
</DataRecord>
<DataRecord id="8">
<Function>Maximum value</Function>
<Unit>Power (100 W)</Unit>
<Value>448</Value>
</DataRecord>
<DataRecord id="9">
<Function>Instantaneous value</Function>
<Unit>Volume flow (m m^3/h)</Unit>
<Value>543</Value>
</DataRecord>
<DataRecord id="10">
<Function>Maximum value</Function>
<Unit>Volume flow (m m^3/h)</Unit>
<Value>628</Value>
</DataRecord>
<DataRecord id="11">
<Function>Instantaneous value</Function>
<Unit>Energy (kWh)</Unit>
<Value>0</Value>
</DataRecord>
<DataRecord id="12">
<Function>Instantaneous value</Function>
<Unit>Energy (kWh)</Unit>
<Value>0</Value>
</DataRecord>
<DataRecord id="13">
<Function>Instantaneous value</Function>
<Unit>Volume (1e-2 m^3)</Unit>
<Value>0</Value>
</DataRecord>
<DataRecord id="14">
<Function>Instantaneous value</Function>
<Unit>Volume (1e-2 m^3)</Unit>
<Value>0</Value>
</DataRecord>
<DataRecord id="15">
<Function>Instantaneous value</Function>
<Unit>Energy (kWh)</Unit>
<Value>0</Value>
</DataRecord>
<DataRecord id="16">
<Function>Instantaneous value</Function>
<Unit>Time Point (time &amp; date)</Unit>
<Value>2011-01-05T15:26:00</Value>
</DataRecord>
<DataRecord id="17">
<Function>Instantaneous value</Function>
<Unit>Energy (kWh)</Unit>
<Value>33361</Value>
</DataRecord>
<DataRecord id="18">
<Function>Instantaneous value</Function>
<Unit>Volume (1e-2 m^3)</Unit>
<Value>50098</Value>
</DataRecord>
<DataRecord id="19">
<Function>Maximum value</Function>
<Unit>Power (100 W)</Unit>
<Value>550</Value>
</DataRecord>
<DataRecord id="20">
<Function>Maximum value</Function>
<Unit>Volume flow (m m^3/h)</Unit>
<Value>1027</Value>
</DataRecord>
<DataRecord id="21">
<Function>Instantaneous value</Function>
<Unit>Energy (kWh)</Unit>
<Value>0</Value>
</DataRecord>
<DataRecord id="22">
<Function>Instantaneous value</Function>
<Unit>Energy (kWh)</Unit>
<Value>0</Value>
</DataRecord>
<DataRecord id="23">
<Function>Instantaneous value</Function>
<Unit>Volume (1e-2 m^3)</Unit>
<Value>0</Value>
</DataRecord>
<DataRecord id="24">
<Function>Instantaneous value</Function>
<Unit>Volume (1e-2 m^3)</Unit>
<Value>0</Value>
</DataRecord>
<DataRecord id="25">
<Function>Instantaneous value</Function>
<Unit>Energy (kWh)</Unit>
<Value>0</Value>
</DataRecord>
<DataRecord id="26">
<Function>Instantaneous value</Function>
<Unit>Time Point (date)</Unit>
<Value>2010-12-31</Value>
</DataRecord>
<DataRecord id="27">
<Function>Manufacturer specific</Function>
</DataRecord>
</MBusData>

View File

@ -0,0 +1 @@
68 13 13 68 08 05 73 78 56 34 12 0A 00 E9 7E 01 00 00 00 35 01 00 00 3C 16

View File

@ -0,0 +1,22 @@
<MBusData>
<SlaveInformation>
<Id>12345678</Id>
<Medium>Water</Medium>
<AccessNumber>10</AccessNumber>
<Status>00</Status>
</SlaveInformation>
<DataRecord id="0">
<Function>Actual value</Function>
<Unit>l</Unit>
<Value>1</Value>
</DataRecord>
<DataRecord id="1">
<Function>Actual value</Function>
<Unit>reserved but historic</Unit>
<Value>135</Value>
</DataRecord>
</MBusData>

View File

@ -0,0 +1 @@
68 1F 1F 68 08 02 72 78 56 34 12 24 40 01 07 55 00 00 00 03 13 15 31 00 DA 02 3B 13 01 8B 60 04 37 18 02 18 16

View File

@ -0,0 +1,31 @@
<MBusData>
<SlaveInformation>
<Id>12345678</Id>
<Manufacturer>PAD</Manufacturer>
<Version>1</Version>
<Medium>Water</Medium>
<AccessNumber>85</AccessNumber>
<Status>00</Status>
<Signature>0000</Signature>
</SlaveInformation>
<DataRecord id="0">
<Function>Instantaneous value</Function>
<Unit>Volume (m m^3)</Unit>
<Value>12565</Value>
</DataRecord>
<DataRecord id="1">
<Function>Maximum value</Function>
<Unit>Volume flow (m m^3/h)</Unit>
<Value>113</Value>
</DataRecord>
<DataRecord id="2">
<Function>Instantaneous value</Function>
<Unit>Energy (10 Wh)</Unit>
<Value>21837</Value>
</DataRecord>
</MBusData>

View File

@ -0,0 +1 @@
68 15 15 68 08 02 72 78 56 34 12 24 40 01 07 13 00 00 00 0C 78 04 03 02 01 9D 16

View File

@ -0,0 +1,19 @@
<MBusData>
<SlaveInformation>
<Id>12345678</Id>
<Manufacturer>PAD</Manufacturer>
<Version>1</Version>
<Medium>Water</Medium>
<AccessNumber>19</AccessNumber>
<Status>00</Status>
<Signature>0000</Signature>
</SlaveInformation>
<DataRecord id="0">
<Function>Instantaneous value</Function>
<Unit>Fabrication number</Unit>
<Value>1020304</Value>
</DataRecord>
</MBusData>

View File

@ -0,0 +1 @@
68 5C 5C 68 08 01 72 89 60 00 01 CD 4E 09 0C 94 70 00 00 04 06 6E 6D 00 00 04 13 45 C6 09 00 84 40 13 45 C6 09 00 02 5B F3 00 02 5F F3 00 02 62 00 00 04 22 E2 18 00 00 04 26 DB 18 00 00 04 3B 00 00 00 00 04 2C 00 00 00 00 04 6D 0C 15 A8 22 84 40 6E 00 00 00 00 84 80 40 6E 00 00 00 00 1F A7 16

View File

@ -0,0 +1,95 @@
<MBusData>
<SlaveInformation>
<Id>1006089</Id>
<Manufacturer>SVM</Manufacturer>
<Version>9</Version>
<Medium>Heat (Volume measured at flow temperature: inlet)</Medium>
<AccessNumber>148</AccessNumber>
<Status>70</Status>
<Signature>0000</Signature>
</SlaveInformation>
<DataRecord id="0">
<Function>Instantaneous value</Function>
<Unit>Energy (kWh)</Unit>
<Value>28014</Value>
</DataRecord>
<DataRecord id="1">
<Function>Instantaneous value</Function>
<Unit>Volume (m m^3)</Unit>
<Value>640581</Value>
</DataRecord>
<DataRecord id="2">
<Function>Instantaneous value</Function>
<Unit>Volume (m m^3)</Unit>
<Value>640581</Value>
</DataRecord>
<DataRecord id="3">
<Function>Instantaneous value</Function>
<Unit>Flow temperature (deg C)</Unit>
<Value>243</Value>
</DataRecord>
<DataRecord id="4">
<Function>Instantaneous value</Function>
<Unit>Return temperature (deg C)</Unit>
<Value>243</Value>
</DataRecord>
<DataRecord id="5">
<Function>Instantaneous value</Function>
<Unit>Temperature Difference (1e-1 deg C)</Unit>
<Value>0</Value>
</DataRecord>
<DataRecord id="6">
<Function>Instantaneous value</Function>
<Unit>On time (hours)</Unit>
<Value>6370</Value>
</DataRecord>
<DataRecord id="7">
<Function>Instantaneous value</Function>
<Unit>Operating time (hours)</Unit>
<Value>6363</Value>
</DataRecord>
<DataRecord id="8">
<Function>Instantaneous value</Function>
<Unit>Volume flow (m m^3/h)</Unit>
<Value>0</Value>
</DataRecord>
<DataRecord id="9">
<Function>Instantaneous value</Function>
<Unit>Power (10 W)</Unit>
<Value>0</Value>
</DataRecord>
<DataRecord id="10">
<Function>Instantaneous value</Function>
<Unit>Time Point (time &amp; date)</Unit>
<Value>2021-02-08T21:12:00</Value>
</DataRecord>
<DataRecord id="11">
<Function>Instantaneous value</Function>
<Unit>Units for H.C.A.</Unit>
<Value>0</Value>
</DataRecord>
<DataRecord id="12">
<Function>Instantaneous value</Function>
<Unit>Units for H.C.A.</Unit>
<Value>0</Value>
</DataRecord>
<DataRecord id="13">
<Function>Manufacturer specific</Function>
</DataRecord>
</MBusData>

View File

@ -0,0 +1 @@
D 04 04 68 53 FE 50 10 B1 16

View File

@ -0,0 +1 @@
68 06 06 68 53 FE 51 01 7A 08 25 16

View File

@ -0,0 +1 @@
68 0D 0D 68 53 FE 51 07 79 04 03 02 01 24 40 01 04 95 16

View File

@ -0,0 +1 @@
68 0F 0F 68 53 FE 51 0C 79 78 56 34 12 0C 06 07 01 00 00 55 16

View File

@ -0,0 +1 @@
68 96 96 68 08 00 72 04 11 29 00 7A 32 29 20 0C 28 00 00 0C 78 20 71 04 00 06 FD 0C FC 03 6D 00 2D 00 0D FD 0B 06 35 33 32 44 56 52 81 30 FD 7C 01 81 20 FD 7C 00 01 FD 7C 00 0F 02 78 04 00 02 7A 04 00 32 00 1E 09 32 08 00 00 34 10 00 00 00 00 31 18 00 34 18 FF FF FF FF 71 18 00 74 18 FF FF FF FF B1 01 18 00 B4 01 18 FF FF FF FF F1 01 18 00 F4 01 18 FF FF FF FF B1 02 18 00 B4 02 18 FF FF FF FF F1 02 18 00 31 28 00 34 28 FF FF FF FF 71 28 00 01 01 00 01 09 00 24 16

View File

@ -0,0 +1 @@
68 96 96 68 08 00 72 04 11 29 00 7A 32 29 20 0C 28 00 00 0C 78 20 71 04 00 06 FD 0C FC 03 6D 00 2D 00 0D FD 0B 06 35 33 32 44 56 52 81 30 FD 7C 01 81 20 FD 7C 00 01 FD 7C 00 0F 02 78 04 00 02 7A 04 00 32 00 1E 09 32 08 00 00 34 10 00 00 00 00 31 18 00 34 18 FF FF FF FF 71 18 00 74 18 FF FF FF FF B1 01 18 00 B4 01 18 FF FF FF FF F1 01 18 00 F4 01 18 FF FF FF FF B1 02 18 00 B4 02 18 FF FF FF FF F1 02 18 00 31 28 00 34 28 FF FF FF FF 71 28 00 01 01 00 01 09 00 24 16

View File

@ -0,0 +1 @@
68 DE DE 68 08 01 72 89 60 00 01 CD 4E 09 04 18 70 00 00 1F 45 00 3C 01 7F B0 09 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 C5 00 84 11 98 A1 01 00 C9 18 00 00 00 00 00 01 58 04 87 24 81 01 5B 00 00 48 18 00 63 60 7D 7F 3E 5F 60 01 00 0A 01 02 99 00 00 0E 50 C3 00 00 7F 7F 80 01 0A 00 00 FF 02 00 02 18 00 00 00 00 28 10 36 20 06 02 BE 23 BF 23 0A 0B 10 28 10 36 20 06 02 BE 23 BF 23 0A 0B 10 28 10 36 00 00 00 00 00 93 92 C9 00 10 00 00 02 89 60 00 01 FF FF FF FF FF FF FF FF 08 06 08 13 08 5A 08 5E 08 62 08 3D 00 00 00 00 00 00 00 10 01 00 0D 01 45 00 46 08 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0C 0A 02 25 6E 02 6E 6D 00 00 F6 16