Автозапуск скрипта при загрузке Raspbian. Работа с камерой.

Написал скрипт на Python, малинка со своим дисплеем и кнопками с которыми взаимодействует скрипт. При запуске скрипта на дисплей выводится меню и тд.
Хочу добавить скрипт в автозагрузку чтобы можно было управлять устройством без монитора только с помощью дисплея и кнопок которые установил.

Проблема в том что одна из функций программы которая запускается это работа с камерой, скрипт делает фото, и если скрипт запускается через автозапуск и я пытаюсь сделать фото скрипт виснет (не крашиться) на строке где он делает фото и сохраняет его. При обычном запуске всё работает нормально.

Пробовал реализовать автозапуск разными способами, менял права, ничего не меняется. Я перепробовал много способов, но скорее всего что-то упустил. Кто сталкивался с такой проблемой?

Самое банальное, что приходит на ум - инициализация камеры происходит после того, как начал выполняться скрипт.

Что за малинка?
Как добавлял в автозапуск?
Ну и сам скрипт бы увидеть с проблемным местом.

@ken 1. малинка Pi 3
2. Добавлял в автозапуск через crontab, через /etc/rc.local, через sudo nano /etc/xdg/lxsession/LXDE-pi/autostart, это то что я смог вспомнить потому что эти способы точно запускали скрипт.
3.

from time import sleep
 
camera = PiCamera()


def cam():
    # Запускаем предпросмотр сигнала с камеры на экране поверх всех окон
    camera.start_preview()

    # Зададим разрешение камеры — 1024 пикселя по ширине и 768 по высоте
    #camera.resolution = (640, 480)
    #camera.resolution = (1024, 720)
    #camera.resolution = (1640, 922)
    #camera.resolution = (1640, 1232)
    #camera.resolution = (1920, 1080)
    #camera.resolution = (2464, 1848)
    camera.resolution = (3280, 2464)

    #настройки камеры
    camera.sharpness = 54                 #Резкость = 0
    camera.contrast = 50                 #контрастность = 0
    camera.brightness = 49              #по умолчанию яркость = 50
    camera.saturation = 60               #насыщение = 0
    #camera.ISO = 0
    #camera.video_stabilization = False   #стабилизация видеокамеры = False
    #camera.exposure_compensation = 0     #компенсация экспозиции = 0
    #camera.exposure_mode = 'auto'        #режим экспозиции = 'авто'
    #camera.meter_mode = 'tall'        #метровый режим = 'средний average'
    #camera.awb_mode = 'auto'
    #camera.image_effect = 'none'
    #camera.color_effects = None          #цветовые эффекты = нет
    #camera.rotation = 0                  #вращение = 0
    #camera.hflip = False
    #camera.vflip = False
    #camera.crop = (0.0, 0.0, 1.0, 1.0)
    #camera.hflip = True
    #camera.vflip = True


    # Переключим баланс белого из режима авто в профиль естественного освещения
    camera.awb_mode = 'sunlight'

    # Даём камере три секунды на автофокусировку и установку баланса белого
    sleep(3)

    # Делаем снимок и сохраняем его на рабочий стол с именем image.jpg
    camera.capture('/home/pi/Рабочий стол/ANALIZ/photo/image.jpg')

    # Выключаем режим предпросмотра
    camera.stop_preview()

Участник @Bakz написал в Автозапуск скрипта при загрузке Raspbian. Работа с камерой.:

Написал скрипт на Python, малинка со своим дисплеем и кнопками с которыми взаимодействует скрипт. При запуске скрипта на дисплей выводится меню и тд.
Хочу добавить скрипт в автозагрузку чтобы можно было управлять устройством без монитора только с помощью дисплея и кнопок которые установил.

Проблема в том что одна из функций программы которая запускается это работа с камерой, скрипт делает фото, и если скрипт запускается через автозапуск и я пытаюсь сделать фото скрипт виснет (не крашиться) на строке где он делает фото и сохраняет его. При обычном запуске всё работает нормально.

Пробовал реализовать автозапуск разными способами, менял права, ничего не меняется. Я перепробовал много способов, но скорее всего что-то упустил. Кто сталкивался с такой проблемой?

Участник @Bakz написал в Автозапуск скрипта при загрузке Raspbian. Работа с камерой.:

@ken 1. малинка Pi 3
2. Добавлял в автозапуск через crontab, через /etc/rc.local, через sudo nano /etc/xdg/lxsession/LXDE-pi/autostart, это то что я смог вспомнить потому что эти способы точно запускали скрипт.
3.

from time import sleep
 
camera = PiCamera()


def cam():
    # Запускаем предпросмотр сигнала с камеры на экране поверх всех окон
    camera.start_preview()

    # Зададим разрешение камеры — 1024 пикселя по ширине и 768 по высоте
    #camera.resolution = (640, 480)
    #camera.resolution = (1024, 720)
    #camera.resolution = (1640, 922)
    #camera.resolution = (1640, 1232)
    #camera.resolution = (1920, 1080)
    #camera.resolution = (2464, 1848)
    camera.resolution = (3280, 2464)

    #настройки камеры
    camera.sharpness = 54                 #Резкость = 0
    camera.contrast = 50                 #контрастность = 0
    camera.brightness = 49              #по умолчанию яркость = 50
    camera.saturation = 60               #насыщение = 0
    #camera.ISO = 0
    #camera.video_stabilization = False   #стабилизация видеокамеры = False
    #camera.exposure_compensation = 0     #компенсация экспозиции = 0
    #camera.exposure_mode = 'auto'        #режим экспозиции = 'авто'
    #camera.meter_mode = 'tall'        #метровый режим = 'средний average'
    #camera.awb_mode = 'auto'
    #camera.image_effect = 'none'
    #camera.color_effects = None          #цветовые эффекты = нет
    #camera.rotation = 0                  #вращение = 0
    #camera.hflip = False
    #camera.vflip = False
    #camera.crop = (0.0, 0.0, 1.0, 1.0)
    #camera.hflip = True
    #camera.vflip = True


    # Переключим баланс белого из режима авто в профиль естественного освещения
    camera.awb_mode = 'sunlight'

    # Даём камере три секунды на автофокусировку и установку баланса белого
    sleep(3)

    # Делаем снимок и сохраняем его на рабочий стол с именем image.jpg
    camera.capture('/home/pi/Рабочий стол/ANALIZ/photo/image.jpg')

    # Выключаем режим предпросмотра
    camera.stop_preview()

До сих пор не решил проблему. Кто сталкивался?