If bluez saves the state on reboot it would be fine, but I'd still prefer a way to have bluetooth on automatically on first boot. Most of what I've been able to find online for how to do this doesn't seem to apply to running in snaps.
It may be there is something deeper within my image that is causing the issue too. In trying to resolve this problem I saw that bluetooth defaulting to off wasn't uncommon for server of non GUI distributions so I wanted to check if this was a simple configuration option.
I think I'm seeing other behavior that may be related, but am unsure. Much of what I saw suggested using:
sudo hciconfig hciX up
to enable the bluetooth module. This always returns:
Can't open HCI socket.: Permission denied
The snap service that utilizes the bluetooth fails to run with the message:
[error][daemon] 'hcitool clock' returned error. Make sure your bluetooth device is powered up with 'hciconfig hciX up'
Once the power on command is issued through bluetoothctl, the ds4drv service works as expected.