Посібник з Усунення Неполадок
February 6, 2026 · View on GitHub
Цей посібник допоможе вам вирішити поширені проблеми під час роботи з навчальним курсом IoT для початківців. Проблеми організовані за категоріями для зручної навігації.
Зміст
- Проблеми з Встановленням
- Проблеми з Апаратним Забезпеченням
- Проблеми з Підключенням
- Проблеми з Датчиками та Виконавчими Механізмами
- Проблеми з Розробницьким Середовищем
- Проблеми з Продуктивністю
- Типові Повідомлення про Помилки
- Отримання Допомоги
Проблеми з Встановленням
Встановлення Python
Проблема: версія Python занадто стара
Помилка: Потрібен Python 3.6 або новіший
Рішення:
- Завантажте останню версію Python 3 з python.org
- Під час встановлення на Windows позначте "Add Python to PATH"
- Перевірте встановлення:
python3 --version
Проблема: конфлікти через кілька версій Python
Симптоми: Запускається неправильна версія Python, пакети встановлюються не в те розташування
Рішення:
- Windows: Використовуйте
py -3замістьpythonщоб явно викликати Python 3 - macOS/Linux: Використовуйте
python3замістьpython - Завжди створюйте і використовуйте віртуальні середовища для проектів
Проблема: команда pip не знайдена
Помилка: 'pip' не розпізнано як внутрішня або зовнішня команда
Рішення:
- Спробуйте
pip3замістьpip - Або використовуйте
python -m pipчиpython3 -m pip - Переконайтеся, що Python додано в PATH (переінсталюйте Python і перевірте цей пункт)
VS Code та Розширення
Проблема: розширення Pylance не працює
Симптоми: Немає IntelliSense Python, автозаповнення коду або перевірки типів
Рішення:
- Відкрийте палітру команд VS Code (
Ctrl+Shift+PабоCmd+Shift+P) - Виконайте "Python: Select Interpreter"
- Виберіть правильний інтерпретатор Python (віртуальне середовище, якщо використовується)
- Перезавантажте вікно VS Code
Проблема: VS Code не знаходить віртуальне середовище
Симптоми: Вибрано неправильний інтерпретатор Python
Рішення:
- Переконайтеся, що віртуальне середовище активоване в терміналі
- Відкрийте палітру команд і виконайте "Python: Select Interpreter"
- Оберіть інтерпретатор з папки
.venv - Перевірте, що у статусному рядку (внизу зліва) показана правильна версія Python
PlatformIO (Wio Terminal)
Проблема: не вдається встановити PlatformIO
Помилка: Різні помилки під час встановлення PlatformIO
Рішення:
- Переконайтеся, що VS Code оновлений
- Встановіть спочатку розширення C/C++
- Перезавантажте VS Code після встановлення PlatformIO
- Перевірте стабільність інтернет-з’єднання (PlatformIO завантажує великі файли)
Проблема: PlatformIO не виявляє плату
Симптоми: Не вдається завантажити код на Wio Terminal
Рішення:
- Спробуйте інший USB-кабель (деякі кабелі тільки для заряджання)
- Перевірте диспетчер пристроїв (Windows) або
ls /dev/tty*(macOS/Linux) - Встановіть або оновіть драйвери USB
- Спробуйте інший USB-порт
- Подвійно швидко сдвиньте перемикач живлення на Wio Terminal, щоб увійти в режим завантажувача
Проблема: помилки компіляції в PlatformIO
Помилка: fatal error: Arduino.h: No such file or directory
Рішення:
- Видаляйте папку
.pioу вашому проєкті - Виконайте "PlatformIO: Rebuild" в палітрі команд
- Переконайтеся, що в
platformio.iniвказано правильну конфігурацію плати:[env:seeed_wio_terminal] platform = atmelsam board = seeed_wio_terminal framework = arduino
Бібліотеки Grove
Проблема: не вдається імпортувати бібліотеку Grove на Raspberry Pi
Помилка: ModuleNotFoundError: No module named 'grove'
Рішення:
- Перевстановіть бібліотеки Grove:
cd ~ git clone https://github.com/Seeed-Studio/grove.py cd grove.py sudo pip3 install . - Якщо використовується віртуальне середовище, можливо, треба встановити глобально або скопіювати бібліотеки
- Перевірте, чи увімкнено I2C:
sudo raspi-config nonint do_i2c 0
Проблема: датчик Grove не виявляється
Помилка: IOError: [Errno 121] Remote I/O error
Рішення:
- Перевірте фізичні з’єднання (переконайтеся, що кабель Grove повністю вставлено)
- Переконайтеся, що датчик підключений до правильного порту (аналоговий, цифровий, I2C, UART)
- Запустіть
i2cdetect -y 1щоб перевірити, чи видно пристрій на I2C шині - Спробуйте інший кабель Grove
- Переконайтеся, що Grove Base Hat правильно встановлена на GPIO контакти Raspberry Pi
Проблеми з Апаратним Забезпеченням
Raspberry Pi
Проблема: Raspberry Pi не завантажується
Симптоми: Немає зображення, відсутність активності світлодіодів або райдужний екран
Рішення:
- Перевірте блок живлення: Використовуйте офіційний блок 5В 3А USB-C для Pi 4
- Проблеми з SD-карткою:
- Відформатуйте SD-карту та перевстановіть Raspberry Pi OS
- Спробуйте іншу SD-карту (використовуйте рекомендовані бренди)
- Переконайтеся, що SD-карта вставлена правильно
- Перевірте підключення HDMI: Спробуйте обидва HDMI-порти на Pi 4, використовуйте порт HDMI, який ближче до живлення
Проблема: не вдається підключитися по SSH до Raspberry Pi
Симптоми: Відмова у з’єднанні або тайм-аут
Рішення:
- Увімкніть SSH:
- Під час запису ОС на SD-карту за допомогою Raspberry Pi Imager налаштуйте SSH у додаткових опціях
- Або створіть порожній файл з ім’ям
ssh(без розширення) у розділі завантаження
- Знайдіть IP-адресу Pi:
- Перевірте пристрої, підключені до вашого маршрутизатора
- Використайте
ping raspberrypi.local(якщо працює mDNS) - Використовуйте сканери мережі, такі як
nmapабо Angry IP Scanner
- Перевірте мережу:
- Переконайтеся, що Pi знаходиться в тій же мережі, що й ваш комп’ютер
- Спробуйте підключення по Ethernet замість WiFi
- Перевірте ім'я користувача/пароль (за замовчуванням: ім’я користувача
pi, парольraspberry)
Проблема: Grove Base Hat не розпізнається
Симптоми: Датчики не працюють, помилки I2C
Рішення:
- Переконайтеся, що Base Hat встановлена правильно на всі GPIO контакти
- Перевірте на наявність зігнутих контактів на Pi або Base Hat
- Увімкніть інтерфейс I2C:
sudo raspi-config nonint do_i2c 0 sudo reboot - Перевірте роботу I2C:
i2cdetect -y 1
Проблема: Raspberry Pi працює повільно
Симптоми: Затримки інтерфейсу, повільна відповідь
Рішення:
- Перевірте швидкість SD-карти (використовуйте Class 10 або вище, або SSD через USB)
- Звільніть місце на диску:
df -hдля перевірки, видаліть непотрібні файли - Зменшіть обсяг пам’яті GPU в
raspi-config, якщо не використовуєте активно камеру або дисплей - Закрийте непотрібні програми
- Подумайте про оновлення до Pi 4 з більшою пам’яттю, якщо у вас Pi 3 або старший
Wio Terminal
Проблема: екран Wio Terminal залишається порожнім
Симптоми: Немає зображення після завантаження коду
Рішення:
- Перевірте, чи ініціалізується дисплей у коді (бібліотека TFT_eSPI)
- Оновіть прошивку Wio Terminal за Seeed Wiki
- Додайте код ініціалізації дисплея:
#include <TFT_eSPI.h> TFT_eSPI tft; tft.begin(); tft.fillScreen(TFT_BLACK); - Спробуйте завантажити приклад з PlatformIO для тесту апаратури
Проблема: WiFi не працює на Wio Terminal
Симптоми: Не вдається підключитися до WiFi, помилки мережі
Рішення:
- Оновіть прошивку WiFi: Дотримуйтеся інструкції оновлення WiFi прошивки для Wio Terminal
- Перевірте дані WiFi: Переконайтеся, що SSID та пароль введені правильно
- Діапазон WiFi: Wio Terminal підтримує тільки 2.4GHz WiFi (не 5GHz)
- Сигнал: Перемістіть пристрій ближче до маршрутизатора
- Налаштування маршрутизатора: Деякі корпоративні/WPA-Enterprise мережі можуть не працювати
Проблема: Wio Terminal не розпізнається комп’ютером
Симптоми: USB-пристрій не виявляється
Рішення:
- Спробуйте інший USB-кабель: Використовуйте кабель для передачі даних, а не тільки для заряджання
- Увійдіть у режим завантажувача: Швидко двічі сдвиньте перемикач живлення вниз
- Синій світлодіод повинен блимати, пристрій з’явиться як "Arduino" у диспетчері пристроїв
- Встановіть драйвери (Windows):
- Завантажте та встановіть Seeed USB driver
- Спробуйте інший USB-порт: Уникайте USB-хабів, підключайте напряму
- Оновіть драйвери USB системи
Проблема: датчики на Wio Terminal не працюють
Симптоми: Grove датчики не зчитують дані
Рішення:
- Перевірте з’єднання кабелів Grove
- Переконайтеся, що використовуєте правильний порт Grove (лівий чи правий)
- Підключіть правильні бібліотеки для датчика
- Перевірте живлення датчика
- Протестуйте датчик прикладним кодом із бібліотеки
Віртуальний Пристрій (CounterFit)
Проблема: додаток CounterFit не запускається
Помилка: Різні помилки Python при запуску CounterFit
Рішення:
- Переконайтеся, що віртуальне середовище активоване
- Встановіть/перевстановіть CounterFit:
pip install CounterFit - Перевірте, що порт 5000 не зайнятий:
- Windows:
netstat -ano | findstr :5000 - macOS/Linux:
lsof -i :5000
- Windows:
- Завершіть процес, який використовує порт 5000, або використайте інший порт:
counterfit --port 5001
Проблема: не вдається підключитися до CounterFit з коду
Помилка: Відмова у з’єднанні або тайм-аут
Рішення:
- Переконайтеся, що CounterFit працює: Відкрийте браузер за адресою
http://127.0.0.1:5000 - Перевірте, що URL підключення у коді збігається з адресою CounterFit
- Переконайтеся, що брандмауер не блокує з’єднання
- Спробуйте перезапустити і додаток CounterFit, і ваш код
Проблема: датчики не відображаються у CounterFit
Симптоми: Створені датчики не показуються у інтерфейсі CounterFit
Рішення:
- Створіть датчики у інтерфейсі CounterFit до запуску коду
- Оновіть сторінку браузера
- Перевірте, що тип датчика відповідає тому, що очікує код
- Очистіть кеш браузера
Проблеми з Підключенням
WiFi Підключення
Проблема: пристрій не може підключитися до WiFi
Симптоми: Тайм-аут з’єднання, помилка аутентифікації
Рішення:
- Перевірте SSID та пароль: Переконайтеся, що облікові дані правильні
- Діапазон WiFi: Більшість IoT-пристроїв підтримують лише 2.4GHz (не 5GHz)
- Налаштування маршрутизатора:
- Вимкніть ізоляцію AP, якщо вона ввімкнена
- Використовуйте безпеку WPA2-PSK (уникайте WPA3, WEP або відкритих мереж)
- Переконайтеся, що DHCP увімкнено
- Приховані мережі: Якщо SSID прихований, можливо потрібно явно налаштувати його
- Сила сигналу: Перемістіть пристрій ближче до маршрутизатора
- Перешкоди: Інші пристрої, мікрохвильові печі або стіни можуть заважати
Проблема: WiFi з’єднання часто обривається
Симптоми: Переривчасте підключення
Рішення:
- Перевірте стабільність маршрутизатора і спробуйте його перезавантажити
- Оновіть прошивку пристрою
- Використовуйте статичну IP-адресу замість DHCP
- Зменште відстань до маршрутизатора або додайте WiFi-репітер
- Перевірте наявність перешкод від інших пристроїв
- Переконайтеся в належній потужності живлення (особливо для Raspberry Pi)
Хмарні Сервіси
Проблема: не вдається підключитися до Azure IoT Hub
Помилка: Помилка аутентифікації, відмова у з’єднанні
Рішення:
- Перевірте облікові дані:
- Перевірте правильність рядка підключення
- Переконайтеся, що в рядку підключення немає зайвих пробілів або переносів рядка
- Перевірте реєстрацію пристрою: Пристрій повинен бути зареєстрований в IoT Hub
- Брандмауер/проксі: Переконайтеся, що дозвіл є на вихідний MQTT (порт 8883) або HTTPS (порт 443)
- Регіон IoT Hub: Переконайтеся, що IoT Hub працює і не в іншому регіоні, що викликає затримку
- Ліміти квот: Перевірте, чи не перевищено обмеження безкоштовного рівня
- Перевірте підключення:
az iot hub device-identity show-connection-string --hub-name YourIoTHub --device-id YourDevice
Проблема: Azure Functions не запускаються
Симптоми: Повідомлення надіслані, але функція не виконується
Рішення:
- Перевірте, що Function App працює (не зупинений)
- Перевірте рядок підключення у налаштуваннях Function App
- Перегляньте логи функції у порталі Azure
- Переконайтеся, що сумісний з Event Hub кінцевий пункт налаштований правильно
- Перевірте, що формат повідомлень відповідає очікуванням функції
- Перевірте план служби Function App (споживання чи виділений)
MQTT
Проблема: Помилка підключення MQTT
Помилка: Підключення відхилено, невдала автентифікація
Рішення:
- Адреса брокера: Переконайтесь, що URL/IP брокера правильні
- Порт: Перевірте номер порту (1883 для незашифрованого, 8883 для TLS)
- Аутентифікація: Перевірте ім’я користувача/пароль, якщо потрібно
- TLS/SSL: Переконайтесь, що сертифікати дійсні та довірені
- Брандмауер: Перевірте, що порт не заблокований
- Тест з MQTT клієнтом: Використайте MQTT Explorer або mosquitto_pub/sub для тесту
Проблема: MQTT повідомлення не отримуються
Симптоми: Повідомлення опубліковані, але не отримуються підписниками
Рішення:
- Імена тем: Переконайтесь, що тема підписника точно збігається з темою видавця
- Рівень QoS: Спробуйте QoS 1 або 2 замість 0
- Шаблони: Перевірте правильність використання шаблонів тем (
+для одного рівня,#для багаторівневих) - Утримувані повідомлення: Видавник може встановити прапорець утримування, щоб зберегти останнє повідомлення
- Час підключення: Переконайтесь, що підписник підключається до публікації повідомлень
Проблеми з датчиками та виконавчими пристроями
Grove Датчики
Проблема: Датчик повертає неправильні значення
Симптоми: Значення 0, -1 або абсурдні
Рішення:
- Перевірте з’єднання: Переконайтесь, що датчик правильно підключений
- Правильний порт: Перевірте тип порту датчика:
- Аналогові датчики → Аналогові порти (A0, A2, A4)
- Цифрові датчики → Цифрові порти (D5, D16, D18 тощо)
- I2C датчики → I2C порти
- Калібрування: Деякі датчики потребують калібрування (вологості ґрунту, світла)
- Цикл живлення: Від’єднайте та під’єднайте датчик знову
- Технічна документація датчика: Перевірте специфікації та вимоги датчика
Проблема: Ємнісний датчик вологості ґрунту завжди показує вологий
Симптоми: Датчик показує високу вологість навіть у сухому ґрунті
Рішення:
- Потрібне калібрування: Ґрунтові датчики потребують калібрування:
- Зчитування у повітрі (суха база)
- Зчитування у воді (мокра база)
- Відображення значень між цими точками
- Перевірте покриття датчика: Вологість датчиків може погіршитись, якщо покриття пошкоджено
- Розміщення: Переконайтесь, що датчик повністю вставлений у ґрунт
Проблема: Неправильні значення температури/вологості
Симптоми: DHT11/DHT22 показує неправильну температуру або вологість
Рішення:
- Розміщення датчика: Уникайте прямого сонячного світла, джерел тепла або потоку повітря
- Час прогріву: Дайте датчику 2 секунди після увімкнення перед зчитуванням
- Частота зчитування: DHT потребують мінімум 2 секунди між зчитуваннями
- Перевірка на конденсацію: Може впливати на точність
- Якість датчика: DHT11 менш точний, ніж DHT22
Камера
Проблема: Камера не виявляється на Raspberry Pi
Помилка: mmal: mmal_vc_component_create: failed to create component 'vc.ril.camera'
Рішення:
- Активуйте інтерфейс камери:
Перейдіть у Interface Options → Camera → Enablesudo raspi-config - Перевірте шлейф: Переконайтесь, що кабель камери правильно вставлений
- Синя сторона на Pi Zero дивиться на USB-порти
- Синя сторона на Pi 4 дивиться від USB-портів
- Оновіть прошивку:
sudo apt update sudo apt full-upgrade sudo reboot - Перевірте камеру:
raspistill -o test.jpg
Проблема: Зображення з камери поганої якості
Симптоми: Розмиті, темні або вигорілі зображення
Рішення:
- Фокус: Зніміть захисну плівку з лінзи, відрегулюйте фокус, якщо можливо
- Освітлення: Забезпечте достатнє освітлення
- Налаштування камери: Регулюйте експозицію, ISO, баланс білого в коді
- Стабільність: Тримайте камеру нерухомо, використовуйте штатив при потребі
- Роздільність: Не перевищуйте максимальну роздільність камери
Мікрофон і Динамік
Проблема: Відсутній звук на вході/виході
Симптоми: Мікрофон не записує, динамік не відтворює звук
Рішення:
- Перевірте з’єднання: Переконайтесь, що аудіопристрої правильно підключені
- Тест обладнання:
- Динамік:
speaker-test -t wav -c 2 - Мікрофон:
arecord -lдля списку,arecord test.wavдля запису
- Динамік:
- Налаштування гучності: Перевірте та відрегулюйте гучність:
alsamixer - Виберіть аудіопристрій: Вкажіть правильне аудіопристрій у коді
- Проблеми з драйверами: Оновіть ALSA або перевстановіть аудіодрайвери
Проблема: ReSpeaker hat не працює
Симптоми: Аудіопристрій не виявляється
Рішення:
- Встановіть драйвери:
git clone https://github.com/HinTak/seeed-voicecard cd seeed-voicecard sudo ./install.sh sudo reboot - Перевірте встановлення:
arecord -lмає показати ReSpeaker - Оновіть прошивку: Деякі версії Pi OS потребують оновлення драйверів
- Перевірте підключення: Переконайтесь, що hat правильно підключений до GPIO пінів
Проблеми середовища розробки
VS Code
Проблема: Терминал не активує віртуальне середовище автоматично
Симптоми: Терминал відкривається, але venv не активується
Рішення:
- Встановіть інтерпретатор Python: Palette команд → "Python: Select Interpreter" → Виберіть venv
- Перезапустіть VS Code після вибору інтерпретатора
- Перевірте настройки: В
settings.jsonдодайте:"python.terminal.activateEnvironment": true
Проблема: Код не запускається на пристрої
Симптоми: Код виконується, але нічого не відбувається на пристрої
Рішення:
- Переконайтесь, що код збережений (перевірте крапку на вкладці файлу)
- Перевірте, який Python використовується:
which pythonабоwhere python - Для Wio Terminal: Завантажте код через PlatformIO (натисніть кнопку завантаження)
- Для Raspberry Pi: Підключіться по SSH та виконайте код там
- Перевірте вікно виводу на наявність помилок
Проблема: IntelliSense не показує функції бібліотеки
Симптоми: Відсутнє автозаповнення для імпортованих модулів
Рішення:
- Переконайтесь, що бібліотека встановлена в поточному середовищі
- Перезавантажте вікно VS Code
- Перевірте, що обраний правильний інтерпретатор Python
- Встановіть типові підстановки (type stubs), якщо є:
pip install types-<library-name>
Віртуальні середовища Python
Проблема: Не вдається створити віртуальне середовище
Помилка: The virtual environment was not created successfully
Рішення:
- Встановіть модуль venv:
- Ubuntu/Debian:
sudo apt install python3-venv - macOS: Має бути включено у Python
- Windows: Перевстановіть Python з усіма компонентами
- Ubuntu/Debian:
- Перевірте встановлення Python: Переконайтесь, що Python встановлений коректно
- Використовуйте повний шлях: Спробуйте
python3 -m venv .venvз явним викликом python3
Проблема: Пакети встановлюються в неправильне місце
Симптоми: Помилка імпорту після встановлення пакету
Рішення:
- Переконайтесь, що venv активовано: Запрошення командного рядка має показувати
(.venv) - Перевірте розташування pip:
which pipповинен вказувати на.venv/bin/pip - Перевстановіть у venv: Активуйте venv, потім виконайте
pip install <package> - Не використовуйте sudo з pip у віртуальному середовищі
Проблема: Віртуальне середовище не портативне
Симптоми: Venv не працює після перенесення або на іншому комп’ютері
Рішення:
- Не переміщуйте venv: Видаліть та створіть заново у новому розташуванні
- Використовуйте requirements.txt:
pip freeze > requirements.txt pip install -r requirements.txt - Створіть venv заново:
python3 -m venv .venv source .venv/bin/activate # або activate.bat у Windows pip install -r requirements.txt
Залежності
Проблема: Не вдається встановити пакет
Помилка: Різні помилки pip під час встановлення
Рішення:
- Оновіть pip:
pip install --upgrade pip - Встановіть інструменти збірки:
- Ubuntu/Debian:
sudo apt install build-essential python3-dev - macOS:
xcode-select --install - Windows: Встановіть Visual Studio Build Tools
- Ubuntu/Debian:
- Перевірте підключення до Інтернету
- Спробуйте індекс пакетів:
pip install --index-url https://pypi.org/simple/ <package> - Встановіть конкретну версію:
pip install <package>==<version>
Проблема: Конфлікти залежностей
Помилка: ERROR: pip's dependency resolver does not currently take into account all the packages that are installed
Рішення:
- Використовуйте свіже віртуальне середовище для кожного проекту
- Оновіть пакети:
pip install --upgrade <package> - Перевірте залежності: Використайте
pip checkдля пошуку конфліктів - Встановлюйте сумісні версії: Вказуйте діапазони версій у requirements.txt
Проблеми з продуктивністю
Проблема: Код працює повільно
Симптоми: Затримки, таймаути, не відгукується
Рішення:
- Зменшіть частоту зчитування датчиків: Не зчитуйте їх занадто часто
- Оптимізуйте цикли: Уникайте активного очікування, використовуйте sleep() або затримки
- Проблеми з пам’яттю:
- Закрийте непотрібні програми
- Звільніть місце на диску
- Моніторинг за допомогою
topабоhtopна Pi
- Швидкість SD-карти: Використовуйте швидшу SD-карту або SSD для Raspberry Pi
- Затримки мережі: Використовуйте асинхронні операції для мережевих викликів
Проблема: Помилки нестачі пам’яті
Помилка: MemoryError або зависання системи
Рішення:
- Для Raspberry Pi:
- Закрийте непотрібні програми
- Збільште swap-space
- Використовуйте легшою ОС (Lite версію)
- Оновіть RAM (Pi 4 має варіанти 2/4/8ГБ)
- Для Wio Terminal:
- Зменште розміри буферів
- Використовуйте менші зображення
- Оптимізуйте роботу зі рядками
- Перевірте витоки пам’яті (невивільнена пам’ять)
Проблема: Втрата або пошкодження даних
Симптоми: Відсутні повідомлення, пошкоджені файли
Рішення:
- Проблеми з SD-картою:
- Використовуйте якісні SD-карти (уникати дешевих/фальшивих)
- Регулярно робіть резервні копії
- Виконуйте чисте завершення роботи (не відключайте живлення раптово)
- Переповнення буфера: Збільшіть розміри буферів у коді
- Надійність мережі: Реалізуйте логіку повторних спроб та обробку помилок
- Якість обслуговування: Використовуйте MQTT QoS 1 або 2 для важливих повідомлень
Типові повідомлення про помилки
ModuleNotFoundError: No module named 'X'
Причина: Пакет не встановлено або віртуальне середовище не активоване
Рішення:
pip install X
Спочатку переконайтесь, що віртуальне середовище активовано.
Permission denied на Linux/macOS
Причина: Потрібні підвищені права або проблема з правами файлів
Рішення:
- Для системних операцій: Використовуйте
sudo - Для pip: НЕ використовуйте sudo з venv, спочатку активуйте venv
- Для послідовного порту: Додайте користувача до групи dialout:
sudo usermod -a -G dialout $USER, потім вийдіть/увійдіть знову
OSError: [Errno 98] Address already in use
Причина: Порт вже використовується іншим процесом
Рішення:
- Знайдіть процес, який використовує порт:
lsof -i :<port>абоnetstat -ano | findstr :<port> - Завершіть процес або використайте інший порт у вашому коді
SSL: CERTIFICATE_VERIFY_FAILED
Причина: Помилка перевірки SSL-сертифікату
Рішення:
- Оновіть сертифікати:
pip install --upgrade certifi - Переконайтесь, що системний час правильний:
date - Лише для розробки (не для продакшена): Відключіть перевірку в коді
IndentationError: unexpected indent
Причина: Помилки відступів у Python (змішування табуляцій та пробілів)
Рішення:
- Використовуйте послідовні відступи (4 пробіли — стандарт Python)
- Налаштуйте редактор на використання пробілів замість табуляції
- У VS Code встановіть
"editor.insertSpaces": trueта"editor.tabSize": 4
UnicodeDecodeError або UnicodeEncodeError
Причина: Проблеми кодування символів
Рішення:
# При читанні файлів
with open('file.txt', 'r', encoding='utf-8') as f:
content = f.read()
# При записі файлів
with open('file.txt', 'w', encoding='utf-8') as f:
f.write(content)
Отримання допомоги
Якщо ви спробували ці кроки вирішення проблем і у вас все ще є проблеми:
1. Перевірте наявні ресурси
- Документація: Перегляньте README та інструкції до уроків
- Посібники з обладнання: Перевірте hardware.md для інформації про обладнання
- Вікі Seeed Studio: Seeed Studio Wiki для компонентів Grove
2. Пошук схожих проблем
- GitHub Issues: Шукайте існуючі проблеми
- Stack Overflow: Шукайте за текстом помилок
- Форуми пристроїв: Перевірте форуми Raspberry Pi або Arduino
3. Створіть проблему на GitHub
Якщо не можете знайти рішення:
- Перейдіть на GitHub Issues
- Натисніть "New Issue"
- Зазначте:
- Чіткий опис проблеми
- Кроки для відтворення
- Повний текст повідомлень про помилки
- Версії апаратного та програмного забезпечення
- Те, що ви вже спробували
- Знімки екранів, якщо потрібно
4. Приєднуйтесь до спільноти
- Discord: Microsoft Foundry Discord
- Microsoft Learn: Microsoft Learn IoT
5. Надавайте якісні звіти про баги
Якісний звіт про баг включає:
- Оточення: ОС, версія Python, використовуване обладнання
- Кроки відтворення: Точні кроки, що викликають проблему
- Очікувана поведінка: Що має відбуватися
- Фактична поведінка: Що відбувається насправді
- Повідомлення про помилки: Повний текст помилки, а не скріншоти
- Код: Мінімальний приклад коду, що відтворює проблему
Поради для запобігання
Загальні найкращі практики
- Робіть резервні копії: Регулярно створюйте резервні копії робочих SD-карт/коду
- Документуйте зміни: Фіксуйте в коментарях, що працює
- Контроль версій: Використовуйте git для відслідковування змін у коді
- Тестуйте поступово: Перевіряйте невеликі зміни перед їх поєднанням
- Читайте повідомлення про помилки: Вони часто точно вказують, що не так
- Оновлюйте регулярно: Підтримуйте програмне забезпечення/прошивку в актуальному стані
- Використовуйте якісні компоненти: Уникайте дешевих кабелів/блоків живлення
- Стабільне живлення: Використовуйте відповідне джерело живлення (особливо для Pi)
Робочий процес розробки
- Починайте просто: Починайте з робочого прикладного коду
- Одна зміна за раз: Так легше знайти, що призводить до помилки
- Тестуйте часто: Виявляйте проблеми на ранніх етапах
- Тримайте порядок: Організовуйте файли та код логічно
- Коментуйте код: Майбутній ви буде вдячний
Цей посібник із усунення несправностей підтримується спільнотою. Якщо ви знайдете рішення проблеми, яка тут не наведена, будь ласка, розгляньте можливість внеску, щоб допомогти іншим!
Відмова від відповідальності: Цей документ було перекладено за допомогою сервісу автоматичного перекладу Co-op Translator. Хоча ми прагнемо до точності, просимо враховувати, що автоматичні переклади можуть містити помилки або неточності. Оригінальний документ на його рідній мові слід вважати авторитетним джерелом. Для критичної інформації рекомендується професійний людський переклад. Ми не несемо відповідальності за будь-які непорозуміння чи неправильні тлумачення, що виникли внаслідок використання цього перекладу.