Инструменты пользователя

Инструменты сайта


JetHub D1

Краткое описание

Контроллер JetHome JetHub D1, предназначен для построения систем домашней автоматизации и мониторинга: опрос датчиков, использование в качестве устройства сбора и передачи данных, выполнение функциий ПЛК в системах «умного дома», непосредственное управление нагрузкой. JetHome JetHub D1 может быть использован в качестве центрального контроллера в «умном доме» совместно с беспроводными (Wi-Fi, ZigBee) и проводными (RS-485) устройствами других производителей. Исполнение в корпусе на DIN-рейку позволяет удобно разместить контроллер в электрощитке дома.

Общие характеристики

  • Четырехядерный процессор Amlogic A113X (ARM Cortex-A53) с рабочей частотой до 1,4 ГГц;
  • Оперативная память 512 МБайт или 1 ГБайт DDR3;
  • Энергонезависимая память eMMC flash 8 ГБайт, 16 ГБайт или 32ГБайт.

Варианты комплектации:

  • 512 МБайт RAM / 8 ГБайт eMMC;
  • 1 ГБайт RAM / 16 ГБайт eMMC.
  • 1 ГБайт RAM / 32 ГБайт eMMC.

Коммуникации

  • Интегрированный двухдиапазонный (2,4 ГГц и 5 ГГц) модуль беспроводной связи WiFi/Bluetooth AMPAK AP6255 (для версии контроллеров с 8ГБ и 16ГБ eMMC) или AMPAK 6256 (для версии контроллеров с 32ГБ eMMC). Поддерживает стандарты WiFi IEEE 802.11a/b/g/n/ac, а также Bluetooth 4.2 или Bluetooth 5.0 (для версии контроллеров с 32ГБ eMMC);
  • Ethernet IEEE 802.3 10/100 Мбит/с;
  • Модуль беспроводной связи ZigBee TI CC2538 + CC2592 или TI CC2652P1 с выходной мощностью до 20 дБм и поддержкой стандарта ZigBee 3.0.

Интерфейсы

  • 1 x USB 2.0 high-speed;
  • 1 X 1-Wire;
  • 2 x RS-485;
  • 4 x дискретных входа «сухой контакт»;
  • 3 х релейных выхода.

Питание

Питание контроллера может осуществляется от источника постоянного тока напряжением от 9 до 56 В. Потребляемая мощность самого контроллера не более 5Вт (без учета внешних потребителей, подключенных к порту USB и клемме выходного напряжения 5В).

Предусмотрена возможность питать контроллер через разъем Ethernet с использованием технологии Passive PoE с номинальным напряжением до 48В. Питание передаётся по неиспользуемым парам кабеля Ethernet: по паре 4-5 (синий, бело-синий) и по паре 7-8 (коричневый, бело-коричневый). Полярность подключения не имеет значения. Гальваническая развязка цепей питания в контроллере отсутствует.

Для питания контроллера рекомендуется применять стабилизированный источник постоянного тока с номинальным напряжением от 12В до 48В и мощностью не менее 10Вт.

Во время прошивки контроллер должен быть запитан от внешнего USB-порта. Данный вариант питания предназначен только для режима прошивки, штатная работа контроллера при подаче питания через USB порт невозможна и может привести к выходу контроллера из строя. При питании от USB будут недоступны порты RS485.

Контроллер может питать внешние маломощные устройства (датчики) с напряжением питания 5В. Выход 5В выведен на клемму контроллера. Максимальный ток, отдаваемый на внешнюю нагрузку - 0,5А.

Размеры и масса

  • Габаритные размеры корпуса: 130 x 75 x 57 мм. Ширина корпуса 75мм, что составляет около 4,3 стандартных модулей для DIN-рейки (17,5мм);
  • Возможность крепления корпуса к DIN-рейке 35мм;
  • Масса: 180 г.

Условия эксплуатации

  • Температура окружающей среды: 0..+40 С;
  • Относительная влажность воздуха до 80% без конденсации влаги;
  • Закрытые взрывобезопасные помещения без агрессивных паров и газов.

Программное обеспечение

Операционная система JetHome Armbian с возможностью установки большого количества дополнительных пакетов из репозитария Ubuntu 20.04, а также других сторонних приложений. Возможно установить такие популярные системы для домашней автоматизации как Home Assistant, openHAB и др.

Последнюю прошивку JetHome Armbian можно скачать по адресу http://update.jethome.ru/armbian/ (см. п. «Прошивка контроллера»). Для контроллера JetHub D1 необходим вариант прошивки Armbian с суффиксом «j100»

