Coder Social home page Coder Social logo

domoticz / domoticz Goto Github PK

View Code? Open in Web Editor NEW
3.4K 3.4K 1.1K 393.5 MB

Open source Home Automation System

Home Page: http://www.domoticz.com

License: GNU General Public License v3.0

CMake 0.26% C++ 67.48% Shell 0.42% C# 0.29% HTML 4.77% CSS 1.64% Inno Setup 0.08% Batchfile 0.01% Perl 0.02% Lua 7.50% Python 1.31% JavaScript 16.11% Makefile 0.01% Gherkin 0.07% Dockerfile 0.01% Mustache 0.02%

domoticz's Introduction

Domoticz

Domoticz is a Home Automation System that lets you monitor and configure various devices like: Lights, Switches, various sensors/meters like Temperature, Rain, Wind, UV, Electra, Gas, Water and much more. Notifications/Alerts can be sent to any mobile device

Multi platform: Linux/Windows/Embedded Devices

This system is designed to operate in various operating systems. The user-interface is a scalable HTML5 web frontend, and is automatically adapted for Desktop and Mobile Devices. Compatible with all recent browsers

Some Information

  • Hardware: RFXCOM Transceiver, Zigbee, Z-Wave, P1 Smart Meter, YouLess Meter, Pulse Counters, 1-Wire, Philips Hue and a lot more....
  • Extended logging
  • iPhone / Android / Windows 10 (Phone & Desktop) push notifications
  • Auto learning sensors/switches
  • Manual creation of switch codes
  • Share / Use external devices
  • Designed for simplicity

Support

By default Domoticz is protected by a username (admin) and password (domoticz).

Please either change the password as soon as possible or create a different admin user and remove the default (admin) user.

More information on securing your Domoticz setup can be found in the SECURITY SETUP documentation.

Your first place for support is the Domoticz Forum

The Github issue tracker is NOT for end-user support.

Security issues

See the Security file for more information.

Donations

Donations are more than welcome and will be used to buy new hardware, devices, sensors, hosting and coffee. If you like the product or encourage the development, please use the link:

paypal

More information

Build Status

Status Operating system
Status Linux Linux x86_64
Status Windows Windows

domoticz's People

Contributors

akamming avatar corbinmunce avatar dannybloe avatar debugbill avatar dnpwwo avatar eddyk69 avatar efdeb avatar emontnemery avatar evsdd avatar fellownet avatar gaudryc avatar gizmocuz avatar gordonb3 avatar guillaumezin avatar hvbommel avatar jvandenbroek avatar jvanderzande avatar kiddigital avatar michahagg avatar moroen avatar neheb avatar rkluwen avatar rwaaren avatar sbouchex avatar scottydj2 avatar spugna85 avatar stas-demydiuk avatar stuntteam avatar szczukot avatar tomaszszczukobls avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

domoticz's Issues

Windows Libraries issues with cmake and runtime

Windows Libraries zip is a handy download to get windows developers going, but it differs quite from how the original libraries are packed, and thus if we try to get cmake working on windows we run into these:

Precompiled headers:

  • The generator in CMakeLists.txt for MSVC simply doesn't work at all. We can fix this by using Cotire [1] or CMakePCHCompiler[2]. I tried the later and it works, but Cotire should be a better choice.

FindPackage(Boost):

  • Expects the libraries to be in stage/lib or lib and not separated by release and debug folders, as the library names won't clash.
  • It's built with static runtime, which isn't standard and won't offer us much advantages. It would be easy to include the runtime into the installer for final users.

FindPackage(OpenSSL)

  • We can't use the standard FindOpenSSL.cmake because it's built with static runtime, which it doesn't support.

I was able to work out Precompiled header issues, and boost issues, but the OpenSSL issue made me consider that I was getting into too much effort to keep current Windows Libraries layout then I should.

Proposal: Recreate Windows Libraries to use dynamic runtime, and standard layouts so FindPackage can find those with less work-around.

[1] https://github.com/sakra/cotire
[2] https://github.com/mitchellwong/CMakePCHCompiler

SMTP: Unable to send mail

I'm trying to use email for notifications and use a OS X mailserver which is a Postfix server.
The OS X server refuses to accept email with the following error message:
Nov 15 22:38:10 mac-mini.example.com postfix/smtpd[33394]: NOQUEUE: reject: RCPT from unknown[192.168.15.166]: 504 5.5.2 : Help command rejected: need fully-qualified hostname; from=[email protected] to=[email protected] proto=ESMTP helo=

The hostname is set correctly and matches the FQDN.
Is it possible to change the code to use the FQDN?

Deadlock

Domoticz r3226 became unresponsive this morning after switching a zwave switch.
I made a gdb stacktrace before restarting domoticz.
It appears that a Zwave notification (Thread 5) has been received at the same time of my SwitchLight command (Thread 16).

Thread 15 and 16 were waiting in COpenZWave::SwitchLight for Thread 5 to unlock COpenZWaveControlPanel::m_NotificationMutex in COpenZWave::OnZWaveNotification.

Thread 5, 14, 8, and 6 was waiting in MainWorker::DecodeRXMessage for Thread 16 to unlock MainWorker::decodeRXMessageMutex in MainWorker::DecodeRXMessage.


