RPI:运行在raspberrypi 3b上的google iot 1.0.5系统

Android Things Releases

This page contains information related to the stable platform releases of Android Things.

Android Things 1.0.5

Date: October 2018
Build Number: OIM1.180327.064
Play Services: 12.5.20

This minor version update contains the October security patch for the Android operating system.

 

  • 界面

主要包含三个界面:

1。 Overview界面:

2018_10_23_rpi3_iot_overview

2。 网络界面:

2018_10_23_rpi3_iot_network

可以看到网络的部份,包含WiFi无线网络与有线网络,点击WiFi无线网络可以进行相应的连接操作,与手机连接无线网络基本一致。但对于有线网络(Ethernet),也只能查看一下当前的IP地址,可以通过这个IP地址进行adb连接的操作。

 

3。 系统界面:

2018_10_23_rpi3_iot_system

从这里可以看到Google IOT系统是基于Android 8.1的系统。

 

外接的是HDMI接口的显示器,并且当前也只能通过鼠标进行一些简单的操作。

  • LOG

除了界面以外,当然我们最想看的就是系统的开机log的,开机log可以通过两种方式:

1。 开机之后,通过adb命令连接进行查看

2。连接串口线,通过吕口进行查看

当然,我选择的是第二种,这种方工,可以看到包含bootloader(uboot) 在内的所有log, 还是蛮激动人心的。

先看一下最开始的开机log:

U-Boot 2017.11-02409-g80d5c89b94 (Sep 17 2018 - 23:09:45 +0000)

DRAM:  752 MiB
RPI 3 Model B (0xa22082)
MMC:   mmc@7e300000: 0
reading uboot.env
In:    serial
Out:   serial
Err:   serial
Net:   Net Initialization Skipped
No ethernet found.
ANDROID: Invalid CRC-32 (expected 807077e9, found 00000000), re-initializing A/B metadata.
ANDROID: Attempting slot a, tries remaining 7
ANDROID: Booting slot: a
72 bytes read in 30 ms (2 KiB/s)
ANDROID: reboot reason: "(none)"
Booting kernel at 0x1000000 with fdt at 2efea300...


## Booting Android Image at 0x01000000 ...
Kernel load addr 0x01000800 size 8386 KiB
Kernel command line: buildvariant=userdebug
RAM disk load addr 0x11000000 size 4947 KiB
## Flattened Device Tree blob at 2efea300
   Booting using the fdt blob at 0x2efea300
   XIP Kernel Image ... OK
   Loading Ramdisk to 2cb2b000, end 2cfff930 ... OK
   reserving fdt memory region: addr=2efea300 size=ad00
   Loading Device Tree to 2dff2000, end 2dfffcff ... OK

Starting kernel ...

当然,如果你想要看到开机时的kernel的log, 需要修改一下rpiboot分区中的cmdline.txt将最后的loglevel=3这个参数改为ignore_loglevel, 这样就可以看到所有的kernel log, 当然也包含系统的第一个进程init进程的log:

kernel:

Starting kernel ...