Также для контроллера доступны образы операционной системы Home Assistant Operating System (HassOS): http://wiki.jethome.ru/hassos

Контроллер не предназначен для выполнения высоконагруженных задач в режиме «24/7», например, обработки видео.

Меры безопасности

  • Во время эксплуатации и технического обслуживания контроллера следует соблюдать требования ГОСТ 12.3.019-80, «Правил эксплуатации электроустановок потребителей» и «Правил охраны труда при эксплуатации электроустановок потребителей».
  • Любые подключения к прибору и работы по его техническому обслуживанию следует производить только при отключенном питании контроллера и подключенных к нему исполнительных механизмов.
  • Физический доступ к контроллеру при монтаже и обслуживании должен быть разрешен только квалифицированному обслуживающему персоналу.
  • Не допускается попадание влаги на контакты выходных соединителей и внутренние элементы контроллера.
  • Контроллер запрещено использовать при наличии в атмосфере кислот, щелочей, масел и иных агрессивных веществ.
  • Контроллер не предназначен для использования на объектах, потенциально представляющих опасность для жизни и здоровья окружающих.
  • Не допускается подключать прибор к локальной сети Ethernet с выходом в сеть Intеrnet без обеспечения надежных средств межсетевой защиты.

Монтаж

Контроллер может быть установлен в шкафу электрооборудования или другом месте, в котором должна быть обеспечена защита контроллера от попадания влаги, грязи и посторонних предметов, а также отсутствие вибрации. Для лучшего охлаждения внутренних элементов контроллера корпус контроллера необходимо устанавливать в вертикальном положении.

Для установки контроллера следует:

  • Убедиться в наличии свободного пространства для подключения контроллера и прокладки проводов;
  • Надежно закрепить контроллер на DIN-рейке или на вертикальной поверхности с помощью винтов.

Для демонтажа контроллера с DIN-рейки следует:

  • В проушину защелки вставить острие отвертки.
  • Отжать защелку вниз.
  • Отвести контроллер от DIN-рейки.

Рекомендации по подключению

Для обеспечения надежности электрических соединений рекомендуется использовать медные многожильные кабели. Концы кабелей следует зачистить, потом залудить их или использовать кабельные наконечники. Жилы кабелей следует зачищать так, чтобы их оголенные концы после подключения к контроллеру не выступали за пределы клеммника.

Общие требования к линиям соединений:

  • во время прокладки кабелей следует выделить линии связи, соединяющие контроллер с датчиками или другими устройствами, в самостоятельные трассы, располагая их отдельно от силовых кабелей, а также от кабелей, создающих высокочастотные и импульсные помехи;
  • для защиты входов контроллера от влияния электромагнитных помех линии связи контроллера следует экранировать. В качестве экранов могут быть использованы специальные кабели с экранирующими оплетками;
  • в линии питания контроллера рекомендуется устанавливать фильтры сетевых помех;
  • в случае управления силовым оборудованием рекомендуется устанавливать искрогасящие фильтры на линии коммутации данного оборудования.

Конструкция

Контроллер выпускается в конструктивном исполнении для крепления на DIN-рейке (35 мм) или на стене.

Внешний вид и элементы контроллера:

На верхней стороне контроллера расположены:

  • 1. Разъем Ethernet (RJ45);
  • 2. Разъем 1-Wire;
  • 3. Терминатор линии порта RS485-1;
  • 4. Клеммы порта RS485-1;
  • 5. Клеммы порта RS485-2;
  • 6. Терминатор линии порта RS485-2;
  • 7. Разъем USB;

На лицевой стороне контроллера расположены элементы индикации и управления:

  • 8. Двухцветный пользовательский светодиод (STAT);
  • 9. Светодиод индикации наличия питания (PWR);
  • 10. Пользовательская кнопка;
  • 11. Внутренняя кнопка переключения режима загрузки (BOOT);

На нижней стороне контроллера расположены:

  • 12. Клеммы подключения источника питания;
  • 13. Клеммы реле 1;
  • 14. Клеммы реле 2;
  • 15. Клеммы реле 3;
  • 16. Клемма дискретного входа 1;
  • 17. Клемма дискретного входа 2;
  • 18. Клемма дискретного входа 3;
  • 19. Клемма дискретного входа 4;
  • 20. Клемма общего контакта (GND);
  • 21. Клемма выхода +5В. Может использоваться для питания внешних устройств (датчиков) с током потребления не более 0,5А;
  • 22. Разъем для подключения внешней антенны беспроводного модуля связи Zigbee.

