March was calm, but productive month for flespi. First of all, I would like to mention our best uptime so far — 99.997%. We were very close to 100% but experienced a 43-second downtime at the end of the month when upgrading our servers with the latest security patches from Debian and restarting them. Downtime occurred once we switched the gateway from primary to secondary and didn’t flush ARP cache of internal servers. Last time we performed a similar procedure in September and had more troubles. Now we are more experienced, and I believe our next gateway upgrades will occur without any noticeable service interruptions.
We published a guide on how to connect a self-made smart home to the internet with the help of flespi services. This example shows our new feature released in March — flespi CDN — the file storage service for developers (and not only them). We will cover CDN features in a separate article soon.
As a result of our one week trip to Groningen in February, we have already changed our flespi.com website to reflect the changes to the concept of the flespi platform. At the same time, we once modified our flespi.io tool. Please login to control the panel and enjoy it’s new GUI.
For telematics hub services we made a final RIP to the registry module and disabled it’s REST API methods once we detected that everybody now uses new similar API methods in gateway API.
We implemented a few new protocols:
dynafleet — to consume data from Volvo Dynafleet Online Services;
xirgo — for US customers using Xirgo Technologies devices;
1m2m-lora-kpn — as an implementation sample to connect LoRaWAN devices from KPN IoT hub;
http and mqtt — generic protocols to feed flespi telematics hub with custom data, mostly targeted to IoT developers.
We have finally integrated images support into the platform including its GUI components like Toolbox. The following protocols already support this feature: wiatag, wialon-ips, wialon-retranslator, http, mqtt, and the easiest to test and try — our telegram bot.
As for our MQTT broker — we made it MQTT 5.0 compliant and are gradually integrating MQTT 5.0 features from most useful like delayed will message or remote commands to less interesting. We have already integrated the retained messages feature with extended broker REST API for remote management. Retained messages feature makes it possible to use our public MQTT broker as an internet storage engine that can even contain the entire website content — jscript, css, images, etc. — everything living inside MQTT broker as retained messages. You just need MQTT.js and correct token to connect to it from a web page and all site content will be delivered in MQTT connection.
For those using flespi services in their engineering projects — we added the possibility to restrict token access to specified IP addresses only. We also replaced “acl” and “flags” fields with a single “access” field containing a complex ACL definition structure inside. We have also put an open-source jscript library on GitHub that simplifies direct flespi usage on websites. And, as I mentioned above, we released CDN services for files storage.
In April we plan to finalize MQTT 5.0 specification support in our MQTT broker so that people developing client libraries have at least one stable service to test and use their implementations. As usual, we plan to integrate more protocols and get ready for our next step this summer — active development of our devices management platform with bulk devices management, firmware updates over the air, etc. Our top “under the hood” development includes various optimizations to our infrastructure such as more automatic actions just in case, migration from B-Tree to B+Tree for our database engine, and more features to our PVM technology.
Stay tuned for more features and opportunities!