轻松掌握鸿蒙开发板外设

业界普遍认为物联网将是下一个爆点,生态圈会有上千亿美金的市场,而鸿蒙应该会成为这个市场的主角。

liteos-a是为物联网造出的一个轻量级内核,设计精巧,支持MMU,支持内核/APP空间隔离。支持POSIX接口,使得大量开源软件能够在liteos-a上直接使用,启动速度非常快。

10.28 晚8:00,我们将举办一场直播公开课,主题为《轻松掌握鸿蒙开发板外设控制》,这次我们主要基于liteos-a内核进行讲解。
本次直播的目的是让大家能够基于开发板快速上手鸿蒙操作系统,通过几个小案例让你快速轻松的上手鸿蒙设备开发。在直播间,老师会为你答疑解惑,以及如何基于已有的知识快速学习新的系统开发技能。

# >>>戳我报名<<<

你是否有这样的困惑?
1、想学习鸿蒙却不知从何学起?
2、理论知识扎实却不知如何上手操作?
3、学习中的疑问无从获得解答?
4、独自学习无人讨论?

放心,你的这些困惑,来直播间,帮你逐一解决。

课程亮点:
1、专业讲师 讲解+演示+答疑
2、结合案例具体讲解
3、快速上手鸿蒙设备开发
4、专业指导,不走弯路

直播课程大纲:

  1. Hi3861开发框架简介
  2. LED灯控制示例(案例讲解)
  3. 按键事件响应(案例讲解)
  4. 蜂鸣器控制示例(案例讲解)

适合人群:
学生、软件工程师、硬件爱好者

讲师介绍:
唐佐林-狄泰软件学院创始人

1.2005年毕业于东南大学计算机科学与工程系,同年保送南京理工大学模式识别与智能系统重点实验室学习计算机视觉。
2.2007年获取硕士学位(研究成果已申请专利,《全天时结构化道路多行道线检测方法》,公开号:CN101469991)
3.同年加入摩托罗拉中国研发中心南京分公司,担任CDMA手机研发工程师,负责摩托罗拉CDMA系列手机UI库的开发与设计,以及显示屏驱动的开发
4.2009年转入摩托罗拉中国研发中心成都分公司,担任Digital Radio对讲机研发工程师,负责蓝牙协议栈以及蓝牙驱动的开发
5.2010年凭借优秀的开发能力组建并加入摩托罗拉Diagnostic Tools Team
6.2013年正式成为摩托罗拉Diagnostic Tools Team软件架构师,负责所有诊断工具软件的架构,设计与开发
7.2016年离开摩托罗拉中国研发中心,全职进行课程研发,技术分享

学习有礼:
扫码免费报名+到会看直播,抽官方定制周边!
官方定制T恤等你来拿!还有机会赢取HarmonyOS官方开发板

树莓派计算模块CM4上市,最低单价25美元

树莓派基金会近日发布了第四代树莓派计算模块 —— Raspberry Pi Compute Module 4。

共有 32 个具体型号,售价从 25 美元起。最低配置 1GB RAM/Lite/无无线版本,最高配置 8GB RAM/32GB Flash/无线增强版,90 美元。对应着 4 种不同内存和是否有无线通讯功能。

CM4 核心模块配置如下:

1.5GHz 4 核心 64-bit ARM Cortex-A72 CPU
VideoCore VI 图形,支持 OpenGL ES 3.x
H.265 (HEVC) 4Kp60 视频硬解码
H.264 (AVC) 视频 1080p60 硬解码和 1080p30 硬编码
双 HDMI 接口分辨率高达 4K
单通道 PCI Express 2.0 接口
双 MIPI DSI 显示器和双 MIPI CSI-2 摄像头接口
1GB, 2GB, 4GB 或 8GB LPDDR4-3200 SDRAM
可选 8GB, 16GB 或 32GB eMMC Flash 存储
可选 2.4GHz 和 5GHz IEEE 802.11b/g/n/ac 无线网卡和蓝牙 5.0
支持 IEEE 1588 的千兆以太网 PHY
28 个 GPIO 引脚,6 个 UART、6 个 I2C 和 5 个 SPI

详细价格表:


为配合计算模块核心使用,官方推出了一款新的 IO 板。

配置如下:

两个全尺寸 HDMI 接口
千兆以太网接口
两个 USB 2.0 接口
MicroSD 卡插槽(仅 Lite 有)
PCI Express Gen 2 x1 插槽
带有 40 针脚的 GPIO 接口
12V 输入接口(如果不使用 PCIe,可支持最高 26V)
摄像头和显示器 FPC 接口
实时时钟