Дискретные входы

Контроллер JetHome JetHub D1 имеет 4 дискретных входа для подключения «сухих» контактов с замыканием входа на общий провод питания контроллера (GND).

Максимальная частота переключений состояния дискретного входа 400Гц.

GPIO процессора Amlogic A113X, используемые для дискретных входов в контроллере JetHome JetHub D1:

Дискретный вход Вывод процессора
1 GPIOA_20
2 GPIOA_19
3 GPIOA_18
4 GPIOA_17

Дискретный вход может находиться в одном из двух состояний:

Состояние Логический уровень
Вход разомкнут (не подключен) 0
Вход замкнут на общий провод (GND) 1

ВНИМАНИЕ! Дискретные входы не предназначены для подачи на них напряжения питания и могут выйти из строя при напряжении на них более 12В. Соблюдайте аккуратность во время монтажных работ.

Чтение состояния дискретного входа из Linux

Номера GPIO в JetHome Armbian Linux, используемые для дискретных входов в контроллере JetHome JetHub D1:

Дискретный вход Номер GPIO в Linux Номер в gpiolib
1 472 46
2 471 45
3 470 44
4 469 43

Пример инициализации и чтения «Дискретного входа 1» в JetHome Armbian Linux:

Инициализация GPIO «Дискретного входа 1» (по-умолчанию в JetHome Armbian выводы GPIO конфигурируются при загрузке системы и дополнительной настройки не требуется):

# cd /sys/class/gpio
# echo 472 > export
# echo in > gpio472/direction

Чтение состояния «Дискретного входа 1»:

# cat gpio472/value

Будет выведено «0» если вход разомкнут и «1» если вход замкнут. Чтение состояние других дискретных входов производится аналогичным образом.

Релейные выходы

Контроллер JetHome JetHub D1 имеет 3 независимых релейных выхода с типом контактов «1А» (на замыкание). Максимальный коммутируемый переменный ток для резистивных нагрузок составляет 5A при напряжении до 250В. Механический ресурс реле - 10000000 переключений.

GPIO процессора Amlogic A113X, используемые для релейных выходов в контроллере JetHome JetHub D1:

Номер реле Вывод микропроцессора
1 GPIOA_4
2 GPIOA_3
3 GPIOA_2

Управление реле из Linux

Номера GPIO в JetHome Armbian Linux, используемые для управления реле:

Номер реле Номер GPIO в Linux Номер в gpiolib
1 456 30
2 455 29
3 454 28

Пример инициализации GPIO и управления «Реле 1» для контроллера JetHome JetHub D1 (по-умолчанию в JetHome Armbian выводы GPIO конфигурируются при загрузке системы и дополнительной настройки не требуется).

Инициализация GPIO «Реле 1»:

# cd /sys/class/gpio
# echo 456 > export
# echo out > gpio456/direction

Включение «Реле 1»:

# echo 1 > gpio456/value

Выключение «Реле 1»:

# echo 0 > gpio456/value

Управление другими реле производится аналогичным образом.

Ethernet

Контроллер JetHome JetHub D1 имеет один порт Ethernet 10/100 Мбит/с, в качестве контроллера физического уровня Ethernet используется микросхема IC-Plus IP10GR, поддерживающая стандарты IEEE 802.3/802.3u. Контроллер физического уровня Ethernet установлен на процессорном модуле A113, на периферийной плате установлен согласующий трансформатор Ethernet и внешний разъем RJ45 с индикацией подключения и активности сети Ethernet. Для подключения к процессорному модулю A113 используются следующие выводы разъема расширения модуля (см. Описание разъема расширения процессорного модуля A113):

Вывод разъема расширения Назначение
5 ETH_TXN
6 ETH_TXP
7 ETH_RXN
8 ETH_RXP
9 ETH_LED3
10 ETH_LED0

USB

В контроллере JetHome JetHub D1 предусмотрен один внешний порт USB 2.0 для подключения периферийных устройств.

Внешний USB-порт контроллера может работать в двух режимах:

  • Основной режим работы (USB-хост). В данном режиме внешний USB-порт подключен к встроенному в контроллер USB-хабу, к которому также подключены порты RS485.
  • Режим прошивки контроллера, когда внешний USB-порт подключается непосредственно к выводам процессора минуя USB-хаб. Данный режим используется для прошивки контроллера с помощью утилиты Amlogic Burning Tool. ВНИМАНИЕ! В данном режиме порты RS485 контроллера будут недоступны.

