INNOSTICK6/zh
Innostick 6是基于NXP公司ARM Cortx-A7系列最新处理器i.MX 6ULL的单板计算机,由纳行电子设计,生产和销售。
Innostick 6集易用性、便携性和可扩展性于一体,在一块80mm x 42mm的六层PCB板上,集成了DDR3,eMMC存储器以及WiFi/BT模块,同时还引出LCD显示接口,摄像头接口,USB Host以及USB OTG接口。其余接口均通过2.54mm插座引出,供用户扩展使用。
硬件
硬件特性
CPU |
NXP/Freescale ARM Cortex-A7 i.MX6ULL, 主频900MHz |
RAM |
512MB DDR3L |
Storage |
16GB/32GB eMMC |
通讯接口 |
|
LCD接口 |
24-Bit LCD 带4线电阻触摸屏输入 |
摄像头接口 |
8-Bit CSI Parallel input |
其他资源 |
|
扩展接口 |
50Pin扩展口P5
16Pin扩展口P6
*注:由于i.MX6ULL管脚复用的关系,列表中的功能无法同时全部得到。具体请参看INNOSTICK 6硬件手册 |
外形尺寸 |
80 x 42(mm) |
软件支持 |
|
功能框图
扩展接口P6
电源域 |
i.MX6ULL Alt5 Mode* |
信号名称 (Ball Name) |
Pin# |
信号名称 (Ball Name) |
i.MX6ULL Alt5 Mode* |
电源域 |
|
DC 3.3V 对外输出 |
|
VDD_3V3 |
1 |
2 |
ENET1_TX_CLK |
GPIO2_IO06 |
VDD_3V3 |
VDD_3V3 |
GPIO2_IO03 |
ENET1_TX_DATA0 |
3 |
4 |
ENET1_TX_DATA1 |
GPIO2_IO04 |
VDD_3V3 |
VDD_3V3 |
GPIO2_IO05 |
ENET1_TX_EN |
5 |
6 |
GND |
|
|
VDD_3V3 |
GPIO2_IO11 |
ENET2_TX_DATA0 |
7 |
8 |
ENET2_TX_DATA1 |
GPIO2_IO12 |
VDD_3V3 |
VDD_3V3 |
GPIO2_IO13 |
ENET2_TX_EN |
9 |
10 |
ENET2_TX_CLK |
GPIO2_IO14 |
VDD_3V3 |
|
|
GND |
11 |
12 |
GND |
|
|
VDD_3V3 |
GPIO2_IO10 |
ENET2_RX_EN |
13 |
14 |
ENET2_RX_DATA1 |
GPIO2_IO09 |
VDD_3V3 |
VDD_3V3 |
GPIO2_IO15 |
ENET2_RX_ER |
15 |
16 |
ENET2_RX_DATA0 |
GPIO2_IO08 |
VDD_3V3 |
- 注:更多复用功能,参看INNOSTICK6硬件手册
扩展接口P5
电源域 |
i.MX6ULL Alt5 Mode* |
信号名称 (Ball Name) |
Pin# |
信号名称 (Ball Name) |
i.MX6ULL Alt5 Mode* |
电源域 |
|
主电源 |
|
VDD_5V |
1 |
2 |
VDD_5V |
|
主电源 |
DC 3.3V输出 |
|
VDD_3V3 |
3 |
4 |
UART1_TX_DATA |
GPIO1_IO16 |
VDD_3V3 |
VDD_3V3 |
GPIO1_IO19 |
UART1_RTS_B |
5 |
6 |
UART1_RX_DATA |
GPIO1_IO17 |
VDD_3V3 |
VDD_3V3 |
GPIO1_IO18 |
UART1_CTS_B |
7 |
8 |
GND |
|
|
|
|
GND |
9 |
10 |
VDDA_3V3 |
|
AD转换器供电 |
VDD_3V3 |
GPIO1_IO05 |
GPIO1_IO05 |
11 |
12 |
GPIO1_IO06 |
GPIO1_IO06 |
VDD_3V3 |
VDD_3V3 |
GPIO1_IO07 |
GPIO1_IO07 |
13 |
14 |
GPIO1_IO08 |
GPIO1_IO08 |
VDD_3V3 |
VDD_3V3 |
GPIO1_IO09 |
GPIO1_IO09 |
15 |
16 |
GND |
|
|
|
|
GND |
17 |
18 |
JTAG_TDI |
GPIO1_IO13 |
VDD_3V3 |
VDD_3V3 |
GPIO1_IO10 |
JTAG_MOD |
19 |
20 |
JTAG_TDO |
GPIO1_IO12 |
VDD_3V3 |
VDD_3V3 |
GPIO1_IO15 |
JTAG_TRSTB |
21 |
22 |
JTAG_TCK |
GPIO1_IO14 |
VDD_3V3 |
VDD_3V3 |
GPIO1_IO11 |
JTAG_TMS |
23 |
24 |
GND |
|
|
|
|
GND |
25 |
26 |
SNVS_TAMPER2 |
GPIO5_IO02 |
VDD_SNVS_IN |
SNVS_LP供电 |
|
VDD_SNVS_IN |
27 |
28 |
PMIC_STBY_REQ |
|
VDD_SNVS_IN |
VDD_SNVS_IN |
|
PMIC_ON_REQ |
29 |
30 |
ONOFF |
|
VDD_SNVS_IN |
VDD_SNVS_IN |
|
POR_B |
31 |
32 |
GND |
|
|
|
|
GND |
33 |
34 |
NAND_READY_B |
GPIO4_IO11 |
VDD_3V3 |
VDD_3V3 |
GPIO4_IO12 |
NAND_WP_B |
35 |
36 |
NAND_CE0_B |
GPIO4_IO13 |
VDD_3V3 |
VDD_3V3 |
GPIO4_IO14 |
NAND_CE1_B |
37 |
38 |
NAND_CLE |
GPIO4_IO15 |
VDD_3V3 |
VDD_3V3 |
GPIO4_IO16 |
NAND_DQS |
39 |
40 |
GND |
|
|
|
|
GND |
41 |
42 |
ENET1_RX_DATA1 |
GPIO2_IO01 |
VDD_3V3 |
VDD_3V3 |
GPIO2_IO00 |
ENET1_RX_DATA0 |
43 |
44 |
UART4_RX_DATA |
GPIO1_IO29 |
VDD_3V3 |
VDD_3V3 |
GPIO1_IO28 |
UART4_TX_DATA |
45 |
46 |
UART2_RTS_B |
GPIO1_IO23 |
VDD_3V3 |
VDD_3V3 |
GPIO1_IO21 |
UART2_RX_DATA |
47 |
48 |
UART2_CTS_B |
GPIO1_IO22 |
VDD_3V3 |
VDD_3V3 |
GPIO1_IO20 |
UART2_TX_DATA |
49 |
50 |
GND |
|
|
- 注:更多复用功能,参看INNOSTICK6硬件手册
外形尺寸
快速入门
首次上电
出厂之前,Innostick 6的使用说明书,硬件手册,原理图,软件工具等产品资料都存储在板内eMMC内。用户在收到板子以后,请参照如下步骤取得这些资料并认真阅读。
准备工作
- 一台Innostick 6主机
- 一台Windows主机
操作步骤
1. 从防静电袋内取出Innostick 6主机,准备好两个2mm间距跳针帽和一条Micro-USB电缆
2. 安装J1跳针帽(Micro-USB供电)
3. 安装J2跳针帽(J2-1和J2-2)(U盘模式)
J2是Innostick 6的引导模式选择跳针,具体选项如下表:
跳针帽位置 | 引导模式 |
1-2 | USB Memory Stick |
2-3 | SDP Manufacture Tools |
Open | Normal Boot |
4. 用Micro-USB电缆连接Innostick 6 P1
5. 等待Windows识别出U盘设备
6. 由于Innostick 6板内eMMC存在Linux分区,Windows无法识别这些分区,会出现如下提示:
7. 点击“取消”按钮
8. 查看Innostick 6板上FAT分区的内容,在这个例子中是F盘
9. 资料阅读完成以后右击F盘,选择“弹出”
ssh连接
Innostick 6上安装的Linux发布版都提供了USB RNDIS Gadget支持。用户可以通过ssh或者telnet和它建立连接,这时候Micro-USB电缆既提供电源,又提供网络通讯功能。
准备工作
- 一台Innostick 6主机
- 一台Windows主机
- Putty v0.66 from www.putty.org: https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html
- RNDIS驱动,当Windows无法自动识别RNDIS gadget设备时可以安装它:https://github.com/zhangzhian/LearningNotes/blob/master/res/RNDIS.7z
操作步骤
1. 安装Putty
2. 安装J1跳针帽(Micro-USB供电)
3. J2跳针置空(Normal Boot Mode)
4. 用Micro-USB电缆连接Innostick 6 P1
5. 等待RNDIS Gadget设备被Windows识别
6. 右击USB Ethernet网卡
7. 设置TCP/IPv4属性
8. 启动Putty
9. 设置通讯参数
9. 输入用户名和密码
手动安装RNDIS驱动
有时Windows会错把RNDIS Gadget识别为一个串口设备,这时可以参看这个帖子: windows系统RNDIS驱动手动安装
连接串口控制台
准备工作
- 一台Innostick 6主机
- 一台Windows主机
- 一根USB转串口电缆 USB to Serial TTL Converter
- Putty v0.66 from www.putty.org: https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html
操作步骤
1. 安装Putty v0.66
2. 安装J1跳针帽(Micro-USB供电)
3. J2跳针置空(Normal Boot Mode)
4. 用Micro-USB电缆连接Innostick 6 P1口
5. 用USB转串口电缆连接Innostick 6 P6-4/p6-6/p6-8
6. 启动Putty
7. 设置通讯参数
eMMC分区信息
部署Linux Rootfs
这项工作可以在Windows主机,也可以在Linux主机上完成。
Windows主机
准备工作
- 一台Innostick 6主机
- 一台Windows主机
- PartitionGuru v4.9.5 from www.eassos.com: http://engdownload.eassos.cn/DGEngSetup496564.exe
- 一个PartitionGuru格式的Rootfs备份文件
操作步骤
1. 安装PartitionGuru v4.9.5
2. 安装J1跳针帽(Micro-USB供电)
3. 安装J2跳针帽(J2-1和J2-2)(U盘模式)
4. 用Micro-USB电缆连接Innostick 6 P1
5. 等待Windows识别出U盘设备
6. 启动PartitionGuru
7. 在Linux EXT4分区上,在这个例子中是G盘,右击
8. 点击‘Restore Partition From Image file’
9. 选择snapshot文件
10. 点击Start
11. 点击OK
12. 通常烧写一个2.5GB的文件到Innostick 6需要六分钟
13. 点击Complete
备份Linux Rootfs文件
同样的,PartionGuru也可以用来从Innostick6备份Linux Rootfs文件
Linux主机
在Linux主机上部署Innostick6 Rootfs更加简单。
准备工作
- 一台Innostick 6主机
- 一台Linux主机
- 一个Rootfs tarball
操作步骤
1. 安装J1跳针帽(Micro-USB供电)
2. 安装J2跳针帽(J2-1和J2-2)(U盘模式)
3. 用Micro-USB电缆连接Innostick 6 P1
4. 等待U盘设备被Linux主机识别
esky-sh@ubuntu:~$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sdb 8:16 1 14.6G 0 disk
├─sdb2 8:18 1 14G 0 part
└─sdb1 8:17 1 500M 0 part
sr0 11:0 1 1024M 0 rom
fd0 2:0 1 4K 0 disk
sda 8:0 0 50G 0 disk
├─sda2 8:2 0 1K 0 part
├─sda5 8:5 0 1021M 0 part [SWAP]
└─sda1 8:1 0 49G 0 part /
5. 安装Linux EXT4 Partition,这个例子中是/dev/sdb2设备
esky-sh@ubuntu:~$ sudo mount -t ext4 /dev/sdb2 /mnt/udisk
6. 把Rootfs tarball中的文件解压到Innostick 6
esky-sh@ubuntu:~$ sudo tar -jxvf /mnt/hgfs/sharefd/fsl-image-validation-imx-xwayland-imx6ul7d.tar.bz2 -C /mnt/udisk
sync
sudo umount /mnt/udisk/
软件
编译U-Boot和Linux kernel
This task can be done either on a x86 machine(cross compiling) or ARM machine(native compiling).
准备工作
- 一台运行Debian, Fedora或者Ubuntu的Linux主机
- NXP U-Boot 源代码: https://source.codeaurora.org/external/imx/uboot-imx
- NXP i.MX6 Kernel源代码: https://source.codeaurora.org/external/imx/linux-imx
- Innostick6 Kernel源代码: https://github.com/NXElec/linux-innostick6
安装build-essential
sudo apt-get install build-essential libncurses5-dev lzop
安装交叉编译器
如果您是在一台ARM架构的主机上做native compiling,那么这一节可以直接跳过。
- 安装32位编译器:
wget -c https://releases.linaro.org/components/toolchain/binaries/7.3-2018.05/arm-linux-gnueabihf/gcc-linaro-7.3.1-2018.05-i686_arm-linux-gnueabihf.tar.xz
tar xf gcc-linaro-7.3.1-2018.05-i686_arm-linux-gnueabihf.tar.xz
export CROSS_COMPILE=`pwd`/gcc-linaro-7.3.1-2018.05-i686_arm-linux-gnueabihf/bin/arm-linux-gnueabihf-
export ARCH=arm
- 安装64位编译器:
wget -c https://releases.linaro.org/components/toolchain/binaries/7.3-2018.05/arm-linux-gnueabihf/gcc-linaro-7.3.1-2018.05-x86_64_arm-linux-gnueabihf.tar.xz
tar xf gcc-linaro-7.3.1-2018.05-x86_64_arm-linux-gnueabihf.tar.xz
export CROSS_COMPILE=`pwd`/gcc-linaro-7.3.1-2018.05-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf-
export ARCH=arm
编译U-Boot
下载源代码:
git clone https://source.codeaurora.org/external/imx/uboot-imx -b imx_v2017.03_4.9.88_2.0.0_ga
开始编译:
cd uboot-imx
make clean
make mx6ull_14x14_evk_defconfig
make
编译Kernel
下载源代码:
git clone https://source.codeaurora.org/external/imx/linux-imx -b imx_4.9.88_2.0.0_ga
开始编译:
cd linux-imx
make imx_v7_defconfig
make
或者:
git clone https://github.com/NXElec/linux-innostick6 -b i6_4.9.88_v1.0
开始编译:
cd linux-imx
make imx_v7_i6_defconfig
make