Release 3.1.0 - 27.11.2018 INCOMPATIBLE CHANGES - DAVIS: require firmware version 5 and logic version 18. Fixes issues with IMU Run Controls, fixes corrupt data in DAVIS BLUE 346, enables IMU on DAVIS RED 346. - Logging: caerLogVAFull() API has been simplified, the two file descriptor arguments have been removed, use the proper caerLogFileDescriptorsSet() API to set them when needed. NEW FEATURES - Logging: added caerLogCallbackSet() and caerLogCallbackGet() functions to set/get a global callback function to be executed on every caerLog() logging call, the log message and its size are passed to the callback. BUG FIXES - C++ API frame.hpp: fix demosaic(), set number of (valid) events in resulting packet correctly. Don't log errors if operation cannot be performed, just copy over unchanged pixel data. Also only operate on valid events for demosaic() and contrast(). - DAVIS IMU: temperature readings on InvenSense 6050 were off by +1.53°C. - CMake: fix linking on Windows. - Ubuntu Packaging: build with correct GCC version on Ubuntu 14.04 Trusty. - Logging: performance improvements; move expensive check (TLS) to last position, ensure log-level is checked first in custom loggers. - Fix various compiler warnings.