Режим работы внешнего USB-порта устанавливается во время включения контроллера и зависит от какого источника был запитан контроллер. При питании контроллера от внешней клеммы питания или при питании контроллера по Ethernet (использование технологии passive PoE) устанавливается основной режим работы USB-порта. При питании контроллера от USB, устанавливается режим прошивки контроллера.

Максимальный ток, потребляемый периферийным устройством, подключенным к внешнему USB-порту контроллера, не должен превышать 0,5А. Для защиты контроллера от превышения потребляемого внешним устройством тока в цепи питания USB установлен самовосстанавливающийся предохранитель, ограничивающий ток в цепи питания USB на уровне 0,5А.

По причине ограничения тока в цепи питанию USB на уровне 0,5А не рекомендуется питать контроллер от внешнего USB-порта кроме как для его прошивки.

1-Wire

Начиная с ревизии 1.5 контроллера для подключения шины 1-Wire используется 3-контактная клемма с шагом 3.5мм. Назначение выводов клеммы 1-Wire:

Номер контакта Назначение Описание
1 +5V Выход питания +5В (для питания внешних устройств 1-Wire)
2 Data Шина данных 1-Wire
3 GND Общий провод

Для надежной работы 1-Wire устройств рекомендуется подключать их к контроллеру по трехпроводной схеме (с питанием от выхода +5В).

В ревизиях контроллера до 1.5 шина 1-Wire выведена на внешний разъем RJ22 (4P4C). Назначение выводов разъема RJ22 1-Wire:

Номер контакта Назначение Описание
1 +5V Выход питания +5В (для питания внешних устройств 1-Wire)
2 GND Общий провод питания
3 1-Wire Data Шина данных 1-Wire
4 1-Wire GND Общий провод 1-Wire

При подключении 1-Wire устройств с пассивным питанием используйте контакты 3 и 4 данного разъема.

Начиная с ревизии 1.8 контроллера JetHome JetHub D1 для реализации шины 1-Wire используется GPIOA_14 процессора Amlogic A113X.

В ревизиях контроллера JetHome JetHub D1 до 1.8 для реализации шины 1-Wire используется микросхема 1-Wire DS2483S-100, подключенный к шине I2C процессорного модуля (в Linux - шина i2c-0). I2C-адрес контроллера 1-Wire 0x18.

Выводы разъема расширения, используемые для подключения к контроллеру 1-Wire (см. Описание разъема расширения процессорного модуля A113):

Вывод разъема расширения Назначение Порт процессора
17 I2C_SCK GPIOAO_10/I2C_SCK_AO
18 I2C_SDA GPIOAO_11/I2C_SDA_AO

Пример работы с 1-Wire из Linux

Описание работы с 1-wire устройствами в Linux можно посмотреть, например, здесь.

Для инициализации драйвера 1-Wire DS2482 (на контроллере ревизии до 1.8) необходимо выполнить следующие команды (по-умолчанию в JetHome Armbian шина 1-Wire конфигурируются при загрузке системы и данной операции не требуется):

# sudo modprobe ds2482
# sudo sh -c "echo ds2482 0x18 > /sys/bus/i2c/devices/i2c-0/new_device"

Подключенные к шине устройства 1-wire будут доступны в директории /sys/bus/w1/devices/. Например:

# ls /sys/bus/w1/devices/
28-000007430c40  w1_bus_master1

В нанном примере к шине подключен один датчик температуры DS18B20 (28-000007430c40). Чтение данных с датчика температуры:

# cat /sys/bus/w1/devices/28-000007430c40/w1_slave 
8f 01 4b 46 7f ff 01 10 14 : crc=14 YES
8f 01 4b 46 7f ff 01 10 14 t=24937

RS-485

Контроллер JetHome JetHub D1 имеет два порта RS-485, реализованных с использованием микросхем преобразователя интерфейса USB-UART Silicon Labs CP2104. В операционной системе данные устройства отображаются как /dev/ttyUSB0 и /dev/ttyUSB1.

Концы шины RS-485 должны быть терминированы резисторами 120 Ом с обоих концов. Для упрощения монтажа контроллер имеет встроенные терминаторы, подключаемые к линиям RS-485 с помощью перемычек (джамперов), расположенных рядом с клеммами RS-485.

Работа с протоколом Modbus в Linux