IO 板的官方定价为 35 美元。

这是迄今为止性能最强的树莓派计算模块,性能远超之前的树莓派 CM3+。基金会表示每年销售的 700 万个树莓派产品中,有超过一半的产品被用于工业和商业应用。

手把手教你,用App配置鸿蒙开发板网络

2020年10月20日(周二,晚20:00),连志安将做一场直播,主题是《如何用手机App配置鸿蒙开发板网络》。

需要说明的是,本人实现这个功能主要是用于学习,所涉及知识包括Hi3861的WiFi操作,AP模式、STA模式、按键功能、网络编程、JSON数据格式、手机APP开发。

免费报名,请戳:https://harmonyos.51cto.com/activity/10

先上原理:

目前主流的 WIFI 配置模式有以下 2 种:

1、智能硬件处于 AP 模式(类似路由器,组成局域网),手机用于 STA 模式

手机连接到处于 AP 模式的智能硬件后组成局域网,手机发送需要连接路由的 SSID 及密码至智能硬件,智能硬件主动去连接指定路由后,完成配网

2、一键配网(smartConfig)模式

智能硬件处于混杂模式下,监听网络中的所有报文;手机 APP 将 SSID 和密码编码到 UDP 报文中,通过广播包或组播报发送,智能硬件接收到 UDP 报文后解码,得到正确的 SSID 和密码,然后主动连接指定 SSID 的路由完成连接。

本直播主要讲如何实现第一种AP方式。

AP 是 (Wireless) Access Point 的缩写,即 (无线) 访问接入点。简单来讲就像是无线路由器一样,设备打开后进入 AP 模式,在手机的网络列表里面,可以搜索到类似 TPLINK_XXX 的名字(SSID)。

连接步骤:

1、Hi3861 上面有一个user按键,用户可以按下这个按钮,Hi3861会进入 AP 模式

2、手机扫描 WIFI 列表:扫描到Hi3861的SSID(目前是“Hispark-WiFi-IoT”)连接该智能硬件设备,通过手机APP发送我们要连接的热点的ssid和密码

3、Hi3861通过 UDP 包获取配置信息,切换网络模式连接 WIFI 后配网完成

具体代码实现过程,届时直播,免费报名请戳:https://harmonyos.51cto.com/activity/10

《学习有礼》

参加HarmonyOS公开课,抽官方定制周边,官方定制T恤等助学好礼等你来拿!

还有机会赢取HarmonyOS官方开发板(HiSpark Wi-Fi IoT 智能家居套件)(图片仅供参考,以实物为准)

Nvidia推出售价59美元的Jetson Nano 2GB开发板

自从第一台Raspberry Pi于2012年问世以来,单板计算机就变得越来越流行。

比如Nvidia这样的硬件大厂都在生产Jetson系列小型开发板。

其中 Jetson Nano是一款功能强大的小型计算机,专为支持入门级边缘 AI 应用程序和设备而设计。

完善的 NVIDIA JetPack™ SDK 包含用于深度学习、计算机视觉、图形、多媒体等方面的加速库,可助大家轻松上手。

2019年3月,NVIDIA发布的99美元的Jetson Nano

该开发板预装Ubuntu 18.04LTS系统,搭载英伟达研发的128核Maxwell GPU,可以将AI技术应用于各种智能设备。着实惊艳了一把。

2020年这款,价格更便宜,59美元。不过内存也相应少了2GB,去掉了板载存储。

目前树莓派的2GB版本是45美元,4GB内存版本是55美元。

Jetson Nano这个定价让它与高配的树莓派机型有了更直接的竞争,而英伟达表示,Jetson Nano还支持单接树莓派的高质量摄像头(谜之微笑)。

Mini Raspberry Pi ——受波士顿动力启发的四足机器人

波士顿动力的机器狗,每次升级都会让大家眼前一亮。

波士顿动力-机器狗

但大家能不能用开源软件DIY一只呢?

一个外国朋友就在Raspberry Pi 3B的基础上开发了“Spot Micro”四足机器人。

树莓派开发的机器狗

通过构建此项目,redditor/thetrueonion(又名Mike)用C++和Python自学机器人软件开发,让机器人行走并掌握速度和方向控制。

Mike受到了Spot的启发,而Spot是波士顿动力公司为工业开发的机器人之一,可以执行远程操作和自主感应。

它如何行走?

迷你“Spot Micro”机器人通过键盘调整三轴角度命令/身体姿势控制模式,可以实现“步行状态”或“小跑状态”。

前者是一种四阶段步态,一次有两条腿对称运动(就像小跑)。