Thread 18 (Thread 0x766f2450 (LWP 24171)):
#0 0x76d0e2c8 in __lll_lock_wait (futex=0xa7b644, private=0) at ../ports/sysdeps/unix/sysv/linux/arm/nptl/lowlevellock.c:47
#1 0x76d08d1c in _pthread_mutex_lock (mutex=0xa7b644) at pthread_mutex_lock.c:61
#2 0x003de034 in pthread_mutex_lock (m=0xa7b644) at /usr/local/include/boost/thread/pthread/mutex.hpp:62
#3 boost::mutex::lock (this=0xa7b644) at /usr/local/include/boost/thread/pthread/mutex.hpp:116
#4 0x003dfb2c in boost::lock_guardboost::mutex::lock_guard (this=0x766f0934, m
=...) at /usr/local/include/boost/thread/lock_guard.hpp:38
#5 0x0042ac74 in MainWorker::DecodeRXMessage (this=0xa7a9e0, pHardware=0x165a5f0, pRXCommand=0x766f0ab0 "\v\021\241=") at /home/pi/dev-domoticz/main/mainworker.cpp:1626
#6 0x00446b5c in MainWorker::SwitchLightInt (this=0xa7a9e0, sd=..., switchcmd=..., level=60, hue=-1, IsTesting=false) at /home/pi/dev-domoticz/main/mainworker.cpp:9476
#7 0x004a3598 in CSQLHelper::SwitchLightFromTasker (this=0xa7b8e8, idx=62, switchcmd=..., level=61, hue=-1) at /home/pi/dev-domoticz/main/SQLHelper.cpp:1930
#8 0x004a4a88 in CSQLHelper::Do_Work (this=0xa7b8e8) at /home/pi/dev-domoticz/main/SQLHelper.cpp:2110
#9 0x004c9cd8 in boost::_mfi::mf0<void, CSQLHelper>::operator() (this=0x1625654, p=0xa7b8e8) at /usr/local/include/boost/bind/mem_fn_template.hpp:49
#10 0x004c9c00 in boost::_bi::list1boost::_bi::value<CSQLHelper* >::operator()<boost::_mfi::mf0<void, CSQLHelper>, boost::_bi::list0> (this=0x162565c, f=..., a=...) at /usr/local/include/boost/bind/bind.hpp:253
#11 0x004c9ba8 in boost::_bi::bind_t<void, boost::_mfi::mf0<void, CSQLHelper>, boost::_bi::list1boost::_bi::value<CSQLHelper* > >::operator() (this=0x1625654) at /usr/local/include/boost/bind/bind_template.hpp:20
#12 0x004c98d8 in boost::detail::thread_data<boost::_bi::bind_t<void, boost::_mfi::mf0<void, CSQLHelper>, boost::_bi::list1boost::_bi::value<CSQLHelper* > > >::run (this=0x1625538) at /usr/local/include/boost/thread/detail/thread.hpp:116
#13 0x00839448 in thread_proxy ()
#14 0x76d06c00 in start_thread (arg=0x766f2450) at pthread_create.c:306
#15 0x76ba0728 in ?? () at ../ports/sysdeps/unix/sysv/linux/arm/nptl/../clone.S:116 from /lib/arm-linux-gnueabihf/libc.so.6
#16 0x76ba0728 in ?? () at ../ports/sysdeps/unix/sysv/linux/arm/nptl/../clone.S:116 from /lib/arm-linux-gnueabihf/libc.so.6

Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 17 (Thread 0x75ef2450 (LWP 24172)):
#0 0x76ba0e54 in epoll_wait () at ../sysdeps/unix/syscall-template.S:82
#1 0x005affb0 in boost::asio::detail::epoll_reactor::run (this=0x166f6a0, block=true, ops=...) at /usr/local/include/boost/asio/detail/impl/epoll_reactor.ipp:392
#2 0x005b1284 in boost::asio::detail::task_io_service::do_run_one (this=0x166f5e8, lock=..., this_thread=..., ec=...) at /usr/local/include/boost/asio/detail/impl/task_io_service.ipp:356
#3 0x005b0ef4 in boost::asio::detail::task_io_service::run (this=0x166f5e8, ec=...) at /usr/local/include/boost/asio/detail/impl/task_io_service.ipp:149
#4 0x005b14fc in boost::asio::io_service::run (this=0x166f524) at /usr/local/include/boost/asio/impl/io_service.ipp:59
#5 0x00789e80 in http::server::server::run (this=0x166f524) at /home/pi/dev-domoticz/webserver/server.cpp:80
#6 0x0076ec74 in http::server::cWebem::Run (this=0x166f3f0) at /home/pi/dev-domoticz/webserver/cWebem.cpp:83
#7 0x004ccdb8 in http::server::CWebServer::Do_Work (this=0x1658c08) at /home/pi/dev-domoticz/main/WebServer.cpp:127
#8 0x005841fc in boost::_mfi::mf0<void, http::server::CWebServer>::operator() (this=0x167456c, p=0x1658c08) at /usr/local/include/boost/bind/mem_fn_template.hpp:49
#9 0x00584094 in boost::_bi::list1boost::_bi::value<http::server::CWebServer* >::operator()<boost::_mfi::mf0<void, http::server::CWebServer>, boost::_bi::list0> (this=0x1674574, f=..., a=...) at /usr/local/include/boost/bind/bind.hpp:253
#10 0x00583fac in boost::_bi::bind_t<void, boost::_mfi::mf0<void, http::server::CWebServer>, boost::_bi::list1boost::_bi::value<http::server::CWebServer* > >::operator() (this=0x167456c) at /usr/local/include/boost/bind/bind_template.hpp:20
#11 0x00583f1c in boost::detail::thread_data<boost::_bi::bind_t<void, boost::_mfi::mf0<void, http::server::CWebServer>, boost::_bi::list1boost::_bi::value<http::server::CWebServer* > > >::run (this=0x1674450) at /usr/local/include/boost/thread/detail/thread.hpp:116
#12 0x00839448 in thread_proxy ()
#13 0x76d06c00 in start_thread (arg=0x75ef2450) at pthread_create.c:306
#14 0x76ba0728 in ?? () at ../ports/sysdeps/unix/sysv/linux/arm/nptl/../clone.S:116 from /lib/arm-linux-gnueabihf/libc.so.6
#15 0x76ba0728 in ?? () at ../ports/sysdeps/unix/sysv/linux/arm/nptl/../clone.S:116 from /lib/arm-linux-gnueabihf/libc.so.6

Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 16 (Thread 0x756f2450 (LWP 24173)):
#0 0x76d0e2c8 in __lll_lock_wait (futex=0x165a9dc, private=0) at ../ports/sysdeps/unix/sysv/linux/arm/nptl/lowlevellock.c:47
#1 0x76d08d1c in _pthread_mutex_lock (mutex=0x165a9dc) at pthread_mutex_lock.c:61
#2 0x003de034 in pthread_mutex_lock (m=0x165a9dc) at /usr/local/include/boost/thread/pthread/mutex.hpp:62
#3 boost::mutex::lock (this=0x165a9dc) at /usr/local/include/boost/thread/pthread/mutex.hpp:116
#4 0x003dfb2c in boost::lock_guardboost::mutex::lock_guard (this=0x756ed5f4, m
=...) at /usr/local/include/boost/thread/lock_guard.hpp:38
#5 0x0066bd40 in COpenZWave::SwitchLight (this=0x165a5f0, nodeID=3, instanceID=1, commandClass=37, value=0) at /home/pi/dev-domoticz/hardware/OpenZWave.cpp:1138
#6 0x0072f054 in ZWaveBase::WriteToHardware (this=0x165a5f0, pdata=0x756ed940 "\v\021\241?", length=12 '\f') at /home/pi/dev-domoticz/hardware/ZWaveBase.cpp:919
#7 0x0042a1a0 in MainWorker::WriteToHardware (this=0xa7a9e0, HwdID=3, pdata=0x756ed940 "\v\021\241?", length=12 '\f') at /home/pi/dev-domoticz/main/mainworker.cpp:1448
#8 0x00446ae0 in MainWorker::SwitchLightInt (this=0xa7a9e0, sd=..., switchcmd=..., level=0, hue=-1, IsTesting=false) at /home/pi/dev-domoticz/main/mainworker.cpp:9469
#9 0x00449e5c in MainWorker::SwitchLight (this=0xa7a9e0, idx=24, switchcmd=..., level=0, hue=-1, ooc=false, ExtraDelay=0) at /home/pi/dev-domoticz/main/mainworker.cpp:10208
#10 0x00449b60 in MainWorker::SwitchLight (this=0xa7a9e0, idx=..., switchcmd=..., level=..., hue=..., ooc=..., ExtraDelay=0) at /home/pi/dev-domoticz/main/mainworker.cpp:10172
#11 0x005027cc in http::server::CWebServer::HandleCommand (this=0x1674650, cparam=..., root=...) at /home/pi/dev-domoticz/main/WebServer.cpp:5395
#12 0x004da3a0 in http::server::CWebServer::GetJSonPage (this=0x1674650) at /home/pi/dev-domoticz/main/WebServer.cpp:757
#13 0x00583574 in boost::_mfi::mf0<std::string, http::server::CWebServer>::operator() (this=0x168a150, p=0x1674650) at /usr/local/include/boost/bind/mem_fn_template.hpp:49
#14 0x00582298 in boost::_bi::list1boost::_bi::value<http::server::CWebServer* >::operator()<std::string, boost::_mfi::mf0<std::string, http::server::CWebServer>, boost::_bi::list0> (this=0x168a158, f=..., a=...) at /usr/local/include/boost/bind/bind.hpp:243
#15 0x00580838 in boost::_bi::bind_t<std::string, boost::_mfi::mf0<std::string, http::server::CWebServer>, boost::_bi::list1boost::_bi::value<http::server::CWebServer* > >::operator() (this=0x168a150) at /usr/local/include/boost/bind/bind_template.hpp:20
#16 0x0057dedc in boost::detail::function::function_obj_invoker0<boost::_bi::bind_t<std::string, boost::_mfi::mf0<std::string, http::server::CWebServer>, boost::_bi::list1boost::_bi::value<http::server::CWebServer* > >, std::string>::invoke (function_obj_ptr=...) at /usr/local/include/boost/function/function_template.hpp:138
#17 0x00779174 in boost::function0std::string::operator() (this=0x168a14c) at /usr/local/include/boost/function/function_template.hpp:771
#18 0x00771984 in http::server::cWebem::CheckForPageOverride (this=0x16746d0, req=..., rep=...) at /home/pi/dev-domoticz/webserver/cWebem.cpp:710
#19 0x007760ac in http::server::cWebemRequestHandler::handle_request (this=0x16747f0, sHost=..., req=..., rep=...) at /home/pi/dev-domoticz/webserver/cWebem.cpp:1532
#20 0x0075b934 in http::server::connection::handle_read_secure (this=0x6f5dc900, error=..., bytes_transferred=586) at /home/pi/dev-domoticz/webserver/connection.cpp:169
#21 0x00768f3c in boost::_mfi::mf2<void, http::server::connection, boost::system::error_code const&, unsigned int>::callboost::shared_ptr<http::server::connection, boost::system::error_code const, unsigned int> (this=0x756f1bb4, u=..., b1=..., b2=@0x756f19b8: 586) at /usr/local/include/boost/bind/mem_fn_template.hpp:271
#22 0x00767404 in boost::_mfi::mf2<void, http::server::connection, boost::system::error_code const&, unsigned int>::operator()boost::shared_ptr<http::server::connection > (this=0x756f1bb4, u=..., a1=..., a2=586) at /usr/local/include/boost/bind/mem_fn_template.hpp:286
#23 0x00766570 in boost::bi::list3boost::bi::value<boost::shared_ptr<http::server::connection >, boost::arg<1> ()(), boost::arg<2> ()()>::operator()<boost::_mfi::mf2<void, http::server::connection, boost::system::error_code const&, unsigned int>, boost::_bi::list2<boost::system::error_code const&, unsigned int const&> > (this=0x756f1bbc, f=..., a=...) at /usr/local/include/boost/bind/bind.hpp:392
#24 0x00764794 in boost::_bi::bind_t<void, boost::_mfi::mf2<void, http::server::connection, boost::system::error_code const&, unsigned int>, boost::bi::list3boost::bi::value<boost::shared_ptr<http::server::connection >, boost::arg<1> ()(), boost::arg<2> ()()> >::operator()<boost::system::error_code, unsigned int> (this=0x756f1bb4, a1=..., a2=@0x756f1ad0: 586) at /usr/local/include/boost/bind/bind_template.hpp:102
#25 0x00762c0c in boost::asio::ssl::detail::read_opboost::asio::mutable_buffers_1::call_handler<boost::_bi::bind_t<void, boost::_mfi::mf2<void, http::server::connection, boost::system::error_code const&, unsigned int>, boost::bi::list3boost::bi::value<boost::shared_ptr<http::server::connection >, boost::arg<1> ()(), boost::arg<2> ()()> > > (this=0x756f1b98, handler=..., ec=..., bytes_transferred=@0x756f1ad0: 586) at /usr/local/include/boost/asio/ssl/detail/read_op.hpp:59
#26 0x0076186c in boost::asio::ssl::detail::io_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::stream_socket_serviceboost::asio::ip::tcp >, boost::asio::ssl::detail::read_opboost::asio::mutable_buffers_1, boost::_bi::bind_t<void, boost::_mfi::mf2<void, http::server::connection, boost::system::error_code const&, unsigned int>, boost::bi::list3boost::bi::value<boost::shared_ptr<http::server::connection >, boost::arg<1> ()(), boost::arg<2> ()()> > >::operator() (this=0x756f1b90, ec=..., bytes_transferred=629, start=0) at /usr/local/include/boost/asio/ssl/detail/io.hpp:266
#27 0x0076bf88 in boost::asio::detail::binder2<boost::asio::ssl::detail::io_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::stream_socket_serviceboost::asio::ip::tcp >, boost::asio::ssl::detail::read_opboost::asio::mutable_buffers_1, boost::_bi::bind_t<void, boost::_mfi::mf2<void, http::server::connection, boost::system::error_code const&, unsigned int>, boost::bi::list3boost::bi::value<boost::shared_ptr<http::server::connection >, boost::arg<1> ()(), boost::arg<2> ()()> > >, boost::system::error_code, unsigned int>::operator() (this=0x756f1b90) at /usr/local/include/boost/asio/detail/bind_handler.hpp:127
#28 0x0076b9c0 in boost::asio::asio_handler_invoke<boost::asio::detail::binder2<boost::asio::ssl::detail::io_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::stream_socket_serviceboost::asio::ip::tcp >, boost::asio::ssl::detail::read_opboost::asio::mutable_buffers_1, boost::_bi::bind_t<void, boost::_mfi::mf2<void, http::server::connection, boost::system::error_code const&, unsigned int>, boost::bi::list3boost::bi::value<boost::shared_ptr<http::server::connection >, boost::arg<1> ()(), boost::arg<2> ()()> > >, boost::system::error_code, unsigned int> > (function=...) at /usr/local/include/boost/asio/handler_invoke_hook.hpp:69
#29 0x0076b398 in boost_asio_handler_invoke_helpers::invoke<boost::asio::detail::binder2<boost::asio::ssl::detail::io_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::stream_socket_serviceboost::asio::ip::tcp >, boost::asio::ssl::detail::read_opboost::asio::mutable_buffers_1, boost::_bi::bind_t<void, boost::_mfi::mf2<void, http::server::connection, boost::system::error_code const&, unsigned int>, boost::bi::list3boost::bi::value<boost::shared_ptr<http::server::connection >, boost::arg<1> ()(), boost::arg<2> ()()> > >, boost::system::error_code, unsigned int>, boost::_bi::bind_t<void, boost::_mfi::mf2<void, http::server::connection, boost::system::error_code const&, unsigned int>, boost::bi::list3boost::bi::value<boost::shared_ptr<http::server::connection >, boost::arg<1> ()(), boost::arg<2> ()()> > > (function=..., context=...) at /usr/local/include/boost/asio/detail/handler_invoke_helpers.hpp:37
#30 0x0076a6c8 in boost::asio::ssl::detail::asio_handler_invoke<boost::asio::detail::binder2<boost::asio::ssl::detail::io_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::stream_socket_serviceboost::asio::ip::tcp >, boost::asio::ssl::detail::read_opboost::asio::mutable_buffers_1, boost::_bi::bind_t<void, boost::_mfi::mf2<void, http::server::connection, boost::system::error_code const&, unsigned int>, boost::bi::list3boost::bi::value<boost::shared_ptr<http::server::connection >, boost::arg<1> ()(), boost::arg<2> ()()> > >, boost::system::error_code, unsigned int>, boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::stream_socket_serviceboost::asio::ip::tcp >, boost::asio::ssl::detail::read_opboost::asio::mutable_buffers_1, boost::_bi::bind_t<void, boost::_mfi::mf2<void, http::server::connection, boost::system::error_code const&, unsigned int>, boost::bi::list3boost::bi::value<boost::shared_ptr<http::server::connection >, boost::arg<1> ()(), boost::arg<2> ()()> > > (function=..., this_handler=0x756f1b90) at /usr/local/include/boost/asio/ssl/detail/io.hpp:320
#31 0x00769c88 in boost_asio_handler_invoke_helpers::invoke<boost::asio::detail::binder2<boost::asio::ssl::detail::io_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::stream_socket_serviceboost::asio::ip::tcp >, boost::asio::ssl::detail::read_opboost::asio::mutable_buffers_1, boost::_bi::bind_t<void, boost::_mfi::mf2<void, http::server::connection, boost::system::error_code const&, unsigned int>, boost::bi::list3boost::bi::value<boost::shared_ptr<http::server::connection >, boost::arg<1> ()(), boost::arg<2> ()()> > >, boost::system::error_code, unsigned int>, boost::asio::ssl::detail::io_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::stream_socket_serviceboost::asio::ip::tcp >, boost::asio::ssl::detail::read_opboost::asio::mutable_buffers_1, boost::_bi::bind_t<void, boost::_mfi::mf2<void, http::server::connection, boost::system::error_code const&, unsigned int>, boost::bi::list3boost::bi::value<boost::shared_ptr<http::server::connection >, boost::arg<1> ()(), boost::arg<2> ()()> > > > (function=..., context=...) at /usr/local/include/boost/asio/detail/handler_invoke_helpers.hpp:37
#32 0x00768988 in boost::asio::detail::reactive_socket_recv_op<boost::asio::mutable_buffers_1, boost::asio::ssl::detail::io_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::stream_socket_serviceboost::asio::ip::tcp >, boost::asio::ssl::detail::read_opboost::asio::mutable_buffers_1, boost::_bi::bind_t<void, boost::_mfi::mf2<void, http::server::connection, boost::system::error_code const&, unsigned int>, boost::bi::list3boost::bi::value<boost::shared_ptr<http::server::connection >, boost::arg<1> ()(), boost::arg<2> ()()> > > >::do_complete (owner=0x16748c8, base=0x6e327790) at /usr/local/include/boost/asio/detail/reactive_socket_recv_op.hpp:110
#33 0x005ae920 in boost::asio::detail::task_io_service_operation::complete (this=0x6e327790, owner=..., ec=..., bytes_transferred=0) at /usr/local/include/boost/asio/detail/task_io_service_operation.hpp:38
#34 0x005b0830 in boost::asio::detail::epoll_reactor::descriptor_state::do_complete (owner=0x16748c8, base=0x1687f70, ec=..., bytes_transferred=5) at /usr/local/include/boost/asio/detail/impl/epoll_reactor.ipp:651
#35 0x005ae920 in boost::asio::detail::task_io_service_operation::complete (this=0x1687f70, owner=..., ec=..., bytes_transferred=5) at /usr/local/include/boost/asio/detail/task_io_service_operation.hpp:38
#36 0x005b1308 in boost::asio::detail::task_io_service::do_run_one (this=0x16748c8, lock=..., this_thread=..., ec=...) at /usr/local/include/boost/asio/detail/impl/task_io_service.ipp:372
#37 0x005b0ef4 in boost::asio::detail::task_io_service::run (this=0x16748c8, ec=...) at /usr/local/include/boost/asio/detail/impl/task_io_service.ipp:149
#38 0x005b14fc in boost::asio::io_service::run (this=0x1674804) at /usr/local/include/boost/asio/impl/io_service.ipp:59
#39 0x00789e80 in http::server::server::run (this=0x1674804) at /home/pi/dev-domoticz/webserver/server.cpp:80
#40 0x0076ec74 in http::server::cWebem::Run (this=0x16746d0) at /home/pi/dev-domoticz/webserver/cWebem.cpp:83
#41 0x004ccdb8 in http::server::CWebServer::Do_Work (this=0x1674650) at /home/pi/dev-domoticz/main/WebServer.cpp:127
#42 0x005841fc in boost::_mfi::mf0<void, http::server::CWebServer>::operator() (this=0x168e9c4, p=0x1674650) at /usr/local/include/boost/bind/mem_fn_template.hpp:49
#43 0x00584094 in boost::_bi::list1boost::_bi::value<http::server::CWebServer* >::operator()<boost::_mfi::mf0<void, http::server::CWebServer>, boost::_bi::list0> (this=0x168e9cc, f=..., a=...) at /usr/local/include/boost/bind/bind.hpp:253
#44 0x00583fac in boost::_bi::bind_t<void, boost::_mfi::mf0<void, http::server::CWebServer>, boost::_bi::list1boost::_bi::value<http::server::CWebServer* > >::operator() (this=0x168e9c4) at /usr/local/include/boost/bind/bind_template.hpp:20
#45 0x00583f1c in boost::detail::thread_data<boost::_bi::bind_t<void, boost::_mfi::mf0<void, http::server::CWebServer>, boost::_bi::list1boost::_bi::value<http::server::CWebServer* > > >::run (this=0x168e8a8) at /usr/local/include/boost/thread/detail/thread.hpp:116
#46 0x00839448 in thread_proxy ()
#47 0x76d06c00 in start_thread (arg=0x756f2450) at pthread_create.c:306
#48 0x76ba0728 in ?? () at ../ports/sysdeps/unix/sysv/linux/arm/nptl/../clone.S:116 from /lib/arm-linux-gnueabihf/libc.so.6
#49 0x76ba0728 in ?? () at ../ports/sysdeps/unix/sysv/linux/arm/nptl/../clone.S:116 from /lib/arm-linux-gnueabihf/libc.so.6

Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 15 (Thread 0x74ef2450 (LWP 24174)):
#0 0x76d0e2c8 in __lll_lock_wait (futex=0x165a9dc, private=0) at ../ports/sysdeps/unix/sysv/linux/arm/nptl/lowlevellock.c:47
#1 0x76d08d1c in _pthread_mutex_lock (mutex=0x165a9dc) at pthread_mutex_lock.c:61
#2 0x003de034 in pthread_mutex_lock (m=0x165a9dc) at /usr/local/include/boost/thread/pthread/mutex.hpp:62
#3 boost::mutex::lock (this=0x165a9dc) at /usr/local/include/boost/thread/pthread/mutex.hpp:116
#4 0x003dfb2c in boost::lock_guardboost::mutex::lock_guard (this=0x74ef075c, m
=...) at /usr/local/include/boost/thread/lock_guard.hpp:38
#5 0x0066bd40 in COpenZWave::SwitchLight (this=0x165a5f0, nodeID=4, instanceID=1, commandClass=37, value=0) at /home/pi/dev-domoticz/hardware/OpenZWave.cpp:1138
#6 0x0072f054 in ZWaveBase::WriteToHardware (this=0x165a5f0, pdata=0x74ef0aa8 "\v\021\241>", length=12 '\f') at /home/pi/dev-domoticz/hardware/ZWaveBase.cpp:919
#7 0x0042a1a0 in MainWorker::WriteToHardware (this=0xa7a9e0, HwdID=3, pdata=0x74ef0aa8 "\v\021\241>", length=12 '\f') at /home/pi/dev-domoticz/main/mainworker.cpp:1448
#8 0x00446ae0 in MainWorker::SwitchLightInt (this=0xa7a9e0, sd=..., switchcmd=..., level=255, hue=0, IsTesting=false) at /home/pi/dev-domoticz/main/mainworker.cpp:9469
#9 0x00449e5c in MainWorker::SwitchLight (this=0xa7a9e0, idx=25, switchcmd=..., level=100, hue=0, ooc=false, ExtraDelay=0) at /home/pi/dev-domoticz/main/mainworker.cpp:10208
#10 0x0047f380 in CScheduler::CheckSchedules (this=0xa7a9ec) at /home/pi/dev-domoticz/main/Scheduler.cpp:511
#11 0x0047e800 in CScheduler::Do_Work (this=0xa7a9ec) at /home/pi/dev-domoticz/main/Scheduler.cpp:364
#12 0x00488328 in boost::_mfi::mf0<void, CScheduler>::operator() (this=0x168ecfc, p=0xa7a9ec) at /usr/local/include/boost/bind/mem_fn_template.hpp:49
#13 0x00488250 in boost::_bi::list1boost::_bi::value<CScheduler* >::operator()<boost::_mfi::mf0<void, CScheduler>, boost::_bi::list0> (this=0x168ed04, f=..., a=...) at /usr/local/include/boost/bind/bind.hpp:253
#14 0x004881f8 in boost::_bi::bind_t<void, boost::_mfi::mf0<void, CScheduler>, boost::_bi::list1boost::_bi::value<CScheduler* > >::operator() (this=0x168ecfc) at /usr/local/include/boost/bind/bind_template.hpp:20
#15 0x004881b0 in boost::detail::thread_data<boost::_bi::bind_t<void, boost::_mfi::mf0<void, CScheduler>, boost::_bi::list1boost::_bi::value<CScheduler* > > >::run (this=0x168ebe0) at /usr/local/include/boost/thread/detail/thread.hpp:116
#16 0x00839448 in thread_proxy ()
#17 0x76d06c00 in start_thread (arg=0x74ef2450) at pthread_create.c:306
#18 0x76ba0728 in ?? () at ../ports/sysdeps/unix/sysv/linux/arm/nptl/../clone.S:116 from /lib/arm-linux-gnueabihf/libc.so.6
#19 0x76ba0728 in ?? () at ../ports/sysdeps/unix/sysv/linux/arm/nptl/../clone.S:116 from /lib/arm-linux-gnueabihf/libc.so.6

Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 14 (Thread 0x746f2450 (LWP 24175)):
#0 0x76d0e2c8 in __lll_lock_wait (futex=0xa7b644, private=0) at ../ports/sysdeps/unix/sysv/linux/arm/nptl/lowlevellock.c:47
#1 0x76d08d1c in _pthread_mutex_lock (mutex=0xa7b644) at pthread_mutex_lock.c:61
#2 0x003de034 in pthread_mutex_lock (m=0xa7b644) at /usr/local/include/boost/thread/pthread/mutex.hpp:62
#3 boost::mutex::lock (this=0xa7b644) at /usr/local/include/boost/thread/pthread/mutex.hpp:116
#4 0x003dfb2c in boost::lock_guardboost::mutex::lock_guard (this=0x746f13bc, m
=...) at /usr/local/include/boost/thread/lock_guard.hpp:38
#5 0x0042ac74 in MainWorker::DecodeRXMessage (this=0xa7a9e0, pHardware=0xa7afc0, pRXCommand=0x746f174c "\023\363\006\001H\341\304B") at /home/pi/dev-domoticz/main/mainworker.cpp:1626
#6 0x00472128 in boost::_mfi::mf2<void, MainWorker, CDomoticzHardwareBase const*, unsigned char const*>::operator() (this=0x168eb18, p=0xa7a9e0, a1=0xa7afc0, a2=0x746f174c "\023\363\006\001H\341\304B") at /usr/local/include/boost/bind/mem_fn_template.hpp:280
#7 0x0046f7e8 in boost::_bi::list3boost::_bi::value<MainWorker*, boost::arg<1>, boost::arg<2> >::operator()<boost::_mfi::mf2<void, MainWorker, CDomoticzHardwareBase const*, unsigned char const*>, boost::_bi::list2<CDomoticzHardwareBase*&, unsigned char const*&> > (this=0x168eb20, f=..., a=...) at /usr/local/include/boost/bind/bind.hpp:392
#8 0x0046c4d8 in boost::_bi::bind_t<void, boost::_mfi::mf2<void, MainWorker, CDomoticzHardwareBase const*, unsigned char const*>, boost::_bi::list3boost::_bi::value<MainWorker*, boost::arg<1>, boost::arg<2> > >::operator()<CDomoticzHardwareBase*, unsigned char const*> (this=0x168eb18, a1=@0x746f1490: 0xa7afc0, a2=@0x746f148c: 0x746f174c "\023\363\006\001H\341\304B") at /usr/local/include/boost/bind/bind_template.hpp:61
#9 0x0046871c in boost::detail::function::void_function_obj_invoker2<boost::_bi::bind_t<void, boost::_mfi::mf2<void, MainWorker, CDomoticzHardwareBase const*, unsigned char const*>, boost::bi::list3boost::bi::value<MainWorker*, boost::arg<1>, boost::arg<2> > >, void, CDomoticzHardwareBase, unsigned char const>::invoke (function_obj_ptr=..., a0=0xa7afc0, a1=0x746f174c "\023\363\006\001H\341\304B") at /usr/local/include/boost/function/function_template.hpp:159
#10 0x0059f294 in boost::function2<void, CDomoticzHardwareBase*, unsigned char const*>::operator() (this=0x168eb14, a0=0xa7afc0, a1=0x746f174c "\023\363\006\001H\341\304B") at /usr/local/include/boost/function/function_template.hpp:771
#11 0x0059f144 in boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker::m_invoke(boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > const&, boost::enable_ifboost::is_void<void, void>::type*) const (this=0x746f1648, connectionBody=...) at /usr/local/include/boost/signals2/detail/signal_template.hpp:363
#12 0x0059f03c in boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker::operator()(boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > const&) const (this=0x746f1648, connectionBody=...) at /usr/local/include/boost/signals2/detail/signal_template.hpp:344
#13 0x0059eeb4 in boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> >::dereference() const (this=0x746f155c) at /usr/local/include/boost/signals2/detail/slot_call_iterator.hpp:109
#14 0x0059eb98 in boost::iterators::iterator_core_access::dereference<boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >(boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > const&) (f=...) at /usr/local/include/boost/iterator/iterator_facade.hpp:549
#15 0x0059e594 in boost::iterators::detail::iterator_facade_base<boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> >, boost::signals2::detail::void_type, boost::iterators::single_pass_traversal_tag, boost::signals2::detail::void_type&, int, false, false>::operator*() const (this=0x746f155c) at /usr/local/include/boost/iterator/iterator_facade.hpp:655
#16 0x0059d828 in boost::signals2::optional_last_value::operator()<boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >(boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> >, boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker, std::List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> >) const (this=0x160cc28, first=..., last=...) at /usr/local/include/boost/signals2/optional_last_value.hpp:55
#17 0x0059c608 in boost::signals2::detail::combiner_invoker::operator()boost::signals2::optional_last_value<void, boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker, std::List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >(boost::signals2::optional_last_value&, boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker, std::List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> >, boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker, std::List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> >) const (this=0x746f16dc, combiner=..., first=..., last=...) at /usr/local/include/boost/signals2/detail/result_type_wrapper.hpp:64
#18 0x0059b740 in boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::operator()(CDomoticzHardwareBase
, unsigned char const
) (this=0x160cbb8, arg1=0xa7afc0, arg2=0x746f174c "\023\363\006\001H\341\304B") at /usr/local/include/boost/signals2/detail/signal_template.hpp:247
#19 0x0059ac54 in boost::signals2::signal2<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::operator()(CDomoticzHardwareBase
, unsigned char const) (this=0xa7afe4, arg1=0xa7afc0, arg2=0x746f174c "\023\363\006\001H\341\304B") at /usr/local/include/boost/signals2/detail/signal_template.hpp:723
#20 0x0060fa3c in CHardwareMonitor::SendPercentage (this=0xa7afc0, Idx=1100, Percentage=98.4400024, defaultname=...) at /home/pi/dev-domoticz/hardware/HardwareMonitor.cpp:263
#21 0x006105ac in CHardwareMonitor::UpdateSystemSensor (this=0xa7afc0, qType=..., dindex=0, devName=..., devValue=...) at /home/pi/dev-domoticz/hardware/HardwareMonitor.cpp:416
#22 0x006108ac in CHardwareMonitor::FetchUnixData (this=0xa7afc0) at /home/pi/dev-domoticz/hardware/HardwareMonitor.cpp:588
#23 0x00610450 in CHardwareMonitor::FetchData (this=0xa7afc0) at /home/pi/dev-domoticz/hardware/HardwareMonitor.cpp:381
#24 0x0060f298 in CHardwareMonitor::Do_Work (this=0xa7afc0) at /home/pi/dev-domoticz/hardware/HardwareMonitor.cpp:145
#25 0x00613c5c in boost::_mfi::mf0<void, CHardwareMonitor>::operator() (this=0x168f23c, p=0xa7afc0) at /usr/local/include/boost/bind/mem_fn_template.hpp:49
#26 0x00613b84 in boost::_bi::list1boost::_bi::value<CHardwareMonitor* >::operator()<boost::_mfi::mf0<void, CHardwareMonitor>, boost::_bi::list0> (this=0x168f244, f=..., a=...) at /usr/local/include/boost/bind/bind.hpp:253
#27 0x00613b2c in boost::_bi::bind_t<void, boost::_mfi::mf0<void, CHardwareMonitor>, boost::_bi::list1boost::_bi::value<CHardwareMonitor* > >::operator() (this=0x168f23c) at /usr/local/include/boost/bind/bind_template.hpp:20
#28 0x00613ae4 in boost::detail::thread_data<boost::_bi::bind_t<void, boost::_mfi::mf0<void, CHardwareMonitor>, boost::_bi::list1boost::_bi::value<CHardwareMonitor* > > >::run (this=0x168f120) at /usr/local/include/boost/thread/detail/thread.hpp:116
#29 0x00839448 in thread_proxy ()
#30 0x76d06c00 in start_thread (arg=0x746f2450) at pthread_create.c:306
#31 0x76ba0728 in ?? () at ../ports/sysdeps/unix/sysv/linux/arm/nptl/../clone.S:116 from /lib/arm-linux-gnueabihf/libc.so.6
#32 0x76ba0728 in ?? () at ../ports/sysdeps/unix/sysv/linux/arm/nptl/../clone.S:116 from /lib/arm-linux-gnueabihf/libc.so.6

Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 13 (Thread 0x73ef2450 (LWP 24176)):
#0 0x76ba0e54 in epoll_wait () at ../sysdeps/unix/syscall-template.S:82
#1 0x005affb0 in boost::asio::detail::epoll_reactor::run (this=0x1690138, block=true, ops=...) at /usr/local/include/boost/asio/detail/impl/epoll_reactor.ipp:392
#2 0x005b1284 in boost::asio::detail::task_io_service::do_run_one (this=0x16902b0, lock=..., this_thread=..., ec=...) at /usr/local/include/boost/asio/detail/impl/task_io_service.ipp:356
#3 0x005b0ef4 in boost::asio::detail::task_io_service::run (this=0x16902b0, ec=...) at /usr/local/include/boost/asio/detail/impl/task_io_service.ipp:149
#4 0x005b14fc in boost::asio::io_service::run (this=0x168ef68) at /usr/local/include/boost/asio/impl/io_service.ipp:59
#5 0x00753ac8 in tcp::server::CTCPServerInt::start (this=0x168ef68) at /home/pi/dev-domoticz/tcpserver/TCPServer.cpp:51
#6 0x007549b0 in tcp::server::CTCPServer::Do_Work (this=0xa7b2e8) at /home/pi/dev-domoticz/tcpserver/TCPServer.cpp:269
#7 0x0075a3c4 in boost::_mfi::mf0<void, tcp::server::CTCPServer>::operator() (this=0x16905ac, p=0xa7b2e8) at /usr/local/include/boost/bind/mem_fn_template.hpp:49
#8 0x0075a2ec in boost::_bi::list1boost::_bi::value<tcp::server::CTCPServer* >::operator()<boost::_mfi::mf0<void, tcp::server::CTCPServer>, boost::_bi::list0> (this=0x16905b4, f=..., a=...) at /usr/local/include/boost/bind/bind.hpp:253
#9 0x0075a294 in boost::_bi::bind_t<void, boost::_mfi::mf0<void, tcp::server::CTCPServer>, boost::_bi::list1boost::_bi::value<tcp::server::CTCPServer* > >::operator() (this=0x16905ac) at /usr/local/include/boost/bind/bind_template.hpp:20
#10 0x0075a1d8 in boost::detail::thread_data<boost::_bi::bind_t<void, boost::_mfi::mf0<void, tcp::server::CTCPServer>, boost::_bi::list1boost::_bi::value<tcp::server::CTCPServer* > > >::run (this=0x1690490) at /usr/local/include/boost/thread/detail/thread.hpp:116
#11 0x00839448 in thread_proxy ()
#12 0x76d06c00 in start_thread (arg=0x73ef2450) at pthread_create.c:306
#13 0x76ba0728 in ?? () at ../ports/sysdeps/unix/sysv/linux/arm/nptl/../clone.S:116 from /lib/arm-linux-gnueabihf/libc.so.6
#14 0x76ba0728 in ?? () at ../ports/sysdeps/unix/sysv/linux/arm/nptl/../clone.S:116 from /lib/arm-linux-gnueabihf/libc.so.6

Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 12 (Thread 0x736f2450 (LWP 24177)):
#0 0x76d0e2c8 in __lll_lock_wait (futex=0xa7a9f4, private=0) at ../ports/sysdeps/unix/sysv/linux/arm/nptl/lowlevellock.c:47
#1 0x76d08d1c in _pthread_mutex_lock (mutex=0xa7a9f4) at pthread_mutex_lock.c:61
#2 0x003de034 in pthread_mutex_lock (m=0xa7a9f4) at /usr/local/include/boost/thread/pthread/mutex.hpp:62
#3 boost::mutex::lock (this=0xa7a9f4) at /usr/local/include/boost/thread/pthread/mutex.hpp:116
#4 0x003dfb2c in boost::lock_guardboost::mutex::lock_guard (this=0x736f1a3c, m
=...) at /usr/local/include/boost/thread/lock_guard.hpp:38
#5 0x0047df6c in CScheduler::SetSunRiseSetTimers (this=0xa7a9ec, sSunRise=..., sSunSet=...) at /home/pi/dev-domoticz/main/Scheduler.cpp:221
#6 0x00425908 in MainWorker::GetSunSettings (this=0xa7a9e0) at /home/pi/dev-domoticz/main/mainworker.cpp:456
#7 0x00429c90 in MainWorker::Do_Work (this=0xa7a9e0) at /home/pi/dev-domoticz/main/mainworker.cpp:1366
#8 0x00477334 in boost::_mfi::mf0<void, MainWorker>::operator() (this=0x168f424, p=0xa7a9e0) at /usr/local/include/boost/bind/mem_fn_template.hpp:49
#9 0x0047701c in boost::_bi::list1boost::_bi::value<MainWorker* >::operator()<boost::_mfi::mf0<void, MainWorker>, boost::_bi::list0> (this=0x168f42c, f=..., a=...) at /usr/local/include/boost/bind/bind.hpp:253
#10 0x004769cc in boost::_bi::bind_t<void, boost::_mfi::mf0<void, MainWorker>, boost::_bi::list1boost::_bi::value<MainWorker* > >::operator() (this=0x168f424) at /usr/local/include/boost/bind/bind_template.hpp:20
#11 0x00476570 in boost::detail::thread_data<boost::_bi::bind_t<void, boost::_mfi::mf0<void, MainWorker>, boost::_bi::list1boost::_bi::value<MainWorker* > > >::run (this=0x168f308) at /usr/local/include/boost/thread/detail/thread.hpp:116
#12 0x00839448 in thread_proxy ()
#13 0x76d06c00 in start_thread (arg=0x736f2450) at pthread_create.c:306
#14 0x76ba0728 in ?? () at ../ports/sysdeps/unix/sysv/linux/arm/nptl/../clone.S:116 from /lib/arm-linux-gnueabihf/libc.so.6
#15 0x76ba0728 in ?? () at ../ports/sysdeps/unix/sysv/linux/arm/nptl/../clone.S:116 from /lib/arm-linux-gnueabihf/libc.so.6

Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 11 (Thread 0x72ef2450 (LWP 24178)):
#0 0x76d0b8b8 in __pthread_cond_timedwait (cond=0x168f598, mutex=0x168f580, abstime=0x72ef1c80) at pthread_cond_timedwait.c:168
#1 0x0083979c in boost::condition_variable::do_wait_until(boost::unique_lockboost::mutex&, timespec const&) clone .constprop.215
#2 0x00839c80 in boost::this_thread::hiden::sleep_for(timespec const&) ()
#3 0x0041db1c in boost::this_thread::sleep_for (ns=...) at /usr/local/include/boost/thread/pthread/thread_data.hpp:243
#4 0x0041df9c in boost::this_thread::sleep_for<long long, boost::ratio<1ll, 1000ll> > (d=...) at /usr/local/include/boost/thread/v2/thread.hpp:112
#5 0x0041cd6c in sleep_milliseconds (milliseconds=500) at /home/pi/dev-domoticz/main/Helper.cpp:380
#6 0x0072bdc8 in ZWaveBase::Do_Work (this=0x165a5f0) at /home/pi/dev-domoticz/hardware/ZWaveBase.cpp:77
#7 0x007325f8 in boost::_mfi::mf0<void, ZWaveBase>::operator() (this=0x168f60c, p=0x165a5f0) at /usr/local/include/boost/bind/mem_fn_template.hpp:49
#8 0x00732520 in boost::_bi::list1boost::_bi::value<ZWaveBase* >::operator()<boost::_mfi::mf0<void, ZWaveBase>, boost::_bi::list0> (this=0x168f614, f=..., a=...) at /usr/local/include/boost/bind/bind.hpp:253
#9 0x007324c8 in boost::_bi::bind_t<void, boost::_mfi::mf0<void, ZWaveBase>, boost::_bi::list1boost::_bi::value<ZWaveBase* > >::operator() (this=0x168f60c) at /usr/local/include/boost/bind/bind_template.hpp:20
#10 0x00732480 in boost::detail::thread_data<boost::_bi::bind_t<void, boost::_mfi::mf0<void, ZWaveBase>, boost::_bi::list1boost::_bi::value<ZWaveBase* > > >::run (this=0x168f4f0) at /usr/local/include/boost/thread/detail/thread.hpp:116
#11 0x00839448 in thread_proxy ()
#12 0x76d06c00 in start_thread (arg=0x72ef2450) at pthread_create.c:306
#13 0x76ba0728 in ?? () at ../ports/sysdeps/unix/sysv/linux/arm/nptl/../clone.S:116 from /lib/arm-linux-gnueabihf/libc.so.6
#14 0x76ba0728 in ?? () at ../ports/sysdeps/unix/sysv/linux/arm/nptl/../clone.S:116 from /lib/arm-linux-gnueabihf/libc.so.6

Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 10 (Thread 0x726f2450 (LWP 24179)):
#0 0x76d0b8b8 in __pthread_cond_timedwait (cond=0x168f780, mutex=0x168f768, abstime=0x726f1c88) at pthread_cond_timedwait.c:168
#1 0x0083979c in boost::condition_variable::do_wait_until(boost::unique_lockboost::mutex&, timespec const&) clone .constprop.215
#2 0x00839c80 in boost::this_thread::hiden::sleep_for(timespec const&) ()
#3 0x0041db1c in boost::this_thread::sleep_for (ns=...) at /usr/local/include/boost/thread/pthread/thread_data.hpp:243
#4 0x0041de70 in boost::this_thread::sleep_for<long long, boost::ratio<1ll, 1ll> > (d=...) at /usr/local/include/boost/thread/v2/thread.hpp:112
#5 0x0041cd30 in sleep_seconds (seconds=1) at /home/pi/dev-domoticz/main/Helper.cpp:371
#6 0x006d95d0 in RFXComSerial::Do_Work (this=0x165b7a8) at /home/pi/dev-domoticz/hardware/RFXComSerial.cpp:129
#7 0x006e0544 in boost::_mfi::mf0<void, RFXComSerial>::operator() (this=0x168f7f4, p=0x165b7a8) at /usr/local/include/boost/bind/mem_fn_template.hpp:49
#8 0x006e046c in boost::_bi::list1boost::_bi::value<RFXComSerial* >::operator()<boost::_mfi::mf0<void, RFXComSerial>, boost::_bi::list0> (this=0x168f7fc, f=..., a=...) at /usr/local/include/boost/bind/bind.hpp:253
#9 0x006e0414 in boost::_bi::bind_t<void, boost::_mfi::mf0<void, RFXComSerial>, boost::_bi::list1boost::_bi::value<RFXComSerial* > >::operator() (this=0x168f7f4) at /usr/local/include/boost/bind/bind_template.hpp:20
#10 0x006e03cc in boost::detail::thread_data<boost::_bi::bind_t<void, boost::_mfi::mf0<void, RFXComSerial>, boost::_bi::list1boost::_bi::value<RFXComSerial* > > >::run (this=0x168f6d8) at /usr/local/include/boost/thread/detail/thread.hpp:116
#11 0x00839448 in thread_proxy ()
#12 0x76d06c00 in start_thread (arg=0x726f2450) at pthread_create.c:306
#13 0x76ba0728 in ?? () at ../ports/sysdeps/unix/sysv/linux/arm/nptl/../clone.S:116 from /lib/arm-linux-gnueabihf/libc.so.6
#14 0x76ba0728 in ?? () at ../ports/sysdeps/unix/sysv/linux/arm/nptl/../clone.S:116 from /lib/arm-linux-gnueabihf/libc.so.6

Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 9 (Thread 0x71ef2450 (LWP 24180)):
#0 0x76d0b8b8 in __pthread_cond_timedwait (cond=0x168f990, mutex=0x168f978, abstime=0x71ef1c70) at pthread_cond_timedwait.c:168
#1 0x0083979c in boost::condition_variable::do_wait_until(boost::unique_lockboost::mutex&, timespec const&) clone .constprop.215
#2 0x00839c80 in boost::this_thread::hiden::sleep_for(timespec const&) ()
#3 0x0041db1c in boost::this_thread::sleep_for (ns=...) at /usr/local/include/boost/thread/pthread/thread_data.hpp:243
#4 0x0041df9c in boost::this_thread::sleep_for<long long, boost::ratio<1ll, 1000ll> > (d=...) at /usr/local/include/boost/thread/v2/thread.hpp:112
#5 0x0041cd6c in sleep_milliseconds (milliseconds=200) at /home/pi/dev-domoticz/main/Helper.cpp:380
#6 0x005e4890 in CEnOceanESP3::Do_Work (this=0x165c6e0) at /home/pi/dev-domoticz/hardware/EnOceanESP3.cpp:449
#7 0x005e9afc in boost::_mfi::mf0<void, CEnOceanESP3>::operator() (this=0x168fa04, p=0x165c6e0) at /usr/local/include/boost/bind/mem_fn_template.hpp:49
#8 0x005e9a24 in boost::_bi::list1boost::_bi::value<CEnOceanESP3* >::operator()<boost::_mfi::mf0<void, CEnOceanESP3>, boost::_bi::list0> (this=0x168fa0c, f=..., a=...) at /usr/local/include/boost/bind/bind.hpp:253
#9 0x005e99cc in boost::_bi::bind_t<void, boost::_mfi::mf0<void, CEnOceanESP3>, boost::_bi::list1boost::_bi::value<CEnOceanESP3* > >::operator() (this=0x168fa04) at /usr/local/include/boost/bind/bind_template.hpp:20
#10 0x005e9984 in boost::detail::thread_data<boost::_bi::bind_t<void, boost::_mfi::mf0<void, CEnOceanESP3>, boost::_bi::list1boost::_bi::value<CEnOceanESP3* > > >::run (this=0x168f8e8) at /usr/local/include/boost/thread/detail/thread.hpp:116
#11 0x00839448 in thread_proxy ()
#12 0x76d06c00 in start_thread (arg=0x71ef2450) at pthread_create.c:306
#13 0x76ba0728 in ?? () at ../ports/sysdeps/unix/sysv/linux/arm/nptl/../clone.S:116 from /lib/arm-linux-gnueabihf/libc.so.6
#14 0x76ba0728 in ?? () at ../ports/sysdeps/unix/sysv/linux/arm/nptl/../clone.S:116 from /lib/arm-linux-gnueabihf/libc.so.6

Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 8 (Thread 0x716f2450 (LWP 24181)):
#0 0x76d0e2c8 in __lll_lock_wait (futex=0xa7b644, private=0) at ../ports/sysdeps/unix/sysv/linux/arm/nptl/lowlevellock.c:47
#1 0x76d08d1c in _pthread_mutex_lock (mutex=0xa7b644) at pthread_mutex_lock.c:61
#2 0x003de034 in pthread_mutex_lock (m=0xa7b644) at /usr/local/include/boost/thread/pthread/mutex.hpp:62
#3 boost::mutex::lock (this=0xa7b644) at /usr/local/include/boost/thread/pthread/mutex.hpp:116
#4 0x003dfb2c in boost::lock_guardboost::mutex::lock_guard (this=0x716f105c, m
=...) at /usr/local/include/boost/thread/lock_guard.hpp:38
#5 0x0042ac74 in MainWorker::DecodeRXMessage (this=0xa7a9e0, pHardware=0x166e190, pRXCommand=0x716f13d4 "\rT\001") at /home/pi/dev-domoticz/main/mainworker.cpp:1626
#6 0x00472128 in boost::_mfi::mf2<void, MainWorker, CDomoticzHardwareBase const*, unsigned char const*>::operator() (this=0x166e668, p=0xa7a9e0, a1=0x166e190, a2=0x716f13d4 "\rT\001") at /usr/local/include/boost/bind/mem_fn_template.hpp:280
#7 0x0046f7e8 in boost::_bi::list3boost::_bi::value<MainWorker*, boost::arg<1>, boost::arg<2> >::operator()<boost::_mfi::mf2<void, MainWorker, CDomoticzHardwareBase const*, unsigned char const*>, boost::_bi::list2<CDomoticzHardwareBase*&, unsigned char const*&> > (this=0x166e670, f=..., a=...) at /usr/local/include/boost/bind/bind.hpp:392
#8 0x0046c4d8 in boost::_bi::bind_t<void, boost::_mfi::mf2<void, MainWorker, CDomoticzHardwareBase const*, unsigned char const*>, boost::_bi::list3boost::_bi::value<MainWorker*, boost::arg<1>, boost::arg<2> > >::operator()<CDomoticzHardwareBase*, unsigned char const*> (this=0x166e668, a1=@0x716f1130: 0x166e190, a2=@0x716f112c: 0x716f13d4 "\rT\001") at /usr/local/include/boost/bind/bind_template.hpp:61
#9 0x0046871c in boost::detail::function::void_function_obj_invoker2<boost::_bi::bind_t<void, boost::_mfi::mf2<void, MainWorker, CDomoticzHardwareBase const*, unsigned char const*>, boost::bi::list3boost::bi::value<MainWorker*, boost::arg<1>, boost::arg<2> > >, void, CDomoticzHardwareBase, unsigned char const>::invoke (function_obj_ptr=..., a0=0x166e190, a1=0x716f13d4 "\rT\001") at /usr/local/include/boost/function/function_template.hpp:159
#10 0x0059f294 in boost::function2<void, CDomoticzHardwareBase*, unsigned char const*>::operator() (this=0x166e664, a0=0x166e190, a1=0x716f13d4 "\rT\001") at /usr/local/include/boost/function/function_template.hpp:771
#11 0x0059f144 in boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker::m_invoke(boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > const&, boost::enable_ifboost::is_void<void, void>::type*) const (this=0x716f12e8, connectionBody=...) at /usr/local/include/boost/signals2/detail/signal_template.hpp:363
#12 0x0059f03c in boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker::operator()(boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > const&) const (this=0x716f12e8, connectionBody=...) at /usr/local/include/boost/signals2/detail/signal_template.hpp:344
#13 0x0059eeb4 in boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> >::dereference() const (this=0x716f11fc) at /usr/local/include/boost/signals2/detail/slot_call_iterator.hpp:109
#14 0x0059eb98 in boost::iterators::iterator_core_access::dereference<boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >(boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > const&) (f=...) at /usr/local/include/boost/iterator/iterator_facade.hpp:549
#15 0x0059e594 in boost::iterators::detail::iterator_facade_base<boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> >, boost::signals2::detail::void_type, boost::iterators::single_pass_traversal_tag, boost::signals2::detail::void_type&, int, false, false>::operator*() const (this=0x716f11fc) at /usr/local/include/boost/iterator/iterator_facade.hpp:655
#16 0x0059d828 in boost::signals2::optional_last_value::operator()<boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >(boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> >, boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker, std::List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> >) const (this=0x1653ba8, first=..., last=...) at /usr/local/include/boost/signals2/optional_last_value.hpp:55
#17 0x0059c608 in boost::signals2::detail::combiner_invoker::operator()boost::signals2::optional_last_value<void, boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker, std::List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >(boost::signals2::optional_last_value&, boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker, std::List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> >, boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker, std::List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> >) const (this=0x716f137c, combiner=..., first=..., last=...) at /usr/local/include/boost/signals2/detail/result_type_wrapper.hpp:64
#18 0x0059b740 in boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::operator()(CDomoticzHardwareBase
, unsigned char const
) (this=0x165c6c8, arg1=0x166e190, arg2=0x716f13d4 "\rT\001") at /usr/local/include/boost/signals2/detail/signal_template.hpp:247
#19 0x0059ac54 in boost::signals2::signal2<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::operator()(CDomoticzHardwareBase
, unsigned char const) (this=0x166e1b4, arg1=0x166e190, arg2=0x716f13d4 "\rT\001") at /usr/local/include/boost/signals2/detail/signal_template.hpp:723
#20 0x00727774 in CWunderground::GetMeterDetails (this=0x166e190) at /home/pi/dev-domoticz/hardware/Wunderground.cpp:253
#21 0x00726b88 in CWunderground::Do_Work (this=0x166e190) at /home/pi/dev-domoticz/hardware/Wunderground.cpp:68
#22 0x0072a164 in boost::_mfi::mf0<void, CWunderground>::operator() (this=0x168fc14, p=0x166e190) at /usr/local/include/boost/bind/mem_fn_template.hpp:49
#23 0x0072a08c in boost::_bi::list1boost::_bi::value<CWunderground* >::operator()<boost::_mfi::mf0<void, CWunderground>, boost::_bi::list0> (this=0x168fc1c, f=..., a=...) at /usr/local/include/boost/bind/bind.hpp:253
#24 0x0072a034 in boost::_bi::bind_t<void, boost::_mfi::mf0<void, CWunderground>, boost::_bi::list1boost::_bi::value<CWunderground* > >::operator() (this=0x168fc14) at /usr/local/include/boost/bind/bind_template.hpp:20
#25 0x00729fec in boost::detail::thread_data<boost::_bi::bind_t<void, boost::_mfi::mf0<void, CWunderground>, boost::_bi::list1boost::_bi::value<CWunderground* > > >::run (this=0x168faf8) at /usr/local/include/boost/thread/detail/thread.hpp:116
#26 0x00839448 in thread_proxy ()
#27 0x76d06c00 in start_thread (arg=0x716f2450) at pthread_create.c:306
#28 0x76ba0728 in ?? () at ../ports/sysdeps/unix/sysv/linux/arm/nptl/../clone.S:116 from /lib/arm-linux-gnueabihf/libc.so.6
#29 0x76ba0728 in ?? () at ../ports/sysdeps/unix/sysv/linux/arm/nptl/../clone.S:116 from /lib/arm-linux-gnueabihf/libc.so.6

Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 7 (Thread 0x70ef2450 (LWP 24182)):
#0 0x76d0b504 in _pthread_cond_wait (cond=0xa7aa68, mutex=0xa7aa50) at pthread_cond_wait.c:153
#1 0x00401c4c in boost::condition_variable::wait (this=0xa7aa50, m=...) at /usr/local/include/boost/thread/pthread/condition_variable.hpp:73
#2 0x004020c0 in boost::shared_mutex::lock_shared (this=0xa7aa30) at /usr/local/include/boost/thread/pthread/shared_mutex.hpp:191
#3 0x00409228 in boost::shared_lockboost::shared_mutex::lock (this=0x70ef12c0) at /usr/local/include/boost/thread/lock_types.hpp:645
#4 0x0040488c in boost::shared_lockboost::shared_mutex::shared_lock (this=0x70ef12c0, m
=...) at /usr/local/include/boost/thread/lock_types.hpp:520
#5 0x003fc714 in CEventSystem::ScheduleEvent (this=0xa7aa28, deviceID=57, Action=..., isScene=false, eventName=..., sceneType=0) at /home/pi/dev-domoticz/main/EventSystem.cpp:2728
#6 0x003f65f4 in CEventSystem::parseBlocklyActions (this=0xa7aa28, Actions=..., eventName=..., eventID=86) at /home/pi/dev-domoticz/main/EventSystem.cpp:1558
#7 0x003f5584 in CEventSystem::EvaluateBlockly (this=0xa7aa28, reason=..., DeviceID=0, devname=..., nValue=0, sValue=0x958364 "", nValueWording=..., varId=0) at /home/pi/dev-domoticz/main/EventSystem.cpp:1441
#8 0x003f30a0 in CEventSystem::EvaluateEvent (this=0xa7aa28, reason=..., DeviceID=0, devname=..., nValue=0, sValue=0x958364 "", nValueWording=..., varId=0) at /home/pi/dev-domoticz/main/EventSystem.cpp:1091
#9 0x003f2a34 in CEventSystem::EvaluateEvent (this=0xa7aa28, reason=...) at /home/pi/dev-domoticz/main/EventSystem.cpp:973
#10 0x003f289c in CEventSystem::ProcessMinute (this=0xa7aa28) at /home/pi/dev-domoticz/main/EventSystem.cpp:960
#11 0x003ee6b0 in CEventSystem::Do_Work (this=0xa7aa28) at /home/pi/dev-domoticz/main/EventSystem.cpp:156
#12 0x0041bf10 in boost::_mfi::mf0<void, CEventSystem>::operator() (this=0x16963cc, p=0xa7aa28) at /usr/local/include/boost/bind/mem_fn_template.hpp:49
#13 0x0041bd24 in boost::_bi::list1boost::_bi::value<CEventSystem* >::operator()<boost::_mfi::mf0<void, CEventSystem>, boost::_bi::list0> (this=0x16963d4, f=..., a=...) at /usr/local/include/boost/bind/bind.hpp:253
#14 0x0041b9f0 in boost::_bi::bind_t<void, boost::_mfi::mf0<void, CEventSystem>, boost::_bi::list1boost::_bi::value<CEventSystem* > >::operator() (this=0x16963cc) at /usr/local/include/boost/bind/bind_template.hpp:20
#15 0x0041b430 in boost::detail::thread_data<boost::_bi::bind_t<void, boost::_mfi::mf0<void, CEventSystem>, boost::_bi::list1boost::_bi::value<CEventSystem* > > >::run (this=0x16962b0) at /usr/local/include/boost/thread/detail/thread.hpp:116
#16 0x00839448 in thread_proxy ()
#17 0x76d06c00 in start_thread (arg=0x70ef2450) at pthread_create.c:306
#18 0x76ba0728 in ?? () at ../ports/sysdeps/unix/sysv/linux/arm/nptl/../clone.S:116 from /lib/arm-linux-gnueabihf/libc.so.6
#19 0x76ba0728 in ?? () at ../ports/sysdeps/unix/sysv/linux/arm/nptl/../clone.S:116 from /lib/arm-linux-gnueabihf/libc.so.6

Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 6 (Thread 0x706f2450 (LWP 24183)):
#0 0x76d0e2c8 in __lll_lock_wait (futex=0xa7b644, private=0) at ../ports/sysdeps/unix/sysv/linux/arm/nptl/lowlevellock.c:47
#1 0x76d08d1c in _pthread_mutex_lock (mutex=0xa7b644) at pthread_mutex_lock.c:61
#2 0x003de034 in pthread_mutex_lock (m=0xa7b644) at /usr/local/include/boost/thread/pthread/mutex.hpp:62
#3 boost::mutex::lock (this=0xa7b644) at /usr/local/include/boost/thread/pthread/mutex.hpp:116
#4 0x003dfb2c in boost::lock_guardboost::mutex::lock_guard (this=0x706f0614, m
=...) at /usr/local/include/boost/thread/lock_guard.hpp:38
#5 0x0042ac74 in MainWorker::DecodeRXMessage (this=0xa7a9e0, pHardware=0x165c6e0, pRXCommand=0x706f09a0 "\v\021") at /home/pi/dev-domoticz/main/mainworker.cpp:1626
#6 0x00472128 in boost::_mfi::mf2<void, MainWorker, CDomoticzHardwareBase const*, unsigned char const*>::operator() (this=0x166da00, p=0xa7a9e0, a1=0x165c6e0, a2=0x706f09a0 "\v\021") at /usr/local/include/boost/bind/mem_fn_template.hpp:280
#7 0x0046f7e8 in boost::_bi::list3boost::_bi::value<MainWorker*, boost::arg<1>, boost::arg<2> >::operator()<boost::_mfi::mf2<void, MainWorker, CDomoticzHardwareBase const*, unsigned char const*>, boost::_bi::list2<CDomoticzHardwareBase*&, unsigned char const*&> > (this=0x166da08, f=..., a=...) at /usr/local/include/boost/bind/bind.hpp:392
#8 0x0046c4d8 in boost::_bi::bind_t<void, boost::_mfi::mf2<void, MainWorker, CDomoticzHardwareBase const*, unsigned char const*>, boost::_bi::list3boost::_bi::value<MainWorker*, boost::arg<1>, boost::arg<2> > >::operator()<CDomoticzHardwareBase*, unsigned char const*> (this=0x166da00, a1=@0x706f06e8: 0x165c6e0, a2=@0x706f06e4: 0x706f09a0 "\v\021") at /usr/local/include/boost/bind/bind_template.hpp:61
#9 0x0046871c in boost::detail::function::void_function_obj_invoker2<boost::_bi::bind_t<void, boost::_mfi::mf2<void, MainWorker, CDomoticzHardwareBase const*, unsigned char const*>, boost::bi::list3boost::bi::value<MainWorker*, boost::arg<1>, boost::arg<2> > >, void, CDomoticzHardwareBase, unsigned char const>::invoke (function_obj_ptr=..., a0=0x165c6e0, a1=0x706f09a0 "\v\021") at /usr/local/include/boost/function/function_template.hpp:159
#10 0x0059f294 in boost::function2<void, CDomoticzHardwareBase*, unsigned char const*>::operator() (this=0x166d9fc, a0=0x165c6e0, a1=0x706f09a0 "\v\021") at /usr/local/include/boost/function/function_template.hpp:771
#11 0x0059f144 in boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker::m_invoke(boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > const&, boost::enable_ifboost::is_void<void, void>::type*) const (this=0x706f08a0, connectionBody=...) at /usr/local/include/boost/signals2/detail/signal_template.hpp:363
#12 0x0059f03c in boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker::operator()(boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > const&) const (this=0x706f08a0, connectionBody=...) at /usr/local/include/boost/signals2/detail/signal_template.hpp:344
#13 0x0059eeb4 in boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> >::dereference() const (this=0x706f07b4) at /usr/local/include/boost/signals2/detail/slot_call_iterator.hpp:109
#14 0x0059eb98 in boost::iterators::iterator_core_access::dereference<boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >(boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > const&) (f=...) at /usr/local/include/boost/iterator/iterator_facade.hpp:549
#15 0x0059e594 in boost::iterators::detail::iterator_facade_base<boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> >, boost::signals2::detail::void_type, boost::iterators::single_pass_traversal_tag, boost::signals2::detail::void_type&, int, false, false>::operator*() const (this=0x706f07b4) at /usr/local/include/boost/iterator/iterator_facade.hpp:655
#16 0x0059d828 in boost::signals2::optional_last_value::operator()<boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >(boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> >, boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker, std::List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> >) const (this=0x16489f0, first=..., last=...) at /usr/local/include/boost/signals2/optional_last_value.hpp:55
#17 0x0059c608 in boost::signals2::detail::combiner_invoker::operator()boost::signals2::optional_last_value<void, boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker, std::List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >(boost::signals2::optional_last_value&, boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker, std::List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> >, boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker, std::List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> >) const (this=0x706f0934, combiner=..., first=..., last=...) at /usr/local/include/boost/signals2/detail/result_type_wrapper.hpp:64
#18 0x0059b740 in boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::operator()(CDomoticzHardwareBase
, unsigned char const
) (this=0x166d7d8, arg1=0x165c6e0, arg2=0x706f09a0 "\v\021") at /usr/local/include/boost/signals2/detail/signal_template.hpp:247
#19 0x0059ac54 in boost::signals2::signal2<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::operator()(CDomoticzHardwareBase
, unsigned char const) (this=0x165c704, arg1=0x165c6e0, arg2=0x706f09a0 "\v\021") at /usr/local/include/boost/signals2/detail/signal_template.hpp:723
#20 0x005e63c8 in CEnOceanESP3::ParseRadioDatagram (this=0x165c6e0) at /home/pi/dev-domoticz/hardware/EnOceanESP3.cpp:1051
#21 0x005e6030 in CEnOceanESP3::ParseData (this=0x165c6e0) at /home/pi/dev-domoticz/hardware/EnOceanESP3.cpp:856
#22 0x005e519c in CEnOceanESP3::readCallback (this=0x165c6e0, data=0x166ce5c "\001\377\377\377\377U", len=8) at /home/pi/dev-domoticz/hardware/EnOceanESP3.cpp:604
#23 0x005e983c in boost::_mfi::mf2<void, CEnOceanESP3, char const*, unsigned int>::operator() (this=0x166d660, p=0x165c6e0, a1=0x166ce5c "\001\377\377\377\377U", a2=8) at /usr/local/include/boost/bind/mem_fn_template.hpp:280
#24 0x005e9540 in boost::_bi::list3boost::_bi::value<CEnOceanESP3*, boost::arg<1>, boost::arg<2> >::operator()<boost::_mfi::mf2<void, CEnOceanESP3, char const*, unsigned int>, boost::_bi::list2<char const*&, unsigned int&> > (this=0x166d668, f=..., a=...) at /usr/local/include/boost/bind/bind.hpp:392
#25 0x005e9268 in boost::_bi::bind_t<void, boost::_mfi::mf2<void, CEnOceanESP3, char const*, unsigned int>, boost::_bi::list3boost::_bi::value<CEnOceanESP3*, boost::arg<1>, boost::arg<2> > >::operator()<char const*, unsigned int> (this=0x166d660, a1=@0x706f1ab8: 0x166ce5c "\001\377\377\377\377U", a2=@0x706f1ab4: 8) at /usr/local/include/boost/bind/bind_template.hpp:61
#26 0x005e908c in boost::detail::function::void_function_obj_invoker2<boost::_bi::bind_t<void, boost::_mfi::mf2<void, CEnOceanESP3, char const*, unsigned int>, boost::_bi::list3boost::_bi::value<CEnOceanESP3*, boost::arg<1>, boost::arg<2> > >, void, char const*, unsigned int>::invoke (function_obj_ptr=..., a0=0x166ce5c "\001\377\377\377\377U", a1=8) at /usr/local/include/boost/function/function_template.hpp:159
#27 0x005b4ec8 in boost::function2<void, char const*, unsigned int>::operator() (this=0x166d65c, a0=0x166ce5c "\001\377\377\377\377U", a1=8) at /usr/local/include/boost/function/function_template.hpp:771
#28 0x005ad474 in AsyncSerial::readEnd (this=0x165c988, error=..., bytes_transferred=8) at /home/pi/dev-domoticz/hardware/ASyncSerial.cpp:240
#29 0x005bac88 in boost::_mfi::mf2<void, AsyncSerial, boost::system::error_code const&, unsigned int>::operator() (this=0x706f1bfc, p=0x165c988, a1=..., a2=8) at /usr/local/include/boost/bind/mem_fn_template.hpp:280
#30 0x005baac0 in boost::bi::list3boost::bi::value<AsyncSerial*, boost::arg<1> ()(), boost::arg<2> ()()>::operator()<boost::_mfi::mf2<void, AsyncSerial, boost::system::error_code const&, unsigned int>, boost::_bi::list2<boost::system::error_code const&, unsigned int const&> > (this=0x706f1c04, f=..., a=...) at /usr/local/include/boost/bind/bind.hpp:392
#31 0x005ba928 in boost::_bi::bind_t<void, boost::_mfi::mf2<void, AsyncSerial, boost::system::error_code const&, unsigned int>, boost::bi::list3boost::bi::value<AsyncSerial*, boost::arg<1> ()(), boost::arg<2> ()()> >::operator()<boost::system::error_code, unsigned int> (this=0x706f1bfc, a1=..., a2=@0x706f1c10: 8) at /usr/local/include/boost/bind/bind_template.hpp:102
#32 0x005ba674 in boost::asio::detail::binder2<boost::_bi::bind_t<void, boost::_mfi::mf2<void, AsyncSerial, boost::system::error_code const&, unsigned int>, boost::bi::list3boost::bi::value<AsyncSerial*, boost::arg<1> ()(), boost::arg<2> ()()> >, boost::system::error_code, unsigned int>::operator() (this=0x706f1bfc) at /usr/local/include/boost/asio/detail/bind_handler.hpp:127
#33 0x005ba1cc in boost::asio::asio_handler_invoke<boost::asio::detail::binder2<boost::_bi::bind_t<void, boost::_mfi::mf2<void, AsyncSerial, boost::system::error_code const&, unsigned int>, boost::bi::list3boost::bi::value<AsyncSerial*, boost::arg<1> ()(), boost::arg<2> ()()> >, boost::system::error_code, unsigned int> > (function=...) at /usr/local/include/boost/asio/handler_invoke_hook.hpp:69
#34 0x005b9e08 in boost_asio_handler_invoke_helpers::invoke<boost::asio::detail::binder2<boost::_bi::bind_t<void, boost::_mfi::mf2<void, AsyncSerial, boost::system::error_code const&, unsigned int>, boost::bi::list3boost::bi::value<AsyncSerial*, boost::arg<1> ()(), boost::arg<2> ()()> >, boost::system::error_code, unsigned int>, boost::_bi::bind_t<void, boost::_mfi::mf2<void, AsyncSerial, boost::system::error_code const&, unsigned int>, boost::bi::list3boost::bi::value<AsyncSerial*, boost::arg<1> ()(), boost::arg<2> ()()> > > (function=..., context=...) at /usr/local/include/boost/asio/detail/handler_invoke_helpers.hpp:37
#35 0x005b98e0 in boost::asio::detail::descriptor_read_op<boost::asio::mutable_buffers_1, boost::_bi::bind_t<void, boost::_mfi::mf2<void, AsyncSerial, boost::system::error_code const&, unsigned int>, boost::bi::list3boost::bi::value<AsyncSerial*, boost::arg<1> ()(), boost::arg<2> ()()> > >::do_complete (owner=0x166d698, base=0x16932e0) at /usr/local/include/boost/asio/detail/descriptor_read_op.hpp:104
#36 0x005ae920 in boost::asio::detail::task_io_service_operation::complete (this=0x16932e0, owner=..., ec=..., bytes_transferred=0) at /usr/local/include/boost/asio/detail/task_io_service_operation.hpp:38
#37 0x005b0830 in boost::asio::detail::epoll_reactor::descriptor_state::do_complete (owner=0x166d698, base=0x1698730, ec=..., bytes_transferred=1) at /usr/local/include/boost/asio/detail/impl/epoll_reactor.ipp:651
#38 0x005ae920 in boost::asio::detail::task_io_service_operation::complete (this=0x1698730, owner=..., ec=..., bytes_transferred=1) at /usr/local/include/boost/asio/detail/task_io_service_operation.hpp:38
#39 0x005b1308 in boost::asio::detail::task_io_service::do_run_one (this=0x166d698, lock=..., this_thread=..., ec=...) at /usr/local/include/boost/asio/detail/impl/task_io_service.ipp:372
#40 0x005b0ef4 in boost::asio::detail::task_io_service::run (this=0x166d698, ec=...) at /usr/local/include/boost/asio/detail/impl/task_io_service.ipp:149
#41 0x005b14fc in boost::asio::io_service::run (this=0x166cdf0) at /usr/local/include/boost/asio/impl/io_service.ipp:59
#42 0x005bb380 in boost::_mfi::mf0<unsigned int, boost::asio::io_service>::operator() (this=0x1693a2c, p=0x166cdf0) at /usr/local/include/boost/bind/mem_fn_template.hpp:49
#43 0x005bb2a0 in boost::_bi::list1boost::_bi::value<boost::asio::io_service* >::operator()<unsigned int, boost::_mfi::mf0<unsigned int, boost::asio::io_service>, boost::_bi::list0> (this=0x1693a34, f=..., a=...) at /usr/local/include/boost/bind/bind.hpp:243
#44 0x005bb240 in boost::_bi::bind_t<unsigned int, boost::_mfi::mf0<unsigned int, boost::asio::io_service>, boost::_bi::list1boost::_bi::value<boost::asio::io_service* > >::operator() (this=0x1693a2c) at /usr/local/include/boost/bind/bind_template.hpp:20
#45 0x005bb184 in boost::detail::thread_data<boost::_bi::bind_t<unsigned int, boost::_mfi::mf0<unsigned int, boost::asio::io_service>, boost::_bi::list1boost::_bi::value<boost::asio::io_service* > > >::run (this=0x1693910) at /usr/local/include/boost/thread/detail/thread.hpp:116
#46 0x00839448 in thread_proxy ()
#47 0x76d06c00 in start_thread (arg=0x706f2450) at pthread_create.c:306
#48 0x76ba0728 in ?? () at ../ports/sysdeps/unix/sysv/linux/arm/nptl/../clone.S:116 from /lib/arm-linux-gnueabihf/libc.so.6
#49 0x76ba0728 in ?? () at ../ports/sysdeps/unix/sysv/linux/arm/nptl/../clone.S:116 from /lib/arm-linux-gnueabihf/libc.so.6

Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 5 (Thread 0x6fef2450 (LWP 24184)):
#0 0x76d0e2c8 in __lll_lock_wait (futex=0xa7b644, private=0) at ../ports/sysdeps/unix/sysv/linux/arm/nptl/lowlevellock.c:47
#1 0x76d08d1c in _pthread_mutex_lock (mutex=0xa7b644) at pthread_mutex_lock.c:61
#2 0x003de034 in pthread_mutex_lock (m=0xa7b644) at /usr/local/include/boost/thread/pthread/mutex.hpp:62
#3 boost::mutex::lock (this=0xa7b644) at /usr/local/include/boost/thread/pthread/mutex.hpp:116
#4 0x003dfb2c in boost::lock_guardboost::mutex::lock_guard (this=0x6fef0ddc, m
=...) at /usr/local/include/boost/thread/lock_guard.hpp:38
#5 0x0042ac74 in MainWorker::DecodeRXMessage (this=0xa7a9e0, pHardware=0x165a5f0, pRXCommand=0x6fef17dc "\v\370\001") at /home/pi/dev-domoticz/main/mainworker.cpp:1626
#6 0x00472128 in boost::_mfi::mf2<void, MainWorker, CDomoticzHardwareBase const*, unsigned char const*>::operator() (this=0x16599c8, p=0xa7a9e0, a1=0x165a5f0, a2=0x6fef17dc "\v\370\001") at /usr/local/include/boost/bind/mem_fn_template.hpp:280
#7 0x0046f7e8 in boost::_bi::list3boost::_bi::value<MainWorker*, boost::arg<1>, boost::arg<2> >::operator()<boost::_mfi::mf2<void, MainWorker, CDomoticzHardwareBase const*, unsigned char const*>, boost::_bi::list2<CDomoticzHardwareBase*&, unsigned char const*&> > (this=0x16599d0, f=..., a=...) at /usr/local/include/boost/bind/bind.hpp:392
#8 0x0046c4d8 in boost::_bi::bind_t<void, boost::_mfi::mf2<void, MainWorker, CDomoticzHardwareBase const*, unsigned char const*>, boost::_bi::list3boost::_bi::value<MainWorker*, boost::arg<1>, boost::arg<2> > >::operator()<CDomoticzHardwareBase*, unsigned char const*> (this=0x16599c8, a1=@0x6fef0eb0: 0x165a5f0, a2=@0x6fef0eac: 0x6fef17dc "\v\370\001") at /usr/local/include/boost/bind/bind_template.hpp:61
#9 0x0046871c in boost::detail::function::void_function_obj_invoker2<boost::_bi::bind_t<void, boost::_mfi::mf2<void, MainWorker, CDomoticzHardwareBase const*, unsigned char const*>, boost::bi::list3boost::bi::value<MainWorker*, boost::arg<1>, boost::arg<2> > >, void, CDomoticzHardwareBase, unsigned char const>::invoke (function_obj_ptr=..., a0=0x165a5f0, a1=0x6fef17dc "\v\370\001") at /usr/local/include/boost/function/function_template.hpp:159
#10 0x0059f294 in boost::function2<void, CDomoticzHardwareBase*, unsigned char const*>::operator() (this=0x16599c4, a0=0x165a5f0, a1=0x6fef17dc "\v\370\001") at /usr/local/include/boost/function/function_template.hpp:771
#11 0x0059f144 in boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker::m_invoke(boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > const&, boost::enable_ifboost::is_void<void, void>::type*) const (this=0x6fef1068, connectionBody=...) at /usr/local/include/boost/signals2/detail/signal_template.hpp:363
#12 0x0059f03c in boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker::operator()(boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > const&) const (this=0x6fef1068, connectionBody=...) at /usr/local/include/boost/signals2/detail/signal_template.hpp:344
#13 0x0059eeb4 in boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> >::dereference() const (this=0x6fef0f7c) at /usr/local/include/boost/signals2/detail/slot_call_iterator.hpp:109
#14 0x0059eb98 in boost::iterators::iterator_core_access::dereference<boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >(boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > const&) (f=...) at /usr/local/include/boost/iterator/iterator_facade.hpp:549
#15 0x0059e594 in boost::iterators::detail::iterator_facade_base<boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> >, boost::signals2::detail::void_type, boost::iterators::single_pass_traversal_tag, boost::signals2::detail::void_type&, int, false, false>::operator*() const (this=0x6fef0f7c) at /usr/local/include/boost/iterator/iterator_facade.hpp:655
#16 0x0059d828 in boost::signals2::optional_last_value::operator()<boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >(boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> >, boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker, std::List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> >) const (this=0x164f3f8, first=..., last=...) at /usr/local/include/boost/signals2/optional_last_value.hpp:55
#17 0x0059c608 in boost::signals2::detail::combiner_invoker::operator()boost::signals2::optional_last_value<void, boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker, std::List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >(boost::signals2::optional_last_value&, boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker, std::List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> >, boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker, std::List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> >) const (this=0x6fef10fc, combiner=..., first=..., last=...) at /usr/local/include/boost/signals2/detail/result_type_wrapper.hpp:64
#18 0x0059b740 in boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::operator()(CDomoticzHardwareBase
, unsigned char const
) (this=0x16597c8, arg1=0x165a5f0, arg2=0x6fef17dc "\v\370\001") at /usr/local/include/boost/signals2/detail/signal_template.hpp:247
#19 0x0059ac54 in boost::signals2::signal2<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::operator()(CDomoticzHardwareBase
, unsigned char const) (this=0x165a614, arg1=0x165a5f0, arg2=0x6fef17dc "\v\370\001") at /usr/local/include/boost/signals2/detail/signal_template.hpp:723
#20 0x0072ce90 in ZWaveBase::SendDevice2Domoticz (this=0x165a5f0, pDevice=0x6f59d14c) at /home/pi/dev-domoticz/hardware/ZWaveBase.cpp:439
#21 0x00672484 in COpenZWave::UpdateValue (this=0x165a5f0, vID=...) at /home/pi/dev-domoticz/hardware/OpenZWave.cpp:2929
#22 0x006699c8 in COpenZWave::OnZWaveNotification (this=0x165a5f0, _notification=0x6e40b128) at /home/pi/dev-domoticz/hardware/OpenZWave.cpp:593
#23 0x00668b1c in OnNotification (_notification=0x6e40b128, _context=0x165a5f0) at /home/pi/dev-domoticz/hardware/OpenZWave.cpp:409
#24 0x007b5fc0 in OpenZWave::Manager::NotifyWatchers(OpenZWave::Notification*) ()
#25 0x007d53dc in OpenZWave::Driver::NotifyWatchers() ()
#26 0x007debec in OpenZWave::Driver::DriverThreadProc(OpenZWave::Event*) ()
#27 0x0082c0c4 in OpenZWave::ThreadImpl::Run() ()
#28 0x0082c0e0 in OpenZWave::ThreadImpl::ThreadProc(void*) ()
#29 0x76d06c00 in start_thread (arg=0x6fef2450) at pthread_create.c:306
#30 0x76ba0728 in ?? () at ../ports/sysdeps/unix/sysv/linux/arm/nptl/../clone.S:116 from /lib/arm-linux-gnueabihf/libc.so.6
#31 0x76ba0728 in ?? () at ../ports/sysdeps/unix/sysv/linux/arm/nptl/../clone.S:116 from /lib/arm-linux-gnueabihf/libc.so.6

Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 4 (Thread 0x6f4ff450 (LWP 24185)):
#0 0x76b99d7c in select () at ../sysdeps/unix/syscall-template.S:82
#1 0x0082c790 in OpenZWave::SerialControllerImpl::Read() ()
#2 0x0082c7f0 in OpenZWave::SerialControllerImpl::ReadThreadProc(OpenZWave::Event*) ()
#3 0x0082c0c4 in OpenZWave::ThreadImpl::Run() ()
#4 0x0082c0e0 in OpenZWave::ThreadImpl::ThreadProc(void*) ()
#5 0x76d06c00 in start_thread (arg=0x6f4ff450) at pthread_create.c:306
#6 0x76ba0728 in ?? () at ../ports/sysdeps/unix/sysv/linux/arm/nptl/../clone.S:116 from /lib/arm-linux-gnueabihf/libc.so.6
#7 0x76ba0728 in ?? () at ../ports/sysdeps/unix/sysv/linux/arm/nptl/../clone.S:116 from /lib/arm-linux-gnueabihf/libc.so.6

Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 3 (Thread 0x6ecff450 (LWP 24186)):
#0 0x76d0b8b8 in __pthread_cond_timedwait (cond=0x6e411e10, mutex=0x6e411df8, abstime=0x6ecfecd4) at pthread_cond_timedwait.c:168
#1 0x007cb8d8 in OpenZWave::EventImpl::Wait(int) ()
#2 0x007c915c in OpenZWave::Wait::Multiple(OpenZWave::Wait**, unsigned int, int) ()
#3 0x007d0484 in OpenZWave::Driver::PollThreadProc(OpenZWave::Event*) ()
#4 0x0082c0c4 in OpenZWave::ThreadImpl::Run() ()
#5 0x0082c0e0 in OpenZWave::ThreadImpl::ThreadProc(void*) ()
#6 0x76d06c00 in start_thread (arg=0x6ecff450) at pthread_create.c:306
#7 0x76ba0728 in ?? () at ../ports/sysdeps/unix/sysv/linux/arm/nptl/../clone.S:116 from /lib/arm-linux-gnueabihf/libc.so.6
#8 0x76ba0728 in ?? () at ../ports/sysdeps/unix/sysv/linux/arm/nptl/../clone.S:116 from /lib/arm-linux-gnueabihf/libc.so.6

Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 2 (Thread 0x6e2ff450 (LWP 24188)):
#0 0x76d0b504 in _pthread_cond_wait (cond=0xa7aab0, mutex=0xa7aa98) at pthread_cond_wait.c:153
#1 0x00401c4c in boost::condition_variable::wait (this=0xa7aa98, m=...) at /usr/local/include/boost/thread/pthread/condition_variable.hpp:73
#2 0x00402274 in boost::shared_mutex::lock (this=0xa7aa30) at /usr/local/include/boost/thread/pthread/shared_mutex.hpp:294
#3 0x00409ba4 in boost::unique_lockboost::shared_mutex::lock (this=0x6e2fde7c) at /usr/local/include/boost/thread/lock_types.hpp:346
#4 0x004051a8 in boost::unique_lockboost::shared_mutex::unique_lock (this=0x6e2fde7c, m
=...) at /usr/local/include/boost/thread/lock_types.hpp:124
#5 0x003f226c in CEventSystem::UpdateSingleState (this=0xa7aa28, ulDevID=118, devname=..., nValue=0, sValue=0x6e2fe450 "18.5;68;0", devType=82 'R', subType=1 '\001', switchType=STYPE_OnOff, lastUpdate=..., lastLevel=0 '\000') at /home/pi/dev-domoticz/main/EventSystem.cpp:906
#6 0x003f26d8 in CEventSystem::ProcessDevice (this=0xa7aa28, HardwareID=6, ulDevID=118, unit=1 '\001', devType=82 'R', subType=1 '\001', signallevel=6 '\006', batterylevel=100 'd', nValue=0, sValue=0x6e2fe450 "18.5;68;0", devname=..., varId=0) at /home/pi/dev-domoticz/main/EventSystem.cpp:948
#7 0x004a80b4 in CSQLHelper::UpdateValueInt (this=0xa7b8e8, HardwareID=6, ID=0x16a126c "64001", unit=1 '\001', devType=82 'R', subType=1 '\001', signallevel=6 '\006', batterylevel=100 'd', nValue=0, sValue=0x6e2fe450 "18.5;68;0", devname=..., bUseOnOffAction=true) at /home/pi/dev-domoticz/main/SQLHelper.cpp:2848
#8 0x004a61dc in CSQLHelper::UpdateValue (this=0xa7b8e8, HardwareID=6, ID=0x16a126c "64001", unit=1 '\001', devType=82 'R', subType=1 '\001', signallevel=6 '\006', batterylevel=100 'd', nValue=0, sValue=0x6e2fe450 "18.5;68;0", devname=..., bUseOnOffAction=true) at /home/pi/dev-domoticz/main/SQLHelper.cpp:2323
#9 0x00430134 in MainWorker::decode_TempHum (this=0xa7a9e0, pHardware=0x165b7a8, HwdID=6, pResponse=0x165b818) at /home/pi/dev-domoticz/main/mainworker.cpp:3101
#10 0x0042b688 in MainWorker::DecodeRXMessage (this=0xa7a9e0, pHardware=0x165b7a8, pRXCommand=0x165b818 "\nR\001\061\372\001") at /home/pi/dev-domoticz/main/mainworker.cpp:1804
#11 0x00472128 in boost::_mfi::mf2<void, MainWorker, CDomoticzHardwareBase const*, unsigned char const*>::operator() (this=0x165add0, p=0xa7a9e0, a1=0x165b7a8, a2=0x165b818 "\nR\001\061\372\001") at /usr/local/include/boost/bind/mem_fn_template.hpp:280
#12 0x0046f7e8 in boost::_bi::list3boost::_bi::value<MainWorker*, boost::arg<1>, boost::arg<2> >::operator()<boost::_mfi::mf2<void, MainWorker, CDomoticzHardwareBase const*, unsigned char const*>, boost::_bi::list2<CDomoticzHardwareBase*&, unsigned char const*&> > (this=0x165add8, f=..., a=...) at /usr/local/include/boost/bind/bind.hpp:392
#13 0x0046c4d8 in boost::_bi::bind_t<void, boost::_mfi::mf2<void, MainWorker, CDomoticzHardwareBase const*, unsigned char const*>, boost::_bi::list3boost::_bi::value<MainWorker*, boost::arg<1>, boost::arg<2> > >::operator()<CDomoticzHardwareBase*, unsigned char const*> (this=0x165add0, a1=@0x6e2fe760: 0x165b7a8, a2=@0x6e2fe75c: 0x165b818 "\nR\001\061\372\001") at /usr/local/include/boost/bind/bind_template.hpp:61
#14 0x0046871c in boost::detail::function::void_function_obj_invoker2<boost::_bi::bind_t<void, boost::_mfi::mf2<void, MainWorker, CDomoticzHardwareBase const*, unsigned char const*>, boost::bi::list3boost::bi::value<MainWorker*, boost::arg<1>, boost::arg<2> > >, void, CDomoticzHardwareBase, unsigned char const>::invoke (function_obj_ptr=..., a0=0x165b7a8, a1=0x165b818 "\nR\001\061\372\001") at /usr/local/include/boost/function/function_template.hpp:159
#15 0x0059f294 in boost::function2<void, CDomoticzHardwareBase*, unsigned char const*>::operator() (this=0x165adcc, a0=0x165b7a8, a1=0x165b818 "\nR\001\061\372\001") at /usr/local/include/boost/function/function_template.hpp:771
#16 0x0059f144 in boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker::m_invoke(boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > const&, boost::enable_ifboost::is_void<void, void>::type*) const (this=0x6e2fe918, connectionBody=...) at /usr/local/include/boost/signals2/detail/signal_template.hpp:363
#17 0x0059f03c in boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker::operator()(boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > const&) const (this=0x6e2fe918, connectionBody=...) at /usr/local/include/boost/signals2/detail/signal_template.hpp:344
#18 0x0059eeb4 in boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> >::dereference() const (this=0x6e2fe82c) at /usr/local/include/boost/signals2/detail/slot_call_iterator.hpp:109
#19 0x0059eb98 in boost::iterators::iterator_core_access::dereference<boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >(boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > const&) (f=...) at /usr/local/include/boost/iterator/iterator_facade.hpp:549
#20 0x0059e594 in boost::iterators::detail::iterator_facade_base<boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> >, boost::signals2::detail::void_type, boost::iterators::single_pass_traversal_tag, boost::signals2::detail::void_type&, int, false, false>::operator*() const (this=0x6e2fe82c) at /usr/local/include/boost/iterator/iterator_facade.hpp:655
#21 0x0059d828 in boost::signals2::optional_last_value::operator()<boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >(boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> >, boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker, std::List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> >) const (this=0x1652320, first=..., last=...) at /usr/local/include/boost/signals2/optional_last_value.hpp:55
#22 0x0059c608 in boost::signals2::detail::combiner_invoker::operator()boost::signals2::optional_last_value<void, boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker, std::List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >(boost::signals2::optional_last_value&, boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker, std::List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> >, boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::slot_invoker, std::List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional >, boost::signals2::slot2<void, CDomoticzHardwareBase*, unsigned char const*, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)> >, boost::signals2::mutex> >) const (this=0x6e2fe9ac, combiner=..., first=..., last=...) at /usr/local/include/boost/signals2/detail/result_type_wrapper.hpp:64
#23 0x0059b740 in boost::signals2::detail::signal2_impl<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::operator()(CDomoticzHardwareBase
, unsigned char const
) (this=0x165aba8, arg1=0x165b7a8, arg2=0x165b818 "\nR\001\061\372\001") at /usr/local/include/boost/signals2/detail/signal_template.hpp:247
#24 0x0059ac54 in boost::signals2::signal2<void, CDomoticzHardwareBase*, unsigned char const*, boost::signals2::optional_last_value, int, std::less, boost::function<void (CDomoticzHardwareBase*, unsigned char const*)>, boost::function<void (boost::signals2::connection const&, CDomoticzHardwareBase*, unsigned char const*)>, boost::signals2::mutex>::operator()(CDomoticzHardwareBase
, unsigned char const) (this=0x165b7cc, arg1=0x165b7a8, arg2=0x165b818 "\nR\001\061\372\001") at /usr/local/include/boost/signals2/detail/signal_template.hpp:723
#25 0x006dbe98 in RFXComSerial::onInternalMessage (this=0x165b7a8, pBuffer=0x165bd0c "\001", Len=6) at /home/pi/dev-domoticz/hardware/RFXComSerial.cpp:849
#26 0x006dbbf4 in RFXComSerial::readCallback (this=0x165b7a8, data=0x165bd0c "\001", len=6) at /home/pi/dev-domoticz/hardware/RFXComSerial.cpp:780
#27 0x006e01ec in boost::_mfi::mf2<void, RFXComSerial, char const*, unsigned int>::operator() (this=0x165c510, p=0x165b7a8, a1=0x165bd0c "\001", a2=6) at /usr/local/include/boost/bind/mem_fn_template.hpp:280
#28 0x006dfdc4 in boost::_bi::list3boost::_bi::value<RFXComSerial*, boost::arg<1>, boost::arg<2> >::operator()<boost::_mfi::mf2<void, RFXComSerial, char const*, unsigned int>, boost::_bi::list2<char const*&, unsigned int&> > (this=0x165c518, f=..., a=...) at /usr/local/include/boost/bind/bind.hpp:392
#29 0x006df894 in boost::_bi::bind_t<void, boost::_mfi::mf2<void, RFXComSerial, char const*, unsigned int>, boost::_bi::list3boost::_bi::value<RFXComSerial*, boost::arg<1>, boost::arg<2> > >::operator()<char const*, unsigned int> (this=0x165c510, a1=@0x6e2feab8: 0x165bd0c "\001", a2=@0x6e2feab4: 6) at /usr/local/include/boost/bind/bind_template.hpp:61
#30 0x006df074 in boost::detail::function::void_function_obj_invoker2<boost::_bi::bind_t<void, boost::_mfi::mf2<void, RFXComSerial, char const*, unsigned int>, boost::_bi::list3boost::_bi::value<RFXComSerial*, boost::arg<1>, boost::arg<2> > >, void, char const*, unsigned int>::invoke (function_obj_ptr=..., a0=0x165bd0c "\001", a1=6) at /usr/local/include/boost/function/function_template.hpp:159
#31 0x005b4ec8 in boost::function2<void, char const*, unsigned int>::operator() (this=0x165c50c, a0=0x165bd0c "\001", a1=6) at /usr/local/include/boost/function/function_template.hpp:771
#32 0x005ad474 in AsyncSerial::readEnd (this=0x165ba50, error=..., bytes_transferred=6) at /home/pi/dev-domoticz/hardware/ASyncSerial.cpp:240
#33 0x005bac88 in boost::_mfi::mf2<void, AsyncSerial, boost::system::error_code const&, unsigned int>::operator() (this=0x6e2febfc, p=0x165ba50, a1=..., a2=6) at /usr/local/include/boost/bind/mem_fn_template.hpp:280
#34 0x005baac0 in boost::bi::list3boost::bi::value<AsyncSerial*, boost::arg<1> ()(), boost::arg<2> ()()>::operator()<boost::_mfi::mf2<void, AsyncSerial, boost::system::error_code const&, unsigned int>, boost::_bi::list2<boost::system::error_code const&, unsigned int const&> > (this=0x6e2fec04, f=..., a=...) at /usr/local/include/boost/bind/bind.hpp:392
#35 0x005ba928 in boost::_bi::bind_t<void, boost::_mfi::mf2<void, AsyncSerial, boost::system::error_code const&, unsigned int>, boost::bi::list3boost::bi::value<AsyncSerial*, boost::arg<1> ()(), boost::arg<2> ()()> >::operator()<boost::system::error_code, unsigned int> (this=0x6e2febfc, a1=..., a2=@0x6e2fec10: 6) at /usr/local/include/boost/bind/bind_template.hpp:102
#36 0x005ba674 in boost::asio::detail::binder2<boost::_bi::bind_t<void, boost::_mfi::mf2<void, AsyncSerial, boost::system::error_code const&, unsigned int>, boost::bi::list3boost::bi::value<AsyncSerial*, boost::arg<1> ()(), boost::arg<2> ()()> >, boost::system::error_code, unsigned int>::operator() (this=0x6e2febfc) at /usr/local/include/boost/asio/detail/bind_handler.hpp:127
#37 0x005ba1cc in boost::asio::asio_handler_invoke<boost::asio::detail::binder2<boost::_bi::bind_t<void, boost::_mfi::mf2<void, AsyncSerial, boost::system::error_code const&, unsigned int>, boost::bi::list3boost::bi::value<AsyncSerial*, boost::arg<1> ()(), boost::arg<2> ()()> >, boost::system::error_code, unsigned int> > (function=...) at /usr/local/include/boost/asio/handler_invoke_hook.hpp:69
#38 0x005b9e08 in boost_asio_handler_invoke_helpers::invoke<boost::asio::detail::binder2<boost::_bi::bind_t<void, boost::_mfi::mf2<void, AsyncSerial, boost::system::error_code const&, unsigned int>, boost::bi::list3boost::bi::value<AsyncSerial*, boost::arg<1> ()(), boost::arg<2> ()()> >, boost::system::error_code, unsigned int>, boost::_bi::bind_t<void, boost::_mfi::mf2<void, AsyncSerial, boost::system::error_code const&, unsigned int>, boost::bi::list3boost::bi::value<AsyncSerial*, boost::arg<1> ()(), boost::arg<2> ()()> > > (function=..., context=...) at /usr/local/include/boost/asio/detail/handler_invoke_helpers.hpp:37
#39 0x005b98e0 in boost::asio::detail::descriptor_read_op<boost::asio::mutable_buffers_1, boost::_bi::bind_t<void, boost::_mfi::mf2<void, AsyncSerial, boost::system::error_code const&, unsigned int>, boost::bi::list3boost::bi::value<AsyncSerial*, boost::arg<1> ()(), boost::arg<2> ()()> > >::do_complete (owner=0x165aa80, base=0x1696d78) at /usr/local/include/boost/asio/detail/descriptor_read_op.hpp:104
#40 0x005ae920 in boost::asio::detail::task_io_service_operation::complete (this=0x1696d78, owner=..., ec=..., bytes_transferred=0) at /usr/local/include/boost/asio/detail/task_io_service_operation.hpp:38
#41 0x005b0830 in boost::asio::detail::epoll_reactor::descriptor_state::do_complete (owner=0x165aa80, base=0x1696b50, ec=..., bytes_transferred=1) at /usr/local/include/boost/asio/detail/impl/epoll_reactor.ipp:651
#42 0x005ae920 in boost::asio::detail::task_io_service_operation::complete (this=0x1696b50, owner=..., ec=..., bytes_transferred=1) at /usr/local/include/boost/asio/detail/task_io_service_operation.hpp:38
#43 0x005b1308 in boost::asio::detail::task_io_service::do_run_one (this=0x165aa80, lock=..., this_thread=..., ec=...) at /usr/local/include/boost/asio/detail/impl/task_io_service.ipp:372
#44 0x005b0ef4 in boost::asio::detail::task_io_service::run (this=0x165aa80, ec=...) at /usr/local/include/boost/asio/detail/impl/task_io_service.ipp:149
#45 0x005b14fc in boost::asio::io_service::run (this=0x165bca0) at /usr/local/include/boost/asio/impl/io_service.ipp:59
#46 0x005bb380 in boost::_mfi::mf0<unsigned int, boost::asio::io_service>::operator() (this=0x169429c, p=0x165bca0) at /usr/local/include/boost/bind/mem_fn_template.hpp:49
#47 0x005bb2a0 in boost::_bi::list1boost::_bi::value<boost::asio::io_service* >::operator()<unsigned int, boost::_mfi::mf0<unsigned int, boost::asio::io_service>, boost::_bi::list0> (this=0x16942a4, f=..., a=...) at /usr/local/include/boost/bind/bind.hpp:243
#48 0x005bb240 in boost::_bi::bind_t<unsigned int, boost::_mfi::mf0<unsigned int, boost::asio::io_service>, boost::_bi::list1boost::_bi::value<boost::asio::io_service* > >::operator() (this=0x169429c) at /usr/local/include/boost/bind/bind_template.hpp:20
#49 0x005bb184 in boost::detail::thread_data<boost::_bi::bind_t<unsigned int, boost::_mfi::mf0<unsigned int, boost::asio::io_service>, boost::_bi::list1boost::_bi::value<boost::asio::io_service* > > >::run (this=0x1694180) at /usr/local/include/boost/thread/detail/thread.hpp:116
#50 0x00839448 in thread_proxy ()
#51 0x76d06c00 in start_thread (arg=0x6e2ff450) at pthread_create.c:306
#52 0x76ba0728 in ?? () at ../ports/sysdeps/unix/sysv/linux/arm/nptl/../clone.S:116 from /lib/arm-linux-gnueabihf/libc.so.6
#53 0x76ba0728 in ?? () at ../ports/sysdeps/unix/sysv/linux/arm/nptl/../clone.S:116 from /lib/arm-linux-gnueabihf/libc.so.6

Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 1 (Thread 0x766f3220 (LWP 24143)):
#0 0x76d0f2c0 in nanosleep () at ../sysdeps/unix/syscall-template.S:82
#1 0x00839ce0 in boost::this_thread::hiden::sleep_for(timespec const&) ()
#2 0x0041db1c in boost::this_thread::sleep_for (ns=...) at /usr/local/include/boost/thread/pthread/thread_data.hpp:243
#3 0x0041de70 in boost::this_thread::sleep_for<long long, boost::ratio<1ll, 1ll> > (d=...) at /usr/local/include/boost/thread/v2/thread.hpp:112
#4 0x0041cd30 in sleep_seconds (seconds=1) at /home/pi/dev-domoticz/main/Helper.cpp:371
#5 0x003ec73c in main (argc=14, argv=0x7eba67d4) at /home/pi/dev-domoticz/main/domoticz.cpp:768

