Співпроцесор виходів плати працює неправильно
Що пише ArduPilot:
- PreArm: IOMCU is unhealthy
Плати типу Pixhawk і Cube мають другий процесор, IOMCU, який керує виходами MAIN і читає приймач та кнопку безпеки. ArduPilot виявив, що з ним негаразд: прошивка не збігається, обмін із ним зривався, він сам перезапустився, або хибним було більше ніж приблизно 1 зі 128 читань стану. Тому, чим він керує, довіряти не можна, і армування заборонено.
Що робити: найімовірніше спершу
IOMCU перезапустився або втратив зв'язок після запуску; несправність пам'ятається до наступного запуску.
ПеревіртеЧи з'явилося воно після під'єднання серво чи інших навантажень або після просідання живлення?
ВиправтеВимкніть і ввімкніть живлення польотного контролера. Якщо повідомлення повертається — перевірте живлення 5 В і все, що його навантажує.
Щойно завантажено нову прошивку, а в IOMCU ще стара.
ВиправтеВимкніть і ввімкніть живлення й хвилину не чіпайте плату: під час запуску ArduPilot порівнює прошивку IOMCU зі своєю й переписує її, якщо вони відрізняються.
IOMCU або його зв'язок з основним процесором пошкоджено.
ВиправтеЯкщо вимкнення живлення й нове завантаження прошивки не допомагають, плату треба ремонтувати. Не літайте на ній.
Параметри, на які варто глянути
| Параметр | Що це |
|---|---|
BRD_IO_ENABLE | Enable IO co-processor |
BRD_IO_DSHOT | Load DShot FW on IO |
Де це зробити:Аналізатор прошивки
Код, який це надсилає
PreArm: IOMCU is unhealthy
libraries/AP_Arming/AP_Arming.cpp AP_Arming::servo_checks() · Відкрити в ArduPilot Copter-4.7.1