后者是八阶段步态,一次腿部摆动,并且在两者之间进行身体移动以保持平衡(就像人类走路一样)。

在此广泛的演练中,Mike分解了如何使机器人行走,并按顺序将舵机连接到PCA9685控制板。

操作系统和框架

Ubuntu 16.04 + ROS

用到那些零件?


1、树莓派3B
2、舵机控制板:PCA9685,通过I2C控制
3、舵机:12×PDI-HV5523MG
4、液晶面板:16×2 I2C液晶面板
5、电池:2s 4000 mAh锂电池,直接连接至电源伺服器
6、UBEC:HKU5 5V/5A ubec,作为5V稳压器为Raspberry Pi,LCD面板,PCA9685控制板供电
7、“Spot Micro”的Thingiverse 3D打印文件

代码地址:

https://github.com/mike4192/spotMicro

美针对华为新动作:38家子公司被列入实体清单

特朗普政府还在针对华为采取行动!据俄罗斯卫星通讯社最新消息,当地时间17日,美国国务卿蓬佩奥在一份声明中表示,美国商务部进一步收紧了对华为获取美国技术的限制,同时将华为在全球21个国家的38家子公司列入“实体清单”。

具体名单如下:

Huawei Cloud Computing Technology;
Huawei Cloud Beijing;
Huawei Cloud Dalian;
Huawei Cloud Guangzhou;
Huawei Cloud Guiyang;
Huawei Cloud Hong Kong;
Huawei Cloud Shanghai;
Huawei Cloud Shenzhen;
Huawei OpenLab Suzhou;
Wulanchabu Huawei Cloud Computing Technology;
Huawei Cloud Argentina;
Huawei Cloud Brazil;
Huawei Cloud Chile;
Huawei OpenLab Cairo;
Huawei Cloud France;
Huawei OpenLab Paris;
Huawei Cloud Berlin;
Huawei OpenLab Munich;
Huawei Technologies Dusseldorf GmbH;
Huawei OpenLab Delhi; Toga Networks;
Huawei Cloud Mexico;
Huawei OpenLab Mexico City;
Huawei Technologies Morocco;
Huawei Cloud Netherlands;
Huawei Cloud Peru;
Huawei Cloud Russia;
Huawei OpenLab Moscow;
Huawei Cloud Singapore;
Huawei OpenLab Singapore;
Huawei Cloud South Africa;
Huawei OpenLab Johannesburg;
Huawei Cloud Switzerland;
Huawei Cloud Thailand;
Huawei OpenLab Bangkok;
Huawei OpenLab Istanbul;
Huawei OpenLab Dubai;
Huawei Technologies R&D UK

美国国务院官网声明截图

在美国国务院官网发布的声明中,蓬佩奥称,“国务院强烈支持商务部今天扩大其外国直接产品规则,这将阻止华为通过‘替代芯片生产’与‘提供用从美国获得的工具生产的现成芯片’来规避美国法律。”

美国商务部官网截图:商务部进一步限制华为获取美国技术,同时将另外38家子公司列入“实体清单”

用树莓派驱动的青蛙泡泡机

吹泡泡机可能大家小时候都玩过,加满肥皂液,接上电源以后,它就会自动吹出泡泡。

现在有了树莓派,可以把它改成互联网控制的自动泡泡机了。

改造之前,泡泡机由手动开关控制,该开关可打开或关闭青蛙体内的电机。如果你想看到电机驱动青蛙吹出泡泡,则需要自己轻触此开关。

几个国外的创客制作了这款自动泡泡机,该机器由树莓派供电和控制,并且可以通过互联网启动。

他们选择了青蛙形的泡泡机,但你可以根据自己的喜好重新调整。改造使用两节AA电池运行的模型会更容易。

在解剖了“塑料两栖朋友”之后,他们通过继电器模块将其电机连接到Raspberry Pi。他们分享了相关的技术细节,可将继电器模块连接到Raspberry Pi的GPIO引脚。

相关技术介绍:

https://tutorials-raspberrypi.com/raspberry-pi-control-relay-switch-via-gpio

现在,我们可以用代码打开和关闭青蛙体内的马达。

通过在:

https://remo.tv/join/rffrwxr

这个地址登录,命令Raspberry Pi打开泡泡机的开关。

为了让互联网泡泡迷们看到一键劳动的成果,我们设置了Raspberry Pi摄像头模块,并将其构建的装置连接到机器人流媒体平台remo.tv。

别忘了加肥皂水。

用料清单:

泡泡机(最好是用两节AA电池运行的那种)
树莓派
5V继电器模块
Raspberry Pi摄像头模块
Remo.tv帐户
跳线

