TLIMX6U-EVM Основная плата Разработка модуля IoT

Содержание

Tronlong-TLIMX6U-EVM-evaluation-board-based-on-NXP-i.MX-6ULL

TLIMX6U-EVM от Tronlong® Technology — это оценочная плата, разработанная на базе NXP i.MX 6ULL и оснащенная высокопроизводительным процессором ARM Cortex-A7 с низким энергопотреблением. TLIMX6U-EVM состоит из основной платы и оценочной базовой платы, прошла профессиональную компоновку печатной платы и строгие температурные испытания, что обеспечивает стабильность и надежность для различных промышленных применений.

В этой статье в первую очередь представлен пример разработки модуля IoT на основе оценочной платы TLIMX6U-EVM от Tronlong® Technology. Применимые среды разработки следующие:

  • Среда разработки Windows: Windows 7 64-bit, Windows 10 64-bit
  • Виртуальная машина: VMware 15.1.0
  • Среда разработки Linux: Ubuntu 18.04.4 64-bit
  • U-Boot: U-Boot-2020.04
  • Ядро: Linux-5.4.70
  • Linux SDK: 5.4.70_2.3.0

Если не указано иное, в конфигурации по умолчанию в качестве последовательного порта отладки используется USB TO UART1, для запуска системы — режим загрузки Linux SD, а для подключения к сети — маршрутизатор, соединенный с ПК.

Тестирование модуля SDIO WIFI

В данном случае используется модуль RTL8189 SDIO WIFI. Вставьте модуль SDIO WIFI в интерфейс SDIO оценочной платы, как показано на схеме ниже.

SDIO WIFI module RTL8189 for Tronlong TLIMX6U-EVM board
SDIO WIFI module RTL8189 for Tronlong TLIMX6U-EVM board

Модуль SDIO WIFI поддерживает режимы STA и AP:

  1. Режим STA: в режиме STA модуль WIFI может принимать сигналы от беспроводных маршрутизаторов, обеспечивая подключение к Интернету через маршрутизатор.
  2. Режим AP: в режиме AP модуль WIFI создает точку доступа к беспроводной локальной сети, позволяя устройствам, таким как телефоны и компьютеры, формировать локальную сеть.

Тестовая программа для этого случая находится в документации по продукту в папке «4-Software Information\Demo\module-demos\sdio_wifi_test». Конкретные детали приведены ниже:

DirectoryDescription
binTest scripts, program configuration files
driverSDIO WIFI module driver
srcSDIO WIFI module driver source code

Скопируйте все файлы из каталога «bin» и файл драйвера «8189fs.ko» из каталога «driver» в те же пути в файловой системе оценочной платы. Убедитесь, что модуль SDIO WIFI правильно подключен к интерфейсу SDIO оценочной платы. Из-за совместного использования контактов интерфейсом SDIO и интерфейсом Micro SD извлеките карту Linux SD boot из слота для карт Micro SD оценочной платы. Установите режим загрузки оценочной платы в режим NAND FLASH, переведя DIP-переключатель в положение «011000» (позиции 1–6).

Тестирование режима STA

Откройте файловую систему оценочной платы, перейдите по пути, где находится драйвер модуля SDIO WIFI «8189fs.ko», и выполните следующую команду для загрузки драйвера:

				
					Target# insmod 8189fs.ko
				
			
Load the driver by executing the Target# insmod 8189fs.ko
Load the driver by executing the Target# insmod 8189fs.ko

Выполните следующие команды, чтобы отключить другие сети и процесс «wpa_supplicant», оставив только сеть WIFI:

				
					Target# ifconfig eth0 down
Target# ifconfig eth1 down
Target# killall -9 wpa_supplicant
Target# ifconfig wlan0 up
Target# ifconfig

				
			
Close the wpa_supplicant process by executing the Target#ifconfig series
Close the wpa_supplicant process by executing the Target#ifconfig series

В каталоге файла «wifi_setup.sh» выполните следующую команду, чтобы подключить оценочную плату к маршрутизатору с помощью модуля WIFI. Используйте флаг «-i» для указания имени WIFI и флаг «-p» для указания пароля WIFI, изменяя их по мере необходимости:

				
					Target# ./wifi_setup.sh -i Tronlong-test -p omapl138

				
			
Connect the evaluation board to the router through the WIFI module by executing Target#.wifi_setup.sh -i Tronlong-test -p omapl138
Connect the evaluation board to the router through the WIFI module by executing Target#.wifi_setup.sh -i Tronlong-test -p omapl138

Выполните следующую команду, чтобы просмотреть полученный IP-адрес и проверить связь между оценочной платой и ПК с помощью команды «ping». Убедитесь, что оценочная плата и ПК находятся в одной локальной сети. Здесь 192.168.1.100 представляет собой фактический IP-адрес ПК.

				
					Target# ifconfig
Target# ping 192.168.1.100
				
			
Test the communication between evaluation board and PC by ping command
Test the communication between evaluation board and PC by ping command

В файловой системе оценочной платы выполните следующие команды, чтобы просмотреть IP-адрес платы и протестировать пропускную способность сетевого соединения с ПК с помощью инструмента Iperf3:

				
					Target# ifconfig
Target# iperf3 -s

				
			
Check the IP address with Targetifconfig and test communication with Targetiperf3 s

В системе Ubuntu используйте следующую команду для тестирования пропускной способности сетевого соединения. Замените «192.168.1.103» на фактический IP-адрес оценочной платы. Результаты тестирования, на которые влияет сетевая среда, приведены только для справки.

				
					Host# iperf3 -c 192.168.1.103 -i 1

				
			
