系统:macOS,
串口工具:SecureCRT Version 9.0.0
投屏工具:scrcpy
板子:rk3399 android 7.1笔者是Android Studio的开发环境,直接把 Android SDK 的一套工具 (/Users/xxx666/Library/Android/sdk/platform-tools)加入 PATH 就搞定了
在做一些的 Android 板相关产品时,为了快速跟进,通常是硬件(点屏,Mic,其它外设)、交互视觉和软件(app)需要同步进行,有时候时屏幕还没有点亮时,就需要进行软件app端的开发,这里记录一下其中的几个场景
场景一 串口+有线网卡(口)
这个比较简单了,在串口工具执行指令查看IP ifconfig
,然后电脑端adb无线连接板子IPadb connect 192.168.0.12
,随便用一个投屏软件进行投屏
场景二 串口+无线网卡
工具相关的指令,可以用 help 来查看
比如:
wpa_cli help
svc help
svc wifi help
Wi-Fi连接后的步骤同场景一,这里写一下串口环境下使用 svc
, wpa_cli
工具连接Wi-Fi的过程
步骤
// 打开Wi-Fi,如果打开失败,检查无线网卡和驱动
svc wifi enable
// 打开 wpa_cli 工具
wpa_cli
// 扫描周边Wi-Fi
scan
// 显示扫描结果
scan_results
// 新增/设置/保存一个Wi-Fi信息,add_net 后,有一个数字,这个数字是将要保存Wi-Fi信息的下标,这个数字会自增的,所以,并不是每次都是一样的。我这里增加到了 1,所以后面都以 1 为准
add_net
// 设置Wi-Fi的名字,其中 1 是 add_net 时,获得到的自增的数字
set_net 1 ssid "PDCN"
// 设置Wi-Fi的密码,其中 1 是 add_net 时,获得到的自增的数字
set_net 1 psk "123456"
// 连接Wi-Fi,其中 1 是 add_net 时,获得到的自增的数字
select_net 1
// 联网
enable_net 1
// 查看当前网络状态
status
// 退出工具
quit
实际操作
rk3399_JH:/ # svc wifi enable
rk3399_JH:/ #
rk3399_JH:/ # wpa_cli
wpa_cli v2.6-devel-7.1.2
Copyright (c) 2004-2016, Jouni Malinen <j@w1.fi> and contributors
This software may be distributed under the terms of the BSD license.
See README for more details.
Using interface 'wlan0'
Interactive mode
>
> scan
OK
<3>CTRL-EVENT-STATE-CHANGE id=-1 state=3 BSSID=00:00:00:00:00:00 SSID=
<3>CTRL-EVENT-SCAN-STARTED
> scan_results
bssid / frequency / signal level / flags / ssid
cc:81:da:7c:03:b0 5200 -33 [WPA2-PSK-CCMP][ESS] PDCN_5G
50:64:2b:7c:ec:c1 5745 -56 [WPA-PSK-CCMP+TKIP][WPA2-PSK-CCMP+TKIP][WPS][ESS] Xiaomi_xianmu_5G
d8:8a:dc:ae:64:e6 5745 -64 [WPA2-PSK-CCMP][WPS][ESS]
64:09:80:0c:7b:f8 5745 -64 [WPA-PSK-CCMP+TKIP][WPA2-PSK-CCMP+TKIP][WPS][ESS] Good_5G
cc:81:da:7c:03:a8 2472 -23 [WPA2-PSK-CCMP][ESS] PDCN
64:6e:97:8d:73:04 2412 -51 [WPA-PSK-CCMP][WPA2-PSK-CCMP][ESS]
0c:d8:6c:fa:8d:a7 2467 -53 [WPA-PSK-CCMP][WPA2-PSK-CCMP][ESS] FAST_QQ
00:87:01:10:04:c5 5200 -77 [WPA2-PSK-CCMP][ESS] AndroidAP9313
00:15:c0:57:22:04 2412 -76 [WPA2-PSK-CCMP][ESS] Topway_019555
50:64:2b:7c:cf:5c 2452 -77 [WPA-PSK-CCMP+TKIP][WPA2-PSK-CCMP+TKIP][WPS][ESS] Xiaomi_nxqing
<3>CTRL-EVENT-SCAN-RESULTS
<3>WPS-AP-AVAILABLE
<3>CTRL-EVENT-STATE-CHANGE id=-1 state=2 BSSID=00:00:00:00:00:00 SSID=
<3>CTRL-EVENT-NETWORK-NOT-FOUND
> add_net
1
<3>CTRL-EVENT-STATE-CHANGE id=-1 state=3 BSSID=00:00:00:00:00:00 SSID=
<3>CTRL-EVENT-SCAN-STARTED
<3>CTRL-EVENT-SCAN-RESULTS
<3>WPS-AP-AVAILABLE
<3>CTRL-EVENT-STATE-CHANGE id=-1 state=2 BSSID=00:00:00:00:00:00 SSID=
<3>CTRL-EVENT-STATE-CHANGE id=-1 state=3 BSSID=00:00:00:00:00:00 SSID=
<3>CTRL-EVENT-SCAN-STARTED
<3>CTRL-EVENT-SCAN-RESULTS
<3>WPS-AP-AVAILABLE
<3>CTRL-EVENT-STATE-CHANGE id=-1 state=2 BSSID=00:00:00:00:00:00 SSID=
<3>CTRL-EVENT-STATE-CHANGE id=-1 state=3 BSSID=00:00:00:00:00:00 SSID=
> set_net 1 ssid "PDCN"
OK
<3>CTRL-EVENT-SCAN-STARTED
<3>CTRL-EVENT-SCAN-RESULTS
<3>WPS-AP-AVAILABLE
<3>CTRL-EVENT-STATE-CHANGE id=-1 state=2 BSSID=00:00:00:00:00:00 SSID=
<3>CTRL-EVENT-STATE-CHANGE id=-1 state=3 BSSID=00:00:00:00:00:00 SSID=
<3>CTRL-EVENT-SCAN-STARTED
<3>CTRL-EVENT-SCAN-RESULTS
<3>WPS-AP-AVAILABLE
<3>CTRL-EVENT-STATE-CHANGE id=-1 state=2 BSSID=00:00:00:00:00:00 SSID=
<3>CTRL-EVENT-STATE-CHANGE id=-1 state=3 BSSID=00:00:00:00:00:00 SSID=
<3>CTRL-EVENT-SCAN-STARTED
<3>CTRL-EVENT-SCAN-RESULTS
<3>WPS-AP-AVAILABLE
<3>CTRL-EVENT-STATE-CHANGE id=-1 state=2 BSSID=00:00:00:00:00:00 SSID=
> set_net 1 psk "1234567890"
OK
>
<3>CTRL-EVENT-STATE-CHANGE id=-1 state=3 BSSID=00:00:00:00:00:00 SSID=
<3>CTRL-EVENT-SCAN-STARTED
> select_net 1
OK
<3>CTRL-EVENT-SCAN-RESULTS
<3>WPS-AP-AVAILABLE
<3>CTRL-EVENT-STATE-CHANGE id=1 state=2 BSSID=00:00:00:00:00:00 SSID=PDCN
<3>CTRL-EVENT-STATE-CHANGE id=1 state=3 BSSID=00:00:00:00:00:00 SSID=PDCN
<3>CTRL-EVENT-SCAN-STARTED
<3>CTRL-EVENT-SCAN-RESULTS
<3>WPS-AP-AVAILABLE
<3>Trying to associate with cc:81:da:7c:03:a8 (SSID='PDCN' freq=2472 MHz)
<3>CTRL-EVENT-STATE-CHANGE id=1 state=5 BSSID=00:00:00:00:00:00 SSID=PDCN
<3>CTRL-EVENT-STATE-CHANGE id=1 state=6 BSSID=00:00:00:00:00:00 SSID=PDCN
<3>Associated with cc:81:da:7c:03:a8
<3>CTRL-EVENT-SUBNET-STATUS-UPDATE status=0
<3>CTRL-EVENT-STATE-CHANGE id=1 state=7 BSSID=cc:81:da:7c:03:a8 SSID=PDCN
<3>CTRL-EVENT-STATE-CHANGE id=1 state=8 BSSID=cc:81:da:7c:03:a8 SSID=PDCN
<3>WPA: Key negotiation completed with cc:81:da:7c:03:a8 [PTK=CCMP GTK=CCMP]
<3>CTRL-EVENT-CONNECTED - Connection to cc:81:da:7c:03:a8 completed [id=1 id_str=]
<3>CTRL-EVENT-STATE-CHANGE id=1 state=9 BSSID=cc:81:da:7c:03:a8 SSID=PDCN
<3>CTRL-EVENT-SCAN-STARTED
<3>CTRL-EVENT-SCAN-RESULTS
<3>CTRL-EVENT-SCAN-STARTED
<3>CTRL-EVENT-SCAN-RESULTS
> enable_net 1
OK
<3>CTRL-EVENT-SCAN-STARTED
>
> status
bssid=cc:81:da:7c:03:a8
freq=2472
ssid=PDCN
id=1
mode=station
pairwise_cipher=CCMP
group_cipher=CCMP
key_mgmt=WPA2-PSK
wpa_state=COMPLETED
ip_address=192.168.123.37
p2p_device_address=3a:83:9a:c1:e0:fe
address=38:83:9a:c1:e0:fe
uuid=cdc0b428-dc4a-56d6-a927-223e81275b21
<3>CTRL-EVENT-STATE-CHANGE id=1 state=9 BSSID=cc:81:da:7c:03:a8 SSID=PDCN
<3>CTRL-EVENT-CONNECTED - connection to cc:81:da:7c:03:a8 completed (auth) [id=1 id_str=]
<3>CTRL-EVENT-SCAN-RESULTS
> quit
rk3399_JH:/ #
简单的,直接无密码开放一个Wi-Fi 等待自动连上。。。
场景三 电脑可以连接板子为adb device
这个也贼简单,配置好投屏软件环境便可以,而且 Android Studio 也是可以直接连接板子进行安装啥的
最后补一下
- scrcpy 投屏的指令
nohup: 终端关闭后仍然保持运行
&:转为后台任务
-s: 指定设备,只有一个设备时,不用指定
nohup scrcpy -s 192.168.0.4 &
- 有些板子和系统,不一定能成功连上 Wi-Fi(我这里有几块板是连不上的)
- 场景二投屏成功后,有时候会断掉(重新enable_net 1),重启啥的,也会断掉,所以投屏成功后,第一步是用系统设置去连接Wi-Fi
祝大家板子投屏成功!
网友评论