剩下的问题是:最好的泡沫肥皂配方是什么?

来自:​Raspberrypi.org

编译:王文文

OWL 项目:努力让大家在灾难中保持联络

当自然灾害破坏了传统的通信连接时,配置在多跳网络mesh network的物联网设备可以迅速部署以提供基本的连接。

OWL项目负责人在最近的开源峰会上说,一个以多跳网络、物联网和 LoRa 连接为中心的开源项目可以帮助急救和受灾人员在遭难后依然保持联系。

OWL项目的应用场景:当自然灾害频繁发生导致蜂窝网络和有线网络大范围中断以后,依然可以通过某种方式提供急救服务、供给或者可以解决关键问题的信息流。

该项目通过一大群“鸭子duck”(便宜、易于部署且不需要现有基础设施支持的小型无线模块)实现这个目的。一些“鸭子”是太阳能的,其它一些则用的是耐用电池。每只“鸭子”配备一个 LoRa 通信模块,用于在网络上和其它“鸭子”进行通信,同时配备有 Wi-Fi,而且可以加装蓝牙和 GPS 来实现其他功能。

这个想法是这样的,当网络瘫痪时,用户可以用他们的智能手机或者笔记本电脑与“鸭子”建立一个 Wi-Fi 连接,这个“鸭子”可以将小块的信息传递到网络的其他部分。信息继续向网络后端传递,直到到达“鸭子爸爸papaduck”,“鸭子爸爸”装备了可以与云上 OWL 数据管理系统连接的卫星系统(OWL 代表 “组织organization位置whereabouts物流logistics”)。信息可以通过云计算在智能手机或者网页上进行可视化,甚至可以通过 API 插入到现有的系统。

秘密在于“鸭群ClusterDuck” 协议,即使在一些模块不能正常工作的网络中,它仍然能保持信息流通。将其集成到一个开源固件,然后跑在大量便宜且容易获取的计算硬件上,类似树莓派,这样可以更容易且更快捷的建立一个“鸭群”网络。

创始人 Bryan Knouse 表示,这个项目的创建,是因为在 2017 年和 2018 年的毁灭性飓风中,要与受影响社区进行有效通信面临巨大的困难。

“我们的一些创始成员经历了这些灾难,然后我们会问自己:该做些什么?”,他说道。

在马亚圭斯,该项目吸引了一批来自波多黎各大学的学生和教授,大多数的系统测试都在那里进行。Knouse 说,校园中目前有 17 个太阳能“鸭子”,分布在屋顶和树上,并且计划增加数量。

他说,“这种合作关系实际上等于创建了一个开源社区,这些学生和教授正在帮助我们开发这个项目。”

该项目官方网站:https://www.project-owl.com/

如何为树莓派设置SSH的双因素认证

如今,启用双因素身份验证(2FA)来增强帐户的安全性变得越来越普遍。

但是你可能会好奇怎么在Raspberry Pi上启用2FA。当你通过Secure Shell(SSH)远程访问树莓派时,系统将要求你先输入动态验证码。

通过SSH访问Raspberry Pi

很多人在家中将Raspberry Pi用作文件或媒体服务器。随着Raspberry Pi 4的发布,这种情况已经相当普遍,它配备了USB 3.0和千兆以太网。

如果你打算将Raspberry Pi塞到电视后面或其他地方,这意味着你需要在没有监视器,键盘或鼠标的情况下启用S​​ecure Shell(SSH)进行远程访问。

但是,出门在外也想访问文件的需求很常见,所以从Internet访问Raspberry Pi是一件有风险的事。

如果你要对Internet开放你的树莓派服务器,那肯定要增加一些安全性,比如使用基于时间的一次性密码(TOTP)或启用双因素身份验证(2FA )。

什么是双因素身份验证?

双因素身份验证是额外的保护层。是除了密码之外,还需要另一条信息才能登录。

如果说第一个因素是“你知道的东西”,那第二个因素将基于“你拥有的东西”(例如智能手机),就像生物特征信息一样。

我们将继续设置,并将智能手机用作保护Raspberry Pi的第二个因素。

更新操作系统

你应该做的第一件事是确保你的Raspberry Pi OS保持最新。如果你正在运行不够新的操作系统,则可以在命令行操作:

$ sudo apt-get update
$ sudo apt-get full-upgrade

启用安全的Shell​

Raspbian操作系统在启动时禁用了SSH服务器,如果我们希望通过SSH访问Raspberry Pi,则需要启用它。

