用Ngrok穿透防火墙访问内网的树莓派

通常在公网要访问一台内网的设备,比内网互相访问要麻烦。原因不一定是防火墙阻碍,而是内网设备一般都没有公网IP。

那你想用家里的电脑访问办公室电脑中的文件或其他资料的话该怎么办?我们是否有一些高效的办法来访问路由器或防火墙背后的联网设备?

大家可能会想出改路由规则、配置防火墙等等方法。但是很多公司的路由和防火墙是不允许普通员工登陆调试的。

这里要介绍一个叫做Ngrok的服务,它几乎允许我们跨网络(LAN/WAN)连接任意设备。

假设我们要从外网访问内网一个树莓派的SSH服务,我们需要先拥有一个Ngrok网站的一个帐号,然后为树莓派下载正确的Ngrok程序,执行相关命令,就可以获得一个公网地址了。

具体操作如下:

1、访问 https://dashboard.ngrok.com/user/signup 并注册帐号。

完成账号注册后,你会得到一个令牌字符串,你等会需要使用这个字符串来认证你的树莓派。

2、部署Ngrok

让你的树莓派下载Ngrok:

wget https://bin.equinox.io/c/4VmDzA7iaHb/ngrok-stable-linux-arm.zip

解压,得到一个名叫“ngrok”的文件。

3、让树莓派先做一下认证。

./ngrok authtoken 你得到的令牌字符串

4、运行Ngrok,把树莓派的SSH服务映射到公网。

./ngrok tcp 22

现在,你将会看到如下所示的信息:

上图表示,TCP 连接到“0.tcp.ngrok.io:12119”的访问都将指向我这个树莓派的22端口。

5、用Putty登录0.tcp.ngrok.io,看看是否可以从公网访问树莓了。

OK,搞定了。快试试网速怎么样。

注:如果要固定访问地址,需要额外付费。如果只是临时用用,免费版的足够。有任何问题和建议欢迎给“IoT前哨站”微博或微信公众号留言。

OpenEyeTap:基于树莓派的开源AR智能眼镜

这一款EyeTap智能眼镜,使用3D打印组件,内置光学微型显示器,微型摄像头和带wifi功能的树莓派Zero W。具有电子记录功能(类似车载记录仪)和快照功能。

以下是项目团队对该项目的说明。

欢迎各位了解Open EyeTap项目!我们是一个具有雄心壮志的创作团队,致力于打造世界上最灵活的智能眼镜和可穿戴增强现实的社区。我们希望提供一个框架使AR技术可以蓬勃发展。我们希望与世界各地的设计师分享我们的EyeTap。作为一个社区,我们可以共同改进这种开源技术。

我们在这个项目中的主要目标是简化EyeTap的构建。我们希望它能帮助您建立自己的体系和减少进入AR领域的障碍。也希望你会找到有趣的功能和设计(也许是符合你生活方式的特定功能),都可以添加和分享到我们的网站:openeyetap.com!我们相信,作为一个社区,我们都可以成为开发第一波开源增强现实式眼镜不可或缺的有力臂膀。

下面我们详细介绍这款造价不到200美元的EyeTap的DIY步骤,你就可以打造同款了。简而言之,我们将使用3D打印组件,内置光学微型显示屏,微型摄像头和带wifi功能的树莓派 Zero W。我们目前开发了一种可以用EyeTap运行的电子记录功能(类似车载记录仪),更多其他模块和功能即将推出。

功能1:记录功能(Dash-camera)+ 快照功能

1、按下#1时,可拍摄照片。
2、按下#2时,可视频拍摄。按下按钮可保存1分30秒前的画面和后30秒的画面。如果连接到无线网络,将自动上传到你的YouTube频道。如果你的EyeTap未连接到WiFi,则保存到本地SD卡。

什么是记录功能?

车载摄像头在汽车中很常见,可以记录事故或异常事件。它们在循环缓冲区中运行,不断记录和覆盖旧的影像资料。在类似的运行基础上,我们可以从自己的视角拥有个人的视频纪录。如果你目睹或卷入任何意外事件,或着是想记录有趣或难忘的时刻,都可以按下按钮保存纪录。

当按下按钮#2时,最近的1分30秒,和按下按钮30秒后都将记录并保存为一个视频文件。如果连接到无线网络,这将自动上传到你的YouTube频道,如没有连接WiFi的情况下,则会本地保存。

