Обновление прошивки панелей Flexem / Chitic
Модели FE6100, FE6070W, ZT8604, ZT8602 на базе процессорного модуля FE-A33-CORE-V1.0
Внимание! Данная инструкция создана для решения проблемы преждевременного выхода из строя процессорных плат панелей Flexem/Chitic, возникшей у одного из пользователей при переходе на среду разработки Flexem Studio версии 3.0 и выше. Ниже подробно объяснены причины, приведены доказательства на основе анализа реальных проектов и дана пошаговая процедура обновления, позволяющая пофиксить несовместимость старых процессорных плат с новым ПО.
🔍 Почему возникла проблема с отказом панелей
Суть проблемы: Начиная с версии 3.0, среда разработки Flexem Studio ориентирована на новое аппаратное обеспечение — процессорные платы на базе чипов Sigmastar (архитектура ARM Cortex-A53). Эти платы имеют иной контроллер eMMC и требуют соответствующих драйверов. Однако, из-за отсутствия явных предупреждений, некоторые пользователи начали использовать новую студию на старом, проверенном оборудовании — платах с процессором Allwinner A33.
Это привело к эффекту «размножения записи» (write amplification). Драйверы старой процессорной платы не могли корректно обрабатывать новые команды записи, и каждая операция логирования, превращалась в многократную (в 100–1000 раз) физическую перезапись ячеек eMMC. Ресурс памяти (3000 циклов P/E) исчерпывался за 1–2 года вместо расчётных десятилетий. Важно подчеркнуть: это не было следствием небрежности пользователя или плохого проекта, а результатом несоответствия версий ПО и аппаратной платформы.
📊 Анализ ресурса eMMC: почему панели должны были жить долго
Для объективной оценки мы проанализировали типовой рабочий проект клиента (название не разглашается). В проекте использовался интенсивный сбор данных с периодом 0.2–1 секунды. Параметры настроек этого проекта представлены ниже.
Настройки проекта: 13 каналов циклического сбора данных с периодами 0,2 с и 1 с, запись архивов во внутреннюю память HMI.
Расчёт суточной нагрузки:
| Тип каналов | Количество | Объём за сутки (МБ) |
|---|---|---|
| С периодом 0,2 с | 5 | 5 × 18,96 = 94,8 МБ |
| С периодом 1 с | 8 | 7 × 3,79 + 1 × 3,14 ≈ 29,7 МБ |
| Итого архив трендов | ~124,5 МБ | |
| С учётом событий и логов | ~130 МБ/сутки |
Используемый чип памяти: KLM4G1FETE-B041 (eMMC 4 ГБ, MLC, ресурс 3000 циклов P/E). Рассчитаем его теоретический срок службы:
- Общий ресурс записи (TBW): 4 ГБ × 3000 = 12 000 ГБ (~12 ТБ).
- Срок службы при равномерной нагрузке: 12 000 ГБ / 0,130 ГБ/день ≈ 92 307 дней.
- В годах: 92 307 / 365 ≈ 253 года.
💾 Решение: специальная прошивка для старых процессорных плат FE-A33-CORE-V1.0
Совместно с инженерами Chitic и Flexem была проанализирована проблема и найдено решение. Производитель предоставил специальную версию прошивки (Boot 2501, Kernel 2011, Rootfs 1607), которая содержит исправленные драйверы файловой системы и контроллера eMMC. Эта прошивка, будучи установленной на старые платы Allwinner A33, устраняет эффект размножения записи и делает их полностью совместимыми с Flexem Studio 3.0 и выше.
Важное уточнение: Новые платы, которые сейчас поставляются производителем, могут быть основаны как на новом процессоре Sigmastar, так и на старом Allwinner A33, но с предустановленной исправленной прошивкой. Внешне они неотличимы, но версия системного ПО (Boot, Kernel) гарантирует их корректную работу.
📝 Инструкция по обновлению прошивки
4.1 Подготовка оборудования и ПО
- USB-кабель для передачи данных (Mini-USB). Обычные зарядные кабели не подходят! Кабель должен уверенно работать с внешними жёсткими дисками.
- Преобразователь USB‑RS232 (TTL) с подключением к COM3 панели (распиновка: 7-RX, 8-TX, 5-GND).
- Компьютер с ОС Windows (рекомендуется Windows 10/11, 64‑разрядная).
- Программное обеспечение:
- Терминальная программа (PuTTY, TeraTerm) с поддержкой периодической отправки.
- Утилита прошивки PhoenixUSBPro v4.0.0 (или новее) от Allwinner. Драйверы находятся в папке
Drivers. - Файл прошивки
*.img, предоставленный производителем (например,FE6070WEPRO_uart2_tina.dev.20250115_release.img).
4.2 Вход в режим загрузчика (BOOTME) через COM-порт
- Обесточьте панель (отключите питание).
- Подключите преобразователь USB‑RS232 к COM3 панели (7-RX → 3-TX, 8-TX → 2-RX, 5-GND → 5-GND).
- Запустите терминал, настройте порт: скорость 115200, 8 бит, 1 стоп-бит, без чётности.
- В поле ввода напишите
BOOTME(заглавными). Включите автоматическую отправку с интервалом 20 мс. - Включите питание панели. Через несколько секунд в терминале появятся строки:
U-Boot 2011.09-rc1 ... Allwinner Technology
key_press
0x00000042 - Немедленно закройте терминал и отключите COM-кабель от панели. Питание панели не выключайте!
4.3 Прошивка через USB
- Подключите USB-кабель для передачи данных к панели и к компьютеру (желательно в порт USB 2.0).
- Откройте Диспетчер устройств. Устройство должно определиться как «Allwinner USB FEL Device» без ошибок. Если появляется ошибка (Код 10) — перезагрузите компьютер и повторите шаги 4.2–4.3.
- Запустите PhoenixUSBPro от имени администратора. Нажмите кнопку «Image» и выберите ваш файл прошивки.
- В левой части окна должно появиться подключённое устройство (зелёный индикатор). Нажмите «Start» (или «Прошить»).
- Дождитесь появления зелёной отметки об успешном завершении. После этого можно отключить USB-кабель и выключить питание панели.
4.4 Проверка результата
- Включите панель. Зайдите в меню «Information» или получите HMI Infos через Flexem Studio.
- Сравните версии системных компонентов:
- BOOT Version — должен стать равным 2501 (или новее).
- Kernel Version — 2011 (или новее).
- Rootfs Version — 1607 (или новее).
- Счётчики износа eMMC (FDS, FCS, FGUI, Floader) сохранят свои предыдущие значения — это нормально, они отражают реальную историю работы.
💡 Рекомендация: используйте внешнюю SD-карту для архивов
Даже с исправленной прошивкой мы настоятельно рекомендуем перенаправить запись архивов, логов и трендов на внешнюю карту памяти. Это не только разгружает встроенную eMMC, но и является хорошим стилем программирования, повышающим надёжность системы.
Преимущества:
- Продление ресурса eMMC: всё, что можно записывать на карту, записывается на неё.
- Простота замены: если карта выйдет из строя, вы замените её за минуту, а не всю плату.
- Удобство анализа: файлы в формате CSV можно открыть в любом табличном редакторе (Excel, LibreOffice) без специального ПО.
Как настроить в Flexem Studio:
- Вставьте SD-карту (до 32 ГБ, отформатированную в FAT32) в панель.
- В проекте откройте свойства архива (Data Sampling, Alarm and Event).
- В поле «Путь хранения» выберите SD Card (обычно обозначается как
\SDCardили\Mmc). - При необходимости укажите подкаталог (например,
LOGS). - Включите опцию «Save CSV File» для сохранения в открытом формате.
Для моделей FE6100 и FE6070W используется слот для полноразмерных SD-карт. Рекомендуем применять карты серии High Endurance или Industrial, рассчитанные на интенсивную циклическую запись.
🙏 Благодарность производителям
Хочу выразить искреннюю благодарность инженерам и руководству компаний Chitic (中自) и Flexem за оперативное реагирование на возникшую проблему, конструктивный диалог и предоставление специальной версии прошивки для старых процессорных плат. Благодаря их профессионализму и готовности к сотрудничеству удалось не только выявить корень проблемы (write amplification при использовании новой студии на старом железе), но и разработать эффективное решение, позволяющее продлить жизнь уже эксплуатируемого оборудования. Отдельное спасибо за предоставленные новые платы взамен вышедших из строя — это подтверждает ответственность производителя за качество своей продукции.