diff --git a/README.md b/README.md
index affa7c9effc9db25f292005f7162ed55b5723bfd..deba50d4a584042115ccb5c1d3ff108408af75e0 100644
--- a/README.md
+++ b/README.md
@@ -2,21 +2,25 @@
 
 ## Building
 
-### Userspace
 ```sh
-mkdir build && cd build
-cmake ..
 make
 ```
 
-The compiled binaries can be found in following directories:
-- `build/daemon/daemon` (for the daemon binary)
-- `build/clients/*` (for the client binaries)
+## Installing
 
 ### Kernel module
 ```sh
 cd kernel
-make
+sudo insmod kmod.ko
+```
+
+### Userspace
+```sh
+make install
+
+# Start systemd services (kernel module must be loaded before services can be started)
+sudo systemctl enable sibyl-*.service
+sudo systemctl start sibyl-*.service
 ```
 
 ## Communication
@@ -47,3 +51,5 @@ The data that is written to the character device is a pointer to a `data_t` stru
 
 When `data_t` is copied, it checkes if the pointer to the measurements array is not `NULL` and the count of measurements in `data_t` is not zero.
 If both applies, it also copies the data from the array pointer to the kernel space.
+
+### GPIO interface