Home About Meetings FOSS

March 9 2021 Zigbee, Raspberry Pi Pico, VNC, Chrome sync, MariaDB authentication

Posted on March 16, 2021
( 8 minute read )

Brian finally managed to sort out John’s audio by clarifying that in PulseAudio the settings in the Playback and Recording tabs should be 100% and any volume adjustments made in the Output and Input tabs.

He had bought a Sonoff ZBBridge which allows you to connect to wi-fi and ZigBee to try out a radiator thermostat which uses Zigbee. He had tried to flash it with Tasmota because he needed the wi-fi to set it up but that didn’t work even after he took the special characters out of his passwords. The idea is to put thermostats in his house in the UK and get communications from them to Home Assistant.

He mentioned that, from Firefox 85, supercookies that spy on other cookies are isolated from other cookies.

Bernard updated us on his hedgehog surveillance; he had bought an infra-red wildlife camera from the RSPB and he showed some of the footage; he had had to adapt the food box so that there were sharp turns in it which a hedgehog could negotiate but not a cat.

He had also been trying things on a Raspberry Pi Pico; he had installed the Thonny IDE and downloaded the MicroPython interpreter in order to run a temperature program.

The Pico has eight state machines allowing assembler programming with two registers. These do not consume any CPU cycles and he demonstrated using two state machines, one to turn on and the other to turn off, an LED. The advantage of these state machines is that they can manage obscure input/output formats.

He is hoping to use them to control the motors on the telescope at the astronomy centre and also to get feedback from the observatory. Raspberry Pi Picos are very new but one person has already used the pins to transfer 8-bit words to create a waveform generator.

The other thing he has been exploring is SSH tunnelling about which he shared a presentation. The problem is that the Raspberry Pi at the observatory is behind a firewall while the server is remote. The MQTT service on the server listens on port 1883 for communications from the Raspberry Pi.

However, the server needs to be able to communicate with the Raspberry Pi. This is done by creating another tunnel from the Raspberry Pi to which the server can connect.

Once set up, he then has to set up a systemctl service which will start each tunnel on boot. For security reasons, the tunnel is owned by a user rather than by root and the service is set to restart on failure to enable ‘continuous’ running.

In the end he decided to locate the MQTT server on the Raspberry Pi which entailed re-configuring the earlier setup.

In answer to a later question he clarified that he uses Raspberry Pi OS.

During the presentation he had used source and someone asked him why he used it. Afterwards he recommended What’s the difference between executing a Bash script vs sourcing it?.

David noted that the problem with the NVIDIA Optimus which Mike had raised on the mailing list prior to the meeting was addressed on the Arch wiki.

Brian raised an issue with the Raspberry Pi 4 which works best on the 5GHz network but NetworkManager prefers to use whatever is the stronger signal which is often 2.4GHz. The solution is to configure wpa_supplicant to prefer 5GHz. John said that he done this by creating separate SSIDs for each channel in his router and allocating one channel to each SSID.

David said that he had again had to deputise for BCB to get their web-streaming up again. To avoid future problems he had been trying to configure a Raspberry Pi with Tasmota so that a smartplug would boot the Raspberry Pi with Ubuntu MATE arm64 for the Raspberry Pi and launch a VNC desktop with RTL-SDR (Software Defined Radio) and PulseAudio; he is using the noVNC HTML client to serve it through a web browser.

The Raspberry Pi uses Real VNC which is all mediated through a cloud server and only works well with Real VNC. David had been trying TigerVNC but had given up on it and is going to try TightVNC. Performance should be the same between two different VNC servers but he has not been able to make it work headless.

[After the meeting Bernard emailed to say:

I use the native Raspberry Pi OS, and run it headless. I SSH to the Pi, type in

vncserver -Authentication VncAuth :1

then I can VNC to it.]

This command, as explained on the Real VNC website, relies on the fact that the Raspberry Pi uses Real VNC.

Brian mentioned that from 15 March 2021 Google will no longer be giving sync-API keys to developers to use in other browsers; in order to use sync, people will have to use Chrome or chromium.

Darren raised the latest divergence between MariaDB and MySQL, this time over authentication and John said that he was investigating this with a view to doing a presentation on it. Broadly speaking there are now about seven different ways of authenticating a user on MariaDB; three involve storing passwords in MariaDB; the others involve relying on the fact that the person has already used a password to gain access to the system on which MariaDB is located. So users of Unix based systems can use the fact that they have already had to put in a password to gain access to the system to use MariaDB without putting in a further password; similarly, users whose access is authenticated via a PAM or other authentication system can use MariaDB without putting in a further password.

Brian noted that