步骤1:项目所需材料

需要3D打印部件(项目文件库中包含STL文件)

1x 3D打印头架
1x 3D打印左耳机
1x 3D打印右耳机
1x 3D打印鼻夹
1x 3D打印树莓派zero外壳
1x 3D打印树莓派zero盖子
1个3D打印的微型屏幕外壳
1个3D印刷的微型屏幕电路外壳

你可以选择水平或垂直的版本。本项目中,我们将使用水平版本,尽管照片中显示的是垂直的。

所需的电子和机械零件

树莓派Zero W × 1
微型显示屏 × 1
微型摄像头 × 1
微型摄像头Flex适配器 × 1
微型摄像头连接到树莓派的软排线 × 1
鼻夹片和1.5mm螺丝 × 1
分光镜 × 1
35cm电线 × 4
15cm电线 × 4
按钮 × 2

所需的工具

16mm M2螺丝 × 8
14mm M2螺丝 × 2
12mm M2螺丝 × 4
10mm M2螺丝 × 1
8mm M2螺丝 × 3
1.5mm螺丝用于固定鼻夹 × 1
螺丝刀 × 1
钳子 × 1
焊接用具 × 1
热熔胶 × 1

步骤2:3D打印EyeTap部件

如果你可以在家中,学校或附近的公共图书馆使用任何类型的3D打印机,则可以下载本项目文件库中的STL文件并自行打印部件。

如何成功3D打印部件,这里可以提供一些技巧。

1、100%填充所有部件,特别是头部带状框架,20%的填充物太脆弱,不适合玩耍。
2、如果打印正确,则不需要支撑材料的部件有:头部框架、微型显示屏、电路外壳、树莓派外壳和盖子。
3、需要支撑材料的部件有:耳塞,显示器外壳,鼻托支架。

步骤3:组装EyeTap框架

1、打印好组件后,先卸下支撑材料。多余的材料可以用在耳机支架和微型显示屏外壳上。
2、将右耳机滑动到头部框架上,组装EyeTap架。
3、从末端数起,听筒应位于第二个凹槽。
4、听筒应朝使用者头部内侧弯曲。使用两颗螺钉(M2x16mm)和螺母将听筒固定在头框上。重复使用左听筒。

步骤4:组装微型显示屏

1、将M2x8mm螺钉嵌入微型显示屏组件的中心部分。
2、将微型显示屏装入3D打印的微型显示屏外壳中。微型显示屏的两个突出接口应该插入外壳内,插入时稍许用点力。
3、将电路板固定在3D打印的电路板外壳中。让黄色部分自然弯曲在外壳的底部。之后,用螺丝将电路板外壳固定在微型显示屏外壳上。
4、使用三个螺钉(两个M2x8mm和一个M2x10mm),将分束器固定到微型显示屏模块上。
5、使用两个M2x12mm螺丝将模块固定在EyeTap头框上。

步骤5:组装鼻托模块

1、将金属鼻托插入3D打印的鼻托支架中,用螺丝固定。
2、将两个鼻片插入金属鼻托,并用螺丝拧紧。
3、在所有硬件连接并集成到框架上之前,请先不要固定鼻托模块。接线完成后,将鼻托放在EyeTap头框上并用M2x12mm螺丝固定。鼻托部件突出于头部框架,朝着使用者的方向安装。

步骤6:使用微型摄像头构建树莓派模块

如图所示,连接软排线,带电线PCB板、微型摄像头和树莓派。确保树莓派和PCB板两端的蓝色面朝上。确保微型摄影机排线的银色面朝上。

步骤7:将微型显示屏连接到树莓派Zero W

1、微型显示屏附带的连接器总共有7根导线,其中只使用4根。如图所示,每端使用2根电线,并将其他3根电线切断。
2、每根导线都有颜色编码,并具有以下功能。
红线:电源
黑线:地线
白线:另一个地线
橙线:视频传送线
3、同样你还需要准备4根35cm长的黑色导线。你可以先放弃3根,或以备留用。这4根黑色导线将用于将树莓派连接到微型显示屏的连接器上。
4、将四根彩色导线焊接到35cm长的四根黑色导线上。
5、如图所示将四根黑色导线焊接到树莓派。
6、将微型显示屏的连接器插入到微型显示屏,并将黑色导线穿过头部框架内侧并返回到树莓派。框架内侧的标签用于容纳和保护电线。
7、将树莓派放入它的机箱内。

