@alowhum I am not an expert on the rPi implementation of the settings, but I do believe the rPi extracts config data from a config file so yes, I suppose you could use the simple security option on the rPi and the nodes without having to rebuild the GW. Do note that the GW and the nodes have to agree on the password for any communication to work. And I also think the GW needs to be restarted if the config file changes.

I'm looking for the easiest way to allow users of the Candle Manager (which runs on the Raspberry Pi) to change the Simple Security password.

As mentioned above, the easiest route would be to create an Arduino gateway node that is plugged into the Raspberry Pi.

However, I'm still dreaming of keeping the whole device small and compact by directly plugging the NRF24 onto the Raspberry Pi's GPIO pins, and using the Ethernet Gateway option.

As @Anticimex mentioned above, this would currently mean that whenever the users changes the password, the entire ethernet gateway software would have to be recompiled.

I have two questions:

I want to make this possible straight form the Candle Manager. However, after a bit or wrestling the exact .configure command to use the Simple Security option still eludes me. What would this command look like?

Could there theoretically be a way to change the password without having to recompile the gateway software? Recompiling takes quite a while. It this would have to be built in, is that something worth creating a feature request for? Something like:

@alowhum technically I do not think it will be a problem to have the rPi gw read the static data from a file at runtime. I do not have good insight in the rPi port though so I don't know how much work will be needed to support that.

Right now, when a user changes the password through the interface they are indeed warned that this means they will have to re-upload code to all the nodes. All nodes would use the SIMPLE_SECURITY option.

But I was hoping that a later version might do that over the air somehow. Couldn't the nodes be updated Over The Air?

I haven't looked into that enough yet, I must admit.

Is it true that OTA only works if you flash a new bootloader onto the Arduino Nano? - Can flashing a new bootloader only be done via the ICMP headers? Or can this be done via Serial? Or is it somehow possible to do OTA from 'userspace' with a library?