Intel® Joule™ 模块
Intel® Joule™ 是英特尔最高性能的系统级模块,在大小尺寸的低功耗封装中集成了强大的计算能力。Intel® Joule™ 550x / 570x 开发套件使开发人员可以快速原型化需要计算机视觉或边缘处理的各种自主机器人和IoT应用程序。
刷入镜像文件
在您开始刷入之前,除了Joule 板子之外,还需要以下东西:
- Micro-USB 数据线
- USB-C 数据线
- 12V 3A 电源适配器
- Micro-HDMI 数据线
- MicroSD 读卡器
- USB键盘(可选)
要将Android Things 刷入 Joule板子上,请下载最新的镜像文件(latest preview image ),然后按照以下步骤操作:
步骤 1: 升级 BIOS
如果您的主板尚未安装 BIOS 183版本或更高版本,则需要执行以下一次性操作。
- 从Intel下载 BIOS version 183。
- 按照Intel关于在Joule板子上 刷入 BIOS 的说明,您的电路板必须安装BIOS 183版本或更高的版本,然后才能继续。
BIOS
需要一台运行Windows系统的主机。如果您没有Windows系统的计算机,则可以使用虚拟机。英特尔建议在Ubuntu上的Mac OS或 VirtualBox 上使用 Parallels。
步骤 2: 安装 Fastboot
首次启动新的 Joule 模块以安装具有Fastboot支持的引导加载程序时,需要执行以下一次性过程:
-
从 SDK Manager 更新Android SDK平台工具到25.0.3或更高版本。
- 确定
fastboot
二进制文件是否安装在Android SDK的platform-tools/
目录中. - 在你拥有了fastboot工具后,将其添加到
PATH
环境变量中.
- 确定
-
将您的 Joule板附带的microSD卡插入主机。
- 将您下载的Android Things 镜像文件 解压到电脑主机,并进入对应的解压缩的文件。
-
使用以下说明将
fastboot-disk.img
写入microSD卡:-
Linux: 用
dmesg
来发现磁盘名称 (例如sdX
ormmcblkX
),然后将dd
写入磁盘中:$ dmesg ... [...] sd 9:0:0:0: [sda] Attached SCSI removable disk ... $ dd if=fastboot-disk.img of=/dev/sda bs=4M
-
Mac: 使用
diskutil 列表
来发现磁盘名称 (例如diskX
), 然后使用dd
to write the image to the disk:$ diskutil list /dev/disk0 (internal, physical): ... /dev/disk1 (internal, virtual): ... /dev/disk2 (external, physical): ... $ dd if=fastboot-disk.img of=/dev/disk2 bs=4m
-
Windows: 下载并安装 Win32 Disk Imager, 选择
fastboot-disk.img
选择fastboot-disk.img和您的microSD卡的驱动器号,然后单击 写入。
-
-
卸载并安全弹出 microSD卡
-
将microSD卡插入 Joule,并将电路板连接到电脑主机,如下所示:
- 将12V适配器连接到电源输入连接器。
- 将电脑主机的USB OTG 与 USB-C 数据线相连。
- 将Micro-HDMI 数据线连接到外部显示器。
- 或者,连接USB键盘进行 BIOS 设置。
-
BIOS 设置完成后,主板会自动启动进入Fastboot模式。运行以下命令验证设备是否已正确引导到 Fastboot 中:
$ fastboot devices jouleA00C508900408C fastboot
步骤 3: 刷入 Android Things
一旦您在设备上加载了正确的启动加载程序bootloader
,请使用以下步骤来刷入Android 镜像:
- 打开命令行终端并导航到解压缩的镜像目录。
-
如果您的设备尚未处于快速启动模式,请使用 adb 工具 激活它:
$ adb reboot bootloader
-
通过执行以下操作来验证设备是否已启动到Fastboot模式:
$ fastboot devices jouleA00C508900408C fastboot
-
执行以下
fastboot
命令来安装操作系统镜像。$ fastboot \ flash gpt partition-table.img \ flash bootloader bootloader \ erase misc \ reboot bootloader $ fastboot \ flash gpt partition-table.img \ flash oemvars oemvars.txt \ flash bootloader bootloader \ flash boot_a boot.img \ flash boot_b boot.img \ flash system_a system.img \ flash system_b system.img \ flash userdata userdata.img \ flash gapps_a gapps.img \ flash gapps_b gapps.img \ erase misc \ set_active _a \ reboot
-
要验证Android是否在设备上运行,请使用 adb 工具进行检测:
$ adb devices List of devices attached jouleA00C508900408C device
连接 Wi-Fi
刷新板子后,强烈建议将其连接到互联网。这允许您的设备提供崩溃报告并接收更新。
在将电路板连接到Wi-Fi网络之前,请确保所提供的天线连接到电路板上的u.FL Wi-Fi连接器,如图所示:
使用 adb
将电路板连接到Wi-Fi。
-
向Wi-Fi服务发送请求,其中包括SSID和本地网络的密码:
$ adb shell am startservice \ -n com.google.wifisetup/.WifiSetupService \ -a WifiSetupService.Connect \ -e ssid <Network_SSID> \ -e passphrase <Network_Passcode>
-
通过
logcat
验证连接是否成功:$ adb logcat -d | grep Wifi ... V WifiWatcher: Network state changed to CONNECTED V WifiWatcher: SSID changed: ... I WifiConfigurator: Successfully connected to ...
-
测试您是否可以访问远程IP地址:
$ adb shell ping 8.8.8.8 PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data. 64 bytes from 8.8.8.8: icmp_seq=1 ttl=57 time=6.67 ms 64 bytes from 8.8.8.8: icmp_seq=2 ttl=57 time=55.5 ms 64 bytes from 8.8.8.8: icmp_seq=3 ttl=57 time=23.0 ms 64 bytes from 8.8.8.8: icmp_seq=4 ttl=57 time=245 ms
如果要清除板上所有已保存的网络:
$ adb shell am startservice \
-n com.google.wifisetup/.WifiSetupService \
-a WifiSetupService.Reset
串行调试控制台
串行控制台是调试板和查看系统日志信息的有用工具。控制台是内核日志消息 (例如dmesg
) 的默认输出位置,并且还提供对可用于访问诸如logcat 之类的命令的完整shell提示的访问。如果您无法通过其他方式访问板上的ADB,并且尚未启用网络连接,这将非常有用。
要访问串行控制台,请将micro USB数据线连接到电路板,如下所示。
使用终端程序(如PuTTY (Windows),Serial (Mac OS),or Minicom (Linux))打开与计算机上的USB串行设备的连接。控制台的串行端口参数如下所示:
- 波特率: 115200
- 数据位: 8
- 奇偶性: None
- 停止位: 1