Для работы с устройствами по протоколу Modbus можно использовать консольную python-утилиту modbus-cli.

Установка утилиты:

# sudo apt install python3-pip
# sudo pip3 install modbus_cli

Пример работы с датчиком напряжения и тока PZEM-016. Чтение регистра (Input Register) 0 содержащий текущее значение напряжения сети переменного тока (скорость 9600 бит/с, адрес устройства 7):

# modbus -b 9600 -s 7 -v /dev/ttyUSB0 i@0
07 04 00 00 00 01 31 ac
Read 1 registers: [2235]
0: 2235 0x8bb

Модуль беспроводной связи Zigbee

В контроллере JetHome JetHub D1 установлен модуль беспроводной связи Zigbee на базе чипа TI СС2538 + СС2592 или TI CC2652P1. См. описание модуля: JetHome Zigbee модуль ZB3CX v.1 (CC2538+CC2592) или JetHome Zigbee модуль ZB6C v.1 (CC2652P1)

Модуль подключен к порту UARTAO_B процессора (устройство отображается в системе как /dev/ttyAML2, в некоторых случаях как /dev/ttyAML1), аппаратное управление приемом/передачей (линии RTS и CTS) не используется. Предусмотрено управление аппаратным сбросом беспроводного модуля (линия RESET) и управление режимом его загрузки (линия BOOT) с помощью GPIO процессора.

Подключение Zigbee модуля к процессору (см. Описание разъема расширения процессорного модуля A113):

Вывод разъема расширения Вывод Zigbee модуля Назначение
15 RESET Линия управления аппаратным сбросом модуля
16 RX Линия передачи данных от процессора к модулю
17 TX Линия передачи данных от модуля к процессору
20 BOOT Линия переключения режима загрузки модуля

GPIO процессора Amlogic A113X, используемые для управления Zigbee модулем:

Вывод Zigbee модуля Вывод микропроцессора
RESET GPIOA_15
BOOT GPIOA_10

Для прошивки модуля на плату установлен двухрядный 10-ти контактный разъем (2х5) с шагом контактов 1.27мм (WM DBG), предназначенный для отладки и прошивки беспроводного модуля с помощью интерфейса JTAG:

Подключения выводов разъема «WM DBG» к беспроводному модулю:

Вывод разъема Назначение Вывод модуля Описание
1 +3.3V 13 Шина питания +3.3В беспроводного модуля модуля
2 TMS/SWDIO 2 JTAG TMS
3 GND 9,14 GND
4 TCK/SWCLK 1 JTAG TCK
5 GND 9,14 GND
6 TDO/SWO 3 JTAG TDO
7 N.C. Не используется
8 TDI 4 JTAG TDI
9 GND 9,14 GND
10 RESET 15 RESET

Управление беспроводным модулем из Linux

GPIO процессора, используемые для управления Zigbee модулем в Linux:

Вывод Zigbee модуля Вывод процессора Номер GPIO в Linux Номер в gpiolib
RESET GPIOA_15 467 41
BOOT GPIOA_10 462 36

Инициализация и управление выводом RESET

Инициализация GPIO (по-умолчанию в JetHome Armbian выводы GPIO конфигурируются при загрузке системы и дополнительной настройки не требуется):

# cd /sys/class/gpio
# echo 467 > export
# echo out > gpio467/direction

Аппаратный сброс модуля беспроводной связи осуществляется путем записи логического уровня 1 в GPIO 467:

# echo 1 > gpio467/value

Возврат в рабочий режим осуществляется путем записи логического уровня 0 на GPIO 467:

# echo 0 > gpio467/value

Инициализация и управление выводом BOOT

Инициализация GPIO (по-умолчанию в JetHome Armbian выводы GPIO конфигурируются при загрузке системы и дополнительной настройки не требуется):

# cd /sys/class/gpio
# echo 462 > export
# echo out > gpio462/direction

Управление режимом загрузки осуществляется путем записи 0 или 1 в GPIO 462. Для модуля беспроводной связи Zigbee JetHome CC2538 вход в режим загрузчика осуществляется при логическом уровне 0 на выводе BOOT:

# echo 0 > gpio462/value

а рабочий режим устанавливается при логическом уровне 1 на выводе BOOT:

# echo 1 > gpio462/value

Переключение режимов происходит при включении или аппаратном сбросе модуля. Поэтому после смены логического уровня на выводе BOOT модуля необходимо выполнить аппаратный сброс модуля (см. выше п. «Инициализация и управление выводом RESET»).

