A way to launch a program using SPI on startup?

So I’ve been developing a computer vision solution based on Jetson Nano for a while, and it uses the SPI interface to connect with external peripherals. Now I need the program to launch at system startup, preferrably without needing to log in. The only way to do so that I could confirm is working in itself is via creating a script and adding it as a service with systemctl: this way I could even see the console output of my program and confirmed it’s running without issues, the same way as if I ran it myself after the system boot. The only difference is that I don’t see SPI pins working. If I disable the service, reboot and run the program myself, the LEDs I connected to them for diagnostic purposes flash rapidly, indicating continuous transmission. It seems that daemons don’t have access to SPI either on Jetson devices specifically or in Linux altogether.
I also tried just using the built-in Startup Applications tool, but with this I can’t even confirm if the program is launched to begin with as diagnostic LEDs don’t flash either.
So, in layman’s terms, how do I tell the OS to start my app with 1) access to root privileges and 2) access to SPI? Again, it’s preferred that the method works without the need to log in the OS. I’ve done quite a lot of googling, but haven’t found anything regarding SPI specifically.