From 842719c84a589b45165700c9afb8aa93e834aa9c Mon Sep 17 00:00:00 2001 From: Miqra Developer Date: Mon, 24 Sep 2018 15:45:06 +0000 Subject: [PATCH] Initial commit --- .gitignore | 50 ++ Makefile | 1151 +++++++++++++++++++++++++ Makefile.am | 83 ++ TESTCMDS.txt | 8 + cfg/dbus/nl.miqra.MediaCore.Hid.conf | 17 + cfg/init.d/mediacore-hid.in | 163 ++++ cfg/modprobe.d/raspi-blacklist.conf | 4 + cfg/modules | 8 + cfg/piio.conf | 148 ++++ cfg/rsyslog/syslog.MediaCore.Hid.conf | 1 + config.hpp | 23 + config.hpp.in | 22 + config.hpp.in~ | 25 + configure.ac | 21 + deb-dependencies.txt | 6 + debian/control | 15 + debian/postinst | 40 + debian/prerm | 39 + debpackager.py | 56 ++ debpackager.sh | 6 + sigtest | Bin 0 -> 522246 bytes sigtest.cpp | 31 + src/buttontimer/buttontimer.cpp | 120 +++ src/buttontimer/buttontimer.hpp | 35 + src/exception/baseexceptions.cpp | 75 ++ src/exception/baseexceptions.hpp | 69 ++ src/gpio/gpio.cpp | 458 ++++++++++ src/gpio/gpio.hpp | 125 +++ src/i2c/i2c.c | 127 +++ src/i2c/i2c.h | 19 + src/log/log.cpp | 67 ++ src/log/log.hpp | 42 + src/mc-hid-introspect.xml | 36 + src/mc-hid-server-glue.hpp | 223 +++++ src/mc-hid-server.cpp | 512 +++++++++++ src/mc-hid-server.hpp | 65 ++ src/mc-hid-server.o | Bin 0 -> 2349912 bytes src/mcp23017/mcp23017.cpp | 968 +++++++++++++++++++++ src/mcp23017/mcp23017.hpp | 291 +++++++ src/test/mcp23017-i2ctest.c | 130 +++ src/thread/thread.cpp | 145 ++++ src/thread/thread.hpp | 48 ++ version.py | 2 + version.py.in | 2 + 44 files changed, 5476 insertions(+) create mode 100644 .gitignore create mode 100644 Makefile create mode 100755 Makefile.am create mode 100644 TESTCMDS.txt create mode 100644 cfg/dbus/nl.miqra.MediaCore.Hid.conf create mode 100644 cfg/init.d/mediacore-hid.in create mode 100644 cfg/modprobe.d/raspi-blacklist.conf create mode 100644 cfg/modules create mode 100644 cfg/piio.conf create mode 100644 cfg/rsyslog/syslog.MediaCore.Hid.conf create mode 100644 config.hpp create mode 100644 config.hpp.in create mode 100644 config.hpp.in~ create mode 100755 configure.ac create mode 100644 deb-dependencies.txt create mode 100755 debian/control create mode 100644 debian/postinst create mode 100644 debian/prerm create mode 100644 debpackager.py create mode 100755 debpackager.sh create mode 100755 sigtest create mode 100644 sigtest.cpp create mode 100644 src/buttontimer/buttontimer.cpp create mode 100644 src/buttontimer/buttontimer.hpp create mode 100644 src/exception/baseexceptions.cpp create mode 100644 src/exception/baseexceptions.hpp create mode 100644 src/gpio/gpio.cpp create mode 100644 src/gpio/gpio.hpp create mode 100644 src/i2c/i2c.c create mode 100644 src/i2c/i2c.h create mode 100644 src/log/log.cpp create mode 100644 src/log/log.hpp create mode 100644 src/mc-hid-introspect.xml create mode 100644 src/mc-hid-server-glue.hpp create mode 100644 src/mc-hid-server.cpp create mode 100644 src/mc-hid-server.hpp create mode 100644 src/mc-hid-server.o create mode 100644 src/mcp23017/mcp23017.cpp create mode 100644 src/mcp23017/mcp23017.hpp create mode 100644 src/test/mcp23017-i2ctest.c create mode 100644 src/thread/thread.cpp create mode 100644 src/thread/thread.hpp create mode 100644 version.py create mode 100644 version.py.in diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..3aeea13 --- /dev/null +++ b/.gitignore @@ -0,0 +1,50 @@ +**/.dirstamp +**/.deps + +build/ +deb_dist/ +*.pyc + +# http://www.gnu.org/software/automake + +Makefile.in +/ar-lib +/mdate-sh +/py-compile +/test-driver +/ylwrap + +# http://www.gnu.org/software/autoconf + +autom4te.cache +/autoscan.log +/autoscan-*.log +/aclocal.m4 +/compile +/config.guess +/config.h.in +/config.log +/config.status +/config.sub +/configure +/configure.scan +/depcomp +/install-sh +/missing +/stamp-h1 + +# https://www.gnu.org/software/libtool/ + +/ltmain.sh + +# http://www.gnu.org/software/texinfo + +/texinfo.tex + +# http://www.gnu.org/software/m4/ + +m4/libtool.m4 +m4/ltoptions.m4 +m4/ltsugar.m4 +m4/ltversion.m4 +m4/lt~obsolete.m4 diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..5449695 --- /dev/null +++ b/Makefile @@ -0,0 +1,1151 @@ +# Makefile.in generated by automake 1.11.6 from Makefile.am. +# Makefile. Generated from Makefile.in by configure. + +# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, +# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 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. + + + + + + +am__make_dryrun = \ + { \ + am__dry=no; \ + case $$MAKEFLAGS in \ + *\\[\ \ ]*) \ + echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \ + | grep '^AM OK$$' >/dev/null || am__dry=yes;; \ + *) \ + for am__flg in $$MAKEFLAGS; do \ + case $$am__flg in \ + *=*|--*) ;; \ + *n*) am__dry=yes; break;; \ + esac; \ + done;; \ + esac; \ + test $$am__dry = yes; \ + } +pkgdatadir = $(datadir)/mediacore-hid +pkgincludedir = $(includedir)/mediacore-hid +pkglibdir = $(libdir)/mediacore-hid +pkglibexecdir = $(libexecdir)/mediacore-hid +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 = : +sbin_PROGRAMS = mediacore-hid-server$(EXEEXT) +check_PROGRAMS = mcp23017-i2ctest$(EXEEXT) +TESTS = mcp23017-i2ctest$(EXEEXT) +subdir = . +DIST_COMMON = $(am__configure_deps) $(srcdir)/Makefile.am \ + $(srcdir)/Makefile.in $(srcdir)/config.hpp.in \ + $(top_srcdir)/configure depcomp install-sh missing +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/configure.ac +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \ + configure.lineno config.status.lineno +mkinstalldirs = $(install_sh) -d +CONFIG_HEADER = config.hpp +CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = +am__installdirs = "$(DESTDIR)$(sbindir)" "$(DESTDIR)$(init_d_dirdir)" \ + "$(DESTDIR)$(dbus_confdir)" "$(DESTDIR)$(etc_dirdir)" \ + "$(DESTDIR)$(modprobe_d_dirdir)" \ + "$(DESTDIR)$(rsyslog_confdir)" +PROGRAMS = $(sbin_PROGRAMS) +am__dirstamp = $(am__leading_dot)dirstamp +am__objects_1 = src/i2c/i2c.$(OBJEXT) +am_mcp23017_i2ctest_OBJECTS = src/test/mcp23017-i2ctest.$(OBJEXT) \ + $(am__objects_1) +mcp23017_i2ctest_OBJECTS = $(am_mcp23017_i2ctest_OBJECTS) +mcp23017_i2ctest_DEPENDENCIES = +am__objects_2 = src/gpio/gpio.$(OBJEXT) \ + src/mcp23017/mcp23017.$(OBJEXT) \ + src/exception/baseexceptions.$(OBJEXT) $(am__objects_1) +am__objects_3 = src/log/log.$(OBJEXT) src/thread/thread.$(OBJEXT) \ + src/buttontimer/buttontimer.$(OBJEXT) +am_mediacore_hid_server_OBJECTS = src/mc-hid-server.$(OBJEXT) \ + $(am__objects_2) $(am__objects_3) +mediacore_hid_server_OBJECTS = $(am_mediacore_hid_server_OBJECTS) +am__DEPENDENCIES_1 = +mediacore_hid_server_DEPENDENCIES = $(am__DEPENDENCIES_1) +am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; +am__vpath_adj = case $$p in \ + $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ + *) f=$$p;; \ + esac; +am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; +am__install_max = 40 +am__nobase_strip_setup = \ + srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` +am__nobase_strip = \ + for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" +am__nobase_list = $(am__nobase_strip_setup); \ + for p in $$list; do echo "$$p $$p"; done | \ + sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ + $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ + if (++n[$$2] == $(am__install_max)) \ + { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ + END { for (dir in files) print dir, files[dir] }' +am__base_list = \ + sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ + sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' +am__uninstall_files_from_dir = { \ + test -z "$$files" \ + || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ + || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ + $(am__cd) "$$dir" && rm -f $$files; }; \ + } +SCRIPTS = $(init_d_dir_SCRIPTS) +DEFAULT_INCLUDES = -I. +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) +CCLD = $(CC) +LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ +CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ + $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) +CXXLD = $(CXX) +CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \ + -o $@ +SOURCES = $(mcp23017_i2ctest_SOURCES) $(mediacore_hid_server_SOURCES) +DIST_SOURCES = $(mcp23017_i2ctest_SOURCES) \ + $(mediacore_hid_server_SOURCES) +am__can_run_installinfo = \ + case $$AM_UPDATE_INFO_DIR in \ + n|no|NO) false;; \ + *) (install-info --version) >/dev/null 2>&1;; \ + esac +DATA = $(dbus_conf_DATA) $(etc_dir_DATA) $(modprobe_d_dir_DATA) \ + $(rsyslog_conf_DATA) +ETAGS = etags +CTAGS = ctags +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +distdir = $(PACKAGE)-$(VERSION) +top_distdir = $(distdir) +am__remove_distdir = \ + if test -d "$(distdir)"; then \ + find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \ + && rm -rf "$(distdir)" \ + || { sleep 5 && rm -rf "$(distdir)"; }; \ + else :; fi +DIST_ARCHIVES = $(distdir).tar.gz +GZIP_ENV = --best +distuninstallcheck_listfiles = find . -type f -print +am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \ + | sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$' +distcleancheck_listfiles = find . -type f -print +ACLOCAL = ${SHELL} /opt/mediacore/mediacore_hid/missing --run aclocal-1.11 +AMTAR = $${TAR-tar} +AUTOCONF = ${SHELL} /opt/mediacore/mediacore_hid/missing --run autoconf +AUTOHEADER = ${SHELL} /opt/mediacore/mediacore_hid/missing --run autoheader +AUTOMAKE = ${SHELL} /opt/mediacore/mediacore_hid/missing --run automake-1.11 +AWK = mawk +BOOST_CPPFLAGS = -I/usr/include +BOOST_LDFLAGS = -L/usr/lib +CC = gcc +CCDEPMODE = depmode=gcc3 +CFLAGS = -g -O2 +CPPFLAGS = +CXX = g++ +CXXDEPMODE = depmode=gcc3 +CXXFLAGS = -g -O2 +CYGPATH_W = echo +DBUSXX_CHECK = yes +DEBUILD = /usr/bin/dpkg-buildpackage +DEFS = -DHAVE_CONFIG_H +DEPDIR = .deps +DEPS_CFLAGS = -DDBUS_API_SUBJECT_TO_CHANGE -I/usr/include/dbus-c++-1 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include +DEPS_LIBS = -ldbus-c++-1 -ldbus-1 +DHMAKE = /usr/bin/dh_make +ECHO_C = +ECHO_N = -n +ECHO_T = +EXEEXT = +INSTALL = /usr/bin/install -c +INSTALL_DATA = ${INSTALL} -m 644 +INSTALL_PROGRAM = ${INSTALL} +INSTALL_SCRIPT = ${INSTALL} +INSTALL_STRIP_PROGRAM = $(install_sh) -c -s +LDFLAGS = +LIBOBJS = +LIBS = +LTLIBOBJS = +MAKEINFO = ${SHELL} /opt/mediacore/mediacore_hid/missing --run makeinfo +MKDIR_P = /bin/mkdir -p +OBJEXT = o +PACKAGE = mediacore-hid +PACKAGE_BUGREPORT = bugs@miqra.nl +PACKAGE_NAME = MediaCore HID Server +PACKAGE_STRING = MediaCore HID Server 1.0.0 +PACKAGE_TARNAME = mediacore-hid +PACKAGE_URL = http://www.miqra.nl/ +PACKAGE_VERSION = 1.0.0 +PATH_SEPARATOR = : +PKG_CONFIG = /usr/bin/pkg-config +PKG_CONFIG_LIBDIR = +PKG_CONFIG_PATH = +SET_MAKE = +SHELL = /bin/bash +STRIP = +VERSION = 1.0.0 +abs_builddir = /opt/mediacore/mediacore_hid +abs_srcdir = /opt/mediacore/mediacore_hid +abs_top_builddir = /opt/mediacore/mediacore_hid +abs_top_srcdir = /opt/mediacore/mediacore_hid +ac_ct_CC = gcc +ac_ct_CXX = g++ +am__include = include +am__leading_dot = . +am__quote = +am__tar = $${TAR-tar} chof - "$$tardir" +am__untar = $${TAR-tar} xf - +bindir = ${exec_prefix}/bin +build_alias = +builddir = . +datadir = ${datarootdir} +datarootdir = ${prefix}/share +docdir = ${datarootdir}/doc/${PACKAGE_TARNAME} +dvidir = ${docdir} +exec_prefix = ${prefix} +host_alias = +htmldir = ${docdir} +includedir = ${prefix}/include +infodir = ${datarootdir}/info +install_sh = ${SHELL} /opt/mediacore/mediacore_hid/install-sh +libdir = ${exec_prefix}/lib +libexecdir = ${exec_prefix}/libexec +localedir = ${datarootdir}/locale +localstatedir = ${prefix}/var +mandir = ${datarootdir}/man +mkdir_p = /bin/mkdir -p +oldincludedir = /usr/include +pdfdir = ${docdir} +prefix = /usr/local +program_transform_name = s,x,x, +psdir = ${docdir} +sbindir = ${exec_prefix}/sbin +sharedstatedir = ${prefix}/com +srcdir = . +sysconfdir = ${prefix}/etc +target_alias = +top_build_prefix = +top_builddir = . +top_srcdir = . +AUTOMAKE_OPTIONS = subdir-objects +ACLOCAL_AMFLAGS = ${ACLOCAL_FLAGS} +AM_CPPFLAGS = $(DEPS_CFLAGS) +DISTCLEANFILES = src/mc-hid-server-glue.hpp \ + script/init.d/mediacore-hid + +I2C_SRC = src/i2c/i2c.c \ + src/i2c/i2c.h + +MCP_GPIO_SRC = src/gpio/gpio.hpp \ + src/gpio/gpio.cpp \ + src/mcp23017/mcp23017.hpp \ + src/mcp23017/mcp23017.cpp \ + src/exception/baseexceptions.hpp \ + src/exception/baseexceptions.cpp \ + $(I2C_SRC) + +SUPPORT_SRC = src/log/log.hpp \ + src/log/log.cpp \ + src/thread/thread.hpp \ + src/thread/thread.cpp \ + src/buttontimer/buttontimer.hpp \ + src/buttontimer/buttontimer.cpp + +EXTRA_DIST = \ + cfg/dbus/nl.miqra.MediaCore.Hid.conf \ + cfg/init.d/mediacore-hid.in \ + cfg/rsyslog/syslog.MediaCore.Hid.conf \ + src/mc-hid-introspect.xml \ + cfg/modules \ + cfg/modprobe.d/raspi-blacklist.conf + +init_d_dirdir = $(sysconfdir)/init.d +init_d_dir_SCRIPTS = cfg/init.d/mediacore-hid +dbus_confdir = $(sysconfdir)/dbus-1/system.d +dbus_conf_DATA = cfg/dbus/nl.miqra.MediaCore.Hid.conf +rsyslog_confdir = $(sysconfdir)/rsyslog.d +rsyslog_conf_DATA = cfg/rsyslog/syslog.MediaCore.Hid.conf +etc_dirdir = $(sysconfdir) +etc_dir_DATA = cfg/modules +modprobe_d_dirdir = $(sysconfdir)/modprobe.d +modprobe_d_dir_DATA = cfg/modprobe.d/raspi-blacklist.conf +BUILT_SOURCES = src/mc-hid-server-glue.hpp +mediacore_hid_server_SOURCES = src/mc-hid-server.cpp \ + src/mc-hid-server.hpp \ + src/mc-hid-server-glue.hpp \ + $(MCP_GPIO_SRC) \ + $(SUPPORT_SRC) + +mediacore_hid_server_LDADD = $(DEPS_LIBS) -lpthread -lrt +mcp23017_i2ctest_SOURCES = src/test/mcp23017-i2ctest.c \ + $(I2C_SRC) + +mcp23017_i2ctest_LDADD = -lpthread +all: $(BUILT_SOURCES) config.hpp + $(MAKE) $(AM_MAKEFLAGS) all-am + +.SUFFIXES: +.SUFFIXES: .c .cpp .o .obj +am--refresh: Makefile + @: +$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + echo ' cd $(srcdir) && $(AUTOMAKE) --foreign'; \ + $(am__cd) $(srcdir) && $(AUTOMAKE) --foreign \ + && exit 0; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --foreign Makefile +.PRECIOUS: Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + echo ' $(SHELL) ./config.status'; \ + $(SHELL) ./config.status;; \ + *) \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + $(SHELL) ./config.status --recheck + +$(top_srcdir)/configure: $(am__configure_deps) + $(am__cd) $(srcdir) && $(AUTOCONF) +$(ACLOCAL_M4): $(am__aclocal_m4_deps) + $(am__cd) $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS) +$(am__aclocal_m4_deps): + +config.hpp: stamp-h1 + @if test ! -f $@; then rm -f stamp-h1; else :; fi + @if test ! -f $@; then $(MAKE) $(AM_MAKEFLAGS) stamp-h1; else :; fi + +stamp-h1: $(srcdir)/config.hpp.in $(top_builddir)/config.status + @rm -f stamp-h1 + cd $(top_builddir) && $(SHELL) ./config.status config.hpp +$(srcdir)/config.hpp.in: $(am__configure_deps) + ($(am__cd) $(top_srcdir) && $(AUTOHEADER)) + rm -f stamp-h1 + touch $@ + +distclean-hdr: + -rm -f config.hpp stamp-h1 + +clean-checkPROGRAMS: + -test -z "$(check_PROGRAMS)" || rm -f $(check_PROGRAMS) +install-sbinPROGRAMS: $(sbin_PROGRAMS) + @$(NORMAL_INSTALL) + @list='$(sbin_PROGRAMS)'; test -n "$(sbindir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(sbindir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(sbindir)" || exit 1; \ + fi; \ + for p in $$list; do echo "$$p $$p"; done | \ + sed 's/$(EXEEXT)$$//' | \ + while read p p1; do if test -f $$p; \ + then echo "$$p"; echo "$$p"; else :; fi; \ + done | \ + sed -e 'p;s,.*/,,;n;h' -e 's|.*|.|' \ + -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \ + sed 'N;N;N;s,\n, ,g' | \ + $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \ + { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ + if ($$2 == $$4) files[d] = files[d] " " $$1; \ + else { print "f", $$3 "/" $$4, $$1; } } \ + END { for (d in files) print "f", d, files[d] }' | \ + while read type dir files; do \ + if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ + test -z "$$files" || { \ + echo " $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(sbindir)$$dir'"; \ + $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(sbindir)$$dir" || exit $$?; \ + } \ + ; done + +uninstall-sbinPROGRAMS: + @$(NORMAL_UNINSTALL) + @list='$(sbin_PROGRAMS)'; test -n "$(sbindir)" || list=; \ + files=`for p in $$list; do echo "$$p"; done | \ + sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \ + -e 's/$$/$(EXEEXT)/' `; \ + test -n "$$list" || exit 0; \ + echo " ( cd '$(DESTDIR)$(sbindir)' && rm -f" $$files ")"; \ + cd "$(DESTDIR)$(sbindir)" && rm -f $$files + +clean-sbinPROGRAMS: + -test -z "$(sbin_PROGRAMS)" || rm -f $(sbin_PROGRAMS) +src/test/$(am__dirstamp): + @$(MKDIR_P) src/test + @: > src/test/$(am__dirstamp) +src/test/$(DEPDIR)/$(am__dirstamp): + @$(MKDIR_P) src/test/$(DEPDIR) + @: > src/test/$(DEPDIR)/$(am__dirstamp) +src/test/mcp23017-i2ctest.$(OBJEXT): src/test/$(am__dirstamp) \ + src/test/$(DEPDIR)/$(am__dirstamp) +src/i2c/$(am__dirstamp): + @$(MKDIR_P) src/i2c + @: > src/i2c/$(am__dirstamp) +src/i2c/$(DEPDIR)/$(am__dirstamp): + @$(MKDIR_P) src/i2c/$(DEPDIR) + @: > src/i2c/$(DEPDIR)/$(am__dirstamp) +src/i2c/i2c.$(OBJEXT): src/i2c/$(am__dirstamp) \ + src/i2c/$(DEPDIR)/$(am__dirstamp) +mcp23017-i2ctest$(EXEEXT): $(mcp23017_i2ctest_OBJECTS) $(mcp23017_i2ctest_DEPENDENCIES) $(EXTRA_mcp23017_i2ctest_DEPENDENCIES) + @rm -f mcp23017-i2ctest$(EXEEXT) + $(LINK) $(mcp23017_i2ctest_OBJECTS) $(mcp23017_i2ctest_LDADD) $(LIBS) +src/$(am__dirstamp): + @$(MKDIR_P) src + @: > src/$(am__dirstamp) +src/$(DEPDIR)/$(am__dirstamp): + @$(MKDIR_P) src/$(DEPDIR) + @: > src/$(DEPDIR)/$(am__dirstamp) +src/mc-hid-server.$(OBJEXT): src/$(am__dirstamp) \ + src/$(DEPDIR)/$(am__dirstamp) +src/gpio/$(am__dirstamp): + @$(MKDIR_P) src/gpio + @: > src/gpio/$(am__dirstamp) +src/gpio/$(DEPDIR)/$(am__dirstamp): + @$(MKDIR_P) src/gpio/$(DEPDIR) + @: > src/gpio/$(DEPDIR)/$(am__dirstamp) +src/gpio/gpio.$(OBJEXT): src/gpio/$(am__dirstamp) \ + src/gpio/$(DEPDIR)/$(am__dirstamp) +src/mcp23017/$(am__dirstamp): + @$(MKDIR_P) src/mcp23017 + @: > src/mcp23017/$(am__dirstamp) +src/mcp23017/$(DEPDIR)/$(am__dirstamp): + @$(MKDIR_P) src/mcp23017/$(DEPDIR) + @: > src/mcp23017/$(DEPDIR)/$(am__dirstamp) +src/mcp23017/mcp23017.$(OBJEXT): src/mcp23017/$(am__dirstamp) \ + src/mcp23017/$(DEPDIR)/$(am__dirstamp) +src/exception/$(am__dirstamp): + @$(MKDIR_P) src/exception + @: > src/exception/$(am__dirstamp) +src/exception/$(DEPDIR)/$(am__dirstamp): + @$(MKDIR_P) src/exception/$(DEPDIR) + @: > src/exception/$(DEPDIR)/$(am__dirstamp) +src/exception/baseexceptions.$(OBJEXT): src/exception/$(am__dirstamp) \ + src/exception/$(DEPDIR)/$(am__dirstamp) +src/log/$(am__dirstamp): + @$(MKDIR_P) src/log + @: > src/log/$(am__dirstamp) +src/log/$(DEPDIR)/$(am__dirstamp): + @$(MKDIR_P) src/log/$(DEPDIR) + @: > src/log/$(DEPDIR)/$(am__dirstamp) +src/log/log.$(OBJEXT): src/log/$(am__dirstamp) \ + src/log/$(DEPDIR)/$(am__dirstamp) +src/thread/$(am__dirstamp): + @$(MKDIR_P) src/thread + @: > src/thread/$(am__dirstamp) +src/thread/$(DEPDIR)/$(am__dirstamp): + @$(MKDIR_P) src/thread/$(DEPDIR) + @: > src/thread/$(DEPDIR)/$(am__dirstamp) +src/thread/thread.$(OBJEXT): src/thread/$(am__dirstamp) \ + src/thread/$(DEPDIR)/$(am__dirstamp) +src/buttontimer/$(am__dirstamp): + @$(MKDIR_P) src/buttontimer + @: > src/buttontimer/$(am__dirstamp) +src/buttontimer/$(DEPDIR)/$(am__dirstamp): + @$(MKDIR_P) src/buttontimer/$(DEPDIR) + @: > src/buttontimer/$(DEPDIR)/$(am__dirstamp) +src/buttontimer/buttontimer.$(OBJEXT): \ + src/buttontimer/$(am__dirstamp) \ + src/buttontimer/$(DEPDIR)/$(am__dirstamp) +mediacore-hid-server$(EXEEXT): $(mediacore_hid_server_OBJECTS) $(mediacore_hid_server_DEPENDENCIES) $(EXTRA_mediacore_hid_server_DEPENDENCIES) + @rm -f mediacore-hid-server$(EXEEXT) + $(CXXLINK) $(mediacore_hid_server_OBJECTS) $(mediacore_hid_server_LDADD) $(LIBS) +install-init_d_dirSCRIPTS: $(init_d_dir_SCRIPTS) + @$(NORMAL_INSTALL) + @list='$(init_d_dir_SCRIPTS)'; test -n "$(init_d_dirdir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(init_d_dirdir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(init_d_dirdir)" || exit 1; \ + fi; \ + for p in $$list; do \ + if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ + if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \ + done | \ + sed -e 'p;s,.*/,,;n' \ + -e 'h;s|.*|.|' \ + -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \ + $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \ + { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ + if ($$2 == $$4) { files[d] = files[d] " " $$1; \ + if (++n[d] == $(am__install_max)) { \ + print "f", d, files[d]; n[d] = 0; files[d] = "" } } \ + else { print "f", d "/" $$4, $$1 } } \ + END { for (d in files) print "f", d, files[d] }' | \ + while read type dir files; do \ + if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ + test -z "$$files" || { \ + echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(init_d_dirdir)$$dir'"; \ + $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(init_d_dirdir)$$dir" || exit $$?; \ + } \ + ; done + +uninstall-init_d_dirSCRIPTS: + @$(NORMAL_UNINSTALL) + @list='$(init_d_dir_SCRIPTS)'; test -n "$(init_d_dirdir)" || exit 0; \ + files=`for p in $$list; do echo "$$p"; done | \ + sed -e 's,.*/,,;$(transform)'`; \ + dir='$(DESTDIR)$(init_d_dirdir)'; $(am__uninstall_files_from_dir) + +mostlyclean-compile: + -rm -f *.$(OBJEXT) + -rm -f src/buttontimer/buttontimer.$(OBJEXT) + -rm -f src/exception/baseexceptions.$(OBJEXT) + -rm -f src/gpio/gpio.$(OBJEXT) + -rm -f src/i2c/i2c.$(OBJEXT) + -rm -f src/log/log.$(OBJEXT) + -rm -f src/mc-hid-server.$(OBJEXT) + -rm -f src/mcp23017/mcp23017.$(OBJEXT) + -rm -f src/test/mcp23017-i2ctest.$(OBJEXT) + -rm -f src/thread/thread.$(OBJEXT) + +distclean-compile: + -rm -f *.tab.c + +include src/$(DEPDIR)/mc-hid-server.Po +include src/buttontimer/$(DEPDIR)/buttontimer.Po +include src/exception/$(DEPDIR)/baseexceptions.Po +include src/gpio/$(DEPDIR)/gpio.Po +include src/i2c/$(DEPDIR)/i2c.Po +include src/log/$(DEPDIR)/log.Po +include src/mcp23017/$(DEPDIR)/mcp23017.Po +include src/test/$(DEPDIR)/mcp23017-i2ctest.Po +include src/thread/$(DEPDIR)/thread.Po + +.c.o: + depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\ + $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\ + $(am__mv) $$depbase.Tpo $$depbase.Po +# source='$<' object='$@' libtool=no \ +# DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \ +# $(COMPILE) -c -o $@ $< + +.c.obj: + depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`;\ + $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ `$(CYGPATH_W) '$<'` &&\ + $(am__mv) $$depbase.Tpo $$depbase.Po +# source='$<' object='$@' libtool=no \ +# DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \ +# $(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'` + +.cpp.o: + depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\ + $(CXXCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\ + $(am__mv) $$depbase.Tpo $$depbase.Po +# source='$<' object='$@' libtool=no \ +# DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) \ +# $(CXXCOMPILE) -c -o $@ $< + +.cpp.obj: + depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`;\ + $(CXXCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ `$(CYGPATH_W) '$<'` &&\ + $(am__mv) $$depbase.Tpo $$depbase.Po +# source='$<' object='$@' libtool=no \ +# DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) \ +# $(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'` +install-dbus_confDATA: $(dbus_conf_DATA) + @$(NORMAL_INSTALL) + @list='$(dbus_conf_DATA)'; test -n "$(dbus_confdir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(dbus_confdir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(dbus_confdir)" || exit 1; \ + fi; \ + for p in $$list; do \ + if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ + echo "$$d$$p"; \ + done | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(dbus_confdir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(dbus_confdir)" || exit $$?; \ + done + +uninstall-dbus_confDATA: + @$(NORMAL_UNINSTALL) + @list='$(dbus_conf_DATA)'; test -n "$(dbus_confdir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ + dir='$(DESTDIR)$(dbus_confdir)'; $(am__uninstall_files_from_dir) +install-etc_dirDATA: $(etc_dir_DATA) + @$(NORMAL_INSTALL) + @list='$(etc_dir_DATA)'; test -n "$(etc_dirdir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(etc_dirdir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(etc_dirdir)" || exit 1; \ + fi; \ + for p in $$list; do \ + if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ + echo "$$d$$p"; \ + done | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(etc_dirdir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(etc_dirdir)" || exit $$?; \ + done + +uninstall-etc_dirDATA: + @$(NORMAL_UNINSTALL) + @list='$(etc_dir_DATA)'; test -n "$(etc_dirdir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ + dir='$(DESTDIR)$(etc_dirdir)'; $(am__uninstall_files_from_dir) +install-modprobe_d_dirDATA: $(modprobe_d_dir_DATA) + @$(NORMAL_INSTALL) + @list='$(modprobe_d_dir_DATA)'; test -n "$(modprobe_d_dirdir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(modprobe_d_dirdir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(modprobe_d_dirdir)" || exit 1; \ + fi; \ + for p in $$list; do \ + if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ + echo "$$d$$p"; \ + done | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(modprobe_d_dirdir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(modprobe_d_dirdir)" || exit $$?; \ + done + +uninstall-modprobe_d_dirDATA: + @$(NORMAL_UNINSTALL) + @list='$(modprobe_d_dir_DATA)'; test -n "$(modprobe_d_dirdir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ + dir='$(DESTDIR)$(modprobe_d_dirdir)'; $(am__uninstall_files_from_dir) +install-rsyslog_confDATA: $(rsyslog_conf_DATA) + @$(NORMAL_INSTALL) + @list='$(rsyslog_conf_DATA)'; test -n "$(rsyslog_confdir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(rsyslog_confdir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(rsyslog_confdir)" || exit 1; \ + fi; \ + for p in $$list; do \ + if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ + echo "$$d$$p"; \ + done | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(rsyslog_confdir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(rsyslog_confdir)" || exit $$?; \ + done + +uninstall-rsyslog_confDATA: + @$(NORMAL_UNINSTALL) + @list='$(rsyslog_conf_DATA)'; test -n "$(rsyslog_confdir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ + dir='$(DESTDIR)$(rsyslog_confdir)'; $(am__uninstall_files_from_dir) + +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) config.hpp.in $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + set x; \ + here=`pwd`; \ + list='$(SOURCES) $(HEADERS) config.hpp.in $(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) config.hpp.in $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + list='$(SOURCES) $(HEADERS) config.hpp.in $(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 + +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + col="$$grn"; \ + else \ + col="$$red"; \ + fi; \ + echo "$${col}$$dashes$${std}"; \ + echo "$${col}$$banner$${std}"; \ + test -z "$$skipped" || echo "$${col}$$skipped$${std}"; \ + test -z "$$report" || echo "$${col}$$report$${std}"; \ + echo "$${col}$$dashes$${std}"; \ + test "$$failed" -eq 0; \ + else :; fi + +distdir: $(DISTFILES) + $(am__remove_distdir) + test -d "$(distdir)" || mkdir "$(distdir)" + @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 + -test -n "$(am__skip_mode_fix)" \ + || find "$(distdir)" -type d ! -perm -755 \ + -exec chmod u+rwx,go+rx {} \; -o \ + ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \ + ! -type d ! -perm -400 -exec chmod a+r {} \; -o \ + ! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \ + || chmod -R a+r "$(distdir)" +dist-gzip: distdir + tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz + $(am__remove_distdir) + +dist-bzip2: distdir + tardir=$(distdir) && $(am__tar) | BZIP2=$${BZIP2--9} bzip2 -c >$(distdir).tar.bz2 + $(am__remove_distdir) + +dist-lzip: distdir + tardir=$(distdir) && $(am__tar) | lzip -c $${LZIP_OPT--9} >$(distdir).tar.lz + $(am__remove_distdir) + +dist-lzma: distdir + tardir=$(distdir) && $(am__tar) | lzma -9 -c >$(distdir).tar.lzma + $(am__remove_distdir) + +dist-xz: distdir + tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz + $(am__remove_distdir) + +dist-tarZ: distdir + tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z + $(am__remove_distdir) + +dist-shar: distdir + shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz + $(am__remove_distdir) + +dist-zip: distdir + -rm -f $(distdir).zip + zip -rq $(distdir).zip $(distdir) + $(am__remove_distdir) + +dist dist-all: distdir + tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz + $(am__remove_distdir) + +# This target untars the dist file and tries a VPATH configuration. Then +# it guarantees that the distribution is self-contained by making another +# tarfile. +distcheck: dist + case '$(DIST_ARCHIVES)' in \ + *.tar.gz*) \ + GZIP=$(GZIP_ENV) gzip -dc $(distdir).tar.gz | $(am__untar) ;;\ + *.tar.bz2*) \ + bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\ + *.tar.lzma*) \ + lzma -dc $(distdir).tar.lzma | $(am__untar) ;;\ + *.tar.lz*) \ + lzip -dc $(distdir).tar.lz | $(am__untar) ;;\ + *.tar.xz*) \ + xz -dc $(distdir).tar.xz | $(am__untar) ;;\ + *.tar.Z*) \ + uncompress -c $(distdir).tar.Z | $(am__untar) ;;\ + *.shar.gz*) \ + GZIP=$(GZIP_ENV) gzip -dc $(distdir).shar.gz | unshar ;;\ + *.zip*) \ + unzip $(distdir).zip ;;\ + esac + chmod -R a-w $(distdir); chmod u+w $(distdir) + mkdir $(distdir)/_build + mkdir $(distdir)/_inst + chmod a-w $(distdir) + test -d $(distdir)/_build || exit 0; \ + dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \ + && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \ + && am__cwd=`pwd` \ + && $(am__cd) $(distdir)/_build \ + && ../configure --srcdir=.. --prefix="$$dc_install_base" \ + $(AM_DISTCHECK_CONFIGURE_FLAGS) \ + $(DISTCHECK_CONFIGURE_FLAGS) \ + && $(MAKE) $(AM_MAKEFLAGS) \ + && $(MAKE) $(AM_MAKEFLAGS) dvi \ + && $(MAKE) $(AM_MAKEFLAGS) check \ + && $(MAKE) $(AM_MAKEFLAGS) install \ + && $(MAKE) $(AM_MAKEFLAGS) installcheck \ + && $(MAKE) $(AM_MAKEFLAGS) uninstall \ + && $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \ + distuninstallcheck \ + && chmod -R a-w "$$dc_install_base" \ + && ({ \ + (cd ../.. && umask 077 && mkdir "$$dc_destdir") \ + && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \ + && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \ + && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \ + distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \ + } || { rm -rf "$$dc_destdir"; exit 1; }) \ + && rm -rf "$$dc_destdir" \ + && $(MAKE) $(AM_MAKEFLAGS) dist \ + && rm -rf $(DIST_ARCHIVES) \ + && $(MAKE) $(AM_MAKEFLAGS) distcleancheck \ + && cd "$$am__cwd" \ + || exit 1 + $(am__remove_distdir) + @(echo "$(distdir) archives ready for distribution: "; \ + list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \ + sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x' +distuninstallcheck: + @test -n '$(distuninstallcheck_dir)' || { \ + echo 'ERROR: trying to run $@ with an empty' \ + '$$(distuninstallcheck_dir)' >&2; \ + exit 1; \ + }; \ + $(am__cd) '$(distuninstallcheck_dir)' || { \ + echo 'ERROR: cannot chdir into $(distuninstallcheck_dir)' >&2; \ + exit 1; \ + }; \ + test `$(am__distuninstallcheck_listfiles) | wc -l` -eq 0 \ + || { echo "ERROR: files left after uninstall:" ; \ + if test -n "$(DESTDIR)"; then \ + echo " (check DESTDIR support)"; \ + fi ; \ + $(distuninstallcheck_listfiles) ; \ + exit 1; } >&2 +distcleancheck: distclean + @if test '$(srcdir)' = . ; then \ + echo "ERROR: distcleancheck can only run from a VPATH build" ; \ + exit 1 ; \ + fi + @test `$(distcleancheck_listfiles) | wc -l` -eq 0 \ + || { echo "ERROR: files left in build directory after distclean:" ; \ + $(distcleancheck_listfiles) ; \ + exit 1; } >&2 +check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) $(check_PROGRAMS) + $(MAKE) $(AM_MAKEFLAGS) check-TESTS +check: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) check-am +all-am: Makefile $(PROGRAMS) $(SCRIPTS) $(DATA) config.hpp +installdirs: + for dir in "$(DESTDIR)$(sbindir)" "$(DESTDIR)$(init_d_dirdir)" "$(DESTDIR)$(dbus_confdir)" "$(DESTDIR)$(etc_dirdir)" "$(DESTDIR)$(modprobe_d_dirdir)" "$(DESTDIR)$(rsyslog_confdir)"; do \ + test -z "$$dir" || $(MKDIR_P) "$$dir"; \ + done +install: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) 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: + if test -z '$(STRIP)'; then \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + install; \ + else \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ + fi +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) + -rm -f src/$(DEPDIR)/$(am__dirstamp) + -rm -f src/$(am__dirstamp) + -rm -f src/buttontimer/$(DEPDIR)/$(am__dirstamp) + -rm -f src/buttontimer/$(am__dirstamp) + -rm -f src/exception/$(DEPDIR)/$(am__dirstamp) + -rm -f src/exception/$(am__dirstamp) + -rm -f src/gpio/$(DEPDIR)/$(am__dirstamp) + -rm -f src/gpio/$(am__dirstamp) + -rm -f src/i2c/$(DEPDIR)/$(am__dirstamp) + -rm -f src/i2c/$(am__dirstamp) + -rm -f src/log/$(DEPDIR)/$(am__dirstamp) + -rm -f src/log/$(am__dirstamp) + -rm -f src/mcp23017/$(DEPDIR)/$(am__dirstamp) + -rm -f src/mcp23017/$(am__dirstamp) + -rm -f src/test/$(DEPDIR)/$(am__dirstamp) + -rm -f src/test/$(am__dirstamp) + -rm -f src/thread/$(DEPDIR)/$(am__dirstamp) + -rm -f src/thread/$(am__dirstamp) + -test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." + -test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES) +clean: clean-am + +clean-am: clean-checkPROGRAMS clean-generic clean-sbinPROGRAMS \ + mostlyclean-am + +distclean: distclean-am + -rm -f $(am__CONFIG_DISTCLEAN_FILES) + -rm -rf src/$(DEPDIR) src/buttontimer/$(DEPDIR) src/exception/$(DEPDIR) src/gpio/$(DEPDIR) src/i2c/$(DEPDIR) src/log/$(DEPDIR) src/mcp23017/$(DEPDIR) src/test/$(DEPDIR) src/thread/$(DEPDIR) + -rm -f Makefile +distclean-am: clean-am distclean-compile distclean-generic \ + distclean-hdr distclean-tags + +dvi: dvi-am + +dvi-am: + +html: html-am + +html-am: + +info: info-am + +info-am: + +install-data-am: install-dbus_confDATA install-etc_dirDATA \ + install-init_d_dirSCRIPTS install-modprobe_d_dirDATA \ + install-rsyslog_confDATA + +install-dvi: install-dvi-am + +install-dvi-am: + +install-exec-am: install-sbinPROGRAMS + +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 -f $(am__CONFIG_DISTCLEAN_FILES) + -rm -rf $(top_srcdir)/autom4te.cache + -rm -rf src/$(DEPDIR) src/buttontimer/$(DEPDIR) src/exception/$(DEPDIR) src/gpio/$(DEPDIR) src/i2c/$(DEPDIR) src/log/$(DEPDIR) src/mcp23017/$(DEPDIR) src/test/$(DEPDIR) src/thread/$(DEPDIR) + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-am + +mostlyclean-am: mostlyclean-compile mostlyclean-generic + +pdf: pdf-am + +pdf-am: + +ps: ps-am + +ps-am: + +uninstall-am: uninstall-dbus_confDATA uninstall-etc_dirDATA \ + uninstall-init_d_dirSCRIPTS uninstall-modprobe_d_dirDATA \ + uninstall-rsyslog_confDATA uninstall-sbinPROGRAMS + +.MAKE: all check check-am install install-am install-strip + +.PHONY: CTAGS GTAGS all all-am am--refresh check check-TESTS check-am \ + clean clean-checkPROGRAMS clean-generic clean-sbinPROGRAMS \ + ctags dist dist-all dist-bzip2 dist-gzip dist-lzip dist-lzma \ + dist-shar dist-tarZ dist-xz dist-zip distcheck distclean \ + distclean-compile distclean-generic distclean-hdr \ + distclean-tags distcleancheck distdir distuninstallcheck dvi \ + dvi-am html html-am info info-am install install-am \ + install-data install-data-am install-dbus_confDATA install-dvi \ + install-dvi-am install-etc_dirDATA install-exec \ + install-exec-am install-html install-html-am install-info \ + install-info-am install-init_d_dirSCRIPTS install-man \ + install-modprobe_d_dirDATA install-pdf install-pdf-am \ + install-ps install-ps-am install-rsyslog_confDATA \ + install-sbinPROGRAMS install-strip installcheck \ + installcheck-am installdirs maintainer-clean \ + maintainer-clean-generic mostlyclean mostlyclean-compile \ + mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \ + uninstall-am uninstall-dbus_confDATA uninstall-etc_dirDATA \ + uninstall-init_d_dirSCRIPTS uninstall-modprobe_d_dirDATA \ + uninstall-rsyslog_confDATA uninstall-sbinPROGRAMS + + +src/mc-hid-server-glue.hpp: src/mc-hid-introspect.xml + dbusxx-xml2cpp $^ --adaptor=$@ + +cfg/init.d/mediacore-hid: cfg/init.d/mediacore-hid.in + cat $^ > $@ + sed -i "s#@BIN_DIR@#$(bindir)#" $@ + sed -i "s#@ETC_DIR@#$(sysconfdir)#" $@ + sed -i "s#@SBIN_DIR@#$(sbindir)#" $@ + +version.py: version.py.in + cat $^ > $@ + sed -i "s#@V_PACKAGE@#$(PACKAGE)#" $@ + sed -i "s#@V_VERSION\@#$(VERSION)#" $@ + +# 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: diff --git a/Makefile.am b/Makefile.am new file mode 100755 index 0000000..963997d --- /dev/null +++ b/Makefile.am @@ -0,0 +1,83 @@ +AUTOMAKE_OPTIONS = subdir-objects +ACLOCAL_AMFLAGS = ${ACLOCAL_FLAGS} + +AM_CPPFLAGS = $(DEPS_CFLAGS) + +DISTCLEANFILES = src/mc-hid-server-glue.hpp \ + script/init.d/mediacore-hid + +I2C_SRC = src/i2c/i2c.c \ + src/i2c/i2c.h + +MCP_GPIO_SRC = src/gpio/gpio.hpp \ + src/gpio/gpio.cpp \ + src/mcp23017/mcp23017.hpp \ + src/mcp23017/mcp23017.cpp \ + src/exception/baseexceptions.hpp \ + src/exception/baseexceptions.cpp \ + $(I2C_SRC) + +SUPPORT_SRC = src/log/log.hpp \ + src/log/log.cpp \ + src/thread/thread.hpp \ + src/thread/thread.cpp \ + src/buttontimer/buttontimer.hpp \ + src/buttontimer/buttontimer.cpp + +sbin_PROGRAMS = mediacore-hid-server +check_PROGRAMS = mcp23017-i2ctest +TESTS = mcp23017-i2ctest + +EXTRA_DIST = \ + cfg/dbus/nl.miqra.MediaCore.Hid.conf \ + cfg/init.d/mediacore-hid.in \ + cfg/rsyslog/syslog.MediaCore.Hid.conf \ + src/mc-hid-introspect.xml \ + cfg/modules \ + cfg/modprobe.d/raspi-blacklist.conf + +init_d_dirdir = $(sysconfdir)/init.d +init_d_dir_SCRIPTS = cfg/init.d/mediacore-hid + +dbus_confdir = $(sysconfdir)/dbus-1/system.d +dbus_conf_DATA = cfg/dbus/nl.miqra.MediaCore.Hid.conf + +rsyslog_confdir = $(sysconfdir)/rsyslog.d +rsyslog_conf_DATA = cfg/rsyslog/syslog.MediaCore.Hid.conf + +etc_dirdir = $(sysconfdir) +etc_dir_DATA = cfg/modules + +modprobe_d_dirdir = $(sysconfdir)/modprobe.d +modprobe_d_dir_DATA = cfg/modprobe.d/raspi-blacklist.conf + + +src/mc-hid-server-glue.hpp: src/mc-hid-introspect.xml + dbusxx-xml2cpp $^ --adaptor=$@ + +BUILT_SOURCES = src/mc-hid-server-glue.hpp + +mediacore_hid_server_SOURCES = src/mc-hid-server.cpp \ + src/mc-hid-server.hpp \ + src/mc-hid-server-glue.hpp \ + $(MCP_GPIO_SRC) \ + $(SUPPORT_SRC) + +mediacore_hid_server_LDADD = $(DEPS_LIBS) -lpthread -lrt + + +mcp23017_i2ctest_SOURCES = src/test/mcp23017-i2ctest.c \ + $(I2C_SRC) + +mcp23017_i2ctest_LDADD = -lpthread + +cfg/init.d/mediacore-hid: cfg/init.d/mediacore-hid.in + cat $^ > $@ + sed -i "s#@BIN_DIR@#$(bindir)#" $@ + sed -i "s#@ETC_DIR@#$(sysconfdir)#" $@ + sed -i "s#@SBIN_DIR@#$(sbindir)#" $@ + +version.py: version.py.in + cat $^ > $@ + sed -i "s#@V_PACKAGE@#$(PACKAGE)#" $@ + sed -i "s#@V_VERSION\@#$(VERSION)#" $@ \ No newline at end of file diff --git a/TESTCMDS.txt b/TESTCMDS.txt new file mode 100644 index 0000000..f344812 --- /dev/null +++ b/TESTCMDS.txt @@ -0,0 +1,8 @@ +Monitor bus: + dbus-monitor --profile "interface='nl.miqra.MediaCore.Hid'" --system + +Call method on bus: + dbus-send --system --dest=nl.miqra.MediaCore.Hid --print-reply --type=method_call /nl/miqra/MediaCore/Hid nl.miqra.MediaCore.Hid.SetColor byte:[r] byte:[g] byte:[b] + +Rebuild make system: + autoreconf -i \ No newline at end of file diff --git a/cfg/dbus/nl.miqra.MediaCore.Hid.conf b/cfg/dbus/nl.miqra.MediaCore.Hid.conf new file mode 100644 index 0000000..58c65bb --- /dev/null +++ b/cfg/dbus/nl.miqra.MediaCore.Hid.conf @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/cfg/init.d/mediacore-hid.in b/cfg/init.d/mediacore-hid.in new file mode 100644 index 0000000..d97839b --- /dev/null +++ b/cfg/init.d/mediacore-hid.in @@ -0,0 +1,163 @@ +#! /bin/sh +### BEGIN INIT INFO +# Provides: mediacorehid +# Required-Start: $syslog $dbus +# Required-Stop: $syslog $dbus +# Default-Start: 2 3 4 5 +# Default-Stop: 0 1 6 +# Short-Description: Example initscript +# Description: This file should be used to construct scripts to be +# placed in /etc/init.d. +### END INIT INFO + +# Author: Miqra Engineering <@miqra.nl> +# +# Please remove the "Author" lines above and replace them +# with your own name if you copy and modify this script. + +# Do NOT "set -e" + +# PATH should only include /usr/* if it runs after the mountnfs.sh script +PATH=/sbin:/bin:/usr/sbin:/usr/bin +DESC="Mediacore HID interface server" +NAME=mediacore-hid-server +DAEMON=@SBIN_DIR@/$NAME +DAEMON_ARGS="" +PIDFILE=/var/run/$NAME.pid +SCRIPTNAME=@ETC_DIR@/init.d/$NAME + +# Exit if the package is not installed +[ -x "$DAEMON" ] || exit 0 + +# Read configuration variable file if it is present +[ -r /etc/default/$NAME ] && . /etc/default/$NAME + +# Load the VERBOSE setting and other rcS variables +. /lib/init/vars.sh + +VERBOSE=yes + +# Define LSB log_* functions. +# Depend on lsb-base (>= 3.2-14) to ensure that this file is present +# and status_of_proc is working. +. /lib/lsb/init-functions + +# +# Function that starts the daemon/service +# +do_start() +{ + # Return + # 0 if daemon has been started + # 1 if daemon was already running + # 2 if daemon could not be started + start-stop-daemon --start --quiet --background -m --pidfile $PIDFILE --exec $DAEMON --test > /dev/null \ + || return 1 + start-stop-daemon --start --quiet --background -m --pidfile $PIDFILE --exec $DAEMON -- \ + $DAEMON_ARGS \ + || return 2 + # Add code here, if necessary, that waits for the process to be ready + # to handle requests from services started subsequently which depend + # on this one. As a last resort, sleep for some time. + sleep 0.3 + dbus-send --system --dest=nl.miqra.MediaCore.Hid --type=method_call /nl/miqra/MediaCore/Hid nl.miqra.MediaCore.Hid.SetColor byte:128 byte:0 byte:0 +} + +# +# Function that stops the daemon/service +# +do_stop() +{ + # Return + # 0 if daemon has been stopped + # 1 if daemon was already stopped + # 2 if daemon could not be stopped + # other if a failure occurred + start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile $PIDFILE --exec $DAEMON + RETVAL="$?" + [ "$RETVAL" = 2 ] && return 2 + # Wait for children to finish too if this is a daemon that forks + # and if the daemon is only ever run from this initscript. + # If the above conditions are not satisfied then add some other code + # that waits for the process to drop all resources that could be + # needed by services started subsequently. A last resort is to + # sleep for some time. + start-stop-daemon --stop --quiet --oknodo --retry=0/30/KILL/5 --exec $DAEMON + [ "$?" = 2 ] && return 2 + # Many daemons don't delete their pidfiles when they exit. + rm -f $PIDFILE + return "$RETVAL" +} + +# +# Function that sends a SIGHUP to the daemon/service +# +do_reload() { + # + # If the daemon can reload its configuration without + # restarting (for example, when it is sent a SIGHUP), + # then implement that here. + # + start-stop-daemon --stop --signal 1 --quiet --pidfile $PIDFILE --exec $DAEMON + return 0 +} + +case "$1" in + start) + [ "$VERBOSE" != no ] && log_daemon_msg "Starting $DESC" "$NAME" + do_start + case "$?" in + 0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;; + 2) [ "$VERBOSE" != no ] && log_end_msg 1 ;; + esac + ;; + stop) + [ "$VERBOSE" != no ] && log_daemon_msg "Stopping $DESC" "$NAME" + do_stop + case "$?" in + 0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;; + 2) [ "$VERBOSE" != no ] && log_end_msg 1 ;; + esac + ;; + status) + status_of_proc "$DAEMON" "$NAME" && exit 0 || exit $? + ;; + #reload|force-reload) + # + # If do_reload() is not implemented then leave this commented out + # and leave 'force-reload' as an alias for 'restart'. + # + #log_daemon_msg "Reloading $DESC" "$NAME" + #do_reload + #log_end_msg $? + #;; + restart|force-reload) + # + # If the "reload" option is implemented then remove the + # 'force-reload' alias + # + log_daemon_msg "Restarting $DESC" "$NAME" + do_stop + case "$?" in + 0|1) + do_start + case "$?" in + 0) log_end_msg 0 ;; + 1) log_end_msg 1 ;; # Old process is still running + *) log_end_msg 1 ;; # Failed to start + esac + ;; + *) + # Failed to stop + log_end_msg 1 + ;; + esac + ;; + *) + #echo "Usage: $SCRIPTNAME {start|stop|restart|reload|force-reload}" >&2 + echo "Usage: $SCRIPTNAME {start|stop|status|restart|force-reload}" >&2 + exit 3 + ;; +esac + +: diff --git a/cfg/modprobe.d/raspi-blacklist.conf b/cfg/modprobe.d/raspi-blacklist.conf new file mode 100644 index 0000000..d7e3a73 --- /dev/null +++ b/cfg/modprobe.d/raspi-blacklist.conf @@ -0,0 +1,4 @@ +# blacklist spi and i2c by default (many users don't need them) + +blacklist spi-bcm2708 +#blacklist i2c-bcm2708 diff --git a/cfg/modules b/cfg/modules new file mode 100644 index 0000000..7af9ed7 --- /dev/null +++ b/cfg/modules @@ -0,0 +1,8 @@ +# /etc/modules: kernel modules to load at boot time. +# +# This file contains the names of kernel modules that should be loaded +# at boot time, one per line. Lines beginning with "#" are ignored. +# Parameters can be specified after the module name. + +snd-bcm2835 +i2c-dev diff --git a/cfg/piio.conf b/cfg/piio.conf new file mode 100644 index 0000000..6dfdae6 --- /dev/null +++ b/cfg/piio.conf @@ -0,0 +1,148 @@ +# Example configuration file for PiIo +# +# Configuration is done in groups called I/O groups. +# Each IO group can only contain I/O's of one type, e.g. only Raspberry Pi GPIOs or only pins on one MCP23017 IO expander +# for each type there are parameters +# Each group has a unique name + +# Note that in this example config file, all actual code is initially commented out to avoid problems directly after install + +/* +# Io Group called GPIO +GPIO: +{ + # it is of I/O type "GPIO", indicating it uses Raspberry Pi internal GPIOS + type = "GPIO"; + + # Settings for this groups PWM generatoer + pwm-tickdelay-us = 1600; # Number of microseconds between ticks + pwm-ticks = 16; # Number of ticks in a pwm cycle + + # Settings for the individual I/O's + # Here too, each I/O has it's own type and it's own id. + + io: + { + # Input called 'intest' + intest: + { + # It is of type "MULTIBITIN", which means that it takes values from multiple + # bits and combines it into a single number value. + # (To use a multibit output, you can use the type "MULTIBITOUT", which takes the same configuration, minus the additional settings) + type: "MULTIBITIN"; + + # The 'pins' options specified the pins that are used for the multibit input. + # For the GPIO, it takes the BCM identifiers. Both revision 1 and 2 are supported, and converted to the proper pin automatically + # Bit order is important, MSB first, LSB last. + pins: [17, 18]; + + # Additional config options are: + + // pullup: True/False # Default: False - Enable/disable internal pullup (currently not functional on GPIO type) + // invert: True/False # Default: False - Invert the input pins before processing + // int-enabled: True/False # Default: True - Trigger an event on value change for this input + } + + # Button called 'btn' + btn: + { + # Input of type "BUTTON", which means a single input pin, treated as a button. + # Buttons can trigger only 'Pressed' and 'Held' events, which trigger when the button is either pressed + # for a minimum of (default) 25 ms, or held for a minimum of (default) 6000 ms + # These values can be configured in the IO Group config + type: "BUTTON"; + + # Button is connected on pin 4. + pin: 4; + + # Additional config options are: + + // pullup: True/False # Default: True - Enable/disable internal pullup (currently not functional on GPIO type) + // invert: True/False # Default: True - Invert the input pins before processing + // int-enabled: True/False # Default: True - Trigger an event on value change for this input + + # Note that defaults for buttons are different from defaults for other inputs (invert and pullup true by default for buttons) + + } + + # Output called 'led1' + led1: + { + # Output of type "OUTPUTPIN", which means a single output pin. + type: "OUTPUTPIN"; + + # Output on pin 23 + pin: 23; + }; + # Output called 'led1' + led2: + { + # Output of type "OUTPUTPIN", which means a single output pin. + type: "OUTPUTPIN"; + # Output on pin 24 + pin: 24; + }; + # PWM Output called 'led3' + led3: + { + # Output of type "PWMPIN", which means pwm on a single output pin. + # Note that using PWM takes up processor time, + # currently around 5% for mcp23017 pins, and up to 30% for GPIO pins. (This last value is being worked on) + type: "PWMPIN"; + + # Output on pin 23 + pin: 25; + }; + }; +} +*/ + +/* +# Io Group called GPIO +MCP1: +{ + # it is of I/O type "MCP23017", indicating it uses an MCP23017 I2C I/O expander chip + type = "MCP23017"; + + # The MCP23017 needs an I2C address, and optionally a GPIO I/O pin to receive interrupts on + address = 0x20; + intpin = 22; + + # Settings for the individual I/O's + # Here too, each I/O has it's own type and it's own id. + + # Note that the pin id's for an MCP23017 are counted from the GPA0 as pin 0 up to GPB7 as pin 15 + io: + { + # Input called 'sensor1' + sensor1: + { + # It is of type "INPUTPIN", which means that it takes the value from the single input pin + type: "INPUTPIN"; + + # Input on pin 7 + pin: 7; + } + leda: + { + # Output of type "PWMPIN", which means pwm on a single output pin. + # Note that using PWM takes up processor time, + # currently around 5% for mcp23017 pins, and up to 30% for GPIO pins. (This last value is being worked on) + type: "PWMPIN"; + + # Output on pin 8 + pin: 8; + } + ledb: + { + # Output of type "PWMPIN", which means pwm on a single output pin. + # Note that using PWM takes up processor time, + # currently around 5% for mcp23017 pins, and up to 30% for GPIO pins. (This last value is being worked on) + type: "PWMPIN"; + + # Output on pin 9 + pin: 9; + } + } +} +*/ \ No newline at end of file diff --git a/cfg/rsyslog/syslog.MediaCore.Hid.conf b/cfg/rsyslog/syslog.MediaCore.Hid.conf new file mode 100644 index 0000000..52d95c7 --- /dev/null +++ b/cfg/rsyslog/syslog.MediaCore.Hid.conf @@ -0,0 +1 @@ +local0.* -/var/log/mediacore.log \ No newline at end of file diff --git a/config.hpp b/config.hpp new file mode 100644 index 0000000..2ce0ed3 --- /dev/null +++ b/config.hpp @@ -0,0 +1,23 @@ +/* config.hpp. Generated from config.hpp.in by configure. */ +/* config.hpp.in. Generated from configure.ac by autoheader. */ + +/* define if the Boost library is available */ +#define HAVE_BOOST /**/ + +/* Define to the address where bug reports for this package should be sent. */ +#define PACKAGE_BUGREPORT "bugs@miqra.nl" + +/* Define to the full name of this package. */ +#define PACKAGE_NAME "MediaCore HID Server" + +/* Define to the full name and version of this package. */ +#define PACKAGE_STRING "MediaCore HID Server 1.0.0" + +/* Define to the one symbol short name of this package. */ +#define PACKAGE_TARNAME "mediacore-hid" + +/* Define to the home page for this package. */ +#define PACKAGE_URL "http://www.miqra.nl/" + +/* Define to the version of this package. */ +#define PACKAGE_VERSION "1.0.0" diff --git a/config.hpp.in b/config.hpp.in new file mode 100644 index 0000000..2b3fc7b --- /dev/null +++ b/config.hpp.in @@ -0,0 +1,22 @@ +/* config.hpp.in. Generated from configure.ac by autoheader. */ + +/* define if the Boost library is available */ +#undef HAVE_BOOST + +/* Define to the address where bug reports for this package should be sent. */ +#undef PACKAGE_BUGREPORT + +/* Define to the full name of this package. */ +#undef PACKAGE_NAME + +/* Define to the full name and version of this package. */ +#undef PACKAGE_STRING + +/* Define to the one symbol short name of this package. */ +#undef PACKAGE_TARNAME + +/* Define to the home page for this package. */ +#undef PACKAGE_URL + +/* Define to the version of this package. */ +#undef PACKAGE_VERSION diff --git a/config.hpp.in~ b/config.hpp.in~ new file mode 100644 index 0000000..0dd1d44 --- /dev/null +++ b/config.hpp.in~ @@ -0,0 +1,25 @@ +/* config.hpp.in. Generated from configure.ac by autoheader. */ + +/* define if the Boost library is available */ +#undef HAVE_BOOST + +/* define if the Boost::Signals library is available */ +#undef HAVE_BOOST_SIGNALS + +/* Define to the address where bug reports for this package should be sent. */ +#undef PACKAGE_BUGREPORT + +/* Define to the full name of this package. */ +#undef PACKAGE_NAME + +/* Define to the full name and version of this package. */ +#undef PACKAGE_STRING + +/* Define to the one symbol short name of this package. */ +#undef PACKAGE_TARNAME + +/* Define to the home page for this package. */ +#undef PACKAGE_URL + +/* Define to the version of this package. */ +#undef PACKAGE_VERSION diff --git a/configure.ac b/configure.ac new file mode 100755 index 0000000..2929f57 --- /dev/null +++ b/configure.ac @@ -0,0 +1,21 @@ +AC_INIT([MediaCore HID Server], [1.0.0], [bugs@miqra.nl], [mediacore-hid], [http://www.miqra.nl/]) +AC_PREREQ([2.59]) +AM_INIT_AUTOMAKE([1.11 no-define foreign subdir-objects]) +AC_CONFIG_HEADERS([config.hpp]) +AC_PROG_CXX +AC_PROG_CC +PKG_CHECK_MODULES([DEPS], [dbus-c++-1 >= 0.9.0]) + +AC_CHECK_PROG(DBUSXX_CHECK,dbusxx-xml2cpp,yes) +if test x"$DBUSXX_CHECK" != x"yes" ; then + AC_MSG_ERROR([Please install libdbus-c++-bin before installing.]) +fi + +AC_PATH_PROG([DEBUILD], [dpkg-buildpackage], [notfound]) +AC_PATH_PROG([DHMAKE], [dh_make], [notfound]) + +AX_BOOST_BASE([1.49.0]) + +AC_CONFIG_FILES([Makefile]) + +AC_OUTPUT diff --git a/deb-dependencies.txt b/deb-dependencies.txt new file mode 100644 index 0000000..08743ab --- /dev/null +++ b/deb-dependencies.txt @@ -0,0 +1,6 @@ +autoconf-archive +libboost-all-dev +libdbus-c++-bin +libdbus-c++-dev +libdbus-1-dev + diff --git a/debian/control b/debian/control new file mode 100755 index 0000000..420a9fe --- /dev/null +++ b/debian/control @@ -0,0 +1,15 @@ +Source: mediacore-hid +Section: misc +Suite: stable +Priority: optional +Maintainer: Miqra Engineering Packaging +Build-Depends: debhelper (>= 8.0.0), autotools-dev, autoconf-archive, libboost-all-dev, libdbus-c++-bin, libdbus-c++-dev, libdbus-1-dev, libtclap-dev +Standards-Version: 3.9.3 +Debian-Version: 1 +Homepage: + +Package: mediacore-hid +Architecture: any +Depends: ${shlibs:Depends}, ${misc:Depends} +Description: I/O System for Mediacore Interface + I/O server system for mediacore that exposes the i/o through DBUS for use in other applications diff --git a/debian/postinst b/debian/postinst new file mode 100644 index 0000000..297f9e4 --- /dev/null +++ b/debian/postinst @@ -0,0 +1,40 @@ +#!/bin/sh +# postinst script for piio-server +# +# see: dh_installdeb(1) + +set -e + +# summary of how this script can be called: +# * `configure' +# * `abort-upgrade' +# * `abort-remove' `in-favour' +# +# * `abort-remove' +# * `abort-deconfigure' `in-favour' +# `removing' +# +# for details, see http://www.debian.org/doc/debian-policy/ or +# the debian-policy package + + +case "$1" in + configure) + update-rc.d mediacore-hid defaults + ;; + + abort-upgrade|abort-remove|abort-deconfigure) + ;; + + *) + echo "postinst called with unknown argument \`$1'" >&2 + exit 1 + ;; +esac + +# dh_installdeb will replace this with shell code automatically +# generated by other debhelper scripts. + +#DEBHELPER# + +exit 0 diff --git a/debian/prerm b/debian/prerm new file mode 100644 index 0000000..d3cf18b --- /dev/null +++ b/debian/prerm @@ -0,0 +1,39 @@ +#!/bin/sh +# prerm script for piio-server +# +# see: dh_installdeb(1) + +set -e + +# summary of how this script can be called: +# * `remove' +# * `upgrade' +# * `failed-upgrade' +# * `remove' `in-favour' +# * `deconfigure' `in-favour' +# `removing' +# +# for details, see http://www.debian.org/doc/debian-policy/ or +# the debian-policy package + + +case "$1" in + remove|upgrade|deconfigure) + update-rc.d -f mediacore-hid remove + ;; + + failed-upgrade) + ;; + + *) + echo "prerm called with unknown argument \`$1'" >&2 + exit 1 + ;; +esac + +# dh_installdeb will replace this with shell code automatically +# generated by other debhelper scripts. + +#DEBHELPER# + +exit 0 diff --git a/debpackager.py b/debpackager.py new file mode 100644 index 0000000..d28325b --- /dev/null +++ b/debpackager.py @@ -0,0 +1,56 @@ +#!/usr/bin/python + +import os,sys +import glob +import shutil +import errno +from subprocess import call +import version + + +# Config +DEBFULLNAME="Miqra Engineering Packaging" +DEBEMAIL="packaging@miqra.nl" + + + +# Code +os.environ['DEBFULLNAME'] = DEBFULLNAME +os.environ['DEBEMAIL'] = DEBEMAIL + +## Debian package building +DEBBUILDDIR="deb_dist" +DEBSOURCEPKG="{0}_{1}.orig.tar.gz".format(version.PACKAGE, version.VERSION) +TARBALLNAME="{0}-{1}.tar.gz".format(version.PACKAGE, version.VERSION) +DEBSOURCEDIR=os.path.join(DEBBUILDDIR,"{0}-{1}".format(version.PACKAGE, version.VERSION)) +PKGDIR="{0}-{1}".format(version.PACKAGE, version.VERSION) + +PKGPATH=os.path.join(DEBBUILDDIR,PKGDIR) + +CWD = os.getcwd() + +try: + os.makedirs(DEBSOURCEDIR) +except OSError as exc: # Python >2.5 + if exc.errno == errno.EEXIST and os.path.isdir(DEBSOURCEDIR): + pass + else: raise + +call(["make","dist"]) + +shutil.move(TARBALLNAME , os.path.join(DEBBUILDDIR,DEBSOURCEPKG)) + +os.chdir(DEBBUILDDIR) +call(["tar","-xzvf",DEBSOURCEPKG]) + +print "Entering dir " + PKGDIR +os.chdir(PKGDIR) +print "Now in ", os.getcwd() +call(["dh_make --single -yes --copyright bsd"],shell=True) + +for f in glob.glob(os.path.join(CWD,"debian","*")): + dst = os.path.join(CWD,PKGPATH,"debian",os.path.basename(f)) + shutil.copy2(f,dst) + +call("debuild",shell=True) + diff --git a/debpackager.sh b/debpackager.sh new file mode 100755 index 0000000..98fb7a8 --- /dev/null +++ b/debpackager.sh @@ -0,0 +1,6 @@ +#!/bin/bash + +rm version.py +make version.py +python debpackager.py + diff --git a/sigtest b/sigtest new file mode 100755 index 0000000000000000000000000000000000000000..7da86311c4bdad94e61bfb873ffc7908cb18ae1f GIT binary patch literal 522246 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�SD6Ct61I^ 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�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 literal 0 HcmV?d00001 diff --git a/sigtest.cpp b/sigtest.cpp new file mode 100644 index 0000000..b6f6d15 --- /dev/null +++ b/sigtest.cpp @@ -0,0 +1,31 @@ +#include +//#include +#include + +using namespace boost; +using namespace std; + +struct ClassA +{ + boost::signals2::signal SigA; + boost::signals2::signal SigB; +}; + +struct ClassB +{ + void PrintFoo() { cout << "Foo" << endl; } + void PrintInt(int i) { cout << "Bar: " << i << endl; } +}; + +int main() +{ + ClassA a; + ClassB b, b2; + + a.SigA.connect(bind(&ClassB::PrintFoo, &b)); + a.SigB.connect(bind(&ClassB::PrintInt, &b, _1)); + a.SigB.connect(bind(&ClassB::PrintInt, &b2, _1)); + + a.SigA(); + a.SigB(4); +} \ No newline at end of file diff --git a/src/buttontimer/buttontimer.cpp b/src/buttontimer/buttontimer.cpp new file mode 100644 index 0000000..9e9e6a8 --- /dev/null +++ b/src/buttontimer/buttontimer.cpp @@ -0,0 +1,120 @@ +#include "buttontimer.hpp" + +#include +#ifndef CLOCK_MONOTIC +# define CLOCK_MONOTIC CLOCK_REALTIME +#endif + +ButtonTimer::ButtonTimer(uint32_t shortpress_min_ms, uint32_t longpress_ms) +{ + shortpressMinTime = shortpress_min_ms; + longpressTime = longpress_ms; + eventLock = false; + + ThreadStart(); +} + +ButtonTimer::~ButtonTimer() +{ + ThreadStop(); + +} + +void ButtonTimer::RegisterPress(uint16_t keycode) +{ + MutexLock(); + // Prevent trouble when calling this from within one of our event listeners + if(eventLock) { MutexUnlock(); return; } + + pressRegistry[keycode] = now_ms(); + MutexUnlock(); +} + + +void ButtonTimer::RegisterRelease(uint16_t keycode) +{ + uint64_t now = now_ms(); + uint64_t then; + MutexLock(); + // Prevent trouble when calling this from within one of our event listeners + if(eventLock) { MutexUnlock(); return; } + + + + if(pressRegistry.count(keycode)) + { + // if it was a long press, the key code would already have been erased, so we + // can safely fire the onShortPress event + then = pressRegistry[keycode]; + // remove from registry after release, if it was a long press, the event should have already been fired + pressRegistry.erase(keycode); + + if(now - then > shortpressMinTime) + { + eventLock = true; // lock out trouble + onShortPress(keycode); + eventLock = false; // risk of trouble gone + } + } + + MutexUnlock(); +} + +void ButtonTimer::CancelPress(uint16_t keycode) +{ + // remove button id from map (but only if it is in the map already) + MutexLock(); + // Prevent trouble when calling this from within one of our event listeners + if(eventLock) { MutexUnlock(); return; } + + if(pressRegistry.count(keycode)) + { + pressRegistry.erase(keycode); + } + MutexUnlock(); +} + +void ButtonTimer::ThreadLoop() +{ + uint64_t now = now_ms(); + std::list btnList; + boost::optional valid; + MutexLock(); + // list through all the items + + for( std::map::iterator ii=pressRegistry.begin(); ii!=pressRegistry.end(); ++ii) + { + if(now - (ii->second) >= longpressTime) // if it is in overtime + { + // Schedule to process the thing + btnList.push_back(ii->first); + } + } + + // Process listed items + for (std::list::iterator it=btnList.begin(); it != btnList.end(); ++it) + { + pressRegistry.erase(*it); + // If any validators are connected, they can retun false to indicate that this connection is not + // allowed + eventLock = true; // lock out trouble + + valid = onValidatePress(*it); + if(valid.get_value_or(true)) + { + onLongPress(*it); + } + eventLock = false; // risk of trouble gone + } + + MutexUnlock(); + usleep(50000); +} + +int64_t ButtonTimer::now_ms(void) +{ + struct timespec now; + clock_gettime(CLOCK_MONOTIC, &now); + + return ((int64_t)now.tv_sec)*1000LL + (now.tv_nsec/1000000); +} diff --git a/src/buttontimer/buttontimer.hpp b/src/buttontimer/buttontimer.hpp new file mode 100644 index 0000000..442df34 --- /dev/null +++ b/src/buttontimer/buttontimer.hpp @@ -0,0 +1,35 @@ +#include "../thread/thread.hpp" +#include +#include + +#include + +// combiner which perfoms a kind of and function on all signal returns, returns true if no signals connected +class ButtonTimer : protected Thread +{ + public: + ButtonTimer(uint32_t shortpress_min_ms, uint32_t longpress_ms); + ~ButtonTimer(); + + void RegisterPress(uint16_t keycode); + void RegisterRelease(uint16_t keycode); + void CancelPress(uint16_t id); + + boost::signals2::signal onShortPress; + boost::signals2::signal onLongPress; + boost::signals2::signal onValidatePress; + + protected: + virtual void ThreadLoop(void); + + private: + boost::signals2::connection onThreadErrorConnection; + uint32_t longpressTime; + uint32_t shortpressMinTime; + std::map pressRegistry; + + bool eventLock; + static int64_t now_ms(void); + +}; + diff --git a/src/exception/baseexceptions.cpp b/src/exception/baseexceptions.cpp new file mode 100644 index 0000000..4450934 --- /dev/null +++ b/src/exception/baseexceptions.cpp @@ -0,0 +1,75 @@ +#include +#include +#include +#include + +#include "baseexceptions.hpp" + + + +/************************************ +* * +* MsgException * +* * +*************************************/ +MsgException::MsgException() +{ +} + +MsgException::MsgException(const std::string& message) +{ + myMsg = message; +} + +MsgException::MsgException(const std::string &format,...) +{ + va_list argptr; + va_start(argptr, format); + init(format.c_str(),argptr); + va_end(argptr); +} + +MsgException::MsgException(const char * format,...) +{ + va_list argptr; + va_start(argptr, format); + init(format,argptr); + va_end(argptr); +} + +void MsgException::init(const char * format,va_list mArgs) +{ + uint32_t BUFFER_LEN = 256; + char buffer[BUFFER_LEN]; + // force buffer to zeroes + memset(buffer, 0x00, BUFFER_LEN); + // use vsnprintf to parse + vsnprintf(buffer, BUFFER_LEN-1, format, mArgs); + myMsg = std::string(buffer); +} + +void MsgException::init(const char * s) +{ + myMsg = std::string(s); +} + + +std::string MsgException::Message() +{ + return myMsg; +} + +const char* MsgException::what() +{ + formattedMsg = type() + " - " + myMsg; + return formattedMsg.c_str(); +} + +MsgException::~MsgException() throw () +{ + +} + + + + diff --git a/src/exception/baseexceptions.hpp b/src/exception/baseexceptions.hpp new file mode 100644 index 0000000..f6cce27 --- /dev/null +++ b/src/exception/baseexceptions.hpp @@ -0,0 +1,69 @@ +#ifndef __BASEEXCEPTIONS_HPP_ +#define __BASEEXCEPTIONS_HPP_ + +#include +#include + +class MsgException : public std::exception +{ + public: + MsgException(); + MsgException(const std::string &message); + MsgException(const std::string &format, ...); + MsgException(const char * format,...); + ~MsgException() throw(); + virtual const char* what(); + std::string Message(); + + protected: + virtual std::string type() { return "MsgException"; }; + void init(const char * format,va_list mArgs); + void init(const char * s); + + std::string myMsg; + std::string formattedMsg; +}; + +#define QUOTE(name) #name +#define DefineNewMsgException(cName) \ +class cName : public MsgException \ +{ \ + public: \ + cName(const std::string &format,...) { va_list argptr; va_start(argptr, format); init(format.c_str(),argptr); va_end(argptr); } \ + cName(const char * format,...) { va_list argptr; va_start(argptr, format); init(format,argptr); va_end(argptr); } \ + protected: \ + virtual std::string type() { return QUOTE(cName); }; \ +}; + + +DefineNewMsgException(WarningException); +DefineNewMsgException(InvalidArgumentException); +DefineNewMsgException(OperationFailedException); + + +/* +class WarningException : public MsgException +{ + protected: + virtual std::string type() { return "Warning"; }; +}; + + +class InvalidArgumentException : public MsgException +{ + protected: + virtual std::string type() { return "InvalidArgumentException"; }; +}; + +class OperationFailedException : public MsgException +{ + MsgException(const std::string& message); + MsgException(const std::string &format,...); + MsgException(const char * format,...) + protected: + virtual std::string type() { return "OperationFailedException"; }; +}; + +*/ + +#endif \ No newline at end of file diff --git a/src/gpio/gpio.cpp b/src/gpio/gpio.cpp new file mode 100644 index 0000000..ef7203a --- /dev/null +++ b/src/gpio/gpio.cpp @@ -0,0 +1,458 @@ +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "gpio.hpp" +#include "../log/log.hpp" +#include + + +#define GPIO_0_2_R1 0 /*!< \def Gpio pin 0/2 (rev1/rev2) with rev2 board code */ +#define GPIO_1_3_R1 1 /*!< \def Gpio pin 1/3 (rev1/rev2) with rev2 board code */ +#define GPIO_21_27_R1 21 /*!< \def Gpio pin 21/27 (rev1/rev2) with rev2 board code */ + +#define RDBUF_LEN 10 // length of read buffer +#define POLL_TIMEOUT 100 // timeout for polling function in ms (also the maximum delay time before thread is stopped + + +#define FALSE 0 +#define TRUE 1 + +using namespace std; + +/**************************** +* * +* PRIVATE DEFINTIONS * +* * +*****************************/ + +static unsigned int HardwareRevision(void); + +/**************************** +* * +* IOPIN OBJECT FUNCS * +* * +*****************************/ + +//! Create new IOPin object +GpioPin::GpioPin(int gpiopin, GpioDirection direction, GpioEdge edge) +{ + int result; + int pin_id; + char fTemp[GPIO_FN_MAXLEN]; + + // Set tag to empty pointer + Tag = NULL; + + pin_id = verifyPin(gpiopin); + if(pin_id < 0) + throw OperationFailedException("Gpio pin %d is not a valid Gpio for this Raspberry Pi board revision",gpiopin); + + // ensure that the Gpio pin is exported + try + { + pinPreExported = !(exportPin(pin_id)); + } + catch(OperationFailedException x) + { + throw x; + } + + // Prepare the iopin object + pin = pin_id; + + // Prepare the file names for the different files + snprintf(fTemp, GPIO_FN_MAXLEN-1, "/sys/class/gpio/gpio%d/direction", pin_id); + fnDirection = std::string(fTemp); + snprintf(fTemp, GPIO_FN_MAXLEN-1, "/sys/class/gpio/gpio%d/edge", pin_id); + fnEdge = std::string(fTemp); + snprintf(fTemp, GPIO_FN_MAXLEN-1, "/sys/class/gpio/gpio%d/value", pin_id); + fnValue = std::string(fTemp); + + // Initialize callbacks to NULL + + try + { + // set initial direction or die trying + setDirection(direction); + // set initial edge or die trying + setEdge(edge); + } + catch(OperationFailedException x) + { + if(!pinPreExported) + unexportPin(pin); + throw x; + } +} + + +//! Close the IOPin connection +GpioPin::~GpioPin() +{ + if(!pinPreExported) + unexportPin(pin); +} + +//! Get the actual used pin number of the IO Pin +int GpioPin::getPinNr() +{ + return pin; +} + +//! Get current direction of pin +GpioDirection GpioPin::getDirection() +{ + std::string s = readFile(fnDirection); + // got enough info in the first byte + if(s[0] == 'i') + return kDirectionIn; + else + return kDirectionOut; +} + +//! Set new value of pin +void GpioPin::setDirection(GpioDirection direction) +{ + if (direction == kDirectionIn) writeFile(fnDirection,"in\n"); + else if (direction == kDirectionOut) writeFile(fnDirection,"out\n"); +} + +//! Get current edge detection type +GpioEdge GpioPin::getEdge() +{ + std::string s = readFile(fnEdge); + switch(s[0]) // as the first letters of each result are all different + { + default : + case 'n': + case 'N': + return kEdgeNone; + case 'r': + case 'R': + return kEdgeRising; + case 'f': + case 'F': + return kEdgeFalling; + case 'b': + case 'B': + return kEdgeBoth; + + } +} + +//! Set edge detection type +void GpioPin::setEdge(GpioEdge edge) +{ + if (edge == kEdgeNone) writeFile(fnEdge,"none\n"); + else if (edge == kEdgeRising) writeFile(fnEdge,"rising\n"); + else if (edge == kEdgeFalling) writeFile(fnEdge,"falling\n"); + else if (edge == kEdgeBoth) writeFile(fnEdge,"both\n"); +} + + +//! Get current value of pin +bool GpioPin::getValue() +{ + std::string s = readFile(fnValue); + // got enough info in the first byte + if(s[0] == '1') + return true; + else + return false; +} + +//! Set new value of pin +void GpioPin::setValue(bool value) +{ + if (value) writeFile(fnValue,"1\n"); + else writeFile(fnValue,"0\n"); +} + + + +/**************************** +* * +* INTERRUPT FUNCS * +* * +*****************************/ + +void GpioPin::InterruptStart() +{ + if(!ThreadRunning()) + { + this->ThreadStart(); + } +} + +void GpioPin::InterruptStop() +{ + if(ThreadRunning()) + { + this->ThreadStop(); + } +} + + +void GpioPin::ThreadFunc() +{ + int fd,ret; + struct pollfd pfd; + char rdbuf[RDBUF_LEN]; + + memset(rdbuf, 0x00, RDBUF_LEN); + + fd=open(fnValue.c_str(), O_RDONLY); + if(fd<0) + throw OperationFailedException("Could not open file %s for reading: [%d] %s",fnValue.c_str(), errno, strerror(errno)); + + pfd.fd=fd; + pfd.events=POLLPRI; + + ret=read(fd, rdbuf, RDBUF_LEN-1); + if(ret<0) + { + close(fd); + throw OperationFailedException("Could not read from %s: [%d] %s",fnValue.c_str(), errno, strerror(errno)); + } + + while(ThreadRunning()) + { + memset(rdbuf, 0x00, RDBUF_LEN); + lseek(fd, 0, SEEK_SET); + ret=poll(&pfd, 1, POLL_TIMEOUT); + if(ret<0) // negative result is error + { + close(fd); + throw OperationFailedException("Could not poll %s: [%d] %s",fnValue.c_str(), errno, strerror(errno)); + } + + if(ret==0) + continue; // 0 bytes read is timeout, we should retry read + // ok, poll succeesed, now we read the value + ret=read(fd, rdbuf, RDBUF_LEN-1); + if(ret<0) + { + close(fd); + throw OperationFailedException("Could not read from %s: [%d] %s",fnValue.c_str(), errno, strerror(errno)); + } + + // Kill the loop now if the thread stopped during our poll + if(!ThreadRunning()) + break; + // Continue with doing the callback, if we're still enabled. + // Now, rdbuf[0] contains 0 or 1 depending on the trigger + onInterrupt(this, kEdgeFalling, !(rdbuf[0] == '0')); + } + close(fd); + +} + + + + +/**************************** +* * +* SUPPORT FUNCTIONS * +* * +*****************************/ + +//! open a file for writing and write text to it +void GpioPin::writeFile(std::string &fname, std::string &value) +{ + writeFile(fname,value.c_str()); +} + +void GpioPin::writeFile(std::string &fname, const char *value) +{ + FILE *fd; + if ((fd = fopen (fname.c_str(), "w")) == NULL) + throw OperationFailedException("Could not open %s for writing",fname.c_str()); + + fprintf (fd, value); + fclose(fd); +} + + + +//! open a file for reading and read some text from it +/*! + function will throw an exception on empty string, since the files we use it on + will always return a value. If they don't we have serious problems +*/ +std::string GpioPin::readFile(std::string &fname) +{ + FILE *fd; + char rdbuf[RDBUF_LEN]; + int ret; + + if ((fd = fopen (fname.c_str(), "r")) == NULL) + throw OperationFailedException("Could not open %s for reading",fname.c_str()); + + ret = fread(rdbuf,1,RDBUF_LEN -1, fd); + fclose(fd); + + if(ret<0) + { + throw OperationFailedException("Error reading from %s: [%d] %s",fname.c_str(), errno, strerror(errno)); + } + else if(ret == 0) + { + throw OperationFailedException("Got empty string reading from %s: [%d] %s",fname.c_str(), errno, strerror(errno)); + } + + rdbuf[ret] = '\0'; // Ensure null termination + + return std::string(rdbuf); +} + + +//! Verifies gpio pin number, and translates pin numbers (REV2) to the proper REV1 or REV2 board gpio pin numbers +/*! + \param gpiopin The pin number to verify + \return verified and translated gpio pin, or -1 if invalid +*/ +int GpioPin::verifyPin(int gpiopin) +{ + // List of valid Gpio pins + // 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 + int validpinsRev1[17] = { 0, 1, 4, 7, 8, 9,10,11,14,15,17,18,21,22,23,24,25}; + int validpinsRev2[21] = { 2, 3, 4, 7, 8, 9,10,11,14,15,17,18,22,23,24,25,27,28,29,30,31}; + unsigned int i; + + // get hardware revision + unsigned int rev = HardwareRevision(); + if (rev < 4) + { // REV 1 BOARD + + // Translate pins to rev 1 equivalent + if(gpiopin == GPIO_0_2) + gpiopin = GPIO_0_2_R1; + else if(gpiopin == GPIO_1_3) + gpiopin = GPIO_1_3_R1; + else if(gpiopin == GPIO_21_27) + gpiopin = GPIO_21_27_R1; + + // Verify that the pin number is valid, otherwise return -1 + for(i=0; i + +/*! \file Gpio interrupt capture functions. Header file. +*/ + +// P1 Header pins (both board revisions) +#define GPIO_0_2 2 /*!< \def Gpio pin 0/2 (rev1/rev2) */ +#define GPIO_1_3 3 /*!< \def Gpio pin 1/3 (rev1/rev2) */ +#define GPIO_4 4 /*!< \def Gpio pin 4 */ +#define GPIO_7 7 /*!< \def Gpio pin 7 */ +#define GPIO_8 8 /*!< \def Gpio pin 8 */ +#define GPIO_9 9 /*!< \def Gpio pin 9 */ +#define GPIO_10 10 /*!< \def Gpio pin 10 */ +#define GPIO_11 11 /*!< \def Gpio pin 11 */ +#define GPIO_14 14 /*!< \def Gpio pin 14 */ +#define GPIO_15 15 /*!< \def Gpio pin 15 */ +#define GPIO_17 17 /*!< \def Gpio pin 17 */ +#define GPIO_18 18 /*!< \def Gpio pin 18 */ +#define GPIO_21_27 27 /*!< \def Gpio pin 21/27 (rev1/rev2) */ +#define GPIO_22 22 /*!< \def Gpio pin 22 */ +#define GPIO_23 23 /*!< \def Gpio pin 23 */ +#define GPIO_24 24 /*!< \def Gpio pin 24 */ +#define GPIO_25 25 /*!< \def Gpio pin 25 */ + +// P5 Header pins (only rev 2) +#define GPIO_28 28 /*!< \def Gpio pin 28 */ +#define GPIO_29 29 /*!< \def Gpio pin 29 */ +#define GPIO_30 30 /*!< \def Gpio pin 30 */ +#define GPIO_31 31 /*!< \def Gpio pin 31 */ + +#define GPIO_FN_MAXLEN 128 // length of file name field + +class GpioException : MsgException +{ + protected: + virtual std::string type() { return "GpioException"; } +}; + +//! Enum for specifying input/output direction +enum GpioDirection +{ + kDirectionOut = 0, + kDirectionIn = 1 +}; + +//! Enum for specifying edge detection type +enum GpioEdge +{ + kEdgeNone = 0, + kEdgeRising = 1, + kEdgeFalling = 2, + kEdgeBoth = 3 +}; + +class GpioPin : public Thread +{ + public: + GpioPin(int pinnr, GpioDirection direction, GpioEdge edge); + ~GpioPin(); + + //! Get the actual used pin number of the IO Pin + int getPinNr(); + + //! Get current direction of pin + GpioDirection getDirection(); + //! Set new direction of pin + void setDirection(GpioDirection direction); + + //! Get current edge detection type + GpioEdge getEdge(); + //! Set edge detection type + void setEdge(GpioEdge edge); + + //! Get current value of pin + bool getValue(); + //! Set new value of pin + void setValue(bool value); + + //! Start interrupt listener + void InterruptStart(); + //! Stop interrupt listener + void InterruptStop(); + + //! Signal on interrupt + boost::signals2::signal onInterrupt; + + // Tag to store application-dependant data + void * Tag; + + virtual void ThreadFunc(); + + private: + int pin; // Gpio pin number + std::string fnDirection; // File name for Direction file + std::string fnEdge; // File name for Edge file + std::string fnValue; // File name for Value file + bool pinPreExported; // Bool indicates if the pin was already exported + + + //! Verifies gpio pin number, and translates pin numbers (REV2) to the proper REV1 or REV2 board gpio pin numbers + static int verifyPin(int gpiopin); + + //! Export a certain Gpio pin + static bool exportPin(int gpiopin); + + //! Unexport a certain Gpio pin + static bool unexportPin(int gpiopin); + + //! open a file for writing and write text to it. + static void writeFile(std::string &fname, const char *value); + static void writeFile(std::string &fname, std::string &value); + + //! open a file for reading and read some text from it + static std::string readFile(std::string &fname); + +}; + + +#endif \ No newline at end of file diff --git a/src/i2c/i2c.c b/src/i2c/i2c.c new file mode 100644 index 0000000..2f47c0b --- /dev/null +++ b/src/i2c/i2c.c @@ -0,0 +1,127 @@ + +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "i2c.h" + +static unsigned int HardwareRevision(void); + +static unsigned int HardwareRevision(void) +{ + FILE * filp; + unsigned rev; + char buf[512]; + char term; + + rev = 0; + + filp = fopen ("/proc/cpuinfo", "r"); + + if (filp != NULL) + { + while (fgets(buf, sizeof(buf), filp) != NULL) + { + if (!strncasecmp("revision\t", buf, 9)) + { + if (sscanf(buf+strlen(buf)-5, "%x%c", &rev, &term) == 2) + { + if (term == '\n') break; + rev = 0; + } + } + } + fclose(filp); + } + return rev; +} + +int i2cInit(unsigned char address) +{ + int fd; // File descrition + char *fileName = "/dev/i2c-1"; // Name of the port we will be using (using revision 2 board's /dev/i2c-1 by default) + + unsigned int rev = HardwareRevision(); + if (rev < 4){ // Switch to revision 1 board's /dev/i2c-0 if revision number is below 4; + strcpy(fileName,"/dev/i2c-0"); + } + + if ((fd = open(fileName, O_RDWR)) < 0) { // Open port for reading and writing + return -1; + } + + if (ioctl(fd, I2C_SLAVE, address) < 0) { // Set the port options and set the address of the device we wish to speak to + return -2; + } + + return fd; +} + +void i2cClose(int fd) +{ + close(fd); +} + +int i2cReadReg8(int fd, unsigned char reg) +{ + unsigned char buf[1]; // Buffer for data being read/ written on the i2c bus + buf[0] = reg; // This is the register we wish to read from + + if ((write(fd, buf, 1)) != 1) { // Send register to read from + return -1; + } + + if (read(fd, buf, 1) != 1) { // Read back data into buf[] + return -2; + } + + return buf[0]; +} + +int i2cWriteReg8(int fd, unsigned char reg, unsigned char value) +{ + unsigned char buf[2]; + buf[0] = reg; // Commands for performing a ranging on the SRF08 + buf[1] = value; + + if ((write(fd, buf, 2)) != 2) { // Write commands to the i2c port + return -1; + } + return 0; +} + +int i2cReadReg16(int fd, unsigned char reg) +{ + unsigned char buf[2]; // Buffer for data being read/ written on the i2c bus + buf[0] = reg; // This is the register we wish to read from + + if ((write(fd, buf, 1)) != 1) { // Send register to read from + return -1; + } + + if (read(fd, buf, 2) != 2) { // Read back data into buf[] + return -2; + } + return (int)(buf[1] << 8) | (int)buf[0]; + + +} + +int i2cWriteReg16(int fd, unsigned char reg,unsigned short value) +{ + unsigned char buf[3]; + buf[0] = reg; // Commands for performing a ranging on the SRF08 + buf[1] = (unsigned char)( ( value >> 0 ) & 0xFF ); + buf[2] = (unsigned char)( ( value >> 8 ) & 0xFF ); + + if ((write(fd, buf, 3)) != 3) { // Write commands to the i2c port + return -1; + } + return 0; +} diff --git a/src/i2c/i2c.h b/src/i2c/i2c.h new file mode 100644 index 0000000..fda7bbe --- /dev/null +++ b/src/i2c/i2c.h @@ -0,0 +1,19 @@ +#ifndef __USER_I2C_H__ +#define __USER_I2C_H__ + +#ifdef __cplusplus +extern "C" { +#endif + +int i2cInit(unsigned char address); +void i2cClose(int fd); +int i2cReadReg8(int fd, unsigned char reg); +int i2cWriteReg8(int fd, unsigned char reg, unsigned char value); +int i2cReadReg16(int fd, unsigned char reg); +int i2cWriteReg16(int fd, unsigned char reg,unsigned short value); + +#ifdef __cplusplus +} +#endif + +#endif \ No newline at end of file diff --git a/src/log/log.cpp b/src/log/log.cpp new file mode 100644 index 0000000..2c87099 --- /dev/null +++ b/src/log/log.cpp @@ -0,0 +1,67 @@ +#include "log.hpp" +#include +#include +#include +#include + +std::string logPrintf(std::string &format,...) +{ + uint32_t BUFFER_LEN = 256; + char buffer[BUFFER_LEN]; + + va_list argptr; + va_start(argptr, format); + + // force buffer to zeroes + memset(buffer, 0x00, BUFFER_LEN); + // use vsnprintf to parse + vsnprintf(buffer, BUFFER_LEN-1, format.c_str(), argptr); + va_end(argptr); + + return std::string(buffer); +} + +Log::Log(std::string ident, int facility) { + facility_ = facility; + priority_ = LOG_DEBUG; + strncpy(ident_, ident.c_str(), sizeof(ident_)); + ident_[sizeof(ident_)-1] = '\0'; + + openlog(ident_, LOG_PID, facility_); +} + +int Log::sync() { + if (buffer_.length()) { + syslog(priority_, buffer_.c_str()); + buffer_.erase(); + priority_ = LOG_DEBUG; // default to debug for each message + } + return 0; +} + +int Log::overflow(int c) { + if (c != EOF) { + buffer_ += static_cast(c); + } else { + sync(); + } + return c; +} + +std::ostream& operator<< (std::ostream& os, const LogPriority& log_priority) { + static_cast(os.rdbuf())->priority_ = (int)log_priority; + return os; +} + +// Static init function +void Log::Init(std::string ident, int facility) +{ + std::clog.rdbuf(new Log(ident, facility)); + +} + +// Static init function with default facility +void Log::Init(std::string ident) +{ + Log::Init(ident,LOG_LOCAL0); +} \ No newline at end of file diff --git a/src/log/log.hpp b/src/log/log.hpp new file mode 100644 index 0000000..b96e510 --- /dev/null +++ b/src/log/log.hpp @@ -0,0 +1,42 @@ +#ifndef __LOG_HPP__ +#define __LOG_HPP__ + + +#include +#include + +enum LogPriority { + kLogEmerg = LOG_EMERG, // system is unusable + kLogAlert = LOG_ALERT, // action must be taken immediately + kLogCrit = LOG_CRIT, // critical conditions + kLogCritical = LOG_CRIT, // critical conditions + kLogErr = LOG_ERR, // error conditions + kLogError = LOG_ERR, // error conditions + kLogWarning = LOG_WARNING, // warning conditions + kLogNotice = LOG_NOTICE, // normal, but significant, condition + kLogInfo = LOG_INFO, // informational message + kLogDebug = LOG_DEBUG // debug-level message +}; + +std::ostream& operator<< (std::ostream& os, const LogPriority& log_priority); + +class Log : public std::basic_streambuf > { +public: + explicit Log(std::string ident, int facility); + static void Init(std::string ident, int facility); + static void Init(std::string ident); +protected: + int sync(); + int overflow(int c); + +private: + friend std::ostream& operator<< (std::ostream& os, const LogPriority& log_priority); + std::string buffer_; + int facility_; + int priority_; + char ident_[50]; +}; + +std::string logPrintf(std::string &format,...); + +#endif \ No newline at end of file diff --git a/src/mc-hid-introspect.xml b/src/mc-hid-introspect.xml new file mode 100644 index 0000000..5a3b926 --- /dev/null +++ b/src/mc-hid-introspect.xml @@ -0,0 +1,36 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/mc-hid-server-glue.hpp b/src/mc-hid-server-glue.hpp new file mode 100644 index 0000000..1e74d83 --- /dev/null +++ b/src/mc-hid-server-glue.hpp @@ -0,0 +1,223 @@ + +/* + * This file was automatically generated by dbusxx-xml2cpp; DO NOT EDIT! + */ + +#ifndef __dbusxx__src_mc_hid_server_glue_hpp__ADAPTOR_MARSHAL_H +#define __dbusxx__src_mc_hid_server_glue_hpp__ADAPTOR_MARSHAL_H + +#include +#include + +namespace nl { +namespace miqra { +namespace MediaCore { + +class Hid_adaptor +: public ::DBus::InterfaceAdaptor +{ +public: + + Hid_adaptor() + : ::DBus::InterfaceAdaptor("nl.miqra.MediaCore.Hid") + { + register_method(Hid_adaptor, SetColor, _SetColor_stub); + register_method(Hid_adaptor, ClearColor, _ClearColor_stub); + register_method(Hid_adaptor, PulseColor, _PulseColor_stub); + register_method(Hid_adaptor, JackState, _JackState_stub); + } + + ::DBus::IntrospectedInterface *introspect() const + { + static ::DBus::IntrospectedArgument SetColor_args[] = + { + { "r", "y", true }, + { "g", "y", true }, + { "b", "y", true }, + { 0, 0, 0 } + }; + static ::DBus::IntrospectedArgument ClearColor_args[] = + { + { 0, 0, 0 } + }; + static ::DBus::IntrospectedArgument PulseColor_args[] = + { + { "r", "y", true }, + { "g", "y", true }, + { "b", "y", true }, + { "interval", "d", true }, + { 0, 0, 0 } + }; + static ::DBus::IntrospectedArgument JackState_args[] = + { + { "jackedin", "b", false }, + { 0, 0, 0 } + }; + static ::DBus::IntrospectedArgument ButtonDown_args[] = + { + { "button", "s", false }, + { 0, 0, 0 } + }; + static ::DBus::IntrospectedArgument ButtonUp_args[] = + { + { "button", "s", false }, + { 0, 0, 0 } + }; + static ::DBus::IntrospectedArgument JackIn_args[] = + { + { 0, 0, 0 } + }; + static ::DBus::IntrospectedArgument JackOut_args[] = + { + { 0, 0, 0 } + }; + static ::DBus::IntrospectedArgument ButtonPress_args[] = + { + { "button", "s", false }, + { 0, 0, 0 } + }; + static ::DBus::IntrospectedArgument ButtonLongPress_args[] = + { + { "button", "s", false }, + { 0, 0, 0 } + }; + static ::DBus::IntrospectedMethod Hid_adaptor_methods[] = + { + { "SetColor", SetColor_args }, + { "ClearColor", ClearColor_args }, + { "PulseColor", PulseColor_args }, + { "JackState", JackState_args }, + { 0, 0 } + }; + static ::DBus::IntrospectedMethod Hid_adaptor_signals[] = + { + { "ButtonDown", ButtonDown_args }, + { "ButtonUp", ButtonUp_args }, + { "JackIn", JackIn_args }, + { "JackOut", JackOut_args }, + { "ButtonPress", ButtonPress_args }, + { "ButtonLongPress", ButtonLongPress_args }, + { 0, 0 } + }; + static ::DBus::IntrospectedProperty Hid_adaptor_properties[] = + { + { 0, 0, 0, 0 } + }; + static ::DBus::IntrospectedInterface Hid_adaptor_interface = + { + "nl.miqra.MediaCore.Hid", + Hid_adaptor_methods, + Hid_adaptor_signals, + Hid_adaptor_properties + }; + return &Hid_adaptor_interface; + } + +public: + + /* properties exposed by this interface, use + * property() and property(value) to get and set a particular property + */ + +public: + + /* methods exported by this interface, + * you will have to implement them in your ObjectAdaptor + */ + virtual void SetColor(const uint8_t& r, const uint8_t& g, const uint8_t& b) = 0; + virtual void ClearColor() = 0; + virtual void PulseColor(const uint8_t& r, const uint8_t& g, const uint8_t& b, const double& interval) = 0; + virtual bool JackState() = 0; + +public: + + /* signal emitters for this interface + */ + void ButtonDown(const std::string& arg1) + { + ::DBus::SignalMessage sig("ButtonDown"); + ::DBus::MessageIter wi = sig.writer(); + wi << arg1; + emit_signal(sig); + } + void ButtonUp(const std::string& arg1) + { + ::DBus::SignalMessage sig("ButtonUp"); + ::DBus::MessageIter wi = sig.writer(); + wi << arg1; + emit_signal(sig); + } + void JackIn() + { + ::DBus::SignalMessage sig("JackIn"); + emit_signal(sig); + } + void JackOut() + { + ::DBus::SignalMessage sig("JackOut"); + emit_signal(sig); + } + void ButtonPress(const std::string& arg1) + { + ::DBus::SignalMessage sig("ButtonPress"); + ::DBus::MessageIter wi = sig.writer(); + wi << arg1; + emit_signal(sig); + } + void ButtonLongPress(const std::string& arg1) + { + ::DBus::SignalMessage sig("ButtonLongPress"); + ::DBus::MessageIter wi = sig.writer(); + wi << arg1; + emit_signal(sig); + } + +private: + + /* unmarshalers (to unpack the DBus message before calling the actual interface method) + */ + ::DBus::Message _SetColor_stub(const ::DBus::CallMessage &call) + { + ::DBus::MessageIter ri = call.reader(); + + uint8_t argin1; ri >> argin1; + uint8_t argin2; ri >> argin2; + uint8_t argin3; ri >> argin3; + SetColor(argin1, argin2, argin3); + ::DBus::ReturnMessage reply(call); + return reply; + } + ::DBus::Message _ClearColor_stub(const ::DBus::CallMessage &call) + { + ::DBus::MessageIter ri = call.reader(); + + ClearColor(); + ::DBus::ReturnMessage reply(call); + return reply; + } + ::DBus::Message _PulseColor_stub(const ::DBus::CallMessage &call) + { + ::DBus::MessageIter ri = call.reader(); + + uint8_t argin1; ri >> argin1; + uint8_t argin2; ri >> argin2; + uint8_t argin3; ri >> argin3; + double argin4; ri >> argin4; + PulseColor(argin1, argin2, argin3, argin4); + ::DBus::ReturnMessage reply(call); + return reply; + } + ::DBus::Message _JackState_stub(const ::DBus::CallMessage &call) + { + ::DBus::MessageIter ri = call.reader(); + + bool argout1 = JackState(); + ::DBus::ReturnMessage reply(call); + ::DBus::MessageIter wi = reply.writer(); + wi << argout1; + return reply; + } +}; + +} } } +#endif //__dbusxx__src_mc_hid_server_glue_hpp__ADAPTOR_MARSHAL_H diff --git a/src/mc-hid-server.cpp b/src/mc-hid-server.cpp new file mode 100644 index 0000000..ab63d3e --- /dev/null +++ b/src/mc-hid-server.cpp @@ -0,0 +1,512 @@ +#ifdef HAVE_CONFIG_H +#include +#endif + +#include "mc-hid-server.hpp" +#include "log/log.hpp" + +#include +#include +#include +#include +#include +#include + + +// For getting current time +#include +#ifndef CLOCK_MONOTIC +# define CLOCK_MONOTIC CLOCK_REALTIME +#endif + +#define NOISE_TIMEOUT_MS 400 +#define GPIO_INT_PIN 4 +#define MCP23017_ADR 0x20 + +#define BTN_ESCAPE 0x0001 +#define BTN_FAVORITES 0x0002 +#define BTN_RECENT 0x0004 + +#define BTN_REWIND 0x0008 +#define BTN_PLAYPAUSE 0x0010 +#define BTN_FASTFORWARD 0x0020 + +#define BTN_CANCEL 0x0040 +#define BTN_OK 0x0080 +#define BTN_UP 0x0100 +#define BTN_DOWN 0x0200 + +#define SENSE_MINIJACK 0x0400 + +#define PIN_RED 12 +#define PIN_GREEN 13 +#define PIN_BLUE 14 + +#define PULSE_STEPS 32 +#define PULSE_WAIT_US 20000 + +#define TRUE 1 +#define FALSE 0 + +using namespace std; + +static const char *HID_SERVER_NAME = "nl.miqra.MediaCore.Hid"; +static const char *HID_SERVER_PATH = "/nl/miqra/MediaCore/Hid"; + + +// function to get current time in ms +int64_t now_ms(void); +// signal handler +void niam(int sig); + +HidServer::HidServer(DBus::Connection &connection) + : DBus::ObjectAdaptor(connection, HID_SERVER_PATH) +{ + + // Initialize class variables if needed + noiseTimeout = 0; // Value of 0 means: no noise timeout + + // Initialize button timer + btnTimer = new ButtonTimer(25,6000); // Short press should take at leas 25 ms, and a Long press takes 6 seconds + onShortPressConnection = btnTimer->onShortPress.connect(boost::bind(&HidServer::onShortPress, this, _1)); + onLongPressConnection = btnTimer->onLongPress.connect(boost::bind(&HidServer::onLongPress, this, _1)); + onValidatePressConnection = btnTimer->onValidatePress.connect(boost::bind(&HidServer::onValidatePress, this, _1)); + + // **** Initialize the GPIO Interrupt pin + + clog << kLogInfo << PACKAGE_STRING << " starting..." << endl; + + try + { + initHardware(); + } + catch(std::exception x) + { + clog << kLogCrit << "Fatal error during hardware initialization: " << x.what() << endl << "Quitting now... " << endl; + niam(0); + } + + clog << kLogInfo << "Initialization complete, listening to HID requests." << endl; +} + +HidServer::~HidServer() +{ + ClearColor(); + + onInterruptErrorConnection.disconnect(); + onInterruptConnection.disconnect(); + + delete intpin; intpin = NULL; + delete mcp; mcp = NULL; + delete btnTimer; btnTimer = NULL; + + clog << kLogInfo << "Stopping normally" << endl; +} + +void HidServer::initHardware(void) +{ + HWConfig hwConfig; + unsigned short value; + + clog << kLogInfo << "Opening GPIO pin " << GPIO_INT_PIN << " for interrupt listening" << endl; + // open pin + intpin = new GpioPin( GPIO_INT_PIN, // Pin number + kDirectionIn, // Data direction + kEdgeFalling); // Interrupt edge + + // **** Initialize the MCP23017 + + // Hardware config + hwConfig.DISSLEW = false; // Leave slew rate control enabled + hwConfig.INT_MIRROR = true; // Interconnect I/O pins + hwConfig.INT_ODR = false; // Interrupt is not an open drain + hwConfig.INT_POL = false; // Interrupt is Active-Low + + clog << kLogInfo << "Opening MCP23017 IO expander on I2C address " << MCP23017_ADR << endl; + + try + { + // Initialize chip system + mcp = new Mcp23017( MCP23017_ADR, // adr + 0x0fff, // iodir + 0x0fff, // ipol + 0x0fff, // pullup + hwConfig, // Hardware Config + true); // Swap A/B + + try + { + clog << kLogInfo << "Enabling interrupts on IO Expander" << endl; + // Configure interrupt + mcp->IntConfig( 0x0000, // defval + 0x0000, // intcon + 0x07ff); // int enable + + + clog << kLogInfo << "Starting interrupt listener on GPIO pin " << GPIO_INT_PIN << endl; + + // Initialize interrupts + + onInterruptErrorConnection.disconnect(); + onInterruptConnection.disconnect(); + + onInterruptErrorConnection = intpin->onThreadError.connect(boost::bind(&HidServer::onInterruptError, this, _1, _2)); + onInterruptConnection = intpin->onInterrupt.connect(boost::bind(&HidServer::onInterrupt, this, _1, _2, _3)); + + // Start interrupt event on interrupt pin + intpin->InterruptStart(); + + clog << kLogInfo << "Performing initial read of IO Expander values to clear any pending interrupts and initialize Jack state" << endl; + // Read initial value to clear any current interrupts + value = mcp->getValue(); + + // Pass the initial mini-jack state to any listeners + if(value && SENSE_MINIJACK) + JackIn(); + else + JackOut(); + + // Prepare the R/G/B pins for possible PWM usage + mcp->setPwmState(PIN_RED,TRUE); + mcp->setPwmState(PIN_GREEN,TRUE); + mcp->setPwmState(PIN_BLUE,TRUE); + + } + catch(OperationFailedException x) + { + delete mcp; mcp = NULL; + throw x; + } + + } + catch(OperationFailedException x) + { + delete intpin; intpin = NULL; + throw x; + } +} + +void HidServer::SetColor(const uint8_t& r, const uint8_t& g, const uint8_t& b) +{ + clog << kLogDebug << "Got color request: RGB("<< (int)r << "," << (int)g << "," << (int)b << ") - "; + // Check if we can do solid colors (no need for PWM) + if( (r == 0 || r==255) && + (g == 0 || g==255) && + (b == 0 || b==255)) + { + // if so, then 0 is off and non-zero is on + clog << "Using ON/OFF to produce color" << endl; + // but first disable pwm + mcp->PwmStop(); // waits for completion + mcp->setPin(PIN_RED, (bool)r); + mcp->setPin(PIN_GREEN, (bool)g); + mcp->setPin(PIN_BLUE, (bool)b); + + } + else + { + clog << "Using PWM to produce color" << endl; + // we need PWM, so enable it. + mcp->PwmStart(); + + mcp->setPwmLedValue(PIN_RED, r); + mcp->setPwmLedValue(PIN_GREEN, g); + mcp->setPwmLedValue(PIN_BLUE, b); + } + +} + +void HidServer::PulseColor(const uint8_t& r, const uint8_t& g, const uint8_t& b, const double& interval) +{ + pulseR = r; + pulseG = g; + pulseB = b; + + pulseDirUp = true; + pulseMin = 0; + pulseI = pulseMin; + + clog << kLogDebug << "Got pulse color request: RGB("<< (int)r << "," << (int)g << "," << (int)b << ")" << endl; + + pulseTime = (int32_t)((interval * 1000000) / (2 * PULSE_STEPS)); + // Start pulse thread and PWM system + ThreadStart(); + mcp->PwmStart(); + +} + +// contains the pulse loop +void HidServer::ThreadLoop() +{ + uint8_t myR, myG, myB; + int32_t factor = pulseI*100; + + + myR = (pulseR * factor)/(100 * PULSE_STEPS); + myG = (pulseG * factor)/(100 * PULSE_STEPS); + myB = (pulseB * factor)/(100 * PULSE_STEPS); + + mcp->setPwmLedValue(PIN_RED, myR); + mcp->setPwmLedValue(PIN_GREEN, myG); + mcp->setPwmLedValue(PIN_BLUE, myB); + + + if(pulseDirUp) + { + pulseI++; + if(pulseI>= PULSE_STEPS) + pulseDirUp = false; + } + else + { + pulseI--; + if(pulseI <= pulseMin) + pulseDirUp = true; + } + + usleep(pulseTime); + +} + +void HidServer::ClearColor() +{ + clog << kLogDebug << "Got request to clear colors" << endl; + + // Stop pulse thread + ThreadStop(); + + // Disable PWM and turn all colors off + mcp->PwmStop(); // waits for completion + mcp->setPin(PIN_RED, false); + mcp->setPin(PIN_GREEN, false); + mcp->setPin(PIN_BLUE, false); +} + +bool HidServer::JackState() +{ + uint16_t value; + + try + { + value = mcp->getValue(); + } + catch(OperationFailedException x) + { + // Log the exception + clog << kLogError << "Error while retrieving Jack State: " << x.what() << endl; + + // Return false on error + return false; + } + // Pass the current mini-jack state to any listeners + if(value && SENSE_MINIJACK) + return true; + else + return false; +} + +bool HidServer::onValidatePress(uint16_t keycode) +{ + // Check if the key is still pressed before sending out a long press + + if(mcp->getValue() & keycode) + return true; + else + return false; +} + +void HidServer::onShortPress(uint16_t keycode) +{ + clog << kLogDebug << "SHORT PRESS : " << getBtnName(keycode) << endl; + ButtonPress(getBtnName(keycode)); +} + +void HidServer::onLongPress(uint16_t keycode) +{ + clog << kLogDebug << "LONG PRESS : " << getBtnName(keycode) << endl; + ButtonLongPress(getBtnName(keycode)); +} + +void HidServer::keyUp(uint16_t keycode) +{ + if(keycode == SENSE_MINIJACK) + { + JackOut(); + } + else + { + ButtonUp(getBtnName(keycode)); + btnTimer->RegisterRelease(keycode); + } +} + +void HidServer::keyDown(uint16_t keycode) +{ + if(keycode == SENSE_MINIJACK) + { + JackIn(); + } + else + { + ButtonDown(getBtnName(keycode)); + btnTimer->RegisterPress(keycode); + } +} + +// Convert binary keycode into a string for ease of use in e.g. python or other dbus bindings +std::string HidServer::getBtnName(uint16_t keycode) +{ + switch(keycode) + { + case BTN_ESCAPE : + return "BTN_ESCAPE"; + case BTN_FAVORITES : + return "BTN_FAVORITES"; + case BTN_RECENT : + return "BTN_RECENT"; + + case BTN_REWIND : + return "BTN_REWIND"; + case BTN_PLAYPAUSE : + return "BTN_PLAYPAUSE"; + case BTN_FASTFORWARD : + return "BTN_FASTFORWARD"; + + case BTN_CANCEL : + return "BTN_CANCEL"; + case BTN_OK : + return "BTN_OK"; + case BTN_UP : + return "BTN_UP"; + case BTN_DOWN : + return "BTN_DOWN"; + case SENSE_MINIJACK : + return "SENSE_MINIJACK"; + default: + return "BTN_NONE"; + } + +} + +void HidServer::onInterrupt(GpioPin * sender, GpioEdge edge, bool pinval) +{ + uint16_t intf,intcap, keycode; + uint8_t i, bitcount; + + if(edge != kEdgeFalling) // Only continue on falling edge + return; + + + intf = mcp->getIntF(); + intcap = mcp->getIntCap(); + + // Check if we are in a noise timeout, and cancel if so. + if(noiseTimeout !=0 && noiseTimeout > now_ms()) + return; + else + noiseTimeout = 0; + + + // Check if only one bit is set in the interrupt cap: This indicated normal operation. + // If more than one bit is set, we should assume noise + bitcount = 0; + for(i=0;i<16;i++) + { + if(intf & (1 << i)) // Check if this key is set + bitcount++; + } + + //printf("Interrupt!\n INTF : 0x%04x\n INTCAP : 0x%04x\n KEYCODE: 0x%04x\n\n", intf, intcap, keycode); + + if(bitcount > 0 && bitcount <= 3 ) // anything above 3 key interrupts at the same time is considered noise + { + + for(i=0; i < 16; i++) + { + if(intf & (1 << i)) // check if this keycode is set + { + keycode = (1 << i); + if(intcap & keycode) + { + keyDown(keycode); + if(keycode == SENSE_MINIJACK) + clog << kLogDebug << "Jacked IN " << endl; + else + clog << kLogDebug << "Button down : " << getBtnName(keycode) << endl; + } + else + { + keyUp(keycode); + if(keycode == SENSE_MINIJACK) + clog << kLogDebug << "Jacked OUT " << endl; + else + clog << kLogDebug << "Button up : " << getBtnName(keycode) << endl; + } + } + } + } + else + { + clog << kLogDebug << "!!! Input Noise !!! (Timeout: " << NOISE_TIMEOUT_MS << "ms)" << endl; + noiseTimeout = now_ms() + NOISE_TIMEOUT_MS; + } + + +} + +void HidServer::onInterruptError(Thread* sender, ThreadException x) +{ + // When this function is called, the interrupt thread will have stopped + clog << kLogErr << "Error in interrupt listener: " << x.what() << endl; + clog << kLogErr << "Attempting to restart interrupt listener... " << endl; + try + { + delete mcp; mcp = NULL; + delete intpin; intpin = NULL; + initHardware(); // Attempt to re-init the chip system. Quit on failure + clog << kLogInfo << "Succesfully restarted interrupt listener" << endl; + } + catch(std::exception x2) + { + clog << kLogCrit << "Fatal error while attempting to restart interrupt listener : " << x2.what() << endl << "Quitting now... " << endl; + niam(0); + } +} + +// get current time in milliseconds +int64_t now_ms(void) +{ + struct timespec now; + clock_gettime(CLOCK_MONOTIC, &now); + + return ((int64_t)now.tv_sec)*1000LL + (now.tv_nsec/1000000); +} + + +DBus::BusDispatcher dispatcher; + +void niam(int sig) +{ + dispatcher.leave(); +} + +int main() +{ + signal(SIGTERM, niam); + signal(SIGINT, niam); + + DBus::default_dispatcher = &dispatcher; + + // Initialize clog to be redirected to syslog key "mediacore.hid.server" + Log::Init("mediacore.hid"); + + DBus::Connection conn = DBus::Connection::SystemBus(); + conn.request_name(HID_SERVER_NAME); + + HidServer server(conn); + + + dispatcher.enter(); + + return 0; +} \ No newline at end of file diff --git a/src/mc-hid-server.hpp b/src/mc-hid-server.hpp new file mode 100644 index 0000000..d47e022 --- /dev/null +++ b/src/mc-hid-server.hpp @@ -0,0 +1,65 @@ +#ifndef __MC_HID_SERVER_HPP +#define __MC_HID_SERVER_HPP + +#include +#include +#include + +#include "mc-hid-server-glue.hpp" + +#include "gpio/gpio.hpp" +#include "mcp23017/mcp23017.hpp" +#include "thread/thread.hpp" +#include "buttontimer/buttontimer.hpp" + +class HidServer + : public nl::miqra::MediaCore::Hid_adaptor, // << This will be generated by the makefile using dbusxx-xml2cpp on mc-hid-introspect.xml + public DBus::IntrospectableAdaptor, + public DBus::ObjectAdaptor, + public Thread +{ +public: + + HidServer(DBus::Connection &connection); + ~HidServer(); + + virtual void SetColor(const uint8_t& r, const uint8_t& g, const uint8_t& b); + virtual void PulseColor(const uint8_t& r, const uint8_t& g, const uint8_t& b, const double& interval); + virtual void ClearColor(); + virtual bool JackState(); + + void onInterrupt(GpioPin * sender, GpioEdge edge, bool pinval); + void onInterruptError(Thread * sender, ThreadException x); + + bool onValidatePress(uint16_t keycode); + void onShortPress(uint16_t keycode); + void onLongPress(uint16_t keycode); + +protected: + virtual void ThreadLoop(); + +private: + Mcp23017 *mcp; + GpioPin *intpin; + ButtonTimer *btnTimer; + + int64_t noiseTimeout; + + uint8_t pulseR, pulseG, pulseB,pulseI,pulseMin; + int32_t pulseTime; + bool pulseDirUp; + + void initHardware(void); + + void keyUp(uint16_t keycode); + void keyDown(uint16_t keycode); + std::string getBtnName(uint16_t keycode); + + boost::signals2::connection onInterruptConnection; + boost::signals2::connection onInterruptErrorConnection; + boost::signals2::connection onShortPressConnection; + boost::signals2::connection onLongPressConnection; + boost::signals2::connection onValidatePressConnection; +}; + +#endif//__MC_HID_SERVER_HPP \ No newline at end of file diff --git a/src/mc-hid-server.o b/src/mc-hid-server.o new file mode 100644 index 0000000000000000000000000000000000000000..c66f2476ae5b9c803de7fb967ec065b4e329c17a GIT binary patch literal 2349912 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 z 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 z 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