Прошивка модуля

Для прошивки модуля ZigBee CC2538 можно использовать python-утилиту cc2538-bsl. См. инструкцию Прошивка модулей и стиков TI CC2538/CC2652 с помощью утилиты cc2538-bsl

Информацию по рекомендованным прошивкам см. ПО модулей, основанных на чипе TI CC2538 или ПО стиков и модулей, основанных на чипе TI CC2652P1

Порядок действий для прошивки:

Перевести модуль в режим SBL (serial bootloader):

# echo 0 > /sys/class/gpio/gpio462/value
# echo 1 > /sys/class/gpio/gpio467/value
# echo 0 > /sys/class/gpio/gpio467/value

Пример команды для прошивки:

# python3 cc2538-bsl/cc2538-bsl.py -p /dev/ttyAML2 -e -w JH_2538_2592_ZNP_UART_20201010.bin

Перезагрузить модуль в «рабочий» режим:

# echo 1 > /sys/class/gpio/gpio462/value
# echo 1 > /sys/class/gpio/gpio467/value
# echo 0 > /sys/class/gpio/gpio467/value

Светодиоды

На лицевой панели контроллера установлено два светодиода: один для индикации наличия напряжения питания, второй - пользовательский двухцветный светодиод.

Управление светодиодами из Linux

Номера GPIO в Linux, к которым подключены пользовательские светодиоды:

Светодиод Вывод процессора Номер GPIO в Linux Номер в gpiolib Active Low
Красный GPIOA_0 452 26 1 (YES)
Зеленый GPIOA_1 453 27 1 (YES)

Светодиоды включаются низким логическим уровнем на выводе процессора.

Пример инициализации и управления красным светодиодом.

Инициализация GPIO (по-умолчанию в JetHome Armbian выводы GPIO конфигурируются при загрузке системы и дополнительной настройки не требуется):

# cd /sys/class/gpio
# echo 452 > export
# echo out > gpio452/direction
# echo 1 > gpio452/active_low

Включение и выключение светодиода (0 - выключить светодиод, 1 - включить светодиод):

# echo 1 > gpio452/value
# echo 0 > gpio452/value

Настройка и управление зеленым светодиодом производится аналогичным образом.

Пользовательская кнопка

На лицевой панели контроллера установлена одна пользовательская кнопка.

Чтение состояния пользовательской кнопки из Linux

Номер GPIO в Linux, к которому подключена кнопка:

Кнопка Вывод процессора Номер GPIO в Linux Номер в gpiolib
Пользовательская GPIOZ_10 436 10

Состояние вывода GPIO и кнопки:

Состояние кнопки Состояние вывода процессора
Не нажата 1
Нажата 0

Пример инициализации и чтения состояния пользовательской кнопки.

Инициализация GPIO (по-умолчанию в JetHome Armbian выводы GPIO конфигурируются при загрузке системы и дополнительной настройки не требуется):

# cd /sys/class/gpio
# echo 436 > export
# echo in > gpio436/direction
# echo 1 > gpio436/active_low

Чтение состояния кнопки:

# cat gpio436/value
0

Вывод команды в случае, если вход сконфигурирован как «active_low» (по-умолчанию в системе JetHome Armbian): 0 - кнопка не нажата, 1 - кнопка нажата.

Часы реального времени (RTC)

В качестве часов реального времени (RTC) используется микросхема PCF8563, подключенная к внутренней шине I2C процессорного модуля A113 (шина I2C_B процессора).

Для питания RTC на процессорном модуле установлен литиевый элемент питания с напряжением 3 В типоразмера CR1220.

Работа с RTC из Linux

Чтение информации из RTC:

# hwclock -r
2020-09-01 15:36:17.381590+03:00

или

# timedatectl
               Local time: Вт 2020-09-01 15:35:48 MSK
           Universal time: Вт 2020-09-01 12:35:48 UTC
                 RTC time: Вт 2020-09-01 12:35:49    
                Time zone: Europe/Moscow (MSK, +0300)
System clock synchronized: yes                       
              NTP service: active                    
          RTC in local TZ: no

ВНИМАНИЕ! На новом контроллере информация о времени и дате может быть еще не сохранена в микросхеме RTC. Поэтому при попытке чтения данных из нее будет выводится сообщение об ошибке. Для устранения данной ошибки необходимо записать информацию о дате и времени в микросхему RTC.

Запись в RTC информации о текущих системных дате и времени выполняется командой:

