To send a status update to openhab if the timer alarm is going off on the android phone we need some tools. First we need the openhab app installed and configured with the tasker plugin enabled Second we need tasker Third we need Automate to read notifications and, create a little logic. Automate Flow (OnePlus tested) I will explain the… Read more →
openHAB 3: conditional log Items
I want to skip the logging for some items like Spotify track progress (which updates every second) so that the logs are not polluted. Since openHAB version 3 log4j2 is used as logging framework and the log4j2.xml has to be used to configure logging. We can use a RegexFilter to configure such behaviour. How to The RegexFilter allows the formatted… Read more →
Gradle dependencySubstitution
I worked on a project that uses a framework. To add a new sub class I had to make the base class, that is part of the framework, open for extension. I was able to compile the framework on my own without the need to create a local artifact repository then create a new artifact and new version by the… Read more →
WP Mail Logging Ownership
The ownership of the WordPress Plugin WP Mail Logging has been transferred to MailPoet. Their plans are to keep the plugin alive and maintain it. Read more →
esp2866 grill
A simple UI to control a fan in a lotus grill with an esp8266 with arduino interface. The chip creates an access point (AP) and uses a captive portal to provide easy access to the UI. UI The UI provides the following actions: Turn the fan on/off Set the speed of the fan View the connection status to the server… Read more →
Letsencrypt Wildcard Certificate HowTo
After the delay of the ACMEv2 including the wildcard-endpoint [2] it finally is live today [3]. In addition to the ACME v2 requirement, requests for wildcard certificates require an DNS “TXT” record to verify control over the domain. Just “upgraded” my certificate to an root certificate follwing these steps: 1. Upgraded my certbot
1 2 3 | cd /opt/letsencrypt git reset --hard git pull |
2. Requested certificate (command is based… Read more →
X-Ring with Google Calendar
As application for the X-Ring RGB Strip I came up with the following idea: querying the next event in my Google Calendar tagged with #wecker and then visualize the remaining time. I have illustrated the structure of all components in the following figure: Google Calendar The Wemos D1 mini queries the next event by accessing my Google Calendar. This is done… Read more →
X-Ring missing documentation
I recently bought a X-Ring WS2812B RGB on AliExpress.com. There is no information about the wiring or the bus how the X-Ring is controlled. So I did a little reverse engineering and want to share the information:At first: the X-Ring is driven by a One-Wire connection.There is a switch on the top: The wiring is the following: When I ordered… Read more →
Convert timestring to number Google Spreadsheet
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | function toMS(input) { const sRegex = /\d+s/g; const msRegex = /\d+ms/g; const usRegex = /\d+us/g; Logger.log("Running toMS with parameter: " + input); var sToMs = 0; var msToMs = 0; var usToMs = 0; while((seg = sRegex.exec(input)) !== null) { sToMs += parseInt(seg) * 1000; } while((seg = msRegex.exec(input)) !== null) { msToMs += parseInt(seg); } while((seg = usRegex.exec(input)) !== null) { usToMs += parseInt(seg) / 1000; } usToMs += msToMs + sToMs; return usToMs; } function toUS(input) { return toMS(input) * 1000; } |
JavaFX Gluon Ignite Guice Inject Controller
I had to inject a whole controller into another controller with the guice implementation of gluon ignite. I will show an approach doing so. This is applicable if you have set the controller id in your fxml. Otherwise this snipped requires slightly modifications. I assume you have ignite already running and injecting stuff already but facing the “inject a controller… Read more →