espressif / esp-aliyun Goto Github PK
View Code? Open in Web Editor NEWAliyun Iotkit-embedded, support esp32 & esp8266.
Aliyun Iotkit-embedded, support esp32 & esp8266.
如题
使用串口中断的时候,出现意想不到的事情,执行uart_init_new()之后,中断发生了,我在中断处理函数uart0_rx_intr_handler()中的任何操作都没有执行,甚至我把中断处理函数中的所有代码全部注释,esp8266全部会出现“tout xxxxx”或者“full xxxxxxxxxx tout xxxx”.最后就是在uart_init_new()中设置uart_intr.UART_RX_FifoFullIntrThresh无论设置什么值它都会在10个字符这里显示溢出(full)???我用的RTOS SDK是最新版的
代码运行之后,总是在publish几个或者几十个消息之后MQTT连接就出现了如下的错误提示:
event_handle|47 MQTT disconnect.
[inf] utils_network_ssl_disconnect(319): ssl_disconnect
mqtt_client|211 error occur when publish
[inf] utils_network_ssl_write(295): ssl write fail, code=-28928, str=
[inf] HAL_SSL_Destroy(465): handle is NULL
[ALIYUN] MQTT client example end, free heap size:40144
我不知道是不是我这边网络的问题是别的什么,我感觉我这边的网络还可以,因为电脑和ESP8266连接的是同一个Wifi路由,电脑就没掉线过。
ESP8266跟Wifi路由器之间的连接是没有断开,但是MQTT连接老中断,MQTT重连
之后又可以继续发消息了,这是为什么?
如题,使用sdk2.0时离线消息无法收到,严重影响业务的进行。
经过排查,发现以下原因:
即使初始化时将 mqtt_params.clean_session = 0
,但是实际构造的时候值依旧是默认为 1。
原因是IOT_MQTT_Construct方法中并未对其中的 cleansession 进行赋值,导致cleansession永远为 1.
这个将导致 qos1和qos2的订阅支持不完善,离线消息将无法收到。
我这边暂时在IOT_MQTT_Construct进行了修复,对 cleansession 进行了赋值
经过以上修复后,阿里云会对离线消息进行再次发送。从日志来看,模组也对离线消息回应了 puback。
但是用户程序却无法收到消息回调。
经排查,原因是sdk 中订阅回调函数是在收 suback 后才进行设置的。而我调试发现,离线消息先于 suback 收到,于是导致此离线消息无法找到回调函数,用户程序在业务上则丢失了此消息,严重影响业务逻辑。
PUBLISH // 先收到 publish 消息
********** event payload [len:46] start addr:40108e3c **********
ff 01 c1530675535481 00 1b @ 1b E 01 1d ! 11 1b a 01 c 0d 0a 1b E 00 1d ! 00 1b a 00 0d 0a 1 1b d 03
---------- event payload End ----------
SUBACK // 后收到的 suback 消息
SUBACK
sdk 中具体的代码位于iotx_mc_cycle中,还望仔细排查。
目前解决办法有两,一是设置默认消息回调,在默认回调函数中再进行过滤处理。二是修改sdk 中的iotx_mc_handle_recv_PUBLISH实现,找不到回调时不回复 puback,等待阿里云再一次重发
以上问题在 sdk 2.0 中出现,而 sdk2.1 已经换成了 iotkit,我不清楚是否同样存在问题,还望sdk 开发者仔细排查,并作好充分测试。毕竟一个sdk,你们发布出来就会有很多人使用,务必对自己写的代码甚至是公司的代码负责。谢谢。
你好,可以用sercureCRT测一下显示吗?
就运行到下面这里就跑飞了,
EXAMPLE_TRACE("Initialize MQTT parameter");
if (NULL == (msg_buf = (char *)HAL_Malloc(MQTT_MSGLEN))) {
EXAMPLE_TRACE("not enough memory");
rc = -1;
goto do_exit;
}
if (NULL == (msg_readbuf = (char *)HAL_Malloc(MQTT_MSGLEN))) {
EXAMPLE_TRACE("not enough memory");
rc = -1;
goto do_exit;
}
rf cal sector: 1019
tcpip_task_hdl : 40107a00, prio:10,stack:512
idle_task_hdl : 40107ab0,prio:0, stack:384
tim_task_hdl : 40107bf8, prio:2,stack:512
mode : sta(60:01:94:0f:fb:b1)
add if0
demo compile time:May 27 2018 12:48:05
scandone
MQTT task started...
scandone
state: 0 -> 2 (b0)
state: 2 -> 3 (0)
state: 3 -> 5 (10)
add 0
aid 4
pm open phy_2,type:2 0 0
cntconnected with wowo-WiFi, channel 6
dhcp client start...
ip:192.168.0.117,mask:255.255.255.0,gw:192.168.0.1
WiFi connected
Initializing SNTP
please start sntp first !
current time : Thu Jan 01 00:00:00 1970did not get a valid time from sntp server
current time : Sun May 27 12:54:27 2018MQTT client example begin, free heap size:60640
Initialize MQTT parameter
Initialize MQTT parameter done
[inf] iotx_device_info_init(40): device_info created successfully!
Initialize MQTT parameterFatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0<0xa2>@r<0x85><0xc4>P<0xb1><0xb5><0xb1>K<0xed>t<0xa5>dr<0xd7>.@<0xe9><0xf9>.<0xa9><0xd1><0xaa><0xa1>Ko8a /t<0xb5>$v'<0xe1><0xea><0xc9><0xb1>T<0xb1><0xb1><0xb1><0xa9><0xa9><0xc4>P<0x9b><0xac><0xa9><0xb5><0xf9><0xb1><0x85><0xa2><0xfc>nzAl )<0xe9>m~<0xb1>t[!<0xf9>(P<0xb1>+t<0xc7>,<0xb1>@j|<0xbd><0xe5><0xb5><0xf9><0xb1><0x89><0xf8>nzAn )<0xe9>m~<0xb1>Z[!<0xf9>(P<0xb1>+t<0xc7><0xad>r@j|<0xbd><0xf5><0xb5><0xf9><0xb9><0x89><0xf8>nzAl )<0xe9>m~<0xb1>P[<0xe1>r<0xa7>(<0xb1><0xab><0xa2>8<0xa1><0xad><0x87><0xe9><0xf9>.<0xbd><0x04>r<0xf9>+<0xb5><0xb1>Xh<0xa9><0xb5><0xec><0xbd><0xe1><0xe1>b<0x05><0x95>v<0xa7><0xa8><0xa1><0xc5>"<0xe1><0xa2><0x88>dA<0xe2><0xd1><0xb5><0x91><0xe5>N<0xb8>`A#<0xc9>-Ae<0xe1>*<0xad><0x89><0x04>X<0xb5>[p<0xd1>h<0xb1><0x8b><0xa1>Z<0xb1><0x8b><0xa1>Z i~P<0xb7><0xa8>vA<0xee>v<0x9b>(P<0xb1><0xb1><0x81><0xa2><0xfc>OS SDK ver: 2.0.0(e271380) compiled @ Mar 30 2018 18:54:06
phy ver: 1055_1, pp ver: 10.7rf cal sector: 1019
tcpip_task_hdl : 40107a00, prio:10,stack:512
idle_task_hdl : 40107ab0,prio:0, stack:384
tim_task_hdl : 40107bf8, prio:2,stack:512
mode : sta(60:01:94:0f:fb:b1)
使用esp-01s模块,源代码除了wifi信息和iot参数未做其他任何改变,模块一直在重启。log如下:
rf cal sector: 507
tcpip_task_hdl : 40107a00, prio:10,stack:512
idle_task_hdl : 40107ab0,prio:0, stack:384
tim_task_hdl : 40107bf8, prio:2,stack:512
mode : sta(a0:20:a6:29:c1:6e)
add if0
******************************************
demo compile time:Jun 6 2018 05:17:16
******************************************
scandone
MQTT task started...
scandone
state: 0 -> 2 (b0)
state: 2 -> 3 (0)
state: 3 -> 5 (10)
add 0
aid 3
pm open phy_2,type:2 0 0
cnt
state: 5 -> 2 (fc0)
rm 0
pm close 7 0 0/3313838
WiFi disconnected, try to connect...
scandone
state: 2 -> 2 (b0)
state: 2 -> 0 (2)
reconnect
WiFi disconnected, try to connect...
scandone
scandone
state: 0 -> 2 (b0)
state: 2 -> 3 (0)
state: 3 -> 5 (10)
add 0
aid 3
pm open phy_2,type:2 0 0
cnt
connected with xxx-2.4G, channel 10
Fatal exception (0):
epc1=0xfbf8ffff
epc2=0x00000000
epcvaddr=0x40231569
depc=0x00000000
rtn_add=0x40105f14
Free Heap Size: 58664
Stack Point: 3fff0610
3fff0610: 3fff1938 000001fe 3ffeda48 401016d7
3fff0620: 00000061 001fe000 3fff34c8 402076bc
3fff0630: 3ffe87a8 00000000 3fff0017 401022f4
3fff0640: ffffff01 80000000 3ffeffe8 000001ff
3fff0650: 0000048c 00000000 3fff1938 40207790
3fff0660: 000001fd 55aa55aa 00000005 0000048c
3fff0670: 047868c0 000000db 000000dc aa55aa55
3fff0680: 3fff19e2 0000048c 0000ee68 3ffeda6c
SpiAttr hspi;
hspi.mode = SpiMode_Slave;
hspi.speed = SpiSpeed_10MHz;
hspi.subMode = SpiSubMode_1;
hspi.bitOrder = SpiBitOrder_LSBFirst;
SPIInit(SpiNum_HSPI,&hspi);
SPISlaveRecvData(SpiNum_HSPI,hspi_rece_callback);
外置4M flash,SPI模式使用QuadSPI 模式
。Step5中编译参数spi_size_map
应该如何选择。
如果需要更新阿里云SDK是不是只要更新platforms/aliyun/IoT-SDK_V2.0
即可。
如题,执行的时候会直接把gen_misc.sh里的文本内容打印出来,而不是开始生成固件文件的流程。在官方镜像和cygwin下都是一样的现象。请问如何解决?
前面3月初有其他开发者提到的MQTT 连接不稳定问题现在状态是怎样的?
之前MQTT 连接不稳定的问题最新的状态是怎样的
这个是否支持non-rtos 的sdk?用MQTT直连的方式
@ustccw
你好,如题,我在usermain.c中create了一个task,然后系统串口输出出现乱码,系统直接无法运行了,我把task函数中的程序也屏蔽掉了,但是同样,不清楚为什么?
可不可帮助用xTaskCreate创建一个任务,让其运行起来,程序为空也可,库程序内容很多很复杂,不太清楚每一部分串口数据是从哪里打印的,尤其是变成了乱码,作为普通使用者更加难分析了
我的电脑系统是Win7,使用的开发工具是Cygwin+Eclipse, 曾经单独编译过ESP8266-RTOS-SDK项目,没有问题,但是编译这个esp8266-aliyun项目一直提示:
no rule to make target 'all'
这到底是我的的开发环境设置有问题还是别的原因?
使用esp-07s模块,源代码除了wifi信息和iot参数未做其他任何改变,模块一直在重启。log如下:
ets Jan 8 2013,rst cause:2, boot mode:(3,0)
load 0x40100000, len 2592, room 16
tail 0
chksum 0xf3
load 0x3ffe8000, len 764, room 8
tail 4
chksum 0x92
load 0x3ffe82fc, len 676, room 4
tail 0
chksum 0x22
csum 0x22
2nd boot version : 1.7(5d6f877)
SPI Speed : 40MHz
SPI Mode : QIO
SPI Flash Size & Map: 16Mbit(1024KB+1024KB)
jump to run user1 @ 1000
OS SDK ver: 2.0.0(e271380) compiled @ Mar 30 2018 18:54:06
phy ver: 1055_1, pp ver: 10.7
rf cal sector: 507
tcpip_task_hdl : 40107a00, prio:10,stack:512
idle_task_hdl : 40107ab0,prio:0, stack:384
tim_task_hdl : 40107bf8, prio:2,stack:512
mode : sta(a0:20:a6:15:18:69)
add if0
demo compile time:Jun 26 2018 22:42:01
scandone
MQTT task started...
scandone
state: 0 -> 2 (b0)
state: 2 -> 3 (0)
state: 3 -> 5 (10)
add 0
aid 5
pm open phy_2,type:2 0 0
cnt
connected with hanhuakai-2.4G, channel 11
dhcp client start...
ip:192.168.0.115,mask:255.255.255.0,gw:192.168.0.1
WiFi connected
MQTT client example begin, free heap size:61184
[inf] iotx_device_info_init(40): device_info created successfully!
Fatal exception (20):
epc1=0x00000000
epc2=0x00000000
epc3=0x40100774
epcvaddr=0x00000000
depc=0x00000000
rtn_add=0x00000000
Free Heap Size: 59104
Stack Point: 3fff6340
3fff6340: 401020f3 00000004 40101b0c 40101b4f
3fff6350: 00000000 401021d6 00000000 3fff6376
3fff6360: 0000000a 00000061 3fff637b 00000001
3fff6370: 5ffffe00 31360000 00343831 40102920
3fff6380: 00000000 00000000 00000000 40102360
3fff6390: 40102078 00000008 0000002a 00000000
3fff63a0: 4010223b a5a5a5a5 3fff16bd 401022f4
3fff63b0: 00000061 00000000 3fff1680 401003f8
mqtt连接上之后,会经常出现断开。
在回调event_handle
中经常打印MQTT disconnect.
和 MQTT reconnect.
并且有一定概率在出现 MQTT disconnect.
时,模组异常重启。
严重影响模组的正常业务功能!!!
完全无法投入使用。
不稳定这个问题我看从很早就有人提出了,但是一直没解决。希望重视这个问题!!
按照教程在ubantu 16.04 下编译出来SDK,一直输出乱码。
尝试过:
有没有遇到这种情况的?
$ ./gen_misc.sh
./gen_misc.sh:行2: $'\r': 未找到命令
./gen_misc.sh:行10: $'\r': 未找到命令
./gen_misc.sh:行13: $'\r': 未找到命令
/home/esp8266-aliyun-demo/esp8266-rtos-sdk
/home/esp8266-aliyun-demo/bin
./gen_misc.sh:行16: $'\r': 未找到命令
gen_misc.sh version 20150911
./gen_misc.sh:行19: $'\r': 未找到命令
./gen_misc.sh:行99: 语法错误: 未预期的文件结尾
dhcp client start...
ip:192.168.1.179,mask:255.255.255.0,gw:192.168.1.1
WiFi connected
Initializing SNTP
please start sntp first !
current time : Thu Jan 01 00:00:00 1970
did not get a valid time from sntp server
please start sntp first !
current time : Thu Jan 01 00:00:00 1970
did not get a valid time from sntp server
please start sntp first !
current time : Thu Jan 01 00:00:00 1970
did not get a valid time from sntp server
please start sntp first !
current time : Thu Jan 01 00:00:00 1970
did not get a valid time from sntp server
u Jan 01 00:00:00 1970
did not get a valid time from sntp server
please start sntp first !
current time : Thu Jan 01 00:00:00 1970
did not get a valid time from sntp server
please start sntp first !
current time : Thu Jan 01 00:00:00 1970
@ustccw 你好,如果新建一个MQTT topic,内置tls如何启动呢?我在mqtt.c中并无发现y与HAL_TLS_mbedtls.c关联
最新代码,和阿里云平台的连接变得很慢,比之前的版本都慢很多,而且经常失败超时重连,之前的旧版本就不会。
您好。我在使用上一版本基于阿里IOT套件2.0版本中。稳定复现连接MQTT过程中,第一次TCP连接出错。然后重新连接正常。相关打印如下:
MQTT client example begin, free heap size:28536
establish tcp connection with server(host=hd4st5dwsnh.iot-as-mqtt.cn-shanghai.aliyuncs.com port=1883)
fail to establish tcp
[log_err] iotx_mc_connect(2262): TCP or TLS Connection failed
MQTT construct failed
MQTT client example end, free heap size:27480
MQTT client example begin, free heap size:27480
establish tcp connection with server(host=hd4st5dwsnh.iot-as-mqtt.cn-shanghai.aliyuncs.com port=1883)
success to establish tcp, fd=1
目前的基于2.1版本的移植程序中,编译过程遇到 cannot find -liot_sdk 错误。
另外如果8266子模块更新至最新esp-idf风格的版本。头文件相关的makefile应该如何处理。
导入就报错,估计是自带的底层库没有放进来! esp8266-rtos-sdk文件夹下面为空。
我使用的是安信可的ESP 01-M模块,在https://github.com/espressif/esp8266-aliyun?spm=5176.doc42648.2.9.Oe0lw3 下载了由乐鑫官方整合阿里云物联网套件的程序,然后在乐鑫官网下载了RTOS,放到了esp8266-rtos-sdk 目录下,修改了阿里云套件的三元组,产品KEY、设备名、设备密钥。使用MQTT_TASK任务运行没有什么问题,阿里云也可以接收到数据。设备也可以接收到云发送过来的数据。
然后我就把DEFAULT_TASK_MODE改为REMOTE_OTA_TASK测试一下OTA升级,但这时就出问题了。我把所有的LOG开关打开(LOG在附件里)。发现出现异常
[inf] _ssl_parse_crt(142): crt content:451
[inf] _ssl_client_init(185): ok (0 skipped)
[inf] TLSConnectNetwork(360): Connecting to /iot-auth.cn-shanghai.aliyuncs.com/443...
[inf] TLSConnectNetwork(367): ok
[inf] TLSConnectNetwork(372): . Setting up the SSL/TLS structure...
[inf] TLSConnectNetwork(383): ok
[inf] TLSConnectNetwork(420): Performing the SSL/TLS handshake...
Fatal exception (28):
epc1=0x401000e3
epc2=0x00000000
epc3=0x4025ea17
epcvaddr=0x00000068
depc=0x00000000
rtn_add=0x401003d4
但是MQTT任务和OTA任务走的是一样的流程,不知道为什么MQTT任务能正常运行,而OTA就出错,设备不断重启的样子,不断地走同样的流程,找了阿里云的技术支持,他们说这个错误是芯片这边抛出的异常。于是来到论坛请求支持,希望大神给予帮助,感激不尽!
固件FLASH为1MB。芯片应该是8285
我也在乐鑫官方论坛提交了相关的TOPIC,但依然没得到解决方案。
乐鑫主题地址:https://bbs.espressif.com/viewtopic.php?f=7&t=9138
希望大神能帮助解决一下。谢谢了。
@ustccw
你好,我在usermain.c中新建了一个二值信号量xsemaphore,调用了uart_int_new(),然后在uart.c的中断函数中新建了xsemaphoreGiveFromISR(),因为这一点,系统出现了故障,之前用队列的时候在中断这里也出现了问题,不知道什么原因,中断这里应怎么添加类似的程序呢?
您好!
1.阿里云提供了标准CA证书(2048bit)和阿里云自签发的pubkey证书(1024位),他们是TLS版本的区别吗?
2.在阿里云官网有这么一段描述,设备端通过验证服务器的CA证书来进行连接,而设备发送信息通过MQTT的加密报文,那么在制作CA相关bin文件的时候,是不是只需要通过CA证书制作一个esp_ca_cert.bin证书烧录到8266,而无需制作esp_cert_private_key.bin,也就是阿里云服务器无需验证8266的证书?在代码端的espconn_secure_ca_enable()在代码什么位置设置呢?
3.目前8266芯片现售的是几乎是16M或者32M,可否支持?烧录过程是否改可选?
4.我通过编译产生的文件,按照说明的位置烧录到8266,但是8266串口没有输出任何信息,波特率采用默认的74880
5.我试着将代码移植到安信可eclipse ide开发工具,因为编辑代码比较直观,乐鑫的工具使用有一定的门槛,是否有可能移植到eclipse开发环境当中?
使用这个固件,WIFI和wifi密码都已经是固定了的,这种方法根本无法用于实际,毕竟实际运用的时候WiFi和WiFi密码都不可能是固定的啊,有没有其他的配网方式呢?
请问如何快速的把打印信息修改到UART1
我们的项目用到了阿里云设备认证中的一型一密认证方式,需要移植最新版V2.10的阿里云SDK,请问如何适配?
@ustccw 你好,设备发送消息到控制台显示no authorization,控制台发送消息到设备显示topic message arrived but without any related handle,发送的消息是有一个结构体,但是控制台发送的就只是字符串,不知道该如何对接呢?你的案例中8266和控制台能够成功对接。
如题,执行./gen_misc.sh ,系统会直接打印出gen_misc.sh中的文本内容并开始编译。
问题是我这边的FLASH是DOUT模式的,如果不能选择编译模式的话生成的固件在我的模块上就没法工作,请大手子指教。
demo compile time:Jun 28 2018 21:58:25
scandone
MQTT task started...
scandone
state: 0 -> 2 (b0)
state: 2 -> 3 (0)
state: 3 -> 5 (10)
add 0
aid 4
pm open phy_2,type:2 0 0
cnt
connected with Xiaomi_E303, channel 4
dhcp client start...
ip:192.168.31.153,mask:255.255.255.0,gw:192.168.31.1
WiFi connected
Initializing SNTP
please start sntp first !
current time : Thu Jan 01 00:00:00 1970
did not get a valid time from sntp server
current time : Sat Jun 30 12:25:06 2018
MQTT client example begin, free heap size:60640
[inf] iotx_device_info_init(40): device_info created successfully!
[dFatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0
connected with Xiaomi_E303, channel 4
dhcp client start...
ip:192.168.31.153,mask:255.255.255.0,gw:192.168.31.1
WiFi connected
Initializing SNTP
please start sntp first !
current time : Thu Jan 01 00:00:00 1970
did not get a valid time from sntp server
current time : Sat Jun 30 12:25:21 2018
MQTT client example begin, free heap size:60640
[inf] iotx_device_info_init(40): device_info created successfully!
[dFatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0Fatal exception (0
如题!
开发中发现不同设备的TOPIC是不互通的。不知道是不是我哪里理解还不到位,在基于阿里云的平台下能否实现多个设备接收同一个TOPIC?
OTA升级历程没了吗?老版本都有可以用的OTA历程;
什么时候会加上OTA的支持历程呢?
@ustccw
你好,我用其他CPU向串口0发送了一些数据,结果8266信号并未闪烁;
我把uart0_rx_intr_handler(void *para)中的uart_tx_one_char(UART0, ......);修改为了uart_tx_one_char(UART1, ......),串口1通过调试软件也未打印出数据;
我分别用库程序和最新RTOS SDK试过了,现象相同,用以往的SDK通讯过,接受到信号的时候蓝灯闪烁,通过uart1打印了数据,这次不知为什么?
失败:No authorization
xtensa-lx106-elf-gcc -L/home/esp8266-aliyun/esp8266-rtos-sdk/lib -L./components/aliyun/iotkit-embedded/output/release/lib -Wl,--gc-sections -nostdlib -T./ld/eagle.app.v6.new.2048.ld -Wl,--no-check-sections -u call_user_start -Wl,-static -Wl,--start-group -lcirom -lgcc -lhal -lphy -lpp -lnet80211 -lwpa -lmain -lfreertos -llwip -lssl -liot_sdk -ldriver -lmirom -lmbedtls -lopenssl -ljson -lsmartconfig -lspiffs user/.output/eagle/debug/lib/libuser.a components/aliyun/platform/.output/eagle/debug/lib/libplatform.a -lcrypto -Wl,--end-group -o .output/eagle/debug/image/eagle.app.v6.out
/opt/xtensa-lx106-elf/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: cannot find -liot_sdk
collect2: error: ld returned 1 exit status
make: *** [/home/esp8266-aliyun/esp8266-rtos-sdk/Makefile:404:.output/eagle/debug/image/eagle.app.v6.out] 错误 1
这是ESP_Lunbuntu的:
esp8266@esp8266-VirtualBox:/Desktop/esp8266-aliyun$ ls/Desktop/esp8266-aliyun$ ./gen_misc.sh
bin esp8266-rtos-sdk gen_misc.sh include Makefile mqtt ota platforms README.md _static user
esp8266@esp8266-VirtualBox:
/home/esp8266/Desktop/esp8266-aliyun/esp8266-rtos-sdk
/home/esp8266/Desktop/esp8266-aliyun/bin
gen_misc.sh version 20150911
SDK_PATH:
/home/esp8266/Desktop/esp8266-aliyun/esp8266-rtos-sdk
BIN_PATH:
/home/esp8266/Desktop/esp8266-aliyun/bin
Please check SDK_PATH & BIN_PATH, enter (Y/y) to continue:
Please follow below steps(1-5) to generate specific bin(s):
STEP 1: use boot_v1.2+ by default
boot mode: new
STEP 2: choose bin generate(0=eagle.flash.bin+eagle.irom0text.bin, 1=user1.bin, 2=user2.bin)
enter (0/1/2, default 0):
STEP 3: choose spi speed(0=20MHz, 1=26.7MHz, 2=40MHz, 3=80MHz)
enter (0/1/2/3, default 2):
spi speed: 40 MHz
STEP 4: choose spi mode(0=QIO, 1=QOUT, 2=DIO, 3=DOUT)
enter (0/1/2/3, default 0):
spi mode: QIO
STEP 5: choose spi size and map
0= 512KB( 256KB+ 256KB)
2=1024KB( 512KB+ 512KB)
3=2048KB( 512KB+ 512KB)
4=4096KB( 512KB+ 512KB)
5=2048KB(1024KB+1024KB)
6=4096KB(1024KB+1024KB)
7=4096KB(2048KB+2048KB) not support ,just for compatible with nodeMCU board
8=8192KB(1024KB+1024KB)
9=16384KB(1024KB+1024KB)
enter (0/2/3/4/5/6/7/8/9, default 0):
spi size: 1024KB
spi ota map: 512KB + 512KB
start...
make: *** No rule to make target clean'. Stop. make: Nothing to be done for
FORCE'.
esp8266@esp8266-VirtualBox:~/Desktop/esp8266-aliyun$ make clean
make: *** No rule to make target clean'. Stop. esp8266@esp8266-VirtualBox:~/Desktop/esp8266-aliyun$ make -f Makefile clean make: *** No rule to make target
clean'. Stop.
@ustccw 你好,库程序里的usermain.c里的xTaskCreate(mqtt_proc,...),我没有发现调度器vTaskStartScheduler()的身影,然后任务mqtt_proc就启动了,我想问在库程序里只要创建一个任务就默认开始运行了吗?
此外,tls连接是只要用库程序进行MQTT通讯就默认开始内置连接吗?
@ustccw 你好,之前切换串口都是取消uart.c中的一句 os_install_putc1注释,现在这样的办法在库程序中还有效吗?串口我需要和其他cpu通信,初看了一下程序通过串口打印信息的方式有很多,不知道有没有关联
这个demo怎么在eclipse下编译,谢谢
MQTT client example begin, free heap size:42064
[inf] _ssl_client_init(175): Loading the CA root certificate ...
cert. version : 3
serial number : 04:00:00:00:00:01:15:4B:5A:C3:94
issuer name : C=BE, O=GlobalSign nv-sa, OU=Root CA, CN=GlobalSign Root CA
subject name : C=BE, O=GlobalSign nv-sa, OU=Root CA, CN=GlobalSign Root CA
issued on : 1998-09-01 12:00:00
expires on : 2028-01-28 12:00:00
signed using : RSA with SHA1
RSA key size : 2048 bits
basic constraints : CA=true
key usage : Key Cert Sign, CRL Sign
[inf] _ssl_parse_crt(142): crt content:451
[inf] _ssl_client_init(185): ok (0 skipped)
[inf] TLSConnectNetwork(360): Connecting to a1WxVtI1pGm.iot-as-mqtt.cn-shanghai.aliyuncs.com:1883...
[inf] TLSConnectNetwork(363): failed ! net_connect returned -0x0052
[inf] HAL_SSL_Destroy(465): handle is NULL
[log_err] iotx_mc_connect(2254): TCP or TLS Connection failed
[inf] utils_network_ssl_write(295): ssl write fail, code=-28928, str=
[inf] HAL_SSL_Destroy(465): handle is NULL
MQTT construct failed
MQTT client example end, free heap size:42064
编译阿里云的SDK make时提示这个错误,请问这是怎么回事呢??????
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.