-->

How to boot Android Things 0.6.1 DevPreview in CM3

2020-06-22 00:50发布

问题:

Actually I can boot Android Things "0.6.1 Developer Preview" in Raspberry Pi 3 (RPI3), I'm develop a project with Computer Module 3 Lite (CM3L) this have the same processor of the Raspberry Pi 3 (RPI3) but I only see the rainbow screen, never continue, I suppose the problem is relatad with DTB (Device Tree).

I try some options 1. Add DTB file for CM3 "bcm2710-rpi-cm3.dtb" on boot partition, when I do that the rainbow screen appear an the disappear but not do anything more 2. Replace the original DTB file "BCM271~1.DTB" for "bcm2710-rpi-cm3.dtb", when I do that the rainbow screen never disappear (equal to the original boot partition)

回答1:

Finally i do it

The main reason by the CM3L don't start with the Android Things RPI3 is the hardware configuration, although the RPI3 and the CM3L have the same processor but the additional hardware of RPI3 (Ethernet, Wifi and Bluethoot) has a configuration on DTB file, and this configuration avoid the start, for change it, you need decompile DTB file, remove this hardware and recompile the file

Requiremets:

  • Linux (I use ubuntu VM on Windows)
  • Install Device Tree Compiler Link on this you find the DTC tool (convert tool from DTB to DTS or from DTS to DTB) to use see this answer

Procedure

  1. Get DTB file form the microSD with Android Things (bcm2710-rpi-cm3.dtb)
  2. Copy it on linux and decompile using DTC tool DTC -I dtb -O dts -o bcm2710-rpi-3-b.dts bcm2710-rpi-3-b.dtb
  3. Modify the file (search and comment some lines) In section SOC search and comment blocks sdio_pins, bt_pins, uart0_pins and uart1_pins In the final section sysmbols comment some definitions, sdio_pins, bt_pins, uart0_pins and uart1_pins NOTE: You can comment like C with // or /**/
  4. Compile the file with DTC tool DTC -I dts -O dtb -o bcm2710-rpi-cm3.dtb bcm2710-rpi-3-b.dts
  5. Copy bcm2710-rpi-cm3.dtb file on microSD and run CM3L


回答2:

The CM3 does have GPIO. The major difference between CM3 and RP3 is the unit must boot from the onboard eMMC memory. The CM3 is an industrial SOM unit available until at least 2023 so it is ideal for industrial applications. I'd be interested in anyone who can get this to work on the CM3 as well as referrals to our customers using our Artista IoT from Apollo Displays.