Nymea 0.27 release notes

0.27 is out now!

We’ve cleaned up some of the device type interfaces and added support for cleaning robots. There is one plugin so far which supports Neato Botvac robots.

Along with those cleaning robot views, we’ve updated some other views to look more similar and simplified the ZigBee settings a bit.

Other new supported integrations are Tempo, the Nuki lock V2, a generic presence sensor thing, awnings and lights connected to Somfy Tahoma bridges, the Sonoff Dimmer, ZigBee based door/window sensors and OneWire based Temperature and humidity sensors.

The Raspberry Pi image was changed to drop X11 and use Wayland instead, resulting in slightly better performance for the touch screen. Additionally the startup procedure has been polished to not bother users with scrolling Linux kernel gibberish along the screen but instead show a nice nymea boot splash.


Note: Existing setups will continue to receive updates but they are not switched automatically over to wayland as the migration requires uninstalling a lot of X11 related packages which is too fail prone to roll out on users. If you wish to switch to the new setup, either reinstall the Raspberry Pi image or ask here in the forum and we can provide the needed steps.

The python plugin API has been extended to support pairing methods like OAuth, allow using the plugin storage and work with API keys from the api key storage and support for browsing things (like media browsers or cleaning robot maps :wink: )

A new client API has been added which allows client applications to store arbitrary settings on the nymea core, so those settings can be shared across multiple clients.

Last but not least, the nymea-networkmanager (aka the magic behind BerryLan) has gained the capability to use SDP record UUIDs to promote itself. This means client applications like nymea:app or BerryLan can now filter for Bluetooth devices supporting the wifi-setup regardless of their names. Along with that, a D-Bus based API has been added to allow opening the Bluetooth server. This is useful if you want to trigger the Bluetooth-WiFi setup from your own scripts. The BerryLan app has also been updated to make sure Bluetooth permissions are available and inform the user accordingly if that’s not the case.

Thanks to all the contributing community members!
Enjoy the release!

Full changelog:

  • nymea (0.27.0)

    • Don’t call thingRemoved() when a thing didn’t complete the setup
    • Enable logging of barcode scanner events
    • Improve adaptive logging filter
    • Add support for the plugin and api key storage to python plugins
    • Rework battery interface
    • Add a cleaning robot interface
    • Clean up PyStdoutHandler on shutdown
    • Add support CONFIG+=asan for building with address sanitizer
    • Add browsing support to python plugin API
    • Rename forgotten deviceParams in ThingDescriptor
    • Add device serial number to system api
    • Add support for storing application data on the core
    • Add parentId member to pyThingDescriptor
    • Drop lastSeenTime from presence sensor
    • Use PKGCONFIG for the mqtt include
    • Use pkgconfig for libnymea-remoteproxyclient
  • nymea-plugins (0.27.0)

    • Nuki: Add support for Nuki 2.0
    • New Plugin: Tempo
    • Update to new battery interface
    • Replace CONFIG+=selection PLUGINS+=… with WITH_PLUGINS=…
    • New plugin: Neato botvac
    • GenericThings: Add a generic presence sensor
    • somfytahoma: Fix credential encoding
    • ZigbeeGeneric: Add support for ZigBee door/window sensors
    • Telegram: Fix small cosmetic issue during setup and improve readme
    • somfytahoma: Add support for awnings and lights
    • Simulation: Add a cleaning robot simulation
    • Tasmota: Add support for the Sonoff Dimmer
    • OneWire Plugin: Add temperature and humidity sensor
    • Openweathermap: Update labels to be in line with other plugins
    • Use pkgconfig to find nymea-mqtt
  • nymea-app (1.0.304)

    • Bump minimum required nymea version to 0.20
    • Simplify ZigBee settings
    • Improve OAuth flow
    • Vietnamese translations
    • Fix parameters for thing discovery
    • Fix state selection in rules page
    • Move the Raspberry Kiosk from X11 to Wayland
    • Improve splash screen
    • Automatically use dark/light depending on OS settings
    • Improve Shutters/Awnings/Blinds control views
    • Fix building Android packages on Windows
    • Fix compile time warnings
    • Fix event params in log view
    • Update the Windows installer
    • Allow logging category control in developer tools
    • Add support for cleaning robots
    • Fix a crash in the weather view
    • Add a boot splash screen support package
  • nymea-plugins-modbus (0.24.3)

    • Wallbe: Fix discovery
  • nymea-system-plugin-systemd (0.8)

    • Rebuild against new api
  • nymea-mqtt (0.1.8)

    • Fix multi-arch packaging
  • nymea-remoteproxy (0.1.13)

    • Add pkgconfig support
  • libnymea-networkmanager (0.5.0)

    • Add the wireless service UUID to the SDP record
  • nymea-networkmanager (0.5.6)

    • Add a dbus interface to trigger the bluetooth server
    • Add option to enforce the full name instead of adding the Service
  • nymea-apikeysprovider-plugin-community (0.5)

    • Add Neato
2 Likes

Excellent work again by all those involved, I am so impressed with the number and range of changes covered in these regular sprints. I might come across as a bit of a sad case I know - but I do get quite excited waiting to see what is in each release :blush:

Well done and thank you

1 Like

I would like to attempt switching my Raspi to Wayland and would appreciate the steps to do so.

Alternatively, would it be possible to back up the user settings (including magic), re-install the raspberry image and re-apply the user settings? maybe that’s less error prone?

Ok. So first uninstall nymea-app-kiosk and lightdm

sudo apt-get remove nymea-app-kiosk nymea-app lightm

Make sure it removes those packages and does not install any other packages during this operation. It’s fine if it removes more. Important thing is that it doesn’t install any replacement. If so, explicitly add those packages to the remove instruction too until it only removes stuff.

Once done, you can drop all the X11 related packages that are no longer required with

sudo apt-get autoremove

Now you can install the wayland edition

sudo apt-get install nymea-app-kiosk-wayland

In order to get the boot splash also install that:

sudo apt-get install nymea-splashscreen

Now the setup should be mostly ready but you’ll still get the scrolling linux kernel messages during boot. You can silence them by modifying the boot parameters. Edit /boot/cmdline.txt. You’ll find a console=tty1 there. Change that to be console=tty3 and also add quiet vt.global_cursor_default=0 splash to it. In the end, the line should look something like this:

console=serial0,115200 console=tty3 quiet vt.global_cursor_default=0 splash root=PARTUUID=c321133c-02 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait

Note, it doesn’t need to be exactly the same, like ordering is not important and PARTUUID doesn’t need to be the same etc… But make sure you’ve changed console=tty1 to some other tty and it contains quiet vt.global_cursor_default=0 splash. Do not change any other parameters in there unless you know what you’re doing.

That should be it then. If you break something or get into a situation where you cannot find a way out, you can also backup/restore the configuration like described in Backup of things and scripts in the cloud

1 Like

for anyone also trying it, there is a little typo in the description above, so be sure to use:

sudo apt-get remove nymea-app-kiosk nymea-app lightdm

1 Like