0ix|}=s#HpriV`2% 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�?Y}t)%ktQ{Dw5eNF`CcD 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 z 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ͼ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 literal 0 HcmV?d00001 diff --git a/src/mcp23017/mcp23017.cpp b/src/mcp23017/mcp23017.cpp new file mode 100644 index 0000000..45be7e8 --- /dev/null +++ b/src/mcp23017/mcp23017.cpp @@ -0,0 +1,968 @@ +#include +#include +#include +#include +#include +#include +#include +#include +#include + + + +#include "mcp23017.hpp" +#include "../i2c/i2c.h" + +/**************************** +* * +* DEFINITIONS * +* * +*****************************/ + +//! True/False definitions +#define TRUE 1 +#define FALSE 0 + + +/************************************ +* * +* INTERNAL FUNCTION DEFINITIONS * +* * +*************************************/ + + + +/************************************ +* * +* REGISTER ADDRESS DEFINITIONS * +* * +*************************************/ + +// This interface used only BANK=0 addresses, which are defined below +// The Init function ensures that the device is started in BANK=0 mode + +#define IODIR 0x00 +#define IODIRA 0x00 +#define IODIRB 0x01 + +#define IPOL 0x02 +#define IPOLA 0x02 +#define IPOLB 0x03 + +#define GPINTEN 0x04 +#define GPINTENA 0x04 +#define GPINTENB 0x05 + +#define DEFVAL 0x06 +#define DEFVALA 0x06 +#define DEFVALB 0x07 + +#define INTCON 0x08 +#define INTCONA 0x08 +#define INTCONB 0x09 + +#define IOCON 0x0A +#define IOCONA 0x0A +#define IOCONB 0x0B + +#define GPPU 0x0C +#define GPPUA 0x0C +#define GPPUB 0x0D + +#define INTF 0x0E +#define INTFA 0x0E +#define INTFB 0x0F + +#define INTCAP 0x10 +#define INTCAPA 0x10 +#define INTCAPB 0x11 + +#define GPIO 0x12 +#define GPIOA 0x12 +#define GPIOB 0x13 + +#define OLAT 0x14 +#define OLATA 0x14 +#define OLATB 0x15 + +/************************************ +* * +* PSEUDO-GLOBAL VARIABLES * +* * +*************************************/ + +// Reverse address lookup tables for registers. +// Used mainly in error reporting + +// 8 Bit names +const char * Registers8[22] = +{ + "IODIRA", // 00 + "IODIRB", // 01 + "IPOLA", // 02 + "IPOLB", // 03 + "GPINTENA", // 04 + "GPINTENB", // 05 + "DEFVALA", // 06 + "DEFVALB", // 07 + "INTCONA", // 08 + "INTCONB", // 09 + "IOCONA", // 0A + "IOCONB", // 0B + "GPPUA", // 0C + "GPPUB", // 0D + "INTFA", // 0E + "INTFB", // 0F + "INTCAPA", // 10 + "INTCAPB", // 11 + "GPIOA", // 12 + "GPIOB", // 13 + "OLATA", // 14 + "OLATB" // 15 +}; + +// 16 bit names +const char * Registers16[22] = +{ + "IODIR", // 00 + "IODIR", // 01 + "IPOL", // 02 + "IPOL", // 03 + "GPINTEN", // 04 + "GPINTEN", // 05 + "DEFVAL", // 06 + "DEFVAL", // 07 + "INTCON", // 08 + "INTCON", // 09 + "IOCON", // 0A + "IOCON", // 0B + "GPPU", // 0C + "GPPU", // 0D + "INTF", // 0E + "INTF", // 0F + "INTCAP", // 10 + "INTCAP", // 11 + "GPIO", // 12 + "GPIO", // 13 + "OLAT", // 14 + "OLAT" // 15 +}; + + + + +/************************************ +* * +* STRUCT RELATED FUNCTIONS * +* * +*************************************/ + +HWConfig::HWConfig() +{ + DISSLEW = false; // Leave slew rate control enabled + INT_MIRROR = true; // Mirror Interrupt pins + INT_ODR = false; // Interrupt is not an open drain + INT_POL = false; // Interrupt is Active-Low +} + +uint8_t HWConfig::parse() +{ + uint8_t val = 0; + if(DISSLEW) + val |= 0x10; + if(INT_MIRROR) + val |= 0x40; + if(INT_ODR) + val |= 0x04; + if(INT_POL) + val |= 0x02; + + val |= 0x20; // Disable the address pointer + + return val; +} + + + +//! Internal helper function that translates an IOConfig structure to an unsigned int denoting the proper configuration for an MCP23017 + +/************************************ +* * +* CONNECTION SETUP * +* * +*************************************/ + +//! Open a new connection to the MCP23017 device, and initialize it. +Mcp23017::Mcp23017( uint8_t adr, + uint16_t iodir, + uint16_t ipol, + uint16_t pullup, + HWConfig hwcfg, + bool swapAB) +{ + int i; + // Try opening the port for the specific address + fp = i2cInit(adr); + if(fp <= 0) // error + { + if(fp == 0) + throw OperationFailedException("Got NULL pointer to I2C File"); + else if (fp == -1) + throw OperationFailedException("Could not open I2C device for reading and writing"); + else if (fp == -2) + throw OperationFailedException("Could not set I2C destination address"); + else + throw OperationFailedException("Got unspecified error [%d] opening I2C device",fp); + } + + // Initialize objcect variables + this->adr = adr; // set address + this->swapAB = swapAB; // set swapAB value; + + this->pwm_enabled = false; + this->pwm_mask = 0x0000; + this->pwm_prev_val = 0x0000; + + // Initialize the PWM values to null + for(i=0; i< 16; i++) + { + this->pwm_values[i] = 0; + this->pwm_v_values[i] = 0; + } + + // Initialize to default pwm speed + this->pwm_tick_delay_us = 800; // 800us * 16 steps would result in 78Hz + this->pwm_ticks = 16; + + // Copy HWConfig to key + this->hwConfig = hwcfg; + + // Use the following trick to assure we're talking to the MCP23017 in BANK=0 mode, so we can properly set the IOCON value + + try + { + // If we're in BANK1 mode, address 0x15 corresponds to the GPINTENB register, which should be inited to 0 anyway; + tryI2CWrite8(0x05, 0x00); + // Now write the proper IOCON value + tryI2CWrite8(IOCON, hwcfg.parse()); + // Finally, initialize both GPINTENA and GPINTENB to 0x00 + tryI2CWrite8(GPINTENA, 0x00); + tryI2CWrite8(GPINTENB, 0x00); + + // Further initialization + + // Set up the IO direction + tryI2CWrite16(IODIR, iodir); + // Set up the input polarity + tryI2CWrite16(IPOL, ipol); + // Set up the pullups + tryI2CWrite16(GPPU, pullup); + } + catch(OperationFailedException x) + { + i2cClose(fp); + throw x; + } +} + + +//! Destructor +Mcp23017::~Mcp23017() +{ + PwmStop(); // try to stop the PWM driver; + i2cClose(fp); +} + + +/************************************ +* * +* INTERRUPT SETTINGS * +* * +************************************/ + +//! Set interrupt config for the +void Mcp23017::IntConfig( uint16_t intcon, uint16_t defval, uint16_t int_enable) +{ + tryI2CWrite16(INTCON,intcon); + tryI2CWrite16(DEFVAL,defval); + tryI2CWrite16(GPINTEN,int_enable); +} + +//! Get Interrupt flags +uint16_t Mcp23017::getIntF() +{ + return tryI2CRead16(INTF); +} + +//! Get state of input pins on latest interrupt +uint16_t Mcp23017::getIntCap() +{ + return tryI2CRead16(INTCAP); +} + +//! Set Default value for pins +void Mcp23017::setDefault( uint16_t value) +{ + tryI2CWrite16(DEFVAL, value); +} + +//! Get Default value for pins +uint16_t Mcp23017::getDefault() +{ + return tryI2CRead16(DEFVAL); +} + +//! Set Interrupt enable +void Mcp23017::setIntEnable( uint16_t value) +{ + tryI2CWrite16(GPINTEN, value); +} + +//! Get Interrupt enable +uint16_t Mcp23017::getIntEnable() +{ + return tryI2CRead16(GPINTEN); +} + +//! Set Interrupt control value +void Mcp23017::setIntControl(uint16_t value) +{ + tryI2CWrite16(INTCON, value); +} + +//! Get Interrupt control value +uint16_t Mcp23017::getIntControl() +{ + return tryI2CRead16(INTCON); +} + +/************************************ +* * +* REGULAR I/O FUNCTIONS * +* * +************************************/ + +//! Set input polarity +void Mcp23017::setIPol(uint16_t value) +{ + tryI2CWrite16(IPOL, value); +} + +//! Get input polarity +uint16_t Mcp23017::getIPol() +{ + return tryI2CRead16(IPOL); +} + +//! Get output latch value +uint16_t Mcp23017::getOLat() +{ + return tryI2CRead16(OLAT); +} + +//! Set IO Direction +void Mcp23017::setDirection(uint16_t value) +{ + tryI2CWrite16(IODIR, value); +} + +//! Get IO Direction +uint16_t Mcp23017::getDirection() +{ + return tryI2CRead16(IODIR); +} + +//! Set new output value of the I/O pins +void Mcp23017::setValue(uint16_t value) +{ + // if pwm is enabled, use a masked write with the inverse of the pwm_mask + // to avoid overwriting pwm values + if(this->pwm_enabled) + tryI2CMaskedWrite16(GPIO,value,~this->pwm_mask); + else + tryI2CWrite16(GPIO, value); +} + +//! Get current input value of the I/O pins +uint16_t Mcp23017::getValue() +{ + return tryI2CRead16(GPIO); +} + +//! Set new output value for a subset of the I/O pins (masked by 'mask', where high bits indicat bits to set in the output) +void Mcp23017::setMaskedValue(uint16_t value, uint16_t mask) +{ + // if pwm is enabled, join the pwm_mask with this mask + // to avoid overwriting pwm values + if(this->pwm_enabled) + mask &= ~this->pwm_mask; + + tryI2CMaskedWrite16(GPIO,value,mask); +} + +//! Get the values of a specific pin +bool Mcp23017::getPin(uint8_t pin) +{ + uint16_t value; + + if(pin > 15) + throw InvalidArgumentException("Pin number exceeds maximum pin id. Ignoring request to set pin value."); + + value = tryI2CRead16(GPIO); + + if(value & (1 << pin)) + return TRUE; + else + return FALSE; +} + +//! Set the value of a specific pin +void Mcp23017::setPin(uint8_t pin, bool value) +{ + uint16_t newval, mask; + + if(pin > 15) + throw InvalidArgumentException("Pin number exceeds maximum pin id. Ignoring request to set pin value."); + + // set mask + mask = ( 1 << pin ); + + // if pwm is enabled, join the pwm_mask with this mask + // to avoid overwriting pwm values + if(this->pwm_enabled) + mask &= ~this->pwm_mask; + + if(mask == 0x00) + throw InvalidArgumentException("Pin is active in PWM. Ignoring request to set pin value."); + + if(value) + { + newval = ( 1 << pin ); + } + else + { + newval = 0; + } + + tryI2CMaskedWrite16(GPIO, newval, mask); +} + +/************************************ +* * +* PWM FUNCTIONS * +* * +************************************/ + +//! Start the PWM routine for this I/O expander +void Mcp23017::PwmStart() +{ + + if(!ThreadRunning()) + { + ThreadStart(); + } +} + +//! Stop the PWM routine for this I/O expander +void Mcp23017::PwmStop() +{ + if(ThreadRunning()) + { + ThreadStop(); + // Set the PWM pins back to low + tryI2CMaskedWrite16(OLAT, 0x0000, this->pwm_mask); + } +} + +//! Get the PWM value for a specific pin as 0-255 value (can be different from previously set value, due to rounding errors) +uint8_t Mcp23017::getPwmValue(uint8_t pin) +{ + + if(pin > 15) + throw InvalidArgumentException("Pin number exceeds maximum pin id. Ignoring request."); + + return this->pwm_v_values[pin]; // Return the cached 0-255 value of the pin +} + +//! Set the PWM value for a specific pin as 0-255 value +void Mcp23017::setPwmValue(uint8_t pin, uint8_t value) +{ + + if(pin > 15) + throw InvalidArgumentException("Pin number exceeds maximum pin id. Ignoring request."); + + this->pwm_v_values[pin] = value; // cache the provided value for returning and for updating pwm_value on change in pwm_ticks); + this->pwm_values[pin] = value / (256/this->pwm_ticks); +} + +//! Set the PWM value for a specific pin as 0-255 value and apply gamma correction for LED light levels +void Mcp23017::setPwmLedValue(uint8_t pin, uint8_t lightvalue) +{ + // Gamma correction table + const uint8_t GammaToLinear[256] = + { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 1, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 2, 2, 2, 2, 2, 2, 2, + 3, 3, 3, 3, 3, 4, 4, 4, + 4, 5, 5, 5, 5, 6, 6, 6, + 6, 7, 7, 7, 8, 8, 8, 9, + 9, 9, 10, 10, 11, 11, 11, 12, + 12, 13, 13, 14, 14, 14, 15, 15, + 16, 16, 17, 17, 18, 18, 19, 19, + 20, 21, 21, 22, 22, 23, 23, 24, + 25, 25, 26, 27, 27, 28, 28, 29, + 30, 31, 31, 32, 33, 33, 34, 35, + 36, 36, 37, 38, 39, 39, 40, 41, + 42, 43, 44, 44, 45, 46, 47, 48, + 49, 50, 51, 51, 52, 53, 54, 55, + 56, 57, 58, 59, 60, 61, 62, 63, + 64, 65, 66, 67, 68, 70, 71, 72, + 73, 74, 75, 76, 77, 78, 80, 81, + 82, 83, 84, 86, 87, 88, 89, 91, + 92, 93, 94, 96, 97, 98, 100, 101, + 102, 104, 105, 106, 108, 109, 110, 112, + 113, 115, 116, 118, 119, 120, 122, 123, + 125, 126, 128, 129, 131, 132, 134, 136, + 137, 139, 140, 142, 143, 145, 147, 148, + 150, 152, 153, 155, 157, 158, 160, 162, + 164, 165, 167, 169, 171, 172, 174, 176, + 178, 179, 181, 183, 185, 187, 189, 191, + 192, 194, 196, 198, 200, 202, 204, 206, + 208, 210, 212, 214, 216, 218, 220, 222, + 224, 226, 228, 230, 232, 234, 237, 239, + 241, 243, 245, 247, 249, 252, 254, 255 + }; + + if(pin > 15) + throw InvalidArgumentException("Pin number exceeds maximum pin id. Ignoring request."); + + this->pwm_v_values[pin] = GammaToLinear[lightvalue]; // cache the (gamma-corrected) provided value for returning and for updating pwm_value on change in pwm_ticks); + this->pwm_values[pin] = GammaToLinear[lightvalue] / (256/this->pwm_ticks); +} + + +//! Get the PWM state (on/off) for a specific pin +bool Mcp23017::getPwmState(uint8_t pin) +{ + if(pin > 15) + throw InvalidArgumentException("Pin number exceeds maximum pin id. Ignoring request."); + + return ( (this->pwm_mask & (1 << pin)) > 0); +} + +//! Set the PWM state (on/off) for a specific pin +void Mcp23017::setPwmState(uint8_t pin, bool state) +{ + if(pin > 15) + throw InvalidArgumentException("Pin number exceeds maximum pin id. Ignoring request."); + + if(state) + this->pwm_mask |= (1 << pin); + else + this->pwm_mask &= ~(1 << pin); +} + +//! Set the PWM Configuration +void Mcp23017::setPwmConfig(uint32_t tick_delay_us, uint8_t ticks) +{ + int i; + + this->pwm_tick_delay_us = tick_delay_us; + this->pwm_ticks = ticks; + + // update the actual PWM values, according to the + for(i=0;i<16;i++) + { + if(this->pwm_mask & (1 << i)) // Check if pwm_mask is enabled for this pin + { + // if so, update the actually used pwm value, to reflect the new setting of ticks + this->pwm_values[i] = this->pwm_v_values[i] / (256/this->pwm_ticks); + } + } +} + +//! Get PWM Configuration +PwmConfig Mcp23017::getPwmConfig() +{ + + PwmConfig pcfg; + pcfg.tick_delay_us = pwm_tick_delay_us; + pcfg.ticks = pwm_ticks; + return pcfg; +} + +//! Driver function for PWM thread +void Mcp23017::ThreadFunc(void) +{ + uint8_t ctr = 0; + int i; + uint16_t pwm_out = 0x00; + // + + MakeRealtime(); + + while(ThreadRunning()) + { + + pwm_out = this->pwm_mask; // start with pin high for all pins that have pwm_enabled + + // Now check for each pin if it should be low in this step... + for(i=0;i<16;i++) + { + if(this->pwm_mask & (1 << i)) // Check if pwm_mask is enabled for this pin + { + if(ctr >= this->pwm_values[i] ) // check if the counter is greater than the pwm value for this pin. If so, turn it off. + { + pwm_out &= ~(1 << i); // mask this pin out to 0, for it should be stopped + } + } + } + + if(pwm_out != this->pwm_prev_val) + { + // write out the result, masked with the pwm_mask + muteI2CMaskedWrite16(OLAT, pwm_out, this->pwm_mask); + this->pwm_prev_val = pwm_out; + } + + ctr++; + if(ctr >= (this->pwm_ticks - 1)) + { + ctr = 0; + } + + usleep(this->pwm_tick_delay_us); + } + +} + + +/************************************ +* * +* INTERNAL HELPER FUNCTIONS * +* * +*************************************/ + +/*! Try to read an 8 bit value from a register + In case of an error, The IOKey error value will be, + and the function will return prematurely. +*/ +uint8_t Mcp23017::tryI2CRead8(uint8_t reg) +{ + int ret; + // lock process + MutexLock(); + + // Now start reading + ret = i2cReadReg8(this->fp,reg); + + // unlock process + MutexUnlock(); + + // And properly set any error messages + if(ret == -1) + throw OperationFailedException("Error writing register address, attempted to read 8bit value from register %s (0x%2x) ",Registers8[reg], reg); + else if(ret == -2) + throw OperationFailedException("Error reading value, attempted to read 8bit value from register %s (0x%2x)",Registers8[reg], reg); + else if(ret < 0) + throw OperationFailedException("Unknown error [%d], attempted to read 8bit value from register %s (0x%2x)",ret, Registers8[reg], reg); + + return (uint8_t)ret; +} + +/*! Try to write an 8 bit value to a register + In case of an error, The IOKey error value will be, + and the function will return prematurely. +*/ +void Mcp23017::tryI2CWrite8(uint8_t reg, uint8_t value) +{ + int ret; + + // lock process + MutexLock(); + + // Now start reading + ret = i2cWriteReg8(this->fp,reg,value); + + // unlock process + MutexUnlock(); + + // And properly set any error messages + if(ret == -1) + throw OperationFailedException("Error writing to register, attempted to write 8bit value 0x%2x to register %s (0x%2x)",value, Registers8[reg], reg); + else if(ret < 0) + throw OperationFailedException("Unknown error [%d], attempted to write 8bit value 0x%2x to register %s (0x%2x)",ret, value, Registers8[reg], reg); + + +} + +/*! Try to write specific bits in an 8 bit value to a register + In case of an error, The IOKey error value will be, + and the function will return prematurely. +*/ +void Mcp23017::tryI2CMaskedWrite8(uint8_t reg, uint8_t value, uint8_t mask) +{ + int ret; + uint8_t newval; + + // lock process + MutexLock(); + + // read current value; + if( (ret = i2cReadReg8(this->fp,reg)) < 0) + { + // unlock process + MutexUnlock(); + // And properly set any error messages + if(ret == -1) + throw OperationFailedException("Error writing register address, attempted to read 8bit value from register %s (0x%2x) for masked write", Registers8[reg], reg); + else if(ret == -2) + throw OperationFailedException("Error reading value, attempted to read 8bit value from register %s (0x%2x) for masked write", Registers8[reg], reg); + else if(ret < 0) + throw OperationFailedException("Unknown error [%d], attempted to read 8bit value from register %s (0x%2x) for masked write",ret, Registers8[reg], reg); + } + + // copy result to new variable + newval = (uint16_t)(ret); + // keep only the non-masked bits + newval &= ~mask; + // overwrite the masked bits with the new value + newval |= (value & mask); + + if( (ret = i2cWriteReg8(this->fp,reg,newval)) < 0) + { + // unlock process + MutexUnlock(); + + // And properly set any error messages + if(ret == -1) + throw OperationFailedException("Error writing to register, attempted to write 8bit value 0x%2x to register %s (0x%2x) for masked write",value, Registers8[reg], reg); + else if(ret < 0) + throw OperationFailedException("Unknown error [%d], attempted to write 8bit value 0x%2x to register %s (0x%2x) for masked write",ret, value, Registers8[reg], reg); + } + + // unlock process + MutexUnlock(); +} + +/*! Try to read a 16 bit value from a register + In case of an error, The IOKey error value will be, + and the function will return prematurely. +*/ +uint16_t Mcp23017::tryI2CRead16(uint8_t reg) +{ + uint8_t hwreg = reg; + int ret; + + // lock process + MutexLock(); + + // Ensure that we're initially reading from the right register in relation to the AB swap settings + // (With swap enabled, we should start reading from the odd register, with swap disabled, we should start reading from the even register) + if(this->swapAB) + hwreg |= 0x01; + else + hwreg &= 0xFE; + + // Now start reading + ret = i2cReadReg16(this->fp,hwreg); + + // unlock process + MutexUnlock(); + + // And properly set any error messages + if(this->swapAB) + { + if(ret == -1) + throw OperationFailedException("Error writing register address, attempted to read 16bit value from register %s (0x%2x) [AB Swap active, actual register read is %s (0x%2x)]", Registers16[reg], reg, Registers16[hwreg], hwreg); + else if(ret == -2) + throw OperationFailedException("Error reading value, attempted to read 16bit value from register %s (0x%2x) [AB Swap active, actual register read is %s (0x%2x)]", Registers16[reg], reg, Registers16[hwreg], hwreg); + else if(ret < 0) + throw OperationFailedException("Unknown error [%d], attempted to read 16bit value from register %s (0x%2x) [AB Swap active, actual register read is %s (0x%2x)]",ret, Registers16[reg], reg, Registers16[hwreg], hwreg); + } + else + { + if(ret == -1) + throw OperationFailedException("Error writing register address, attempted to read 16bit value from register %s (0x%2x)", Registers16[reg], reg); + else if(ret == -2) + throw OperationFailedException("Error reading value, attempted to read 16bit value from register %s (0x%2x)", Registers16[reg], reg); + else if(ret < 0) + throw OperationFailedException("Unknown error [%d], attempted to read 16bit value from register %s (0x%2x)",ret, Registers16[reg], reg); + } + +return (uint16_t)ret; +} + +/*! Try to write a 16 bit value to a register + In case of an error, The IOKey error value will be, + and the function will return prematurely. +*/ +void Mcp23017::tryI2CWrite16(uint8_t reg,uint16_t value) +{ + uint8_t hwreg = reg; + int ret; + + // lock process + MutexLock(); + + // Ensure that we're initially reading from the right register in relation to the AB swap settings + // (With swap enabled, we should start reading from the odd register, with swap disabled, we should start reading from the even register) + if(this->swapAB) + hwreg |= 0x01; + else + hwreg &= 0xFE; + + // Now start writing + ret = i2cWriteReg16(this->fp,hwreg, value); + + // unlock process + MutexUnlock(); + + // And properly set any error messages + if(this->swapAB) + { + if(ret == -1) + throw OperationFailedException("Error writing to register, attempted to write 16bit value 0x%4x to register %s (0x%2x) [AB Swap active, actual register read is %s (0x%2x)]",value, Registers16[reg], reg, Registers16[hwreg], hwreg); + else if(ret < 0) + throw OperationFailedException("Unknown error [%d], attempted to write 16bit value 0x%4x to register %s (0x%2x) [AB Swap active, actual register read is %s (0x%2x)]",ret, value, Registers16[reg], reg, Registers16[hwreg], hwreg); + } + else + { + if(ret == -1) + throw OperationFailedException("Error writing to register, attempted to write 16bit value 0x%4x to register %s (0x%2x)",value, Registers16[reg], reg); + else if(ret < 0) + throw OperationFailedException("Unknown error [%d], attempted to write 16bit value 0x%4x to register %s (0x%2x)",ret, value, Registers16[reg], reg); + } + + +} + +/*! Try to write specific bits in a 16 bit value to a register + In case of an error, The IOKey error value will be, + and the function will return prematurely. +*/ +void Mcp23017::tryI2CMaskedWrite16(uint8_t reg, uint16_t value, uint16_t mask) +{ + int ret; + uint16_t newval; + uint8_t hwreg = reg; + + // lock process + MutexLock(); + + // Ensure that we're initially reading from the right register in relation to the AB swap settings + // (With swap enabled, we should start reading from the odd register, with swap disabled, we should start reading from the even register) + if(this->swapAB) + hwreg |= 0x01; + else + hwreg &= 0xFE; + + // read current value; + if( (ret = i2cReadReg16(this->fp,hwreg)) < 0) + { + // unlock process + MutexUnlock(); + + // And properly set any error messages + if(this->swapAB) + { + if(ret == -1) + throw OperationFailedException("Error writing register address, attempted to read 16bit value from register %s (0x%2x) for masked write [AB Swap active, actual register read is %s (0x%2x)]", Registers16[reg], reg, Registers16[hwreg], hwreg); + else if(ret == -2) + throw OperationFailedException("Error reading value, attempted to read 16bit value from register %s (0x%2x) for masked write [AB Swap active, actual register read is %s (0x%2x)]", Registers16[reg], reg, Registers16[hwreg], hwreg); + else if(ret < 0) + throw OperationFailedException("Unknown error [%d], attempted to read 16bit value from register %s (0x%2x) for masked write [AB Swap active, actual register read is %s (0x%2x)]",ret, Registers16[reg], reg, Registers16[hwreg], hwreg); + } + else + { + if(ret == -1) + throw OperationFailedException("Error writing register address, attempted to read 16bit value from register %s (0x%2x) for masked write", Registers16[reg], reg); + else if(ret == -2) + throw OperationFailedException("Error reading value, attempted to read 16bit value from register %s (0x%2x) for masked write", Registers16[reg], reg); + else if(ret < 0) + throw OperationFailedException("Unknown error [%d], attempted to read 16bit value from register %s (0x%2x) for masked write",ret, Registers16[reg], reg); + } + } + + // copy result to new variable + newval = (uint16_t)(ret); + // keep only the non-masked bits + newval &= ~mask; + // overwrite the masked bits with the new value + newval |= (value & mask); + + if( (ret = i2cWriteReg16(this->fp,hwreg,newval)) < 0) + { + // unlock process + MutexUnlock(); + + // And properly set any error messages + if(this->swapAB) + { + if(ret == -1) + throw OperationFailedException("Error writing to register, attempted to write 16bit value 0x%4x to register %s (0x%2x) for masked write [AB Swap active, actual register read is %s (0x%2x)]",value, Registers16[reg], reg, Registers16[hwreg], hwreg); + else if(ret < 0) + throw OperationFailedException("Unknown error [%d], attempted to write 16bit value 0x%4x to register %s (0x%2x) for masked write [AB Swap active, actual register read is %s (0x%2x)]",ret, value, Registers16[reg], reg, Registers16[hwreg], hwreg); + } + else + { + if(ret == -1) + throw OperationFailedException("Error writing to register, attempted to write 16bit value 0x%4x to register %s (0x%2x) for masked write",value, Registers16[reg], reg); + else if(ret < 0) + throw OperationFailedException("Unknown error [%d], attempted to write 16bit value 0x%4x to register %s (0x%2x) for masked write",ret, value, Registers16[reg], reg); + } + } + + // unlock process + MutexUnlock(); +} + +/*! Attempt to write specific bits in a 16 bit value to a register + In case of an error, the function will return prematurely, + without setting an error. +*/ +void Mcp23017::muteI2CMaskedWrite16(uint8_t reg, uint16_t value, uint16_t mask) +{ + int result; + uint16_t newval; + uint8_t hwreg = reg; + + // lock process + MutexLock(); + // Ensure that we're initially reading from the right register in relation to the AB swap settings + // (With swap enabled, we should start reading from the odd register, with swap disabled, we should start reading from the even register) + if(this->swapAB) + hwreg |= 0x01; + else + hwreg &= 0xFE; + + // read current value; + if( (result = i2cReadReg16(this->fp,hwreg)) < 0) + { +// fprintf(stderr,"WARNING: Got error code [%d] attempting to read\r\n",result); + // unlock process + MutexUnlock(); + return; + } + + // copy result to new variable + newval = (uint16_t)(result); + // keep only the non-masked bits + newval &= ~mask; + // overwrite the masked bits with the new value + newval |= (value & mask); + + if( (result = i2cWriteReg16(this->fp,hwreg,newval)) < 0) + { +// fprintf(stderr,"WARNING: Got error code [%d] attempting to write\r\n",result); + // unlock process + MutexUnlock(); + return; + } + + // unlock process + MutexUnlock(); + +} diff --git a/src/mcp23017/mcp23017.hpp b/src/mcp23017/mcp23017.hpp new file mode 100644 index 0000000..177f4fb --- /dev/null +++ b/src/mcp23017/mcp23017.hpp @@ -0,0 +1,291 @@ +#ifndef __MCP23017_H_ +#define __MCP23017_H_ + +#include "../exception/baseexceptions.hpp" +#include "../thread/thread.hpp" +#include + +/*! \file MCP23017 interface functions. Header file. +*/ + +/**************************** +* * +* PUBLIC STRUCTS * +* * +*****************************/ + +// Structure for IO Configuration +//! \typedef HWConfig Structure containing hardware configuration for the MCP23017 +class HWConfig +{ + public: + bool DISSLEW ; /*!< Disable slew rate control (useful in noisy circuits operating at 400kHz and below), Default: false*/ + bool INT_MIRROR; /*!< Mirror INTA and INTB pins: Both pins act as a single INT pin responding to both port A and port B, Default: true */ + bool INT_ODR; /*!< Set interrupt pins as open drain output, Default: false */ + bool INT_POL; /*!< Set interrupt polatity: 1 is active-high, 0 is active-low, Default: false */ + + HWConfig(); + uint8_t parse(); /*!< parse into usable uint8_t */ +}; + +// Structure for IO Configuration +//! \struct PWMConfig Structure containing current PWM configuration (only used as return value) +struct PwmConfig +{ + uint32_t tick_delay_us; /*!< Delay between ticks in us */ + uint8_t ticks; /*!< Number of ticks in a cycle */ +}; + +/************************************ +* * +* MAIN CLASS * +* * +*************************************/ + +class Mcp23017 : public Thread +{ + private: + uint8_t adr; // I2C Address of the IO expander chip + int fp; // File pointer for the I2C connection + bool swapAB; // Option to swap ports A and B for 8bit and 16 bit operations + + HWConfig hwConfig; // Configuration of the port + + bool pwm_enabled; // Boolean used to stop the PWM thread safely + uint16_t pwm_mask; // Masks the pins on which PWM operates + uint8_t pwm_values[16]; // PWM value for each possible pin + uint8_t pwm_v_values[16]; // Cache for the PWM values provided, before downconversion + uint32_t pwm_tick_delay_us; // Interval between PWM steps in us + uint8_t pwm_ticks; // Number of PWM steps before coming full circle + uint16_t pwm_prev_val; // Keeps state of pwm output; + + uint8_t tryI2CRead8 (uint8_t reg); + void tryI2CWrite8(uint8_t reg, uint8_t value); + void tryI2CMaskedWrite8(uint8_t reg, uint8_t value, uint8_t mask); + + uint16_t tryI2CRead16(uint8_t reg); + void tryI2CWrite16(uint8_t reg, uint16_t value); + void tryI2CMaskedWrite16(uint8_t reg, uint16_t value, uint16_t mask); + void muteI2CMaskedWrite16(uint8_t reg, uint16_t value, uint16_t mask); + + + + protected: + virtual void ThreadFunc(void); // Override this if you want the entire function customized + + public: + //! Open a new connection to the MCP23017 device, and initialize it. + /*! + \param adr The I2C address of the IC to connect to + \param iodir Initial I/O direction mask (HIGH is input, LOW is output) + \param ipol Initial input polarity mask (HIGH inverts polarity, LOW keeps it the same) + \param pullup Initial pullup mask (HIGH enables pullup, LOW disables) + \param hwcfg Hardware configuration for the IC + \param swapAB Swap A and B registers in the 16 bit operations + \sa MCP23017Close + */ + Mcp23017( uint8_t adr, + uint16_t iodir, + uint16_t ipol, + uint16_t pullup, + HWConfig hwcfg, + bool swapAB + ); + + ~Mcp23017(); + + /************************************ + * * + * INTERRUPT FUNCTIONS * + * * + ************************************/ + + //! Set interrupt config for the MCP23017 + /*! + \param intcon The interrupt control mask (HIGH bit compares to default value, LOW bit to previous value) + \param defval Initial default value for the pins + \param int_enable The interrupt enable mask (HIGH bit enables, LOW bit disables) + */ + void IntConfig(uint16_t defval, uint16_t intcon, uint16_t int_enable); + + //! Get the interrupt condition of the interrupt-enabled pins + /*! + \return Current interrupt trigger state for pins + */ + uint16_t getIntF(); + + //! //! Get state of input pins on latest interrupt + /*! + \return The state of the interrupt pins on the last interrupt + */ + uint16_t getIntCap(); + + //! Set Default value for pins + /*! + \param value The new default value for the pins + */ + void setDefault(uint16_t value); + + //! Get default value for input pins + /*! + \return Current default value for the input pins + */ + uint16_t getDefault(); + + //! Set Interrupt enable mask + /*! + \param value The new interrupt enable mask (HIGH bit enables, LOW bit disables) + */ + void setIntEnable(uint16_t value); + + //! Get Interrupt enable mask + /*! + \return Current interrupt enable mask + */ + uint16_t getIntEnable(); + + //! Set Interrupt control value + /*! + \param value The new interrupt control mask (HIGH bit compares to default value, LOW bit to previous value) + */ + void setIntControl(uint16_t value); + + //! Get Interrupt control value + /*! + \return Current interrupt control state + */ + uint16_t getIntControl(); + + /************************************ + * * + * REGULAR I/O FUNCTIONS * + * * + ************************************/ + + //! Set input polarity + /*! + \param value The input polarity - HIGH inverts input polarity, LOW does not + */ + void setIPol(uint16_t value); + + //! Get input polarity + /*! + \return Current value of the input polarity + */ + uint16_t getIPol(); + + //! Get output latch value + /*! + \return Current value of the output latches + */ + uint16_t getOLat(); + + //! Set IO Direction + /*! + \param key The new I/O direction (HIGH bit is input, LOW bit is output) + */ + void setDirection(uint16_t value); + + //! Get IO Direction + /*! + \return Current value of the IO direction + */ + uint16_t getDirection(); + + //! Set new output value of the I/O pins + /*! + \param value The new output value of the pins + */ + void setValue(uint16_t value); + + //! Get current input value of the I/O pins + /*! + \return Current value of the port + */ + uint16_t getValue(); + + //! Set new output value for a subset of the I/O pins (masked by 'mask', where high bits indicat bits to set in the output) + /*! + \param value The new output value of the pins + \param mask The mask indicating which bits to apply (HIGH bit indicated bit will be applied) + */ + void setMaskedValue(uint16_t value, uint16_t mask); + //! Get the values of a specific pin; + /*! + \return The current state (1 or 0) of the pin + */ + bool getPin(uint8_t pin); + + //! Set the value of a specific pin + /*! + \param value Boolean indicating the new value of the pin + */ + void setPin(uint8_t pin, bool value); + + /************************************ + * * + * PWM FUNCTIONS * + * * + ************************************/ + + //! Start the PWM routine for this I/O expander + void PwmStart(); + + //! Stop the PWM routine for this I/O expander + void PwmStop(); + + //! Get the PWM value for a specific pin (can be different from previously set value, due to rounding errors) + /*! + \param pin The pin number of which to retrieve the value + \return The current PWM value for the pin + */ + uint8_t getPwmValue(uint8_t pin); + + //! Set the PWM value for a specific pin as 0-255 value + /*! + \param pin The pin number of which to retrieve the value + \param value The new PWM value + */ + void setPwmValue(uint8_t pin, uint8_t value); + + //! Set the PWM value for a specific pin as 0-255 value and apply gamma correction for LED light levels + /*! + \param pin The pin number of which to retrieve the value + \param value The new PWM value + */ + void setPwmLedValue(uint8_t, uint8_t lightvalue); + + //! Get the PWM state (on/off) for a specific pin + /*! + \param pin The pin number of which to retrieve the state + \return Boolean indicating the current state of the pin + */ + bool getPwmState(uint8_t pin); + + //! Set the PWM state (on/off) for a specific pin + /*! + \param pin The pin number of which to set the state + \param state Boolean indicating the new state of pwm on this pin (HIGH is enabled, LOW is disabled) + */ + void setPwmState(uint8_t pin, bool state); + + //! Set the PWM Configuration + /*! Default value results in a 4 bit PWM of around 80Hz + Note: PWM has a fairly heavy CPU load. With default settings (4 bit pwm, 800us/step) this is around 4.5% on a raspberry pi. + Doubling the resolution to 5 bit, 400us/step takes around 7% cpu load. Use at your own discretion. + + \param tick_delay_us The number of microseconds between PWM ticks (default: 313 us) + \param ticks The number of ticks in one PWM cycle (default: 32 ticks) + */ + void setPwmConfig(uint32_t tick_delay_us, uint8_t ticks); + + //! Get PWM Configuration + /*! + \return PWMConfig object containing the current settings + */ + PwmConfig getPwmConfig(); + +}; + + +#endif \ No newline at end of file diff --git a/src/test/mcp23017-i2ctest.c b/src/test/mcp23017-i2ctest.c new file mode 100644 index 0000000..21c9a16 --- /dev/null +++ b/src/test/mcp23017-i2ctest.c @@ -0,0 +1,130 @@ +#include +#include +#include +#include +#include +#include +#include +#include + +#include "../i2c/i2c.h" + +int main(int argc, char ** argv) +{ + int fd,i; + int result; + + char * Registers8[22] = + { + "IODIRA ", // 00 + "IODIRB ", // 01 + "IPOLA ", // 02 + "IPOLB ", // 03 + "GPINTENA", // 04 + "GPINTENB", // 05 + "DEFVALA ", // 06 + "DEFVALB ", // 07 + "INTCONA ", // 08 + "INTCONB ", // 09 + "IOCON ", // 0A + "IOCON ", // 0B + "GPPUA ", // 0C + "GPPUB ", // 0D + "INTFA ", // 0E + "INTFB ", // 0F + "INTCAPA ", // 10 + "INTCAPB ", // 11 + "GPIOA ", // 12 + "GPIOB ", // 13 + "OLATA ", // 14 + "OLATB " // 15 + }; + + char * Registers16[22] = + { + "IODIR ", // 00 + "IODIR ", // 01 + "IPOL ", // 02 + "IPOL ", // 03 + "GPINTEN", // 04 + "GPINTEN", // 05 + "DEFVAL ", // 06 + "DEFVAL ", // 07 + "INTCON ", // 08 + "INTCON ", // 09 + "IOCON ", // 0A + "IOCON ", // 0B + "GPPU ", // 0C + "GPPU ", // 0D + "INTF ", // 0E + "INTF ", // 0F + "INTCAP ", // 10 + "INTCAP ", // 11 + "GPIO ", // 12 + "GPIO ", // 13 + "OLAT ", // 14 + "OLAT " // 15 + }; + + fd = i2cInit(0x20); + + if(argc > 2) + { + int reg = -1; + int val = -1; + + if(strlen(argv[1]) == 4 && strncmp(argv[1],"0x",2) == 0) + reg = strtol(argv[1],NULL,16); + + if( (strlen(argv[2]) == 4 || strlen(argv[2]) == 6) && strncmp(argv[2],"0x",2) == 0) + val = strtol(argv[2],NULL,16); + + if(reg < 0) + printf ("Please provide an 8 bit hexadecimal value for the register in the form of 0xHH\n"); + if(val < 0) + printf ("Please provide an 8 or 16 bit hexadecimal value for the value in the form of 0xHH\n"); + + if(reg >= 0 && val >= 0) + { + if(strlen(argv[2]) == 4) + { + printf("Setting register %s (0x%02x) to 8 bit value 0x%02x\n\n", Registers8[reg], reg, val); + i2cWriteReg8(fd,(unsigned char)reg, (unsigned char) val); + } + else if (strlen(argv[2]) == 6) + { + printf("Setting register %s (0x%02x) to 16 bit value 0x%04x\n\n", Registers16[reg], reg, val); + i2cWriteReg16(fd,(unsigned char)reg, (unsigned short) val); + } + } + + } + + + printf("Reading registers as 8 bit values\n"); + for(i=0x00; i < 0x16; i++) + { + result = i2cReadReg8(fd,i); + printf(" %s (0x%02x) : 0x%02x\n",Registers8[i], i,result); + } + + printf("\n"); + printf("Reading registers as 16 bit values\n"); + + for(i=0x00; i < 0x16; i+=2) + { + result = i2cReadReg16(fd,i); + printf(" %s (0x%02x) : 0x%04x\n",Registers16[i], i,result); + } + + printf("\n"); + printf("Reading registers as 16 bit values with A/B swapped\n"); + + for(i=0x01; i < 0x16; i+=2) + { + result = i2cReadReg16(fd,i); + printf(" %s (0x%02x) : 0x%04x\n",Registers16[i], i,result); + } + + return 0; +} diff --git a/src/thread/thread.cpp b/src/thread/thread.cpp new file mode 100644 index 0000000..abbba44 --- /dev/null +++ b/src/thread/thread.cpp @@ -0,0 +1,145 @@ +#include "thread.hpp" +#include +#include +#include +#include + +#include + +#include "../log/log.hpp" + +using namespace std; + +void * thread_threadStarter(void *); + +Thread::Thread() +{ + running = false; + + pthread_mutexattr_init(&mutexAttr); + pthread_mutexattr_settype(&mutexAttr, PTHREAD_MUTEX_RECURSIVE); + pthread_mutex_init(&mutex, &mutexAttr); + +} + +Thread::~Thread() +{ + // clean up the mutex + pthread_mutex_destroy(&mutex); + + // Stop the thread if needed + if(running) + ThreadStop(); +} + +bool Thread::ThreadRunning() +{ + return running; +} + + +void Thread::ThreadStart() +{ + int32_t result; + if(!running) + { + running = true; + + result = pthread_create(&wthread, NULL, thread_threadStarter, this); + if(result != 0) // success + { + running = false; + if(result == EAGAIN) + throw ThreadException("Cannot create thread: Error EAGAIN - The system lacked the neccesary resources to create another thread, or PTHREAD_THREADS_MAX is exceeded"); + else if(result == EINVAL) + throw ThreadException("Cannot create thread: Error EINVAL - The value specified by attr (in pthread_create) is invalid"); + else if(result == EPERM) + throw ThreadException("Cannot create thread: Error EPERM - The caller does not have approproate permission to set the required scheduling permissions or scheduling policy"); + } + } +} + +void Thread::ThreadStop() +{ + int32_t result; + if(running) + { + running = false; // stops the thread loop + result = pthread_join(wthread, NULL); // wait for completion + if(result != 0) + { + if(result == EINVAL) + throw ThreadException("Cannot end thread: Error EINVAL - The implementation has detected that the value specified by thread does not refer to a joinable thread."); + else if(result == ESRCH) + throw ThreadException("Cannot create thread: Error ESRCH - No thread could be found corresponding to that specified by the given thread ID"); + else if(result == EDEADLK) + throw ThreadException("Cannot create thread: Error EINVAL - A deadlock was detected or the value of thread specifies the calling thread."); + } + } +} + +void Thread::ThreadStarter() +{ + try + { + ThreadFunc(); + running = false; + } + catch(std::exception x) + { + running = false; + + // (debug) Log the exception, before calling the callback + // clog << kLogErr << x.what() << endl; + onThreadError(this, ThreadException(x.what())); + + } +} + +bool Thread::MakeRealtime() +{ + struct sched_param params; + int32_t ret; + + params.sched_priority = sched_get_priority_max(SCHED_FIFO); + ret = pthread_setschedparam(wthread, SCHED_FIFO, ¶ms); // This thread is always key->pwm_thread, and if not, then it should be + + if (ret != 0) { + // Print the error + clog << kLogWarning << "Unsuccessful in setting thread realtime priority" << endl; + return false; + } + else + return true; +} + +void Thread::ThreadLoop(void) +{ + usleep(25000); +} + +void Thread::ThreadFunc(void) +{ + while(running) + { + ThreadLoop(); + } +} + +void Thread::MutexLock() +{ + pthread_mutex_lock(&mutex); +} +void Thread::MutexUnlock() +{ + pthread_mutex_unlock(&mutex); +} + + + +// static function that calls the real function +void * thread_threadStarter(void * obj) +{ + Thread * wt = (Thread*)obj; + wt->ThreadStarter(); +} diff --git a/src/thread/thread.hpp b/src/thread/thread.hpp new file mode 100644 index 0000000..da32eab --- /dev/null +++ b/src/thread/thread.hpp @@ -0,0 +1,48 @@ +#ifndef __THREAD_HPP +#define __THREAD_HPP + +#include +#include +#include "../exception/baseexceptions.hpp" +#include + +DefineNewMsgException(ThreadException); + +/* +class ThreadException : public MsgException +{ + protected: + virtual std::string type() { return "ThreadException"; } +}; +*/ + +class Thread +{ + friend void * thread_threadStarter(void * obj); + public: + ~Thread(); + boost::signals2::signal onThreadError; + + protected: + Thread(); + + void ThreadStart(); + void ThreadStop(); + bool ThreadRunning(); + void MutexLock(); + void MutexUnlock(); + + bool MakeRealtime(); + virtual void ThreadFunc(void); // Override this if you want the entire function custom + virtual void ThreadLoop(); // + + private: + pthread_t wthread; + pthread_mutex_t mutex; + pthread_mutexattr_t mutexAttr; + bool running; + void ThreadStarter(); +}; + + +#endif//__MC_HID_SERVER_HPP \ No newline at end of file diff --git a/version.py b/version.py new file mode 100644 index 0000000..2c0d715 --- /dev/null +++ b/version.py @@ -0,0 +1,2 @@ +PACKAGE="mediacore-hid" +VERSION="1.0.0" diff --git a/version.py.in b/version.py.in new file mode 100644 index 0000000..fcf36eb --- /dev/null +++ b/version.py.in @@ -0,0 +1,2 @@ +PACKAGE="@V_PACKAGE@" +VERSION="@V_VERSION@"