Hi, I'm sure this has been asked before, so please just refer to me any old thread(s) where this has been discussed. In the bad old sysfs days, the value assigned to the gpio via the /sys/class/... interface was persistent. So it was easy to use in shell scripts etc. But gpioset very clearly states Note: the state of a GPIO line controlled over the character device reverts to default when the last process referencing the file descriptor representing the device file exits. This means that it's wrong to run gpioset, have it exit and expect the line to continue being driven high or low. It may happen if given pin is floating but it must be interpreted as undefined behavior. and I don't see anything in v2 of the uapi changing that. So how is one supposed to get the kernel to set and maintain a value for a gpio, without having to keep a dummy process around? Also, with the sysfs interface, another process can later change the gpio value; I don't think that's possible with a dummy process hanging onto it. So, for example, one init script we have first configures a temperature sensor with a high-temp alert threshold, and after that value has been written, sets a gpio that will make such an alert trigger a reset of the board. That gpio must of course stay set, but it cannot be set before the threshold has been programmed. Then the init script starts a simple service that periodically logs the temperature reading. A human being working on the board can temporarily disable the alert-triggered reset by just writing 0 to the gpio. The README says Additionally this project contains a set of command-line tools that should allow an easy conversion of user scripts to using the character device. but I don't see how to achieve the persistence (or ability by third-party to temporarily change the value) provided by sysfs. Rasmus