LoraWAN论坛

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 9626|回复: 5

树莓派+1301搭建网关,运行一段时间后就读不回数据了

[复制链接]

3

主题

10

帖子

97

积分

注册会员

Rank: 2

积分
97
发表于 2018-1-29 14:54:12 | 显示全部楼层 |阅读模式
使用树莓派加sx1301搭建了网关,代码使用的github上semtech的源码。其中packetforwad 版本是2.2.1, lora_gateway版本是3.2.1。
基本上没什么太大问题,运行都可以收到数据,但是运行几天或更长时间后,便收不到任何数据了。查看树莓派的线程都是正常的,但是线程里面每次调用 lgw_receive 时,返回都是0.
基本上怀疑是SX1301没有在工作了。(正常工作时,1301还是有一定温度的;出现问题后,温度就很低了)。不知道各位坛友有没有遇到过类似问题?为什么1301工作的好好的突然停了呢?
回复

使用道具 举报

98

主题

456

帖子

5173

积分

论坛元老

Rank: 8Rank: 8

积分
5173
发表于 2018-1-30 19:11:34 | 显示全部楼层
是的,使用 RasPi + SX1301 搭建一个 LoRaWAN Server 很容易。
真正的难点是,如何做稳定!

以下是我们的实战经验,无偿分享给大家:

5.1  SX1301停机
5.1.1 异常描述
在LoRaWAN设备长期稳定性测试(冒烟测试)中发现,SX1301会停机,查看日志:"RF packets received by concentrator: 0"。
5.1.2 异常原因
这是因为SX1301接受到LoRa噪声,而引发的停机。
5.1.3 处理办法
所幸的是,当SX1301停机时,通过lgw_get_trigcnt()读取的值总是等于0x7E000000。这意味着,该异常是可以被检测到的。
一旦检测到该异常,将EXIT进程packet_forwarder。
Linux系统的systemd(初始化进程)会持续检测rime_gateway.service的状态,一旦EXIT,将重启该service。
5.1.4 测试结果
当SX1301停机时,packet_forwarder捕捉到了该异常;systemd重启service时,会复位SX1301;这样又可以让SX1301正常工作。
回复

使用道具 举报

98

主题

456

帖子

5173

积分

论坛元老

Rank: 8Rank: 8

积分
5173
发表于 2018-1-30 19:13:45 | 显示全部楼层
5.4  SX1301接收CRC_FAIL=100.00%
5.4.1 异常描述
在LoRaWAN设备长期稳定性测试(冒烟测试)中发现,SX1301会停止向 Server 推送数据包,查看日志,出现多个:"CRC_FAIL: 100.00%"。
5.4.2 异常原因
当 Node 与 Gateway 相距太近,或者 Gateway 没有噪音保护装置时,长期运行该情况会出现。
5.4.3 处理办法
在 lora_pkt_fwd.c:main() 中检测 "CRC_FAIL: 100.00%" 的次数,如果连续超过 3 次,将认为 SX1301 内部出现异常。
一旦检测到该异常,将EXIT进程packet_forwarder。
Linux系统的systemd(初始化进程)会持续检测rime_gateway.service的状态,一旦EXIT,将重启该service。
5.4.4 测试结果
当SX1301连续出现 "CRC_FAIL: 100.00%" 时,packet_forwarder捕捉到了该异常;systemd重启service时,会复位SX1301;这样又可以让SX1301正常工作。
回复

使用道具 举报

3

主题

10

帖子

97

积分

注册会员

Rank: 2

积分
97
 楼主| 发表于 2018-1-30 22:02:41 | 显示全部楼层
BeyondDream 发表于 2018-1-30 19:13
5.4  SX1301接收CRC_FAIL=100.00%
5.4.1 异常描述
在LoRaWAN设备长期稳定性测试(冒烟测试)中发现,SX1301 ...

谢谢分享!!!经常从您这学习了很多知识。后续多多多交流!后边考虑用arm直接驱动下Sx1301,继续玩一玩
回复

使用道具 举报

3

主题

10

帖子

97

积分

注册会员

Rank: 2

积分
97
 楼主| 发表于 2018-2-5 16:38:50 | 显示全部楼层
BeyondDream 发表于 2018-1-30 19:13
5.4  SX1301接收CRC_FAIL=100.00%
5.4.1 异常描述
在LoRaWAN设备长期稳定性测试(冒烟测试)中发现,SX1301 ...

今天我测试了下,发现异常时,lgw_get_trigcnt()  读回来的数出现了一次 0x7E000000,之后读回来的就都是0了。
回复

使用道具 举报

98

主题

456

帖子

5173

积分

论坛元老

Rank: 8Rank: 8

积分
5173
发表于 2019-11-19 16:41:49 | 显示全部楼层
树莓派最大的优势是:硬件开放,软件开源,接口清晰,案例丰富;特别适合于搭建 Linux 原型系统。

然而,树莓派毕竟是“消费类“电子产品,因为以下原因,它不能制作”工业级”产品,否则,离产品崩溃的那一天很近了!
1) SD 卡不稳定:树莓派的 Linux 系统和应用程序都运行在 SD 卡上,SD 卡容易损坏,这样系统就直接崩溃了。
2)电磁兼容:它不能承受电磁干扰,否则,会导致系统死机和重启。
3)功耗和体积:树莓派因为通用性,它安装了许多外设,这些产品“不需要”的外设和接口,增加了额外的体积和功耗。

小结:树莓派只能当原型,设计”消费类“电子产品;工业级的产品,需要选用工业级的 ARM+Linux 主控。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|LoraWAN论坛  

GMT+8, 2024-3-28 18:43 , Processed in 0.127581 second(s), 7 queries , File On.

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表