在 Seeeduino Cloud 或 Arduino YUN 中使用 Azure IoT SDK - xiongyihui/get_started_with_azure_iot_sdk GitHub Wiki
- 下载 azure-iot-sdks
git clone --recursive https://github.com/Azure/azure-iot-sdks.git
注意参数 --recursive
,因为这个 git 仓库依赖 几个 submodules,需要一同 clone 下来
- 解决cmake和gcc版本问题
Azure IoT SDK 要求 cmake 版本 3.x,gcc 版本 4.9+ (gcc 是用于编译 linux-desktop 版本 sdk,编译 arduino yun 可以不用)。 如果是 Ubuntu 14.04,默认的软件源里面的 cmake 和 gcc 版本太低,可以通过 ppa 安装新的版本:
sudo add-apt-repositoryppa:george-edison55/cmake-3.x # cmake ppa
sudo add-apt-repository ppa:ubuntu-toolchain-r/test # gcc ppa
sudo apt-get update
sudo apt-get install cmake
sudo apt-get install gcc-4.9 g++-4.9
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.9 60 --slave /usr/bin/g++ g++ /usr/bin/g++-4.9
- 安装其他工具和编译
cd c/build_all/arduino
./setup.sh
./build.sh
- 在 arduino yun 或 seeeduino cloud 中运行 azure iot demo
经过上面的步骤,会生成 ~/openwrt/sdk/build_dir/target-mips_r2_uClibc-0.9.33.2/azure-iot-sdks-1/serializer/samples/simplesample_http/simplesample_http
,用 scp 拷贝 simplesample_http
到 openwrt 中。
要运行 simplesample_http
还需要安装 ca-certificates
,登陆到 openwrt,运行:
cd /tmp
wget http://downloads.openwrt.org/snapshots/trunk/ar71xx/generic/packages/base/ca-certificates_20160104_all.ipk
opkg install ca-certificates_20160104_all.ipk
opkg 安装 ca-certificates 会有一个错误信息提示(return code 127),忽略就好。
然后就可以运行 simplesample_http
了。
- 编译 amqp demo
打开 c/build_all/arduino/Makefile.iot
,将文件中 -Duse_amqp:bool=OFF
改成 -Duse_amqp:bool=ON
,重新运行 c/build_all/arduino/build.sh
就可以生成应用 ~/openwrt/sdk/build_dir/target-mips_r2_uClibc-0.9.33.2/azure-iot-sdks-1/serializer/samples/simplesample_amqp/simplesample_amqp
,将应用传到 openwrt 中运行即可。