Since no one did provide a step by step solution, let me help you out.
In my case, uv4l installed with a service running at boot. I wrote another service, but a quick and easy way is to edit the service installed by uv4l.
sudo nano /etc/systemd/system/uv4l_raspicam.service
Now change this:
ExecStart=/usr/bin/uv4l -f -k --sched-fifo --mem-lock --config-file=/etc/uv4l/uv4l-raspicam.conf --driver raspicam --driver-config-file=/etc/uv4l/uv4l-raspicam.conf --server-option=--editable-config-file=/etc/uv4l/uv4l-raspicam.conf
into this:
ExecStart=/usr/bin/uv4l -f -k --sched-fifo --mem-lock --config-file=/etc/uv4l/uv4l-raspicam.conf --external-driver --device-name=video0 --server-option=--editable-config-file=/etc/uv4l/uv4l-raspicam.conf
Reload the systemctl daemon:
sudo systemctl daemon-reload
Restart the service:
sudo service uv4l_raspicam restart
Check the status:
sudo service uv4l_raspicam status
Last line should state something similar to:
May 13 12:02:00 raspberrypi uv4l[7155]: <notice> [driver] Using video device /dev/video0
I hope I helped a lot of you :)