Candle 2.0 (new Webthings Gateway 1.1 disk image for the Raspberry Pi)

Hey everyone

I’ve been working on a new Raspberry Pi disk image that uses the latest version of the Webthings Gateway. It’s part of my research into privacy friendly smart home design with the Candle project:

https://www.candlesmarthome.com

A direct download link to the disk image (1.2 Gigabytes):
https://candlesmarthome.com/img/Candle_2.0.img.zip

It’s essentially just Gateway 1.1 with some things bolted on top. For example, it comes with lots of new addons that are only available with that image because they weren’t being accepted into the Webthings addons list. It also comes with updates to lots of other addons (mostly because the Webthings 1.1 API has seen significant changes). All other Webthings addons are of course also available, although I dont know if any of them will have trouble with the API changes in Webthings 1.1.

There are also some limitations:

  • Tunneling service is disabled by default. In its place there are two new addons that allow for external control.

A full list of updates can be found here:

I’d love to get your feedback.

1 Like

Read the announcement and tried to find additional information on the main web page. It’s rather lite. Found it’s GITHUB repository which is a fork/clone of Webthings with local addons/features. It’s great that a project with current funding can pick up the code and continue a privacy-focused home automation system…

  1. Is there any “contract” how long funding will last for the project? Who funds development?
  2. Will the software/project remain open-source and free to end users?
  3. Is a docker image planned? I expect that due to linux integration and the extra addons this could be difficult to implement.
  4. After WebThingsIO stagnation I’ve installed Home Assistant on a spare Linux box to migrate to over a year or 3. It’s sometims difficult to use/configure, even at my technical level, but it’s very easy for known devices that don’t require manual configuration settings. Providing a simple interface and addons that just work is key.
  5. Is there a plan already in place to support MATTER/TREAD? Without this candle is a dead project. Is candle a member of the matter working group?

If a docker existed, I might actually spin an image up for evaluation. I’m out of PIs to dedicate for an evaluation.

I’ve been using WebThings since Mozilla released it, written my own X10 Mochad addon, and been very happy with it’s reliability. It mostly just works. Hope Candle continue in this vein.

  • Is there any “contract” how long funding will last for the project? Who funds development?

So far I’m relying on public funding.

  • Will the software/project remain open-source and free to end users?

Cande is just Webthings 1.1 plus some unique addons. All the source code for those addons is on Github, although not all of them have an open source license. Maybe in the future there could be a businessmodel?

  • Is a docker image planned? I expect that due to linux integration and the extra addons this could be difficult to implement.

No, sorry. The disk image is highly optimised for the Raspberry Pi, and has lots of higly integrated special features. For example, the main partition is read-only to avoid accidental damage, and it has the ability to act as a bluetooth speaker through BlueAlsa.

  • After WebThingsIO stagnation I’ve installed Home Assistant on a spare Linux box to migrate to over a year or 3. It’s sometims difficult to use/configure, even at my technical level, but it’s very easy for known devices that don’t require manual configuration settings. Providing a simple interface and addons that just work is key.

Yes, ease of use is vital. Candle’s target audience is beginners who care about privacy.

  • Is there a plan already in place to support MATTER/TREAD? Without this candle is a dead project. Is candle a member of the matter working group?

Candle is a privacy research project, not a big commercial party. The goal is
(1) to explore new ways to protect privacy
(2) to find out how privacy protections can be made easy to use.

I don’t believe the success of a smart home system only relies on how many technologies or protocols it supports. For example, we recommend specific devices to purchase in order to keep privacy 100% protected. Quality over quantity.

On that note: the Matter standard is not privacy friendly - Google is attempting to have all IoT devices be able to autonomously connect to the internet, destroying Zigbee’s barriers in the process. That said, if Webthings gains a Matter addon it will also work on Candle (since it’s just Webthings 1.1).

Thanks for your clear feedback. I think your goal to deliver a pre-configured private interface/system with value-added features is admirable. Concentrating on devices that can be used securely is key to your model.

