uConsole с диском NVMe: Upgrade Kit от HackerGadgets, установка и загрузка с SSD
Карты microSD хватает для первого входа, но когда uConsole становится рабочим инструментом (компиляция, контейнеры, большие словари, записи с SDR), ожидание карты начинает раздражать. Upgrade Kit от HackerGadgets выводит из модуля CM4/CM5 шину PCIe и размещает внутри корпуса диск M.2 NVMe. Ниже: что купить, как собрать, что настроить в EEPROM и config.txt, как перенести систему с карты и на чём люди спотыкаются.
- Что понадобится
- Сборка по шагам
- Настройки перед первой загрузкой с NVMe
- Перенос системы с карты на диск
- Известные проблемы
- Частые вопросы
Что понадобится
Комплект - это две платы от HackerGadgets. Мы продаём их по отдельности, потому что у части людей одна из них уже есть.
- Плата Adapter (Upgrade Kit) заменяет штатную плату, на которой стоит вычислительный модуль. Она выводит PCIe, а с CM5 ещё и USB 3.0; на ней есть разъём PWM-вентилятора, порт CSI для камеры и разъём батарейки RTC. Без неё диску просто некуда подключиться.
- Плата NVMe Battery Board заменяет штатный батарейный модуль. У неё слот M.2 (2230-2280), держатели на два элемента 18650 (в других вариантах 21700 или LiPo-сборка) и защита от переполюсовки элементов. Встаёт под оригинальную заднюю крышку без переделок корпуса. Шлейфы для соединения плат идут в комплекте.
- Диск M.2 NVMe размером 2230-2280. На форуме ClockworkPi дольше всех без проблем работает WD SN740 256 ГБ (CM5, PCIe gen 2, 471 МБ/с чтения, месяцы работы). Один пользователь мучился с Samsung 980, пока не поменял способ переноса системы. Выбирай экономичные диски gen 3 без радиатора.
- Вычислительный модуль: CM4 или CM5. У обоих есть PCIe x1, но USB 3.0 и PWM-вентилятор работают только с CM5.
- Рабочая система на карте: Bookworm или Trixie от Рекса. С карты ты запускаешь uConsole, настраиваешь EEPROM и копируешь систему на диск. Как записать образ на карту, описано в руководстве: Какая система для uConsole CM5 и как записать её на карту microSD (2026).


