Rhasspy raspberry pi satellite startup script

I am quite new to rhasspy and not a very proficient linux user.
I managed to setup a raspberry pi satellite with rhasspy, a bluetooth connection to a speaker and squeezelite.

I can start all with the following script:

sleep 10
/usr/bin/rhasspy --profile en &
sleep 10
/usr/bin/bluetoothctl connect 04:52:C7:A9:1C:89 &
sleep 10
/home/pi/squeezelite/squeezelite -o default -n experimental &

This works as intended. But I couldn’t make it work at all if I try to run it automatically at startup, using either, cron, rc.local, even as systemd service.
Probably this is related to the environment and the user under the script is run at startup.
So, more of a linux problem than a rhasspy one.
But I think this is quite an frequently encountered usage scenario and maybe someone else solved this already.