Detaching from program: /home/pi/domoticz/domoticz, process 24143

Apostrophe in zone name prevents adding device

I'm using an Evohome system, and one of the zone names is "Foo's Bedroom".

In the device list, this ends up being rendered unescaped, thus:

<img onclick="SetUnused(7)" title="Set Unused" src="images/remove.png">
<img onclick="RenameDevice(7,'Heating','Foo's room')" title="Rename Device" src="images/rename.png">

I was able to add the zone by using Firebug and just adding the missing \ to make it

<img onclick="RenameDevice(7,'Heating','Foo\'s room')" …

We should do that correctly in all appropriate places in DevicesController.js

HEAD request must not return a message-body

The HTTP/1.1 specifies :

"The HEAD method is identical to GET except that the server MUST NOT return a message-body in the response. The metainformation contained in the HTTP headers in response to a HEAD request SHOULD be identical to the information sent in response to a GET request. This method can be used for obtaining metainformation about the entity implied by the request without transferring the entity-body itself. This method is often used for testing hypertext links for validity, accessibility, and recent modification."

For example, Uptimerobot sends HEAD requests while checking http(s) requests...

If we fix it, we save some resources to serve these requests.

Build failed on Ubuntu 15.10

After trying to rebuild on an updated system, building fails on Ubuntu 15.10. Originally my system ran 15.04 when I sucessfully build the system on Sept 27.