# hwclock --systohc

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

Если контроллер не имеет доступ в Интернет, то установить часовой пояс можно командой:

# timedatectl set-timezone Europe/Moscow

(список доступныых часовых поясов можно посмотреть командой «timedatectl list-timezones»), а дату и время командой:

# timedatectl set-time '2020-09-01 15:35:48'

Разъем расширения процессорного модуля

В качестве разъема расширения используестя штырьевой разъем с шагом контактов 1.27мм, количество контактов 40.

Сигналы, выведенные на разъём расширения:

  • Ethernet (x4 линии PHY);
  • Ethernet LED (х2 линии);
  • USB (х2 линии);
  • SPI (х4 линии);
  • I2C (х2 линии);
  • x2 UART (х4 линий);
  • x11 GPIO;
  • CPU RESET;
  • +5В.

Назначение выводов разъёма расширения

Вывод разъема Назначение вывода разъема Вывод/периферия микропроцессора Функция контроллера
1 +5.0V
2 +5.0V
3 GND
4 GND
5 ETH_TXN
6 ETH_TXP
7 ETH_RXN
8 ETH_RXP
9 ETH_LED3
10 ETH_LED0
11 GND
12 SPI_MOSI GPIOX_17/SPI_MOSI_B
13 SPI_CS GPIOX_16/SPI_SS0_B
14 SPI_MISO GPIOX_18/SPI_MISO_B
15 SPI_CLK GPIOX_19/SPI_CLK_B
16 GND
17 I2C_SCK GPIOAO_10/I2C_SCK_AO
18 I2C_SDA GPIOAO_11/I2C_SDA_AO
19 GND
20 UART1_RX GPIOAO_1/UART_RX_AO_A Linux_console RX
21 UART1_TX GPIOAO_0/UART_TX_AO_A Linux_console TX
22 UART2_TX GPIOAO_4/UART_TX_AO_B
23 UART2_RX GPIOAO_5/UART_RX_AO_B
24 GND
25 GPIO1 GPIOA_14
26 GPIO2 GPIOA_16
27 GND
28 GPIO3 GPIOA_19 Discrete input 2
29 GPIO4 GPIOA_18 Discrete input 3
30 GPIO5 GPIOA_20 Discrete input 1
31 GPIO6 GPIOA_15 Zigbee module reset
32 GPIO7 GPIOA_17 Discrete input 4
33 GPIO8 GPIOA_3 Relay 2
34 GPIO9 GPIOA_4 Relay 1
35 GPIO10 GPIOA_10 Zigbee module boot
36 GPIO11 GPIOA_2 Relay 3
37 CPU_RESET
38 GND
39 USB_DN USB_DN USB data -
40 USB_DP USB_DP USB data +

UART-консоль

UART-консоль выведена на 3-х контактный штырьевой разъем, расположенный на периферийной плате контроллера и отмеченный как «CONSOLE». Назначение контактов разъема также нанесено на плату контроллера.

Для доступа к разъему необходимо открыть крышку контроллера. Для подключения к компьютеру можно использовать любой преобразователь интерфейсов USB-UART:

Конфигурация порта:

  • Скорость 115200 бит/сек;
  • Длина данных 8 бит;
  • Стоп-бит 1;
  • Контроль четности не используется;
  • Аппаратное управление потоком не используется.

Прошивка контроллера

Прошивка из Windows с помощью Amlogic Burning Tool

Для прошивки образа ПО можно использовать программу Amlogic Burning Tool (см. Инструкцию по использованию Burning Tool).

Последнюю прошивку JetHome Armbian можно скачать по адресу http://update.jethome.ru/armbian/

Для контроллера JetHub D1 необходим вариант прошивки Armbian с суффиксами «j100» и «burn»

Прошивка контроллера выполняется в следующем порядке:

  • Установите и подготовьте к работе программу USB Burning Tool;
  • В программе Burning Tool откройте меню «File» - «Import image» и выберите файл прошивки (для контроллеров D1 файл прошивки обязательно с суффиксом j100);
  • Отключите питание контроллера;
  • Нажмите и удерживайте нажатой кнопку «BOOT» на лицевой панели контроллера (доступ к кнопке осуществляется через отверстие на лицевой панели контроллера);
  • Удерживая кнопку «BOOT» нажатой, подключите контроллер с помощью кабеля USB к компьютеру с запущенной программой USB Burning Tool;
  • В окне запущенной программы Burning Tool при успешном запуске встроенного в контроллер загрузчика и подключении контроллера к компьютеру будет выведена надпись «Connect»;
  • Отпустите кнопку «BOOT»;
  • Нажмите кнопку «Start» в программе Burning Tool;
  • Начнется процедура прошивки, которая может занять продолжительное время;
  • По завершению процедуры прошивки нажмите кнопку «Stop» в программе;
  • Отключите кабель USB от контроллера.

