Краткая инструкция — Uno F-16 Panel

Писать скетч самостоятельно не нужно. Пакет Arduino содержит готовый скетч, схему подключения, цепочку данных и краткую инструкцию по началу работы.

Для Uno R3 / ATmega328P и SH1106, 128 × 64 пикселя. По данным объявления модуль Binghe рассчитан на 3–5 В. На Uno: SDA к A4, SCL к A5.



1. Установите библиотеку
В Arduino IDE выберите Arduino Uno и установите U8g2 от Oliver Kraus через менеджер библиотек.

2. Откройте и загрузите скетч
Распакуйте ZIP и откройте UnoF16Panel.ino в его папке. Оставьте рядом PanelProtocol.h. Выберите правильный COM-порт, проверьте скетч и загрузите его в Uno.

3. Подключить OLED и светодиоды
Создай в Live Hub показанную ниже цепочку данных и назначь её обнаруженному Uno. Так OLED и светодиоды получат значения из BMS. Дополнительное подключение тумблеров к ПК описано ниже.



Программа узнаёт панель по запросу WHOAMI. Uno отвечает CS-UNO-F16-PANEL-01

Что показывают Fuel State, IAS и шасси

Значения поступают из Falcon BMS. Программа на ПК отправляет цепочку данных по USB в Uno. OLED показывает общий запас топлива в lb и приборную скорость в kt; три зелёных светодиода отдельно отображают переднюю, левую и правую стойки шасси.

Пример для пояснения — не текущая телеметрия

fuelstate#6200;ias#305;master_caution#0;eng_fire#0;hyd#0;gear_nose#1;gear_left#1;gear_right#1;valid#1;

В примере показаны 6200 lb топлива и 305 kt. Все три индикатора шасси горят, три предупреждающих светодиода выключены. Состояние берётся из отдельных сигналов шасси, а не из положения рукоятки.

Передавайте все девять полей вместе, завершая строку переводом строки. Коэффициент 1, числа без десятичных знаков, переключаемые сигналы 0 или 1. В мастерской контроллеров выберите источники из таблицы, сохраните шаблон, подготовьте его для профиля BMS и назначьте обнаруженной панели. JSON описывает шаблон, а не полный профиль; отдельной кнопки импорта этого файла в мастерской пока нет.

fuelstate | bms.TotalFuel | Общий запас топлива · lb

ias | bms.Kias | Приборная скорость · kt

master_caution | bms.LightBits.MasterCaution | Master Caution · D10

eng_fire | bms.LightBits.ENG_FIRE | ENG FIRE · D11

hyd | bms.LightBits.HYD | HYD/OIL PRESS · D12

gear_nose | bms.LightBits3.NoseGearDown | Передняя стойка выпущена и на замке · D13

gear_left | bms.LightBits3.LeftGearDown | Левая стойка выпущена и на замке · A0

gear_right | bms.LightBits3.RightGearDown | Правая стойка выпущена и на замке · A1

valid | bms.In3D | Разрешение In3D · 0 выключает индикацию



Скетч считывает тумблеры. Для управления BMS им также нужно подключение к ПК: текущий выход Live Hub пока не обрабатывает эти тумблеры Uno как плату ввода.

valid#0 выключает все светодиоды и выводит BMS OFFLINE. Live Hub отправляет данные при изменении значений. Поэтому Uno сохраняет последнее полученное значение, которое может остаться на экране при обрыве соединения.

Подключение тумблеров доступно в отдельном архиве на сайте. Обозначения и назначение контактов приведены на схеме. Скетч выводит на OLED короткие сообщения о состоянии на немецком языке.

Скомпилировано для Arduino Uno и проверено автоматическими тестами без оборудования. Совместная проверка с настоящей панелью, OLED и запущенным BMS ещё не проводилась.

https://cockpitsuite.com/ru/bms-schalter-led-panel.html#datenkette