Also hope that WebThingsIO developers & community continue to integrate new technology and protocols as they are released over time to avoid obsolesce.

I’m still really looking for some user tests. The download link has changed:

Hi @buttonmash

I’m giving Candle 2.0 a go. I’ve been having to reflash Webthings 1.0 every few months, usually starting with Zigbee adapter problems and then I suspect log rewrites or similar is corrupting the mSD card. I don’t have the tech skills to deal with that, so am interested to see if Candle is more stable.

I’ve got up and running easily enough and like the many improvements that you have made.

But…I’m getting an error with the Z-Wave adapter:

Failed to start add-on Z-Wave: The module ‘/home/pi/.webthings/addons/zwave-adapter/node_modules/@serialport/bindings/build/Release/bindings.node’ was compiled against a different Node.js version using NODE_MODULE_VERSION 72. This version of Node.js requires NODE_MODULE_VERSION 83. Please try re-compiling or re-installing the module (for instance, using npm rebuild or npm install).

Is this to do with that add-on not being ready for Webthings 1.1? Or is it an issue with Candle?

Thanks

A trick I use is to re-direct log files on my docker-based WT on Raspian to a mounted USB stick. I’ve been operating like this to reduce SD card writes successfully on the same USB stick for 2 years now.

The USB stick is mounted out of /etc/fstab using this line. PATUUID is used in case the USB device name changes for some reason…

PARTUUID=0e620ec0-01 /mnt/EdbergFS ext4 defaults,nofail 0 0

Since I use WT docker, the virtual folder line when starting docker is:

-v /mnt/EdbergFS/mozilla-iot:/home/node/.mozilla-iot \

I’ve also re-directed a couple application log files onto the USB.

Sometime this fall before I leave for winter in Florida I plan to clone and replace the SD and USB since they are 2 years old now although I’ve had no problems to date…

Thanks Eric. As I said, I don’t have the tech skills – it would take me some time (and more motivation than I currently have) to decipher and action your suggestions! I did try cloning the SD card for when it did fail, but when I tried to flash that image I kept getting a message that it was, strangely, too large – which just confirms my skillset (or lack thereof)!

Perhaps this means that WT is not for me, but there’s much that I like so I’ve been waiting to see if the next iteration fixes some of these limitations. Candle has a backup function (or maybe that is WT 1.1), so even that might be a step forward for me.

Thanks again.

Did you try the latest candel 2.0.0 RC3?

Using a USB-based disk to store logs & files that cause a lot of SD I/O can be configured for any OS or application. Even Candle would benefit from reducing excessive writing.

You mentioned corruption on your SD card. This is a way to help reduce writing should you not want to change to booting the OS from a USB disk, which is even better…

Hi @EricEdberg, the issue reported by the user is that the z-wave module is compiled with the wrong version of node.js, nothing related to log or stuff.

Yes, it is 2.0.0 RC3 that I have installed.

And yes, let’s put aside broader issues of corrupt SD cards and log files, etc. I have just now uninstalled the z wave add-on and reinstalled, same error is occurring, failure to start due to Node.js version.

could you please open an issue: https://github.com/createcandle/candle-controller and we will look to fix the z-wave addon for our candle(we didn’t use the same node version as webthings)

1 Like

Hi @bradmcs,

Sorry to hear you’ve been having problems with WebThings.

microSD cards do unfortunately wear out so you could be experiencing a hardware issue, which is a risk when running anything on a Raspberry Pi. What brand of microSD cards are you using? I have a 16GB class 10 SanDisk card which has been running WebThings for several years with no problems. You can of course configure an external SSD for your Raspberry Pi or run WebThings Gateway on alternative hardware, but that’s not quite as straightforward.

If you experience Zigbee issues again, please file an issue in the zigbee-adapter GitHub repository so we can look into it.

If you use WebThings Gateway then you at least shouldn’t get the error about the wrong version of Node :wink:

Candle gateway has downgraded node to version 12 instead of 14 everything should be fine now