[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Initializing cgroup subsys cpuset
[    0.000000] Initializing cgroup subsys cpu
[    0.000000] Initializing cgroup subsys cpuacct
[    0.000000] Initializing cgroup subsys schedtune
[    0.000000]   schedtune configured to support 4 boost groups
[    0.000000] Linux version 4.4.19-v7+ (android-build@vpeg11.mtv.corp.google.com) (gcc version 4.9.x 20150123 (prerelease) (GCC) ) #1 SMP PREEMPT Mon Sep 17 23:18:10 UTC 2018
[    0.000000] CPU: ARMv7 Processor [410fd034] revision 4 (ARMv7), cr=10c5383d
[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[    0.000000] Machine model: Raspberry Pi 3 Model B Rev 1.2
[    0.000000] debug: ignoring loglevel setting.
[    0.000000] cma: Reserved 8 MiB at 0x2e400000
[    0.000000] Memory policy: Data cache writealloc
[    0.000000] On node 0 totalpages: 192512
[    0.000000] free_area_init_node: node 0, pgdat c11a8bc0, node_mem_map ed956000
[    0.000000]   Normal zone: 1692 pages used for memmap
[    0.000000]   Normal zone: 0 pages reserved
[    0.000000]   Normal zone: 192512 pages, LIFO batch:31
[    0.000000] [bcm2709_smp_init_cpus] enter (1015a0->f3003010)
[    0.000000] [bcm2709_smp_init_cpus] ncores=4
[    0.000000] PERCPU: Embedded 11 pages/cpu @eefa5000 s23296 r0 d21760 u45056
[    0.000000] pcpu-alloc: s23296 r0 d21760 u45056 alloc=11*4096
[    0.000000] pcpu-alloc: [0] 0 [0] 1 [0] 2 [0] 3 
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 190820
[    0.000000] Kernel command line: 8250.nr_uarts=1 8250.nr_uarts=1 dma.dmachans=0x7f35 bcm2708_fb.fbwidth=1920 bcm2708_fb.fbheight=1080 bcm2709.boardrev=0xa22082 bcm2709.serial=0xdc0f3c90 smsc95xx.macaddr=B8:27:EB:0F:3C:90 bcm2708_fb.fbdepth=16 bcm2708_fb.fbswap=1 bcm2709.uart_clock=48000000 vc_mem.mem_base=0x3dc00000 vc_mem.mem_size=0x3f000000  dwc_otg.lpm_enable=0 console=ttyS0,115200 ro rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait earlyprintk init=/init androidboot.hardware=rpi3 androidboot.selinux=permissive ignore_loglevel androidboot.serialno=00000000dc0f3c90 androidboot.slot_suffix=_a root="/dev/mmcblk0p6" skip_initramfs buildvariant=userdebug
[    0.000000] PID hash table entries: 4096 (order: 2, 16384 bytes)
[    0.000000] Dentry cache hash table entries: 131072 (order: 7, 524288 bytes)
[    0.000000] Inode-cache hash table entries: 65536 (order: 6, 262144 bytes)
[    0.000000] Memory: 730968K/770048K available (12018K kernel code, 711K rwdata, 2880K rodata, 1024K init, 881K bss, 30888K reserved, 8192K cma-reserved)
[    0.000000] Virtual kernel memory layout:
[    0.000000]     vector  : 0xffff0000 - 0xffff1000   (   4 kB)
[    0.000000]     fixmap  : 0xffc00000 - 0xfff00000   (3072 kB)
[    0.000000]     vmalloc : 0xef800000 - 0xff800000   ( 256 MB)
[    0.000000]     lowmem  : 0xc0000000 - 0xef000000   ( 752 MB)
[    0.000000]       .text : 0xc0008000 - 0xc0f8cb80   (15891 kB)
[    0.000000]       .init : 0xc1000000 - 0xc1100000   (1024 kB)
[    0.000000]       .data : 0xc1100000 - 0xc11b1fb4   ( 712 kB)
[    0.000000]        .bss : 0xc11b4000 - 0xc12906cc   ( 882 kB)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
[    0.000000] Preemptible hierarchical RCU implementation.
[    0.000000] 	Build-time adjustment of leaf fanout to 32.
[    0.000000] NR_IRQS:16 nr_irqs:16 16
[    0.000000] Architected cp15 timer(s) running at 19.20MHz (phys).
[    0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x46d987e47, max_idle_ns: 440795202767 ns
[    0.000009] sched_clock: 56 bits at 19MHz, resolution 52ns, wraps every 4398046511078ns
[    0.000027] Switching to timer-based delay loop, resolution 52ns
[    0.000185] Calibrating delay loop (skipped), value calculated using timer frequency.. 38.40 BogoMIPS (lpj=192000)
[    0.000210] pid_max: default: 32768 minimum: 301
[    0.000315] Security Framework initialized
[    0.000332] SELinux:  Initializing.
[    0.000382] SELinux:  Starting in permissive mode
[    0.000620] Mount-cache hash table entries: 2048 (order: 1, 8192 bytes)
[    0.000639] Mountpoint-cache hash table entries: 2048 (order: 1, 8192 bytes)
[    0.001691] Disabling cpuset control group subsystem
[    0.001734] Initializing cgroup subsys io
[    0.001765] Initializing cgroup subsys memory
[    0.001811] Initializing cgroup subsys devices

之后的init进程的log:

[    3.775063] brcmfmac: brcmf_cfg80211_reg_notifier: not a ISO3166 code
[    3.813269] random: init: uninitialized urandom read (40 bytes read, 92 bits of entropy available)
[    3.850486] init: init first stage started!
[    3.856119] init: Using Android DT directory /proc/device-tree/firmware/android/
[    3.863876] init: First stage mount skipped (missing/incompatible fstab in device tree)
[    3.871721] usb 1-1.1: new high-speed USB device number 3 using dwc_otg
[    3.878822] init: Skipped setting INIT_AVB_VERSION (not in recovery mode)
[    3.885800] init: Loading SELinux policy
[    3.927129] SELinux: 4096 avtab hash slots, 13590 rules.
[    3.951766] SELinux: 4096 avtab hash slots, 13590 rules.
[    3.957180] SELinux:  1 users, 4 roles, 1103 types, 0 bools, 1 sens, 1024 cats
[    3.964543] SELinux:  92 classes, 13590 rules
[    3.973722] SELinux:  Completing initialization.
[    3.978419] SELinux:  Setting up existing superblocks.
[    3.982111] usb 1-1.1: New USB device found, idVendor=0424, idProduct=ec00
[    3.982122] usb 1-1.1: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[    3.986389] smsc95xx v1.0.4
[    4.045627] smsc95xx 1-1.1:1.0 eth0: register 'smsc95xx' at usb-3f980000.usb-1.1, smsc95xx USB 2.0 Ethernet, b8:27:eb:0f:3c:90
[    4.057840] audit: type=1403 audit(4.009:2): policy loaded auid=4294967295 ses=4294967295
[    4.066510] selinux: SELinux: Loaded policy from /sepolicy
[    4.066510] 
[    4.084930] selinux: SELinux: Loaded file_contexts
[    4.084930] 
[    4.093999] random: init: uninitialized urandom read (40 bytes read, 97 bits of entropy available)
[    4.105172] init: init second stage started!
[    4.121805] init: Using Android DT directory /proc/device-tree/firmware/android/
[    4.135958] selinux: SELinux: Loaded file_contexts
[    4.135958] 
[    4.144052] selinux: SELinux: Loaded property_contexts from /plat_property_contexts & /nonplat_property_contexts.
[    4.144052] 
[    4.151743] usb 1-1.2: new low-speed USB device number 4 using dwc_otg
[    4.162693] init: Running restorecon...
[    4.182826] selinux: SELinux:  Could not stat /dev/block: No such file or directory.
[    4.182826] 
[    4.192595] init: waitid failed: No child processes
[    4.197667] init: Couldn't load property file: Unable to open '/system/etc/prop.default': No such file or directory: No such file or directory
[    4.210738] init: Couldn't load property file: Unable to open '/prop.default': No such file or directory: No such file or directory
[    4.224411] init: Couldn't load property file: Unable to open '/odm/default.prop': No such file or directory: No such file or directory
[    4.237824] init: Couldn't load property file: Unable to open '/vendor/default.prop': No such file or directory: No such file or directory
[    4.251346] init: Created socket '/dev/socket/property_service', mode 666, user 0, group 0
[    4.256909] usb 1-1.2: New USB device found, idVendor=413c, idProduct=301a
[    4.256919] usb 1-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=0

 

最后,当然是附上第一次开机时的bugreport了: 2018_10_23_bugreport-iot_rpi3-OIM1.180327.064-2009-01-01-00-00-43

发表评论

电子邮件地址不会被公开。 必填项已用*标注