第四步介绍芯片开发环境的账号权限获取、环境搭建、固件编译烧录等。

1 账号权限

猫芯开放的代码,包括Aligenie SDK和芯片BSP,均使用的是codeup.aliyun.com提供的代码托管服务,以虚拟组织的形式来进行统一的权限管控和成员管理。关于codeup平台的更多介绍可参见《欢迎使用云效代码管理 Codeup》
为便于统一管理,请各合作方开发人员,使用个人手机号和公司邮箱重新注册账号来做代码权限申请。

1.1 账号注册

1、如下图所示,访问http://code.aliyun.com/,点击免费注册选项,注册账号。
image.png
2、跳转到账号注册页之后,按提示依次输入账号名称(请务必使用个人真名姓名)、密码和手机号,勾选相关协议之后,点击同意并注册按钮。
image.png
3、填入接收到的短信验证码,点击提交按钮。
image.png
4、到此账号注册成功,务必继续点击去绑定 >按钮,绑定个人公司邮箱,否则后续申请代码权限将无法通过。
image.png
5、选择通过 手机验证方式校验身份。
image.png
6、点击获取短信验证码按钮,填入收到的短信验证码填入后点击确定按钮。
image.png
7、填入开发者公司邮箱,然后点击免费获取验证码,到邮箱收件箱中,找到主题为“阿里巴巴集团会员邮箱验证”的邮件,复制其中的验证码,填入到验证码栏,然后点击确定按钮。
image.png
image.png
image.png
到此,账号注册和基本资料配置完成。后面代码权限申请、环境配置注意都使用该账户来完成。

1.2 权限申请

1、加入钉钉群后,获取虚拟组织邀请链接
image.png
提供芯片型号(TG6000A)、公司、姓名、公司邮箱、项目名称等信息后,阿里方软件技术支持提供邀请链接。
2,如下图所示,姓名栏请保持个人真实姓名,然后点击申请加入企业。注意,如果这里显示的姓名不是之前注册的账号,需要点击使用其他账号加入按钮重新登录。
image.png
3,申请成功后,页面会提示“你的申请正在审批中,请耐心等待…”
image.png
4、待审批通过之后,访问https://codeup.aliyun.com/,即可看到相关代码工程。
image.png

2 开发环境搭建

2.1 搭建指南

猫芯项目代码下载和编译基于Ubuntu环境,Ubuntu 16.04和Ubuntu 18.04版本经验证可支持,其它Ubuntu版本和Linux发行版未验证。

本文提供2种开发方式,自行搭建环境和免搭建虚拟机环境。

2.2 手动搭建环境

  • 安装repo

猫芯开放代码是基于git repo进行管理的。但在GFW背景下,谷歌的repo工具在国内使用一般会受到制约,需要自行搭建repo环境。

编译环境需要安装如下软件包

  1. sudo apt-get install -y curl
  2. sudo apt-get install -y libc6-i386
  3. sudo apt-get install -y git
  4. sudo apt-get install -y build-essential
  5. sudo apt-get install -y python
  6. sudo apt-get install -y python-pip
  7. sudo python -m pip install aos-cube
  8. sudo apt-get install -y openjdk-8-jre
  • 环境验证

搭建完成后,提供了测试脚本进行开发环境验证,即通过执行以下命令可以对开发环境进行验证。

  1. curl https://gitee.com/tmjl_service/git1/raw/master/dev_env_test | bash

该指令可自动验证当前系统下的git、repo、gcc、g++、aos、java几个工具是否已经正确安装执行,每个命令验证完之后会输出fail或者success,如果某一命令出现fail,则表示无法正常执行,需要检查是否正确安装;全部success说明开发环境已ready,可进行代码的下载和编译了。该指令参考执行结果如下所示:

  1. $ curl https://gitee.com/tmjl_service/git1/raw/master/dev_env_test | bash
  2. % Total % Received % Xferd Average Speed Time Time Time Current
  3. Dload Upload Total Spent Left Speed
  4. 100 1297 0 1297 0 0 2167 0 --:--:-- --:--:-- --:--:-- 2168
  5. test git: success
  6. test gcc: success
  7. test g++: success
  8. test aos: success
  9. test java: success
  10. test repo: .....success

2.3 免搭建虚拟机环境

为了减少大家搭建开发环境的时间,我司还基于vmware虚拟机和64位Ubuntu18.04系统搭建了一个猫芯专用开发环境,请点击虚拟机镜像的下载地址。以Windows系统为例,解压虚拟机镜像压缩包到D盘根目录下,用vmware加载D:\Ubuntu18.04ForTGDev\Ubuntu 64 位.vmx即可。默认用户名密码均为tgdev。
tgdev账号登录虚拟机后,直接进入可进入下一小节代码下载。

3 代码下载

1、点击右上角个人头像,选择个人设置-SSH公钥,添加公钥。具体可以参考《配置SSH密钥》,或者自行搜索相关技术博客。
image.png
image.png
2、打开Ubuntu终端,新建一个目录,使用如下命令下载整套代码

repo init -u git@codeup.aliyun.com:619ca41fcfe94d7ade4c3a4a/tg6000a/manifest.git -b Rtos/release/maoxin
repo sync

注意:版本及对应的分支不定期发布,请参考:TG6000A系统及SDK发布 · 语雀,获取release版本。

4 固件编译

代码下载成功之后,使用如下命令编译固件

#编译Release版本
./build.sh secuser ailabs_tg6000a

#编译Debug版本(相对Release版本,Debug版本会开启更多Debug特性,更多log)
./build.sh seceng ailabs_tg6000a

编译完成后,固件+刷机包位于./vendor/bestechnic/bes2300wp/release/write_flash_gui/。编译成功的log如下所示:
image.png

5 固件烧录

请先准备硬件开发评估板或者其它开发板/产品板,本文内置TG6000A芯片的AM-01-S710模组官方开发板为例。先配置好跳冒,找到电源和USB转UART对应的USB口。
image.png

5.1 打开烧录软件

在write_flash_gui或阿里释放软件包中可以看到下图1中bes_write_flash_main.exe,双击它启动工具如下图
image.png

5.2 工具配置

操作步骤1:单击Port Config;
步骤2:单击List,列出串口列表;
步骤3:勾选用于烧录的串口;
步骤4:点击Ok;
image.png

5.3 开始烧录

单击Start All,如下图,所选串口等待烧录,给机器重新上电,开始烧录;烧录结束,重新进入等待烧录状态;
image.png

5.4 退出烧录

单击Stop All (如下右图) ,所选串口退出烧录状态或等待烧录状态,串口被释放;

image.png

5.5 三元组烧录

5.5.1 三元组获取

在平台上创建项目后可获得biz_group、biz_type、蓝牙ID的值以及申请到三元组
image.png

image.png

image.png

image.png

5.5.2 打开调试串口,设置波特率

打开调试串口,波特率设置为1500000
image.png

5.5.3 写入bizGroup

命令:factory ATE_SET_KV_COMMON bizGroup xxxxxx\r
image.png
image.png

5.5.4 写入bizType

命令:factory ATE_SET_KV_COMMON bizType xxxxx\r
image.png
image.png

5.5.5 写入蓝牙ID

命令:factory ATE_SET_KV_COMMON NetConfigID xxxx\r
image.png
image.png

5.5.6 写入mac地址

命令:factory ATE_SET_WMAC xx:xx:xx:xx:xx:xx\r

image.png
image.png

5.5.7 写入secret_key

命令:factory ATE_SET_SECRETKEY_MD5 xxxxxxxxxx xxxx\r

image.png
image.png