启用S​​SH最简单的方法是先进Raspbian桌面,找到菜单,然后选择“首选项”,Raspberry Pi配置。接下来,选择“Interfaces”选项卡,然后单击按钮启用SSH,再点“确定”。

你还可以在命令行启用它:

$ sudo systemctl enable ssh 
$ sudo systemctl start ssh

另外,你可以用raspi-config启用S​​SH ,如果你是首次安装操作系统,也可以在写SD卡时启用S​​SH 。

启用挑战响应

接下来,我们需要告诉SSH守护程序启用“挑战响应”密码。继续打开SSH配置文件:

$ sudo nano /etc/ssh/sshd_config

通过将ChallengeResponseAuthentication从默认的no更改为yes来启用挑战响应。

重启SSH服务

$ sudo systemctl restart ssh

在你的笔记本电脑上打开一个终端,确保你仍然可以SSH到你的树莓派——尽管你还没有被提示输入2FA代码。在这个阶段检查是否一切正常是明智的。

安装双因素身份验证App

你需要做的第一件事是将应用程序下载到手机,该应用程序将生成TOTP。Google身份验证器是最常用的一种。它可用于AndroidiOSBlackberry,甚至在GitHub上也有该应用程序的开源版本。

App Store中的Google Authenticator

因此,请继续在你的手机上安装Google Authenticator或另一个2FA应用程序,例如Authy。然后,在Raspberry Pi上安装Google Authenticator PAM模块。

$ sudo apt install libpam-google-authenticator

现在我们在手机和Raspberry Pi上都安装了2FA,已经准备好进行配置。

配置两因素身份验证

现在,你应该在Raspberry Pi上运行Google Authenticator而不使用sudo来生成QR码:

$ google-authenticator

之后,你可能需要调整“终端”窗口的大小,以便正确显示QR码。不幸的是,它比标准的80个字符略宽。

google-authenticator生成的QR码

此刻先不要下一步! 在执行其他任何操作之前,你应该复制紧急代码并将其放在安全的地方。

这些代码使你可以在丢失手机的情况下访问Raspberry Pi,并关闭2FA。没有它们话,如果你丢失或破坏了用于身份验证的设备,则将无法通过SSH访问Raspberry Pi。

接下来,在我们继续使用Raspberry Pi上的Google Authenticator之前,请在手机上打开Goog​​le Authenticator应用,点击右上角的加号(+),然后点击“扫描二维码”。

手机将询问你是否允许该应用访问你的相机;选择“是”,相机镜头将打开,将二维码放置在屏幕上的绿色框中。

使用Google Authenticator应用程序扫描QR码

手机应用程序识别出QR码后,就会添加你的新帐户,并会自动开始生成TOTP代码。

Google Authenticator应用中的TOTP

你的手机将每三十秒生成一次新的TOTP密码。但是,直到我们完成你在Raspberry Pi上所做的工作,此验证码才有用。

切换到终端窗口,并在询问Google Authenticator是否更新你的.google_authenticator文件时回答“Y” 。

然后回答“Y”以禁止多次使用相同的身份验证令牌,“N”以增加时间偏移窗口,“Y”以限制速率,以防止暴力攻击。

接下来,我们要做的就是启用2FA。

启用双因素身份验证

我们将使用Linux可插拔身份验证模块(PAM),它为应用程序和服务提供动态身份验证支持,以便在Raspberry Pi的SSH上添加2FA。

现在我们需要配置PAM以添加2FA:

$ sudo nano /etc/pam.d/sshd

将必需的auth pam_google_authenticator.so添加到文件顶部。你可以在显示@include common-auth的行上方或下方执行此操作。

编辑/etc/pam.d/sshd

由于我希望在输入密码后提示输入验证码,因此我在@include行之后添加了这一行。如果要在输入密码之前提示输入验证码,则应将其添加到@include行之前。

现在重新启动SSH守护程序:

$ sudo systemctl restart ssh

接下来,在笔记本电脑上打开一个终端窗口,然后尝试用SSH访问Raspberry Pi。

收尾

如果一切都按计划进行,那么当你通过SSH访问Raspberry Pi时,输入密码后应该提示你输入TOTP。

用SSH访问我的Raspberry Pi

继续打开手机上的Google身份验证器,然后在出现提示时输入六位验证码。登录Raspberry Pi。

无论是SSH还是SCP,设备的安全性都大大提高了。

现在,你已经在手机上装好Google Authenticator应用程序,可以为重要的服务和网站(例如Google,Twitter,Amazon等)启用2FA了,因为大多数网站都已支持双因素验证。

作者:Alasdair Allan

来自:Raspberrypi.org