Test the network communication bandwidth by executing the command Host#iperf3 -c 192.168.1.103 -i 1 in the Ubuntu system
Test the network communication bandwidth by executing the command Host#iperf3 -c 192.168.1.103 -i 1 in the Ubuntu system

Тестирование режима AP

Перезагрузите систему оценочной платы и выполните следующую команду, чтобы загрузить драйвер модуля SDIO WIFI «8189fs.ko»:

				
					Target# insmod 8189fs.ko

				
			
Reload the driver via Target# insmod 8189fs.ko
Reload the driver via Target# insmod 8189fs.ko

Отключите другие сети и процесс «wpa_supplicant», оставив только сеть WIFI, используя команды, аналогичные тем, что используются при тестировании в режиме STA.

				
					Target#ifconfig eth0 down
Target#ifconfig eth1 down
Target#killall -9 wpa_supplicant
Target#ifconfig wlan0 up
Target#ifconfig
				
			
Close other networks and wpa_supplicant processes again by executing Target#ifconfig
Close other networks and wpa_supplicant processes again by executing Target#ifconfig

В каталоге файла «ap_setup.sh» выполните следующую команду, чтобы перевести модуль SDIO WIFI в режим AP:

				
					Target# ./ap_setup.sh

				
			
Set the SDIO WIFI module to AP mode through Target#ap_setup.sh
Set the SDIO WIFI module to AP mode through Target#ap_setup.sh

Если при запуске режима AP возникают проблемы из-за недостаточной случайной энтропии, необходимо перезапустить оценочную плату. Выполните следующие команды, чтобы изменить пул энтропии, а затем повторите тест:

				
					Target# mv /dev/random /dev/random_ori
Target# ln -s /dev/urandom /dev/random
				
			
Restart the evaluation board and replace the entropy pool
Restart the evaluation board and replace the entropy pool

По умолчанию в программе установлено имя WIFI «rtl8188fs», а пароль — «88888888». Измените эти настройки в файле конфигурации «rtl_hostapd_2G.conf». Подключите ПК с поддержкой WIFI (например, ноутбук или настольный ПК с USB-адаптером WIFI) к этой точке доступа беспроводной локальной сети и отключите все проводные сетевые соединения. После подключения последовательный отладочный терминал выведет информацию об IP-адресе, назначенном Ubuntu. При использовании виртуальной машины с Ubuntu будут назначены два IP-адреса — один для Windows и один для Ubuntu.

Get the IP address of Ubuntu
Get the IP address of Ubuntu

Выполните следующую команду, чтобы проверить сетевое соединение между устройствами беспроводной локальной сети. Если возникли проблемы с подключением или произошли сбои, попробуйте отключить брандмауэр компьютера и повторить попытку подключения:

				
					Target# ping 192.168.0.21 // 192.168.0.21 is the Ubuntu-side IP address
				
			
Test the network between wireless LAN devices through Target#ping
Test the network between wireless LAN devices through Target#ping

В файловой системе оценочной платы выполните следующие команды, чтобы просмотреть IP-адрес платы и дождаться подключения ПК:

				
					Target# ifconfig
Target# iperf3 -s
				
			

В системе Ubuntu используйте следующую команду для тестирования пропускной способности сетевого соединения. Замените «192.168.0.1» на фактический IP-адрес оценочной платы. Результаты тестирования, на которые влияет сетевая среда, приведены только для справки.

				
					Host# iperf3 -c 192.168.0.1 -i 1
				
			
Test network communication bandwidth by executing Host#iperf3 in Ubuntu system
Test network communication bandwidth by executing Host#iperf3 in Ubuntu system

После тестирования выключите оценочную плату, извлеките модуль SDIO WIFI и вставьте карту Linux SD boot в слот для карт Micro SD. Установите DIP-переключатель режима загрузки в положение «010100» (позиции 1–6) для режима загрузки SD.

Компиляция драйвера SDIO WIFI

Скопируйте исходный код драйвера «rtl8189FS.tar.gz» из каталога «src» примера и поместите его в рабочий каталог Ubuntu. Затем выполните следующие команды, чтобы извлечь исходный код из сжатого архива:

				
					Host# tar -xf rtl8189FS.tar.gz
				
			
Unzip the source code package rtl8189FS.tar.gz to the Ubuntu directory
Unzip the source code package rtl8189FS.tar.gz to the Ubuntu directory

Затем перейдите в каталог с исходным кодом драйвера и измените файл «Makefile» верхнего уровня, используя следующие команды:

				
					Host# cd rtl8189FS/
Host# vim Makefile
				
			
Modify the top-level Makefile
Modify the top-level Makefile

Измените содержимое файла «Makefile» в соответствии с приведенными ниже инструкциями:

				
					KSRC = /home/tronlong/IMX6/Kernel/Linux-5.4.70 // Specify the actual path to the kernel source code
				
			

В каталоге, где находится исходный код драйвера, выполните следующие команды, чтобы настроить переменные среды SDK и скомпилировать драйвер SDIO WIFI:

				
					Host# source /home/tronlong/SDK/environment-setup-cortexa7t2hf-neon-poky-linux-gnueabi
Host# make
				
			
Set up the SDK environment and compile the SDIO WIFI driver
Set up the SDK environment and compile the SDIO WIFI driver

После завершения компиляции образ драйвера будет сгенерирован в текущем каталоге.

Подписаться

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

Об авторе

Picture of Aidan Taylor
Aidan Taylor

I am Aidan Taylor and I have over 10 years of experience in the field of PCB Reverse Engineering, PCB design and IC Unlock.

Поделиться

Рекомендуемый пост

Tags

Нужна помощь?

Прокрутить вверх

Instant Quote