Full log on pastebin if the snippet below is too short: http://pastebin.com/bJY3GQuw

Linking CXX executable domoticz
CMakeFiles/domoticz.dir/hardware/OpenZWave.cpp.o: In function `COpenZWave::EnableDisableDebug()':
OpenZWave.cpp:(.text+0xc4d): undefined reference to `OpenZWave::Options::AddOptionInt(std::string const&, int)'
OpenZWave.cpp:(.text+0xc8d): undefined reference to `OpenZWave::Options::AddOptionInt(std::string const&, int)'
OpenZWave.cpp:(.text+0xccd): undefined reference to `OpenZWave::Options::AddOptionInt(std::string const&, int)'
OpenZWave.cpp:(.text+0xd1f): undefined reference to `OpenZWave::Options::AddOptionInt(std::string const&, int)'
OpenZWave.cpp:(.text+0xd5f): undefined reference to `OpenZWave::Options::AddOptionInt(std::string const&, int)'
CMakeFiles/domoticz.dir/hardware/OpenZWave.cpp.o:OpenZWave.cpp:(.text+0xd9b): more undefined references to `OpenZWave::Options::AddOptionInt(std::string const&, int)' follow
CMakeFiles/domoticz.dir/hardware/OpenZWave.cpp.o: In function `COpenZWave::UpdateNodeEvent(OpenZWave::ValueID const&, int)':

