Uh, does it matter? The kernel module is responsible on creating those files, not your script. cat: can't open '/sys/class/i2c-adapter/i2c-3/3-0022/fm_rssi': No such file or directory Your script tries to read that file ^ which doesn't exist on the stock kernel (or kernels based on it)