Сборка по шагам
Инструменты: маленькая крестовая отвёртка и спокойные пятнадцать минут. Перед разборкой выключи uConsole и вынь элементы питания.
- Сними заднюю крышку и вынь штатный батарейный модуль.
- Сними вычислительный модуль со штатной платы-адаптера. Он держится на двух разъёмах board-to-board, поэтому поднимай его равномерно с обеих сторон. Открути плату, на её место прикрути Adapter Board, затем прижми модуль к новым разъёмам, пока он не сядет ровно.
- Вставь диск M.2 в слот на NVMe Battery Board и закрепи винтом на стойке, соответствующей его длине.
- Соедини обе платы шлейфом PCIe из комплекта. Следи за стороной контактов: шлейф, вставленный наоборот, - самая частая причина, по которой диск «не существует». На форуме эта ошибка всплывает регулярно.
- Установи NVMe Battery Board на место батарейного модуля, вставь элементы по маркировке и закрой крышку. Если элемент вставлен наоборот, загорится предупреждающий светодиод, и ничего не нагреется.
Настройки перед первой загрузкой с NVMe
Загрузи uConsole с карты и сделай три вещи.
1. config.txt (файл /boot/firmware/config.txt). В образах Рекса в секции [pi5] уже есть dtparam=pciex1 и dtparam=pciex1_gen=3, а в секции [pi4] только dtparam=pciex1. Gen 3 по шлейфу бывает нестабилен (белый экран, зависания), форум единодушно советует опуститься до dtparam=pciex1_gen=2. Диск всё равно во много раз быстрее карты. В старых образах Kali встречалось dtparam=pciex1=off: замени на dtparam=pciex1.
2. EEPROM (CM5). sudo rpi-eeprom-update -a, перезагрузка, затем sudo rpi-eeprom-config -e и конфигурация, которую Рекс даёт для CM5 Lite, с одной дополнительной строкой: PCIE_PROBE=1.
[all]
BOOT_UART=1
POWER_OFF_ON_HALT=1
BOOT_ORDER=0xf461
PCIE_PROBE=1
SD_BOOT_MAX_RETRIES=2
SD_QUIRKS=1
BOOT_ORDER читается справа налево: SD-карта (1), NVMe (6), USB (4), f означает «заново». PCIE_PROBE=1 велит загрузчику искать диск и на плате, которая не является официальным HAT+, так это описывает документация Raspberry Pi. Для CM4 достаточно свежего загрузчика и BOOT_ORDER с цифрой 6.
3. Проверь, что диск виден. После перезагрузки ls -l /dev/nvme* должен показать /dev/nvme0n1, а lsblk - его объём. Если ничего нет, вернись к шлейфу из шага 4 сборки.
Перенос системы с карты на диск
Самый надёжный путь, подтверждённый несколькими пользователями форума ClockworkPi: скопировать рабочую систему с карты на диск утилитой SD Card Copier (меню «Стандартные»).
- Запусти SD Card Copier. Откуда: карта (mmcblk0). Куда: диск (nvme0n1). Оставь отмеченным «New Partition UUIDs».
- Старт. Копирование 7-8 ГБ системы занимает несколько минут, и утилита сразу растягивает раздел на весь диск.
- Полностью выключи uConsole (не перезагрузка), вынь карту, включи. Система стартует с NVMe.
Запись образа через Imager прямо на диск (через USB-бокс или с самой uConsole) тоже работает, но требует ручной правки config.txt на диске, и на форуме это чаще заканчивалось загрузкой «через раз». Копирование с рабочей карты обходит эти проблемы.
Известные проблемы
- Диск пропадает после сборки корпуса. Шлейф PCIe сдвинулся или вставлен наоборот. Разбери и проверь оба конца.
- Белый экран или зависания под нагрузкой. Опустись с gen 3 на gen 2 в config.txt.
- uConsole выключается при
sudo rebootвместо перезагрузки (описано для CM5 с загрузкой с NVMe). Помогает полный цикл питания. Тема на форуме связывает это с изменением поведения пинов в прошивке CM5; удобного программного исправления на сегодня нет. - Батарея. Диск и CM5 потребляют ток. HackerGadgets указывает для версии с двумя 18650 около 2,5 часа воспроизведения видео 1080p, для 21700 около 4,5 часа. Запасные элементы в рюкзаке закрывают вопрос.
- Нагрев. CM5 в закрытом корпусе не троттлит (мы проверили это в тепловом тесте), но диск gen 3 при долгой записи добавляет своё. Диск без радиатора и gen 2 в config.txt закрывают тему.
Частые вопросы
Работает ли NVMe с CM4?
Да, по PCIe gen 2. С CM4 не работает то, что требует USB 3.0 (порты на AIO V2 тогда работают как USB 2.0), а вентилятор крутится с постоянной скоростью.
Нужно ли вынимать SD-карту?
При BOOT_ORDER=0xf461 загрузчик сначала пробует карту, так что со вставленной картой он загрузится с неё. Либо вынь карту, либо поставь 0xf416, то есть NVMe перед SD.
Какой диск купить?
M.2 2230 или 2242, gen 3, с низким энергопотреблением. С форума: WD SN740 без оговорок. Диски gen 4 с радиаторами греются и ничего не дают на линии gen 2.
Что дальше
Обе платы есть у нас: плата Adapter для uConsole (Upgrade Kit) и расширение NVMe для uConsole. Если заодно переходишь с CM4, Raspberry Pi CM5 8 GB Lite даёт USB 3.0 и PWM-вентилятор на той же плате-адаптере, а AIO V2 добавляет через неё Ethernet 1 Гбит/с, RTL-SDR, GPS и LoRa. Остальные дополнения - в коллекции ClockworkPi.