Tried to switch from gcc 5.2 to 4.9, which was the version that my system had when building on 15.04.

update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.9 40
update-alternatives --install /usr/bin/cpp cpp /usr/bin/cpp-4.9 40
update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.9 40

No luck so far :(.

For now... we use the commit revision number because...

Yes, i know, we should work with hashes, but for now we use the revision number with

git rev-list HEAD --count

and i add the value 2107 for it

Reason:

  • in the previous code (on SVN) an update was flagged if the new (above) version number was higher then the current version number
  • this is now changed, but current beta/release users of domoticz (that are using the binary update functionality) still needs this to update to a new beta/release version

I hope (expect) that all beta users will update in a month to a new beta version, so we can stop this

From that moment the version number 2.xxxx will be changed to 3.yyyy whet yyyy is the git commit revision number (maybe also show the hash code)

So please, dont flame/blame etc at the moment

to go from a revision number back to the commit hash code you could call

git rev-list --reverse HEAD | cut -c1-7 | nl | awk "{ if($1 == "635") { print $2 }}"

(where 635 is the number)

Missing graphs

I have a Temp + Humidity + Baro sensor.
After a few days the graphs are empty, the dashboard show actual value and correct update time.
The other sensors are showing correctly,
I use release version 2.3520 on a raspberry pi.

SMTP Email Fails

Test button gives the following error

 Problem sending notification, please check the api key

I don't have any of the notification services requiring an API key setup. I'm just want to use smtp.

Debug logs don't provide any additional information.

 Error: Notification sent (email) => Failed

Imac instructions followed but not working

I followed everything and all worked up to instruction to start program by typing ./domoticz i.e
iMacBG:domoticz BG$ ./domoticz
-bash: ./domoticz: No such file or directory
iMacBG:domoticz BG$
There is a file called domoticz.sh to which I do not have permission. Changing permission with chmod 755 allow me to execute with ./domoticz.sh but nothing happens. I look at the domoticz.sh file and I see a line about username pi ??? Something now quite right I think. Do I have an RPi version and not the one for the mac. I followed the instructions which included the preparations and the downloading and compiling of the source code. I could not put this on the Forum as its not working as follows

General Error
SQL ERROR [ mysqli ]
Table './pkjv172828_bb1/bb_sessions' is marked as crashed and should be repaired [145]
An sql error occurred while fetching this page. Please contact an administrator if this problem persists.

Memory leak

We've got a memory leak.
When my domoticz starts, its memory is like this (using a top command) :
virtual : 174MB, Resident: 15MB, shared: 10MB
After 46 hours, I got :
virtual : 511MB, Resident: 51MB, shared: 12MB

During these 46 hours I had :

  • 1 Uptimerobot monitoring on https://<my_domoticz_domain>/ ;
  • 1 database backup each hour, using an http request (and login/logout) ;
  • one lua time script (computing a time, two times a day) ;
  • four lua device scripts (checking temperature and states) ;
  • 8 blockly scripts ;
  • 7 RFX devices (temperature) ;
  • 2 ZWave Motion sensor ;
  • 5 ZWave Relay Switch ;
  • 1 ZWave RGBW ;
  • 3 ZWave Wall plug ;
  • 1 ZWave Multiple Switches ;
  • 1 ZWave remote ;
  • 1 Enocean Door sensor ;
  • 1 Enocean Wall Switch.

My domoticz version use session cleanup.

Today, I've restarted domoticz after pausing the Uptimerobot.

RFE: Split configuration database from data logging database

Embedded devices using flash-based storage — especially the crappy SD/MMC devices with their own built-in translation layer, and using a normal block file system such as ext4 on top — should always be careful to avoid doing too many writes to the device. For long-term embedded use cases, it's best for the file system to be read only.

It would be useful to separate the permanent configuration of Domoticz, from the ongoing data logging. In some cases the former might be kept on the real file system, while the latter can be in a tmpfs and thus just in memory.

It's not the end of the world if that gets lost on a restart, and it is painful if constantly writing to the storage device means the system doesn't boot any more after a few months of operation.

Add type-of-device to the JSON API

Unless I am mistaken, there is no easy way to see what kind of device you are looking at from the 'all' devices request. This means either heuristically 'guess' if it is a switch, temperature-device or something else.

It would be really helpful if this was present in the JSON items per-device. The 'filter' name (e.g. 'light' or 'temp') could be added for instance. This would reduce the amount of calls to get the specific types!

Example (shortened), with added field DeviceType

   "result" : [
      {
         "HardwareType" : "RFXCOM - RFXtrx433 USB 433.92MHz Transceiver",
         "HardwareTypeVal" : 1,
         "Humidity" : 56,
         "Name" : "Cresta channel 1",
         "SubType" : "Cresta, TFA TS34C",
         "Temp" : 18.50,
         "Type" : "Temp + Humidity",
         "TypeImg" : "temperature",

         "DeviceType": "temp"

      },
      {
         "HardwareType" : "RFXCOM - RFXtrx433 USB 433.92MHz Transceiver",
         "Image" : "Light",
         "Name" : "Woonkamer - dressoir",
         "SubType" : "Impuls",
         "Type" : "Lighting 1",
         "TypeImg" : "lightbulb",

         "DeviceType": "light"

      },

Currently one might abuse the TypeImg field, or do some magic with the Type, but this is not a pretty method. The image field isn't intended for type-identification, and there doesn't seem to be a clear, exhaustive list for the Type field (the difference between an lighting 1 and other switches isn't really relevant for instance).

Feature request: panel to define text to send to nodes

In de settings panel of the notifications, maybe we can extend this with a text edit field to define a text to be sent, a dropdown showing all V_TEXT capable sensors and a button for CLEAR or SEND.

It would make sense to add it there, because you could consider sending a string in V_TEXT to a node as a "notification" action.

SPI bus speed

Hello, I am not really familiar with GitHub so hopefully this info will get to you. There seems to be an issue with the spi bus speed and the Raspberry Pi 2. I have recompiled the file with modifying the bus speed to a lower value and now it will detect the PiFace. Before it was intermittent. Is it possible to set the spi bus speed from 4 Mhz to 500 kHz or so? Or maybe 1 Mhz? Thx Rene

Include new openzwave control panel

I've recently created an update for the openzwave control panel including a bootstrap3 interface which is a bit more usable than the old one. There are always improvements available of course but I think it's easier to use than the old version and a bit prettier.
Bootstrap 3 OpenZWave Control Panel

The issue on that side is currently open here if you're interested: OpenZWave/open-zwave-control-panel#35
But I think Domoticz is including a separate version anyhow, so I was wondering if an immediate pull request would be appreciated or if everything should go through the upstream repo.

(ps: it appears that domoticz is only supporting part of the z-wave interface, is that intentional? The scene section of the interface appears broken since there's no url endpoint for that)

Mysensors Wifi gateway reset on gw version request

I use Domoticz beta ver. 2.3708 with Ethernet MySensors Hardware. Before updating to latest version all was ok. Now my gateway is reseting when Domoticz is requesting version:
Gateway startup complete.
Client 0: 0;0;3;0;2;

Exception (28):
epc1=0x4000bf80 epc2=0x00000000 epc3=0x00000000 excvaddr=0x00000000 depc=0x00000000

ctx: cont
sp: 3ffebf60 end: 3ffec1f0 offset: 01a0

stack>>>
3ffec100: 00000000 00000000 3ffec12e 4020102c

I have tried same request from telnet client:
Client 0: 0;0;3;0;2;
0;0;3;0;2;1.5
Client 0: 0;0;3;0;2;
0;0;3;0;2;1.5
and it responded without crashing.

I use ESP8266+NRF24 as a gateway (http://www.mysensors.org/build/esp8266_gateway).

As a temporary solution I have drop from iptables sending packet with string '0;0;3;0;2;' to my gw and it is working for now:
Domoticz log
2015-11-28 12:58:05.489 (Ethernet MySensors) Temp (B)
2015-11-28 12:58:05.512 (Ethernet MySensors) General/Voltage (B)
2015-11-28 12:58:37.539 (Ethernet MySensors) Temp (B)
2015-11-28 12:58:37.563 (Ethernet MySensors) General/Voltage (B)

Thanks

TOON Error getting current state

Error in log:
2015-10-06 17:15:45.296 Error: ToonThermostat: Error getting current state!
Still investigating. Get some confusing results... puzzled...

TCPServer crash or TCPServer stopping loop while changing RemoteSharedPort from Settings

I'm using domoticz r3735. I have only one domoticz instance.

I have a crash (SIG_ABORT) each time I try to change the remote shared port from Settings Tab :

Core was generated by `/home/pi/domoticz/domoticz -daemon -www 8081 -sslwww 8443 -sslcert /home/pi/ssl'.
Program terminated with signal 6, Aborted.
#0 0x76b7f8dc in __GI_raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:67

67 ../nptl/sysdeps/unix/sysv/linux/raise.c: Aucun fichier ou dossier de ce type.
(gdb) bt full
#0 0x76b7f8dc in __GI_raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:67

    _sys_result = <optimized out>
    pd = <optimized out>
    pid = <optimized out>
    selftid = 2898

#1 0x76b8365c in __GI_abort () at abort.c:92

    save_stage = 2
    act = {__sigaction_handler = {sa_handler = 0x143194, sa_sigaction = 0x143194}, sa_mask = {__val = {1937176924, 1996051664, 1937176856, 1996167860, 0, 1996132080, 5, 0, 1, 1996167512, 0, 7680432, 0, 1937176916, 1992725916, 1992725900, 22, 0, 1996167952, 16, 1996167512, 
          1992725900, 1937176972, 10131396, 1937176988, 22, 11539032, 9118188, 1937178512, 1937180292, 1991608912, 1996147472}}, sa_flags = 1992815936, sa_restorer = 0x76c10334 <write+52>}
    sigs = {__val = {32, 0 <repeats 31 times>}}

#2 0x009c0c9c in __gnu_cxx::__verbose_terminate_handler() ()

No symbol table info available.
#3 0x009bd5e8 in __cxxabiv1::__terminate(void (*)()) ()

No symbol table info available.
#4 0x009bd610 in std::terminate() ()

No symbol table info available.
#5 0x009bdd38 in __cxa_throw ()

No symbol table info available.
#6 0x004258c4 in boost::throw_exceptionboost::lock_error (e=...) at /usr/local/include/boost/throw_exception.hpp:69

No locals.
#7 0x00423d00 in boost::mutex::lock (this=0x1967cac) at /usr/local/include/boost/thread/pthread/mutex.hpp:119

    res = 22

#8 0x00425918 in boost::lock_guardboost::mutex::lock_guard (this=0x7376fa74, m_=...) at /usr/local/include/boost/thread/lock_guard.hpp:38

No locals.
#9 0x007c6d04 in tcp::server::CTCPServerInt::SendToAll (this=0x1967c70, DeviceRowID=21, pData=0x726a5260 "\nR\001"<\002", Length=11, pClient2Ignore=0x0) at /home/pi/dev-domoticz/tcpserver/TCPServer.cpp:171

    l = {m = @0x1967cac}
    itt = {_M_node = 0xafc6b8}

#10 0x007c7548 in tcp::server::CTCPServer::SendToAll (this=0xafc100, DeviceRowID=21, pData=0x726a5260 "\nR\001"<\002", Length=11, pClient2Ignore=0x0) at /home/pi/dev-domoticz/tcpserver/TCPServer.cpp:291

No locals.
#11 0x00478138 in MainWorker::ProcessRXMessage (this=0xafbaa0, pHardware=0x1931930, pRXCommand=0x726a5260 "\nR\001"<\002", defaultName=0xb02e98 "", BatteryLevel=255) at /home/pi/dev-domoticz/main/mainworker.cpp:2182

    Len = 11
    tv = {tv_sec = 1448985265, tv_usec = 395666}
    HwdID = 6
    szDate = "2015-12-01 16:54:25.395 \000\373vs\\^\274v\f\374vs\210آ\001\354\373vs\236آ\001R\001\000\000\064\274B\000\236آ\001\214\244\237\001\210آ\001\374\373vs\f\374vs\214\244\237\001\f\374vs\330zB\000\210آ\001\214\244\237\001\034\374vs"
    timeinfo = {tm_sec = 25, tm_min = 54, tm_hour = 16, tm_mday = 1, tm_mon = 11, tm_year = 115, tm_wday = 2, tm_yday = 334, tm_isdst = 0, tm_gmtoff = 3600, tm_zone = 0x18e2f48 "CET"}
    DeviceRowIdx = 21
    pClient2Ignore = 0x0

#12 0x00476e74 in MainWorker::Do_Work_On_Rx_Messages (this=0xafbaa0) at /home/pi/dev-domoticz/main/mainworker.cpp:1862

    rxQItem = {Name = {static npos = <optimized out>, _M_dataplus = {<std::allocator<char>> = {<__gnu_cxx::new_allocator<char>> = {<No data fields>}, <No data fields>}, _M_p = 0xb02e98 ""}}, BatteryLevel = 255, rxMessageIdx = 1280, hardwareId = 6, 
      vrxCommand = {<std::_Vector_base<unsigned char, std::allocator<unsigned char> >> = {_M_impl = {<std::allocator<unsigned char>> = {<__gnu_cxx::new_allocator<unsigned char>> = {<No data fields>}, <No data fields>}, _M_start = 0x726a5260 "\nR\001\"<\002", 
            _M_finish = 0x726a5276 " s\002", _M_end_of_storage = 0x726a5276 " s\002"}}, <No data fields>}, crc = 0, trigger = 0x0}
    hasPopped = true
    pHardware = 0x1931930
    pRXCommand = 0x726a5260 "\nR\001\"<\002"

Memory leak : session is not removed on logout

Please take a look to the line webserver/cWebem@1478 :

std::string sSID = scookie.substr(fpos + 4);

It should be :

int ppos = scookie.find(".");
...
std::string sSID = scookie.substr(fpos + 4, ppos-fpos-4);

Evohome zone setpoint overrides not reported

The controller periodically sends out a broadcast of the current set points:

2015-12-01 14:45:05 045  I --- 01:063863 --:------ 01:063863 2309 027 0005DC0105DC0208980305DC0405DC0505DC0605DC0703E80805DC (�������������)
2015-12-01 14:45:05 evohome: ZONE_SETPOINT: Setting: 1: 1500
2015-12-01 14:45:05 evohome: ZONE_SETPOINT: Setting: 2: 1500
2015-12-01 14:45:05 evohome: ZONE_SETPOINT: Setting: 3: 2200
2015-12-01 14:45:05 evohome: ZONE_SETPOINT: Setting: 4: 1500
2015-12-01 14:45:05 evohome: ZONE_SETPOINT: Setting: 5: 1500
2015-12-01 14:45:05 evohome: ZONE_SETPOINT: Setting: 6: 1500
2015-12-01 14:45:05 evohome: ZONE_SETPOINT: Setting: 7: 1500
2015-12-01 14:45:05 evohome: ZONE_SETPOINT: Setting: 8: 1000
2015-12-01 14:45:05 evohome: ZONE_SETPOINT: Setting: 9: 1500
2015-12-01 14:45:05 evohome: invalid message structure - possible corrupt message

If a local override has been set, an individual HR92 on a radiator may then say "oh no it isn't" and provide the real set point:

2015-12-01 14:45:11 049  I --- 04:203170 --:------ 01:063863 2309 003 05060E (�)
2015-12-01 14:45:11 evohome: ZONE_SETPOINT: Setting: 6: 1550

We seem to ignore the override.

Please create a 1.0 release

For package maintainers, having tagged versions drastically makes our lives easier. Please tag a release as 1.0 so that we can add this to the FreeBSD ports tree.

[Error] Unable to add notification: no column named SendAlways

Hi,
When I try to add notifications I have this type of error and no notification are created:

  • 2015-10-07 13:31:36.790 Error: SQL Query("INSERT INTO Notifications (DeviceRowID, Params, CustomMessage, ActiveSystems, Priority, SendAlways) VALUES ('177','S','','email;kodi',0,0)") : table Notifications has no column named SendAlways
  • 2015-10-07 13:31:36.792 Error: SQL Query("SELECT ID, DeviceRowID, Params, CustomMessage, ActiveSystems, Priority, SendAlways, LastSend FROM Notifications ORDER BY DeviceRowID") : no such column: SendAlways
  • 2015-10-07 13:31:43.503 Error: SQL Query("INSERT INTO Notifications (DeviceRowID, Params, CustomMessage, ActiveSystems, Priority, SendAlways) VALUES ('177','O','','',0,0)") : table Notifications has no column named SendAlways
  • 2015-10-07 13:31:43.504 Error: SQL Query("SELECT ID, DeviceRowID, Params, CustomMessage, ActiveSystems, Priority, SendAlways, LastSend FROM Notifications ORDER BY DeviceRowID") : no such column: SendAlways

My domoticz version is: Version: 2.3266
Build Hash: 6237ae2
Compile Date: 2015-10-06 14:27:17

Critical security issue and design issue in the Web server layer

I was looking for fixing the long term authentication token issue (to allow a user to reconnect automatically if he has a valid cookie), I had discovered some critical issues.

Are you aware that two different users who are simultaneously connected share the same instance of the CWebserver class therefore the same instance of the cWebem class therefore the same instance of the class cWebemRequestHandler ?

The class cWebem holds sessions (why not), user passords (why not), current user (critical issue) and current request attributes (critical issue).

The solution would be to put all user data and all request data in the request object. It needs to refactor the webserver classes. It needs also to add the request object as the first argument of all web action and command methods.

Do you allow me to create a new branch to fix all of this ?

MySensors: add possibility to combine measurements of sensors

Sometimes a sensor-node with multiple sensors, fails to send all measurement data in 1 go. E.g. a temperature and humidity node (SI7021 based) sends both Temp and Hum values, but sometimes only the Temp or only the Hum value gets through to Domoticz.

In those cases the node is seen as a new node with same ID but different IDX. In my case the same node has three IDX values (26,27 and 28).

26 MySensors Gateway 0401 0 TempHum Temp + Humidity WTGR800 21.3 C, 53 %

27 MySensors Gateway 0401 1 TempHum Temp LaCrosse TX3 21.1 C

28 MySensors Gateway 0402 1 TempHum Humidity LaCrosse TX3 Humidity 47 %

In the above list the three "devices" are actually the same node.

This is a request to be able to combine the two devices with same ID so that data is merged again.

Maybe best to be able to change ("combine") nodes in the devices overview with the option to merge their data (merging mayby not always required of opportune, so this should be an optional action).

RFE: Dynamically link libstdc++, libgcc, libsqlite, liblua

I'm building domoticz for OpenWRT. On a space-constrained system it's quite important that we use dynamically linked libraries rather than statically linking our own copy. I may do Fedora packages, and we have similar packaging requirements there for different reasons.

Obviously I can fix this with out-of-tree patches (which is easier in some ways because it can be unconditional), but it would be nicer to fix it properly so the upstream build system allows building either way. Should I work on doing it 'properly', or is that not something that would be welcomed?

Compilation error - FreeBSD 10.2

Hi,
I am trying to compile domoticz under FreeBSD 10.2,
following instructions https://www.domoticz.com/wiki/FreeNAS
Here is the error I am received:

make -j 2

[ 14%] Building C object MQTT/CMakeFiles/mqtt.dir/thread_mosq.c.o
[ 15%] Building C object lua/src/CMakeFiles/lua.dir/lctype.c.o
[ 16%] Building C object lua/src/CMakeFiles/lua.dir/ldebug.c.o
[ 16%] Building C object MQTT/CMakeFiles/mqtt.dir/time_mosq.c.o
[ 17%] Building C object MQTT/CMakeFiles/mqtt.dir/tls_mosq.c.o
[ 17%] Building C object lua/src/CMakeFiles/lua.dir/ldo.c.o
/home/domoticz/domoticz/MQTT/tls_mosq.c:147:22: error: use of undeclared identifier 'AF_INET6'
        ipv6_ok = inet_pton(AF_INET6, hostname, &ipv6_addr);
                            ^
/home/domoticz/domoticz/MQTT/tls_mosq.c:148:22: error: use of undeclared identifier 'AF_INET'
        ipv4_ok = inet_pton(AF_INET, hostname, &ipv4_addr);
                            ^
2 errors generated.
--- MQTT/CMakeFiles/mqtt.dir/tls_mosq.c.o ---
*** [MQTT/CMakeFiles/mqtt.dir/tls_mosq.c.o] Error code 1

make[2]: stopped in /usr/home/domoticz/domoticz
1 error

make[2]: stopped in /usr/home/domoticz/domoticz
--- MQTT/CMakeFiles/mqtt.dir/all ---
*** [MQTT/CMakeFiles/mqtt.dir/all] Error code 2

make[1]: stopped in /usr/home/domoticz/domoticz
A failure has been detected in another branch of the parallel make

make[2]: stopped in /usr/home/domoticz/domoticz
--- lua/src/CMakeFiles/lua.dir/all ---
*** [lua/src/CMakeFiles/lua.dir/all] Error code 2

make[1]: stopped in /usr/home/domoticz/domoticz
2 errors

make[1]: stopped in /usr/home/domoticz/domoticz
*** [all] Error code 2

make: stopped in /usr/home/domoticz/domoticz
1 error

make: stopped in /usr/home/domoticz/domoticz

Something is missing...

Graphs on iOS show spikes at the edges of switching values.

My voltage measurements jump a lot between 2 values, which is not the problem in itself. But the graphic showing the evolution has become unreadable when I'm NOT zoomed in.

As a picture tells more then words, here is what it looks like on my iPhone (tablet gives the same).

img_7347

Zooming in a bit I get:

img_7349

Further zooming in:

img_7350

Even more:

img_7351

It seems this an issue only on iOS (Safari).

On my PC in Inter Explorer 11 I get the following: no spikes at the edges. But the vertical lines are wider in the middle then at the edges. The primitive used to plot a vertical line must be a curved shape to show this strange narrowing at the edge.

chart

The question now is, why are these spikes visible, is there something that can be done to avoid them ? Especially on mobile devices with Safari these spikes make graphs unusable. Maybe use a different grapics library without this strange behaviour to plot lines ?

Kodi.cpp.o failed to compil

Hello,

Since the last change in the code, Kodi.cpp.o failed to compil.
Do you know why ? Something change ?

[ 56%] Building CXX object CMakeFiles/domoticz.dir/hardware/Kodi.cpp.o
/home/simon/SRC/domoticz/hardware/Kodi.cpp: In member function ‘void CKodi::Do_Work()’:
/home/simon/SRC/domoticz/hardware/Kodi.cpp:765:27: erreur: ‘class boost::asio::io_service’ has no member named ‘stopped’
/home/simon/SRC/domoticz/hardware/Kodi.cpp: In member function ‘void CKodi::UnloadNodes()’:
/home/simon/SRC/domoticz/hardware/Kodi.cpp:942:40: erreur: ‘class boost::asio::io_service’ has no member named ‘stopped’
make[2]: *** [CMakeFiles/domoticz.dir/hardware/Kodi.cpp.o] Erreur 1
make[1]: *** [CMakeFiles/domoticz.dir/all] Erreur 2
make: *** [all] Erreur 2

Latest source does not compile with latest boost version: 1.59.0

Building C object lua/src/CMakeFiles/lua.dir/lcode.c.o
In file included from /usr/local/include/boost/thread.hpp:24:0,
from /home/pi/dev-domoticz/main/stdafx.h:58:
/usr/local/include/boost/thread/future.hpp:2043:37: error: ‘is_copy_constructible’ was not declared in this scope
/usr/local/include/boost/thread/future.hpp:2043:37: note: suggested alternative:
/usr/local/include/boost/move/detail/type_traits.hpp:742:8: note: ‘boost::move_detail::is_copy_constructible’
/usr/local/include/boost/thread/future.hpp:2043:61: error: template argument 1 is invalid
/usr/local/include/boost/thread/future.hpp:2043:62: error: expected identifier before ‘::’ token
/usr/local/include/boost/thread/future.hpp:2043:70: error: expected initializer before ‘&&’ token
In file included from /usr/local/include/boost/thread.hpp:24:0,
from /home/pi/dev-domoticz/main/stdafx.h:58:
/usr/local/include/boost/thread/future.hpp:2098:37: error: ‘is_copy_constructible’ was not declared in this scope
/usr/local/include/boost/thread/future.hpp:2098:37: note: suggested alternative:
/usr/local/include/boost/move/detail/type_traits.hpp:742:8: note: ‘boost::move_detail::is_copy_constructible’
/usr/local/include/boost/thread/future.hpp:2098:61: error: template argument 1 is invalid
/usr/local/include/boost/thread/future.hpp:2098:62: error: expected identifier before ‘::’ token
/usr/local/include/boost/thread/future.hpp:2098:70: error: expected initializer before ‘&&’ token
[ 19%] Building C object lua/src/CMakeFiles/lua.dir/lctype.c.o
[ 20%] Building C object lua/src/CMakeFiles/lua.dir/ldebug.c.o
[ 20%] Building C object lua/src/CMakeFiles/lua.dir/ldo.c.o
[ 21%] Building C object lua/src/CMakeFiles/lua.dir/ldump.c.o
[ 21%] Building C object lua/src/CMakeFiles/lua.dir/lfunc.c.o
[ 22%] Building C object lua/src/CMakeFiles/lua.dir/lgc.c.o
[ 22%] Building C object lua/src/CMakeFiles/lua.dir/llex.c.o
[ 23%] Building C object lua/src/CMakeFiles/lua.dir/lmem.c.o
[ 24%] Building C object lua/src/CMakeFiles/lua.dir/lobject.c.o
[ 24%] Building C object lua/src/CMakeFiles/lua.dir/lopcodes.c.o
[ 25%] Building C object lua/src/CMakeFiles/lua.dir/lparser.c.o
[ 25%] Building C object lua/src/CMakeFiles/lua.dir/lstate.c.o
[ 26%] CMakeFiles/domoticz_gch.dir/build.make:51: receptet för målet ”stdafx.h.gch/.c++” misslyckades
make[2]: *** [stdafx.h.gch/.c++] Fel 1
CMakeFiles/Makefile2:99: receptet för målet ”CMakeFiles/domoticz_gch.dir/all” misslyckades
make[1]: *** [CMakeFiles/domoticz_gch.dir/all] Fel 2
make[1]: *** Inväntar oavslutade jobb...

Support Osram Lightify on Hue Bridge

Please add lightning type "Color temperature light" as a dimmable light to PhilipsHue.cpp. Adding this allows the detection of Osram LIghtify lights.

JSON output of bridge :
"4": {
"state": {
"on": false,
"bri": 84,
"ct": 370,
"alert": "none",
"colormode": "ct",
"reachable": true
},
"type": "Color temperature light",
"name": "Woonkamer hoek",
"modelid": "Classic B40 TW - LIGHTIFY",
"manufacturername": "OSRAM",
"uniqueid": "7c:b0:3e:aa:00:14:a5:f4-03",
"swversion": "1131860",
"pointsymbol": {
"1": "none",
"2": "none",
"3": "none",
"4": "none",
"5": "none",
"6": "none",
"7": "none",
"8": "none"
}
}

Virtual UV sensors issue

Hello,

a virtual UV sensor does not have graph nor reports values.
here is the comparison in the device table between a real and a virtual, the virtuial does not show the unit.
218 RFXTrx 433 E300 0 UV UV UVN800 0.0 UVI
382 dummy 141CD 1 mUV UV UVN128,UV138 0, 0 - -
also in the UI, only edit and notifications are allowed

lost temps

Hi there,

With the latest build, I lost all temperature graphs (current temperature is available for all sensors on the dashboard though). The report sheet displays 'NaN' instead of any value but all months are displayed like if data are available but cant be displayed.

EDF Teleinfo history is OK.
Let me know how I can debug things for you.

Cheers

JF

Official Debian packages for domoticz?

Hi,

I'm a happy domoticz user, and involved in Debian. I was looking into creating official domoticz packages for Debian. I could maintain backport packages as well.

Is that something you would be interested in?

I haven't looked in detail yet, but it could require some changes to the building infrastructure on the domoticz to make things easier on the packaging side. That's most likely the only thing I'll need from your side.

Please let me know what you think,

Lucas

Compilation error - Ubuntu 12.04

Hi,
I am trying to compile domoticz under Ubuntu 12.04,
Till my last update (Sep 21, 2015) everything was OK.

Today (Sept 25, 201) I get errors.
Here is the error I am received:

[ 46%] Building CXX object CMakeFiles/domoticz.dir/hardware/Kodi.cpp.o
/home/harry/domoticz/hardware/Kodi.cpp: In memberfunctie ‘void CKodi::Do_Work()’:
/home/harry/domoticz/hardware/Kodi.cpp:745:14: fout: ‘class boost::asio::io_service’ has no member named ‘stopped’
/home/harry/domoticz/hardware/Kodi.cpp: In memberfunctie ‘void CKodi::UnloadNodes()’:
/home/harry/domoticz/hardware/Kodi.cpp:922:40: fout: ‘class boost::asio::io_service’ has no member named ‘stopped’
make[2]: *** [CMakeFiles/domoticz.dir/hardware/Kodi.cpp.o] Fout 1
make[1]: *** [CMakeFiles/domoticz.dir/all] Fout 2
make: *** [all] Fout 2
Compile failed!

No need to be allowed to see/edit/delete cams..

Hi guys,

I'm using Domoticz v2.3448 and I just found yesterday 2 bugs.

The first one is that if you create an user who is viewer or user or admin, well everyone can see/edit/delete cams with the url:


http://192.168.X.X/#/Cam
or
http://www.your-domain.com/#/Cam


You can have the data in JSON too:


http://192.168.X.X/json.htm?type=cameras
or
http://www.your-domain.com/json.htm?type=cameras


Is everyone as this problem ?

It would be nice if we can choose the "Actives menu" for "Cam".

There is a variant of this problem.
If you don't have give access in "actives menu" to Lights/Temp/Weather..., the users can use the URLs /#/LightSwitches or even /#/Users

I hope there will be a fix..

Can't add dummy devices

Hi,

I'm currently running 2879, and I'm not able to add dummy devices.

The hardware dummy device is addable, but dummy sensors can't be added... Domoticz says that they can be found in the devices (Apparaten) tab, but they aren't displayed or added.

Evohome temporary setpoints not reported

When the normal schedule is overridden on the controller and a new temperature set point given for a zone, this is reported as such:

2015-12-01 14:50:58 095 RQ --- 18:002668 01:063863 --:------ 2349 001 02 (�)
2015-12-01 14:50:58 045 RP --- 01:063863 18:002668 --:------ 2349 013 02089804FFFFFF0012010C07DF (��������)
2015-12-01 14:50:58 evohome: ZONE_SETPOINT_MODE: Setting: 3: 2200 (0=Auto) 2015-12-01 18:00

However, we don't seem to report that. It's just marked as 'Normal'.

I'm fairly sure this used to work at some point when I was first trying to set things up, but I couldn't say what version that was with.

Add the support of the RTSP protocol

Hi,

Some camera don't support snapshot jpg, but they have only the rtsp protocol.
In this case, if domoticz intergate natively the support of rtsp protocol could be great ;)

Cheers

Multiple Nest Thermostats Not Detectable

I have two thermostats in my home (common in multi-story homes) and Domoticz always only detects the first Nest thermostat, but not the second one. I've tried removing the hardware and re-adding it with and without a reboot. I've tried a clean installation and tried updating to the latest beta version of Domoticz and always fails to detect the second Nest. Currently using a nestpy script using a different index argument with a virtual thermostat as a workaround.

RGB JSON support

Hello,

Sorry for the confusion, but I am still searching for the RGB info:

  • a dummy rgb lamp opens up the popupo but does not send the rgb value back. Also there is nothing on the actual RGB value in the light JSON output.
  • how can I create a "real" limitless one so I can try to reverse engineer the JSON commands ? or maybe you can point me where I can find this ?

Thanks,

HttpLink for switch only showing option to send nvalue

When selecting a switch to send the status of via httplink, the only selectable "value to send" from the selectionbox is "Status", with value 0:
` Status ` This translate to the nvalue of the device. My (Fibaro) switch, however, stores its current status (on/off) in the svalue, as I found out by checking the domoticz.db DeviceStatus table.

The following fragment of www/views/dphttp.html, which does not show endtag of <select>, might be the cause of the problem? The comment also suggests that an <option value="1">, to represent the svalue, is missing in the generated page:
<tr id="variabletosend"> <td align="right" style="width:110px"><label for="name"><span data-i18n="Value to send"></span>:</label></td> <!--<td><input type="text" id="valuetosend" value="0" style="width: 50px; padding: .2em;" class="text ui-widget-content ui-corner-all" /> (<span data-i18n="0 = nvalue, 1 = svalue field 1, 2 = svalue field 2, etc."></span>)</td>--> <td><select id="combosendvalue" style="width:160px" class="combobox ui-corner-all"> </tr>

Thanks in advance for looking into this.

Internal zlib copy

Looking at both Visual Studio project and top level CMakeLists.txt looks like the zlib copy in the zlib folder is not used at all.

CMake tries to find zlib with a find_package, but that will only look the binary library on the system, it won't build our internal copy.

Should we remove it? Should we add it to the build and have a switch an option like we do for sqlite and lua?

Kodi plugin does not work if using DNS-name in IP-address-field

So yeah, it's kinda obvious that I should use the IP-address in the "IP-Address"-field, but then again - why depend on IP's when DNS is a thing?

The extension always errors out in an "Invalid Argument" when using DNS-name, even though there is nothing wrong with the DNS-alias.
When switching to IP it works instantly.

So I guess this is an issue for making the field only accept IP's (which would have made me catch the error earlier) or making the extension work with DNS or IP, and changing the name of the field.

Blocky; quotes in variable

Text in variables as string filled by (a newly created) blockly are between quotes in the latest beta's, now running: v2.3575

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.