Прошивка из Ubuntu Linux

Для прошивки из Linux можно воспользоваться утилитой burn-tool из репозитария https://github.com/khadas/utils

Документация по использованию утилиты https://docs.khadas.com/vim1/UpgradeViaUSBCable.html#Upgrade-On-Ubuntu

Для установки утилиты выполните команды:

$ git clone https://github.com/khadas/utils khadas-utils
$ cd khadas-utils
$ ./INSTALL

Для прошивки контроллера переведите его в режим загрузчика способом, описанным выше. Далее выполните команду:

burn-tool -i <FIRMWARE_IMAGE_FILE>

где <FIRMWARE_IMAGE_FILE> - файл прошивки

Примерный вывод программы:

$ burn-tool -i ~/firmware/D1/JetHome_1.0.14_Armbian_20.08_Arm-64_focal_current_5.7.16_j100.img
Try to burn Amlogic image...
Burning image '/home/ak/firmware/D1/JetHome_1.0.14_Armbian_20.08_Arm-64_focal_current_5.7.16_j100.img' for 'VIM1/VIM2' to eMMC...
Unpacking image [OK]
Initializing ddr ........[OK]
Running u-boot ........[OK]
Create partitions [OK]
Writing device tree [OK]
Writing bootloader [OK]
Wiping  data partition [OK]
Wiping  cache partition [OK]
Writing boot partition [OK]
Writing rootfs partition [OK]
Resetting board [OK]
Time elapsed: 9 minute(s).
Done!

Возможные проблемы при прошивке контроллера

Программа USB Burning Tool не определяет подключенный контроллер.

  • Убедитесь, что в момент подключения кабеля USB кнопка «BOOT» нажата. Не рекомендуется использовать для этого острые предметы (иголки и т.д.), используйте предметы с тупым концом (скрепки и т.д.);
  • Подключайте кабель USB быстро и до упора. Разъем USB устроен так, что при подключении кабеля сначала подключаются контакты питания, затем контакты для передачи данных. При этом может возникать ситуация когда при подаче питания процесс загрузки уже начался, а линии передачи данных USB еще не были подключены;
  • Используйте кабель USB 2.0 вместо кабеля USB 3.0.

Первый запуск JetHome Armbian

Настройка контроллера при его первом запуске или после его перепрошивки может осуществляться следующими способами:

  • По сети Ethernet;
  • Через UART-консоль.

Для настройки нонтроллера по сети Ethernet подключите контроллер к локальной сети с настроенным и работающим сервером DHCP. Определите новый IP-адрес контроллера (MAC-адрес контроллера указан на нижней части корпуса контроллера). Например, в маршрутизаторах Mikrotik это можно сделать в меню IP → DHCP Server → Leases. Далее подключитесь к контроллеру с помощью любого ssh-клиента, например, Putty под ОС Windows.

Для подключения через UART-консоль подключите контроллер к компьютеру с помощью любого преобразователя USB-UART (см. п. «UART консоль»).

По-умолчанию пароль для пользователя «root» - «1234».

При первом запуске будет предложено:

  • Задать новый пароль для пользователя root;
  • Если контроллер подключен к сети с доступом в сеть Internet, то будет автоматически определен часовой пояс, язык для системы и раскладка клавиатуры;
  • Далее будет предложено зарегистрировать в системе нового пользователя и задать для него пароль (рекомендуется это сделать). Ввод данных о пользователе можно пропустить, нажав клавишу Enter на запрос о полном имени пользователя.

Загрузка с USB Flash Drive

Если прошивка в eMMC контроллера версии 22.02 и более новая, то для загрузки с USB Flash Drive необходимо удерживать нажатой кнопку Fn при подаче питания на контроллер.

В более старых версиях прошивки необходимо подключить UART-консоль и в процессе первоначальной загрузки следовать инструкции.

Более подробная информация: Прошивка контроллера с помощью USB-флэш диска.

Полезные ссылки

jethub_d1.txt · Последнее изменение: 2022/04/20 12:52 — Leonid Titov

Инструменты страницы