Я хотел создать сервер Flask, который получает данные из приложения android, а затем отправляет данные через последовательный порт на arduino, подключенный через USB. Тем не менее, я не могу получить доступ к COM-порту, к которому подключен Arduino.
from flask import Flask
from flask_restful import Api, Resource, reqparse
import serial
# Initialize serial streams
serCam = serial.Serial('COM3', baudrate=9600, timeout=1)
if not serCam.isOpen():
serCam.open()
app = Flask(__name__)
api = Api(app)
## Here there are flask requests...
if __name__ == "__main__":
app.run(debug=True)
И вот ошибка: «serial.serialutil.SerialException: не удалось открыть порт« COM3 »: PermissionError (13,« Доступ запрещен., Нет, 5) »
Я проверил, что я пытаюсь подключиться к правильному порту, используя терминал Arduino и используя тот же последовательный код в другом скрипте. Я не забыл закрыть любые другие последовательные соединения. Я также запустил сценарий python с правами администратора, так как читал, что на windows привилегии COM-порта иногда блокируются для обычных пользователей на windows, но он все равно не работает, так как я считаю, что Flask запускает подпроцесс, который больше не имеет прав администратора.
Так есть ли способ предоставить COM-порт доступ к приложению flask без предоставления всех привилегий root?