Модуль FN-Link 6221C-PUC встречается на платах одноплатных компьютеров, ТВ-приставок и промышленных контроллеров как готовое решение беспроводной связи, и именно с его идентификацией начинается большинство поисков — по маркировке на экранирующей крышке нужно понять, какой чип внутри и какой драйвер потребуется. Внутри этого модуля размещён чип Realtek RTL8821CS: связка Wi-Fi 802.11ac (однодиапазонная либо двухдиапазонная, в зависимости от исполнения) и Bluetooth, обмен с хост-процессором идёт через интерфейс SDIO для Wi-Fi и UART для Bluetooth.
Ниже разберём, как подтвердить идентичность модуля, какие напряжения и линии ему нужны, как поднимать его в Linux на одноплатниках и какие проблемы встречаются чаще всего. Материал ориентирован на тех, кто интегрирует модуль в собственное устройство или ремонтирует плату, где он уже установлен.
Что такое 6221C-PUC и где он применяется
FN-Link — производитель готовых радиомодулей, которые OEM-производители ставят на свои платы, чтобы не проектировать ВЧ-тракт самостоятельно. Маркировка вида «6221C-PUC» — это внутреннее обозначение производителя: серия 6221 указывает на базовый чип Realtek RTL8821C, а суффиксы описывают вариант исполнения (тип антенного вывода, напряжение, интерфейсы).
Типичные места, где вы можете встретить этот модуль:
- 📺 ТВ-приставки и смарт-медиаплееры на Android;
- 🖥️ одноплатные компьютеры и dev-платы на процессорах Amlogic, Rockchip, Allwinner;
- 🏭 промышленные контроллеры и терминалы с Linux;
- 📡 IoT-шлюзы и устройства умного дома с проводным хостом.
Точные характеристики конкретного исполнения (диапазоны, мощность передатчика, тип антенного разъёма) зависят от ревизии. Если нужны гарантированные значения, запрашивайте даташит именно на суффикс PUC у поставщика — параметры разных суффиксов одной серии могут отличаться.
Идентификация: как убедиться, что это именно RTL8821CS
Прежде чем искать драйвер, подтвердите чип. Самый надёжный способ — посмотреть, как модуль определяется на шине SDIO со стороны хоста. На Linux-системе с подключённым модулем выполните:
ls /sys/bus/sdio/devices/
cat /sys/bus/sdio/devices/*/uevent
В выводе ищите идентификаторы вида SDIO_ID=024C:C821 — это vendor/device ID Realtek для семейства RTL8821C. Если модуль не виден на шине вообще, проблема аппаратная: питание, линия WL_REG_ON (enable) или тактирование SDIO.
Визуально модуль представляет собой небольшую плату под металлическим экраном с маркировкой FN-LINK и кодом модели. Не путайте его с похожими модулями серий 6221A/6222B — у них другие чипы и, соответственно, другие драйверы.
Сфотографируйте маркировку на экране модуля до демонтажа: суффикс модели понадобится при заказе замены, а после перепайки он может стать нечитаемым.
Электрическое подключение: питание и сигнальные линии
Модуль требует как минимум два питания: основное VBAT 3.3 В для радиочасти и питание ввода-вывода VDDIO (обычно 1.8 В или 3.3 В — должно совпадать с логическими уровнями хост-процессора, иначе обмен по SDIO работать не будет). Точную распиновку берите из даташита на конкретный суффикс: посадочные места у модулей этой серии похожи, но нумерация контактов может различаться.
Минимальный набор сигналов для работы:
- ⚡ VBAT и VDDIO — питание ядра и логики;
- 📶 SDIO: CLK, CMD, DAT0–DAT3 — интерфейс Wi-Fi;
- 🔵 UART: TX, RX (иногда с RTS/CTS) — интерфейс Bluetooth;
- 🔘 WL_REG_ON и BT_REG_ON — линии включения Wi-Fi и Bluetooth;
- 🕐 32 кГц clock — внешний сигнал сна, если предусмотрен схемой хоста.
⚠️ Внимание: подача VDDIO с неверным уровнем — частая причина «мёртвого» модуля. Если хост работает с логикой 1.8 В, а модуль запитан на 3.3 В по VDDIO (или наоборот), SDIO-обмен либо не стартует, либо модуль выходит из строя. Сверяйте уровни по схеме исходного устройства.
Антенный вывод зависит от исполнения: встречаются варианты с разъёмом под внешнюю антенну и с выводом на контактную площадку. При ремонте не заменяйте штатную антенну произвольным куском провода — согласование ВЧ-тракта рассчитано под конкретную антенну.
Настройка в Linux: драйвер и device tree
Для RTL8821CS существует out-of-tree драйвер, который чаще всего включают в сборки для одноплатников (Armbian и подобные). Если модуль определился на шине SDIO, проверьте, загружен ли модуль ядра:
lsmod | grep 8821
dmesg | grep -i rtl
Если драйвера нет в вашем образе, его обычно собирают из исходников под конкретную версию ядра. Учтите: при обновлении ядра модуль придётся пересобирать, если не используется DKMS.
На уровне device tree для SoC нужно корректно описать SDIO-контроллер и линии включения. Типичные ошибки на этом этапе:
- 🔧 не поднят GPIO для
WL_REG_ON— модуль не выходит из выключенного состояния; - 🔧 неверная частота или режим SDIO-контроллера — карта не инициализируется;
- 🔧 отсутствует описание питания (regulator) — модуль обесточен.
Для Bluetooth потребуется загрузка прошивки через UART утилитой семейства rtk_hciattach (или аналогом из BSP производителя SoC), после чего интерфейс hci0 появляется в системе. Конкретная процедура зависит от сборки Linux — сверяйтесь с BSP вашей платы.
☑️ Проверка модуля 6221C-PUC после установки
Типичные проблемы и диагностика
Разберём симптомы, с которыми чаще всего сталкиваются при работе с этим модулем.
| Симптом | Вероятная причина | Что проверить |
|---|---|---|
| Модуль не виден на SDIO | Нет питания или не поднят WL_REG_ON | Напряжения на VBAT/VDDIO, уровень enable-линии |
| wlan0 есть, но сети не сканируются | Не загружена прошивка (firmware) | Наличие файлов fw в /lib/firmware, ошибки в dmesg |
| Wi-Fi нестабилен, обрывы | Питание проседает под нагрузкой TX | Просадки VBAT осциллографом, качество антенны |
| Bluetooth не появляется | Не загружена fw через UART | Работу hciattach, скорость UART, линию BT_REG_ON |
| Модуль греется и отваливается | Неверный VDDIO или повреждение | Уровни питания, целостность монтажа |
Отдельно отметим нестабильность Wi-Fi под нагрузкой: передатчик в момент передачи потребляет заметный импульсный ток, и слабый стабилизатор 3.3 В или длинные тонкие дорожки питания дают просадку, после которой чип перезапускается. Если модуль «отваливается» именно при активной передаче данных, первым делом смотрите питание, а не драйвер.
Замена модуля при ремонте
Если модуль неисправен (например, после пробоя по питанию или механического повреждения), его меняют целиком — ремонт внутри экрана не практикуется. При замене критично совпадение суффикса: модуль 6221C-PUC следует заменять на тот же суффикс, так как распиновка и требования к питанию у других исполнений могут отличаться.
Пайка ведётся феном с защитой соседних компонентов; температура и профиль — стандартные для безсвинцовой пайки, но конкретные режимы зависят от вашего оборудования и платы. После монтажа промойте флюс и проверьте отсутствие короткого замыкания по питанию до первого включения.
⚠️ Внимание: при перегреве модуля феном возможен отслоение внутренних слоёв его платы и повреждение чипа. Грейте равномерно, не держите фен в одной точке, и дайте модулю остыть естественно — не охлаждайте принудительно.
После замены повторите программную проверку: видимость на SDIO, загрузку драйвера, сканирование сетей и поднятие Bluetooth. Если новый модуль ведёт себя так же, как старый — проблема в обвязке платы, а не в модуле.
Почему нельзя ставить модуль другого суффикса «похожей» серии
Суффикс кодирует вариант распиновки, уровни VDDIO, тип антенного вывода и иногда расположение линий enable. Модуль с другим суффиксом может физически встать на те же площадки, но линии питания или управления окажутся на других контактах — в лучшем случае устройство просто не заработает, в худшем — сгорит модуль или хост-процессор.
Ограничения и что стоит учесть
RTL8821CS — это решение начального уровня: одна пространственная линия, без Wi-Fi 6. Для задач вроде стриминга, IoT и управления его достаточно, но для высокоскоростных применений стоит смотреть на более новые чипы. Также учитывайте, что поддержка в mainline-ядре Linux ограничена — рассчитывайте на out-of-tree драйвер и закреплённую версию ядра.
При проектировании собственного устройства на этом модуле запросите у поставщика полный даташит и референс-схему: это снимет вопросы по распиновке, согласованию антенны и требованиям к питанию, которые невозможно надёжно определить «по аналогии».
FN-Link 6221C-PUC — это модуль на Realtek RTL8821CS (Wi-Fi по SDIO + Bluetooth по UART). Ключ к успешному запуску: правильные уровни VBAT/VDDIO, поднятые линии enable и драйвер 8821cs под ваше ядро.
Частые вопросы
Какой чип внутри модуля FN-Link 6221C-PUC?
Модули серии 6221C построены на чипе Realtek RTL8821CS — это комбинированный контроллер Wi-Fi 802.11ac и Bluetooth. Подтвердить можно по SDIO ID 024C:C821 в системе.
Какой драйвер нужен для 6221C-PUC в Linux?
Используется out-of-tree драйвер rtl8821cs. Во многих сборках для одноплатников (например, Armbian) он уже включён. Если нет — драйвер собирается из исходников под вашу версию ядра, желательно через DKMS, чтобы он пересобирался при обновлениях.
Модуль виден на SDIO, но Wi-Fi не работает. Что проверить?
Сначала смотрите dmesg: чаще всего не находится файл прошивки в /lib/firmware или драйвер не загружен. Далее — линия WL_REG_ON и стабильность питания 3.3 В под нагрузкой передатчика.
Можно ли заменить 6221C-PUC модулем с другим суффиксом?
Не рекомендуется. Суффикс определяет распиновку, уровни питания и тип антенного вывода. Заменяйте модулем с идентичной маркировкой либо сверяйте даташиты обоих исполнений по каждому контакту.
Bluetooth не появляется, хотя Wi-Fi работает. В чём причина?
Bluetooth в этом модуле работает через отдельный UART и требует загрузки прошивки утилитой семейства rtk_hciattach, а также поднятой линии BT_REG_ON. Проверьте, что UART настроен на нужную скорость и процедура загрузки fw выполняется при старте системы.