博客

物联网时序数据库选型

DolphinDB 

TimescaleDB

绑定github账号,免费增加设备额度

免费增加blinker设备额度的方法:

1.登录点灯管理台( https://admin.diandeng.tech/ )  
2.点击右侧的github图标,进行绑定

3.在页面登录github账号,完成绑定,即可获赠5个DIY设备额度。

PS:账号绑定会自动star blinker项目,加blinker用户QQ群(301438087),加群后可退群费

5月26日晚服务故障说明

由于阿里云broker服务故障,导致26日晚9点至11点,blinker设备无法连接。该问题由阿里云方面造成,属于一次突发意外情况,不会影响此后设备的正常使用。

如果您的设备仍然无法连接,请尝试复位设备,并查看设备端调试信息。

PS:blinker设备默认使用阿里云broker通信,在blinker运营过程中遇到了数次阿里云故障,但不可否认阿里云还是国内目前最不差的云服务提供商。针对此次故障,我们会加快准备备用broker方案,以防未来阿里云未来又出现故障。

为什么wifi接入app显示设备离线

blinker会自动获取设备状态,通常用户不需要做任何处理,但当你错误编写程序时,可能会造成状态反馈失败或者不及时的问题,这时blinker App就会显示该设备 离线。为了帮助开发者更好的调试程序,这里我对blinker app的判断逻辑,及调试方法做一些讲解。

blinker App如何判断设备是否在线?  
blinker App在 App打开时、进入设备页面时、在设备页面中每隔一定时间 会向设备发送心跳请求,内容为{“get”:”state”}。  
设备收到请求后,会返回{“state”:”online”},app接收到这个返回,即会显示设备在线。

app中显示设备离线,并不等于设备没有连接上mqtt,但可以肯定的是:你的设备没有响应或者错误响应了app发出的心跳请求。

哪些情况可能照成显示离线?
1. 程序没有成功上传到开发板  
解决办法:重新上传,上传后打开串口监视器,确认程序正确运行  

2. 程序中没有设置正确的ssid和密码,导致没有连接上网络  
解决办法:设置后再重新上传程序,上传后打开串口监视器,确认程序正确运行  

3. 程序错误,导致程序运行不正确  
解决办法:先使用并理解blinker例程,再自由发挥  

4. 开发板供电不足   
解决办法:换电源、换USB口 或者 在vcc和gnd间并电容

对于程序错误造成的离线,如何调试?
在程序初始化时添加debugAll,获取更详细的调试信息。
arduino程序如下:

void setup()
{
    Serial.begin(115200);
    BLINKER_DEBUG.stream(Serial);
    BLINKER_DEBUG.debugAll();
}

然后通过串口调试,查看设备是否正确接收到{“get”:”state”}并响应{“state”:”online”}

如何修复错误?
笨办法:逐句注释掉自己写的代码,看看是那一句造成的反馈错误  
正常的办法:理解blinker程序逻辑,通过调试信息,分析程序哪里造成了反馈错误或不及时  

摇杆组件使用说明

应一些重要用户要求,在blinker app 2.4.4中我们恢复了摇杆组件的使用权限。

因为摇杆控制,会发送较多消息,直接提高了我们服务运行成本,因此我们目前只面向付费用户提供该组件。
关于摇杆组件使用说明如下:

1.在mqtt通信状态下,触摸停顿即会发送摇杆数据;
2.如需提高摇杆组件通信频率,你可以使用局域网通信(wifi接入后,让设备和app在同一局域网中运行,即会切换到局域网通信) 或 使用蓝牙接入设备;
3.你可以添加一个调试组件,方便查看摇杆组件发送了什么数据;
4.设备请不要频繁向app反馈信息,可能会照成通信锁死,或app卡顿;