步骤8:将按钮连接到树莓派Zero W

1、 两个按钮将连接到树莓派,其中一个(#1)用于“拍照功能”,另一个(#2)用于“Dash-Cam视频功能+ YouTube上传功能”。
2、准备两个按钮,两个10k电阻和四根15cm长的电线。
3、 按原理图所示连接按钮。按钮#1连接到GPIO 17,接地用于图片功能。按钮#2连接到GPIO 18,接地用于Dash-Cam功能。
4、图片中包含树莓派Zero GPIO图。黄色突出部分是使用部分,标出以供参考。

步骤9:集成硬件和其他机械零件

1、将树莓派Zero W插入3D打印的树莓排机箱中。确保按路线安装好微型显示屏的连接器,将按钮置焊接到树莓排外壳上。
2、将电线安装在头部框架的内侧,一直延伸到微型显示屏。
3、将连接器插入微型显示屏电路板。现在连接树莓派,以便屏幕显示输出。
4、将树莓派机箱固定在头部框架的左侧末端。
5、将微型摄像机安置在头部框架外表面。用强力胶将微型摄像机粘到EyeTap的主框架上。它应该位于用户鼻子的上方,与用户眼睛的朝向相同。
6、在树莓派机箱内轻轻折叠微型摄像机。用树莓派机箱上的4个M2螺丝将树莓派机箱盖固定在机箱上。
7、用热熔胶固定好两个按钮。

EyeTap的组装工作已完成

所有硬件组件都符合人体工程学的机械装配,现均已正确连接。唯一缺少的组件是软件。此时,如果你知道如何使用树莓派和Python,那么你已经完全有能力编写自己的所要的功能。线上有丰富的资源和无限想法,这正是我们最终建立自己的Wearable AR社区的原因,我们可以共享自己的新项目供其他人试用。但是,如果你想测试我们现有的程序,请参阅接下来的2个步骤!

步骤10:软件#1 纪录功能(dashcam) +快照功能

你下载和“即插即用”的第一个选项是记录功能(dashcam) +快照功能。你可以使用预先配置好了的Raspbian系统镜像。

自动执行程序

提供的图像具有设置为自动启动dashcam的功能——在任何时候按下ctrl + c可终止此过程,并禁止自动删除或编写/home/pi/.bashrc file ”中的“python /home/pi/Eyetap/dashcam/dashcam.py”。

在dashcam文件夹中提供了一个名为autostart.sh的脚本,该文件夹可自动设置为自动启动dashcam功能(如果它尚未设置为自动启动)。

通过运行命令/home/pi/Eyetap/dashcam/autostart.sh来执行此操作。

将EyeTap连接到你的YouTube频道

dashcam代码被设置为自动上传到YouTube,但它需要你的个人YouTube账号。当第一次运行代码时,它应该通过网页浏览器将你重定向到YouTube,你可以安全地输入你的YouTube登录账号。然后它会生成一个.youtube-upload-credentials.json文件,你可以将其放在你的主目录(/home/pi)中。你还可以更改上传视频的标题和说明以及代码中所述的分辨率,帧率和视频长度等参数。

步骤11:启动EyeTap!

完成SD卡设置后,将其插入树莓派Zero W。为EyeTap提供电源,连接电源——将Micro-USB插入树莓派Zero W上,将USB连接到便携式电池(任何可连接到手机充电器的便携式电池都可以)。将便携式电池放入你的口袋中,在EyeTap运行时可随身移动!

本项目所需的资源可在项目文件库中找到:
http://maker.quwj.com/project/45

来自:树莓派实验室

Google I/O 开发者大会:Android Things 1.0问世

虽然今年的Google I/O 开发者大会谈了很大篇幅的AI,但是IoT物联网还是有一席之地的。

Android Things 作为 Google 旗下的一款操作系统 (OS),能够帮助开发者规模化开发和维护物联网设备。从2016年12月开始到2018年5月发布正式版之前,已经有过7个开发者测试版。

与标准版 Android 相比,Android Things 属于相对精简的那种,以便在有限的硬件上运行(最低 32MB RAM,往上可支持 2GB RAM)。

在今年的 CES 大会上,Google宣布联想、哈曼 (Harman)、LG 以及 iHome 已经在研发由 Android Things 驱动的搭载谷歌智能助手 (Google Assistant) 的产品。

此前推出的开发者预览版的 SDK 下载次数已经突破 10 万,Google宣布 Android Things 1.0 将在本周与各位开发者见面。

平台现添加对 3 种新系统模组 (System-on-Modules 或 SoMs) 的支持,并承诺在接下来的三年中提供长期支持,同时让开发者自行决定是否需要扩展支持,帮助他们更容易地设计出原型并推向市场。

而同时推出的 Android Things 控制台 (Android Things Console) 更是将简化产品开发推向极致,帮助开发者定期获取 Google 最新稳定性修复包以及安全升级包,从而实现从发布、管理到设备更新的无缝连接。而由 Android Things 驱动的 Polk Assist 扬声器也会马上与各位见面。

如果想立即体验 Android Things,大家可登录 Android Developers 官方文档以及新 Android Things 社区中心,探索工具包、样例代码和社区项目。

与此同时,Google还推出了 Android Things OEM 合作伙伴项目 (该项目名额有限),享受来自 Android Things 团队的技术指导与支持,打造更好的产品。

来源:Google

代号CVE-2018-9995,一大波DVR监控设备正面临攻击

DVR,全称为Digital Video Recorder(硬盘录像机),即数字视频录像机,相对于传统的模拟视频录像机,采用硬盘录像,故常常被称为硬盘录像机。

近日,一位阿根廷黑客发布了一款攻击验证工具,可以轻松获取多个厂商的DVR登录凭证,给予攻击者访问权限,并可查看已录制的视频。原理来自于2018年4月份,Fernandez发现的一个可通过“Cookie: uid = admin”标头来访问特定DVR控制面板的漏洞,被攻击后的DVR将会把管理员的明文密码暴露给入侵者。代号:DVR Login Bypass(CVE-2018-9995)。

攻击成功后的界面:

该工具下载地址:

https://github.com/ezelf/CVE-2018-9995_dvr_credentials

可被非法访问的控制面板:

受影响的设备有:

Novo
CeNova
QSee
Pulnix
XVR 5 in 1 (title: “XVR Login”)
Securus, – Security. Never Compromise !! –
Night OWL
DVR Login
HVR Login
MDVR Login

Shodan显示的潜在危险公网设备数量:

IoT前哨站 在此提醒各位正在使用上述设备的管理员和IT负责人,请尽快升级相关的设备固件或将相关设备的公网访问权限关闭,以免造成不必要的损失。

阿里全资收购先声互联 推动语音识别在IoT场景落地

2018年5月3日,阿里巴巴宣布全资收购北京先声互联科技有限公司(以下简称先声互联),先声互联创始人、中科院声学所前研究员付强也已经于近日入职阿里达摩院机器智能技术实验室,主要负责语音交互前端处理技术和方案的研发。

关于此次阿里的收购,付强表示主要是基于技术、人才的收购。据了解,先声互联是国内最早从事语音增强、远讲语音交互接口技术的团队,曾为阿里、百度、小米等多家公司提供远讲语音交互软硬件的解决方案。此次和付强一同入职的还包括先声互联创始团队的多名资深专家,他们多为付强在中科院的原班人马,有一位来自著名的杜比实验室。

自阿里巴巴于3月28日宣布IoT成为集团新的主赛道之后,阿里巴巴在物联网领域的动作就颇大。对于IOT战略,阿里巴巴CTO张建锋表示,必须要做资源可控、技术可控、拥有核心竞争力的事情。

因此,不久前阿里巴巴宣布全资收购中国内地唯一的自主嵌入式公司中天微系统有限公司,弥补了物联网芯片上面的短板;此次付强带领声学团队的加入,也将成为阿里IoT场景落地的重要一环。

据了解,付强加盟阿里巴巴后将整合资源,推动语音识别技术的场景落地,形成软硬结合、端云一体的商用方案。他还将筹建两个实体声学实验室。

“针对IoT化的智能家居的需求,我们正在研发基于小阵列语音增强技术的低功耗、低成本、高集成的端云一体语音交互技术和硬件方案。随着阿里在芯片上的战略布局,我们也会在语音专用芯片上有更多进展。”付强表示。

来自:每日经济新闻

在Raspberry Pi 3B上跑Resin balena容器引擎

物联网正在快速发展,它是智慧设备的高度互联网络,这些设备包括环境传感器、健康跟踪器、家用电器和工业设备等。到 2020 年,预计有 200 亿个设备将连入网络,这超过 PC、智能手机和平板电脑加起来的数量的两倍。开发人员正在快速开始为 IoT 创建应用程序,而使用容器可在不同方面为他们带来帮助。

容器是一种轻量型的虚拟化方法,开发人员可使用该方法快速、大规模地开发、测试、部署和更新 IoT 应用程序。此前也有许多 Web 和移动应用程序开发人员使用虚拟机管理程序(比如 VirtualBox)来运行虚拟机 (VM),在一个跨平台的开发、测试和部署工作流中虚拟化物理硬件。道理异曲同工,但容器肯定更轻量。

Balena就是这样一个基于“Moby”的轻量级开源容器引擎,可以兼容32位到64位多种ARM架构,精简又轻便。可以跑在树莓派上。

安装也非常简单,一个命令搞定。

curl -sfL https://balena.io/install.sh | sh

不过缺点也是有的,比如没有Swarm集群、插件、云日志、应用层网络、非boltdb支持的商店。当然在IoT场景中,这些特性的需求度不高。

我在树莓派3B上测试了这个容器引擎,感觉还挺方便。

以后balena将在ResinOS里代替Docker,相信其他一些Docker相关的初创公司也会慢慢走上这条道路。恩,我指的是各种基于Moby的容器引擎替代Docker的。

用TensorFlow和智能手机追踪雨林滥伐的Rainforest Connection

每年,全球温室气体排放的五分之一是由于森林滥砍滥伐造成,而在地球之肺——亚马逊、秘鲁、印度尼西亚等热带雨林地区,森林的“发际线”正在以惊人的速度后退,原因是疯狂的砍伐——其中90%都属于非法砍伐。

因此有效打击和遏制非法森林砍伐是改变和减缓全球气候变暖进程的最快,成本最低,效率最高的方法。在这场森林保卫战中,林下居民和当地部族部落显然是最合适的一线战斗人员。但是,面对广袤的森林,没有科技的武装,本地人也无法有效侦测和制止盗砍盗伐行为。

近日,一家智慧森林环保的NGO组织——Rainforest Connection,应亚马逊 Tembé部落的酋长Naldo  Tembé的请求,开发了世界上首款可自动识别盗伐行为的,可扩展、实时监控报警的热带雨林环保系统。

相关的设备

这个项目的难点之一是硬件必须能够适应湿热的热带雨林气候,Rainforest Connection公司设计的产品——Guardian设备,聪明地利用了热带雨林最大的资源——树木,将定制化的智能手机与太阳能供电面板(上图)隐藏在重点布控地区,通过当地的手机蜂窝网络向中央云计算服务器发送声音采样。

在树木顶端安防声音监控采样设备

声音数据进入云端后,Rainforest Connection使用谷歌机器学习框架TensorFlow来分析和审计数据,从中甄别电锯、木运卡车等与非法砍伐相关的声音,以防止人工监听遗漏信息。

为了将森林保护变成下一代能够传承的事业,Rainforest Connection近日又发布了目前最大的智慧森林保护项目之一——星球守护者项目,通过这个项目数以百计的洛杉矶STEM学科学生将能通过Google Hangouts与当地部落直接通话,而且学生还能亲手之作符合该项目硬件规范的Guardian设备,预计由洛杉矶学生制作的设备能够保护超过10万英亩的热带雨林。

来自:Google博客

买不到称心的智能镜子,就DIY一面吧

智能镜子可谓是科幻电影的必备道具。作为未来世界中信息泛滥的最佳展现形式,它随时能为主人公提供需要的消息。

然而,如此高大上的设备,制造起来其实还挺简单的……

所以,别再等众筹网站上不靠谱儿的项目了,不如自己动手组装一面~

材料:

一块树莓派3主板,或者有Wi-Fi 功能的旧型号。

一台有HDMI接口的显示器。显示器的尺寸就是智能镜子的最终尺寸,显示器还应该带USB接口,这样就不需要再为树莓派拉根电源线。

一面双向镜。尺寸当然和显示器一样。

鼠标、键盘,用来设置树莓派。

一幅画框,用来框镜子。当然,如果你有更好的创意,也可以不用画框~

工具若干。

制作:

制造智能镜子最难的并不是编程,因为需要的软件,Michael Teeuw创建的《智能镜子计划》网站(https://magicmirror.builders/)都给你打包好了。基本上,只要链接好树莓派,再安装上MagicMirror2;软件就行,甚至不需要下载,只要在树莓派上运行一行代码就成。

bash -c “$(curl -sL https://raw.githubusercontent.com/MichMich/MagicMirror/master/installers/raspberry.sh)”

为防你想要亲力亲为…… GitHub上也有手动安装指南,地址如下:

https://github.com/MichMich/MagicMirror#manual-installation

安装时长在10-20分钟之间,一旦完成,编程上就没别的活儿了。不过还需要做一些设置,比如关掉屏保、旋转屏幕(镜子大部分都是竖着的嘛~),还有保证在待机状态下 Wi-Fi不会断开。

接下来就是真正有趣的部分了~

设置镜子界面:MagicMirror自带了时钟、当前天气、天气预报、新闻、问候语、Hello World,和闹钟模块。其中一些模块是需要额外设置的,比如说注册API钥匙,添加地址什么的。

MagicMirror还是个开源软件,这意味着第三方开发者会不时为它增添新的模块,让你持续完善自己的智能镜子。

一旦你把所有需要的模块都设置好了,就可以把显示器变成智能镜子了~

把双向镜放在显示器上(当然是镜面那面朝外),框好相框,你的智能镜子就做好了。

如果你想要做的再完美(彻底)点,还可以把显示器的硬件从塑料外壳中拆下来,让它一劳永逸地做面镜子~

来源:sohu

构建开源硬件的 5 个关键点

科学社区正在加速拥抱自由及开源硬件Free and Open Source Hardware(FOSH)。 研究员正忙于改进他们自己的装备并创造数以百计的基于分布式数字制造模型的设备来推动他们的研究。

热衷于 FOSH 的主要原因还是钱: 有研究表明,和专用设备相比,FOSH 可以节省 90% 到 99% 的花费。基于开源硬件商业模式的科学 FOSH 的商业化已经推动其快速地发展为一个新的工程领域,并为此定期举行 GOSH 年会。

特别的是,不止一本,而是关于这个主题的[两本学术期刊]:[Journal of Open Hardware] (由 Ubiquity 出版,一个新的自由访问出版商,同时出版了 Journal of Open Research Software )以及 HardwareX(由 Elsevier 出版的一种自由访问期刊,它是世界上最大的学术出版商之一)。

由于学术社区的支持,科学 FOSH 的开发者在获取制作乐趣并推进科学快速发展的同时获得学术声望。

科学 FOSH 的5个步骤

Shane Oberloier 和我在名为 Designs 的自由访问工程期刊上共同发表了一篇关于设计 FOSH 科学设备原则的文章。我们以滑动式烘干机为例,制造成本低于 20 美元,仅是专用设备价格的三百分之一。科学和医疗设备往往比较复杂,开发 FOSH 替代品将带来巨大的回报。

我总结了 5 个步骤(包括 6 条设计原则),它们在 Shane Oberloier 和我发表的文章里有详细阐述。这些设计原则也可以推广到非科学设备,而且制作越复杂的设计越能带来更大的潜在收益。

如果你对科学项目的开源硬件设计感兴趣,这些步骤将使你的项目的影响最大化。

1、评估类似现有工具的功能,你的 FOSH 设计目标应该针对实际效果而不是现有的设计(LCTT 译注:作者的意思应该是不要被现有设计缚住手脚)。必要的时候需进行概念证明。

2、使用下列设计原则:

在设备生产中,仅使用自由和开源的软件工具链(比如,开源的 CAD 工具,例如 OpenSCAD、 FreeCAD 或 Blender)和开源硬件。

尝试减少部件的数量和类型并降低工具的复杂度

减少材料的数量和制造成本。

尽量使用能够分发的部件或使用方便易得的工具(比如 RepRap 3D 打印机)进行部件的数字化生产。

对部件进行参数化设计,这使他人可以对你的设计进行个性化改动。相较于特例化设计,参数化设计会更有用。在未来的项目中,使用者可以通过修改核心参数来继续利用它们。

所有不能使用现有的开源硬件以分布式的方式轻松且经济地制造的零件,必须选择现货产品以方便采购。

3、验证功能设计。
4、提供关于设计、生产、装配、校准和操作的详尽设备文档。包括原始设计文件而不仅仅是用于生产的。开源硬件协会Open Source Hardware Association对于开源设计的发布和文档化有额外的指南,总结如下:

以通用的形式分享设计文件。

提供详尽的材料清单,包括价格和采购信息。

如果涉及软件,确保代码对大众来说清晰易懂。

作为生产时的参考,必须提供足够的照片,以确保没有任何被遮挡的部分。

在描述方法的章节,整个制作过程必须被细化成简单步骤以便复制此设计。

在线上分享并指定许可证。这为用户提供了合理使用该设计的信息。

5、主动分享!为了使 FOSH 发扬光大,设计必须被广泛、频繁和有效地分享以提升它们的存在感。所有的文档应该在自由访问文献中发表,并与适当的社区共享。开源科学框架Open Science Framework是一个值得考虑的优雅的通用存储库,它由开源科学中心Center for Open Science主办,该中心设置为接受任何类型的文件并处理大型数据集。

这篇文章得到了 Fulbright Finland 的支持,该公司赞助了芬兰 Fulbright-Aalto 大学的特聘校席 Joshua Pearce 在开源科学硬件方面的研究工作。

via: https://opensource.com/article/18/2/5-steps-creating-successful-open-hardware

作者:Joshua Pearce 译者:kennethXia 校对:wxy 来自:Linux中国

为什么说最适合IoT开发人员的发行版是Ubuntu

一句话前言:本文说的是用来“写”代码的机器,不是主要用来“跑”代码的机器。

适合做开发的桌面系统很多,但适合做IoT开发的并不多。

首先要支持各种硬件驱动和外设,再则要方便安装各种开源或闭源的IDE和插件。

很多朋友可能会说Mac OS X不错啊,Mac OS X是不错,但对应的Macbook实在不合群,一旦要用到USB口或者以太网口什么的……

Windows更适合用来进行Windows IoT版开发,而大部分嵌入式设备跑的是Linux……

好吧,那我们在Linux阵营里找。

此刻的答案可能要多如牛毛了,每个发行版的粉丝们都会讲出自己的理由。但我还是要说出我的选择 —— Ubuntu Desktop。

Eclipse 基金会在2017年四月完成了由 713 位开发者回答的 IoT 开发者那个调查,他们被问到了有关 IoT 编程语言、云平台、IoT 操作系统、消息协议(MQTT, HTTP)、IoT 硬件架构等问题。

当被问及大家在IoT开发时采用的操作系统/Linux发行版时,Raspbian 以 45.5% 的比例遥遥领先,Ubuntu/Ubuntu Core 紧随其后,使用比例达到了 44.0%。

嗯,答案看起来应该是Raspbian才对。

可大家别忘了Raspbian一直是跑在树莓派上的,而我们这里说的是技术人员平时用的开发环境。

Ubuntu/Ubuntu Core的官方支持列表大家有目共睹,不管是树莓派还是Orange Pi、DragonBoard 410c、Intel NUC……都能跑。

况且市面上很多公司的产品都在基于Ubuntu Core做定制,不管是大疆、Erle Robotics的无人机还是Rigado的IoT网关。

这样一对应,用Ubuntu的桌面来开发Ubuntu IoT这类系统的软件似乎再合适不过。很多包和组件都是配套的,有官方支持。

为各类设备做内核编译等操作的时候,运行Ubuntu Desktop的高性能X86桌面电脑可以快速交叉编译,搞定你需要的组件。不管是Ubuntu系统的,还是Raspbian系统的。

另外,近期开始流行的跨发行版Snappy包管理器,最初就是为Ubuntu系统构建的。其管理的Snap 包可对 App 和 Ubuntu Core 软件本身进行原子级事务性更新。具有沙箱的属性,不可以随意访问外部资源,和系统的其它部分隔离开来,并通过设计好的安全策略与其他 Snap 进行交互。这也是 Ubuntu Core 具有极强安全性的原因。

写了半天,突然发现Ubuntu官网已经把18.04 LTS这一“长期支持版”正式上线了。

是的,作为一个IoT开发平台,LTS —— “Long Term Support”也很重要。也许这就是我喜欢用Ubuntu Desktop来写代码的原因吧!

版权声明:本文为“IoT前哨站”原创,转载请注明原文作者和出处。