I’ve merged a number of large developments and other changes into the emoncms core and associated modules master branches today. This is available now for testing for a period of time before these are made available via a full stable release. If you can help by testing the latest master branches that would be much appreciated!
Missing modules and other strange user interface issues?? If you have recently updated and have some modules on the stable branch and others on master you will likely see issues with the visual appearance of emoncms. To fix either switch all modules the master or stable using the new emoncms component manager.
This first post will give an overview of the changes, I will then follow up with a second post on how to test these developments and associated troubleshooting.
Im excited to release this work as it has been a long time in development and testing on my own system. It’s also part of a longer term effort, one that is still ongoing and really in its early stages to improve emoncms theming, css and javascript implementation. Both the new component manager interface (released two weeks ago now) and the new my account page use vue.js for what I think is a much tidier javascript implementation. The colour scheme implementation below condenses the previous implementation down from multiple css files with a fair bit of duplication down to a single file with only the colour scheme itself abstracted. The inspiration to use vue.js is thanks to @emrys and the light sidebar colour scheme thanks to @Adminde !
Menu system v3
This is a substantial refactoring of the menu system as well as introduction of an improved 3rd level menu and a minimised sidebar option. Here’s an example screenshot showing the new graph module sidebar:
Admin 3rd level sidebar:
Feed list with minimised sidebar:
New My Account page and selectable theme colour schemes
Selected theme colour schemes are saved to the users browser local storage and need to be set on each browser/device.
Top bar colour scheme is also reflected in on the login page:
A light sidebar theme can also be selected, Inspiration from earlier work by @Adminde
The new my account page is largely implemented using vue.js as is the admin component manager, which is a tidier way of implementing these kinds of interfaces. The old list.js library has been removed alongside other related house keeping.
Removal of depreciated PHPFiwa and Histogram feed engines and associated visualisations
This update includes the removal of depreciated feed engines PHPFiwa and Histogram. These were replaced by the PHPFina feed engine (with averaging and histogram functionality available on the fly via the graph module instead).
As feed creation has been disabled or not included as standard on emonSD systems for over 5 years, I dont foresee this change being an issue for most users. However if you do have a install that still uses these feed engines and wish to update, you will need to covert any remaining PHPFiwa feeds over to PHPFina. There is a script to help with this process available in the emoncms usefulscripts repository (see GitHub - emoncms/usefulscripts: Some useful scripts for administering Emoncms accounts). I will post a more detailed guide in a follow up post below.
If you do have PHPFiwa feeds, you should see a notice printed alongside the feed engine on your feeds page:
Associated visualisations such as timestoredaily, histgraph, threshold and orderthreshold have also been removed.
emoncms_mqtt multi user MQTT support
Multi-user emoncms_mqtt service support can now be enabled from settings.ini, where data is posted in mqtt messages of format:
basetopic/userid/nodeid
The single user default is:
basetopic/nodeid
Multi user mode is enabled from settings.ini by adding the following setting under the mqtt section:
multiuser = true