Dear Support Team,
I installed the SDK with daughter board with the DA14531MOD dev.kit. I successfully flashedcodeless_531_set_two_standalone.bin
Issuing commands:
AT+ADVSTOP AT+CENTRAL AT+GAPSTATUS 1,0 OK AT+GAPSCAN SCANNING SCAN COMPLETE OK
It does not discover anything, however we have 3-4 Blutooth devices around.
我们想要阅读的设备之一是Ruuvi标签BLE BECON:
https://ruuvi.com/ruuvitag-specs/
Thanks....
Device:
Hi janosN,
感谢您在线问题,并为您的兴趣进行小模块BLE解决方案。
似乎AT命令的序列是正确的。您可以在BLE通用应用程序中找到这些设备吗?
Would it be possible to check this with another DA14531?
Thanks, PM_Dialog
Hi Dialog Staff,
Thanks for your answer. Regarding your first question: yes, I can find my devices with another scanner. I took my Raspberry Pi and installed a BLE-scanner. Here is the result:
As you see, it finds three devices, whereas my DA14531MOD_devkit finds none.
Regarding your second question checking with other DA14531 modules; we have ordered 10 pieces of DA14531 TINY Modules. I want to flash a few modules to test the AT+GAPSCAN function. I will try all three CodeLess fw. I shall report you about the result....
Thank you for your support.
Hi janosN,
是的,请尝试将微小的模块配置为间隙外围设备,并告诉我是否充当Gap Central的模块可以在空中找到它。
Thanks, PM_Dialog
亲爱的pm_dialog,
Now, as I can program the TINY modules (thanks to user: cole), I configured as you suggested; one as central and one as peripheral and now the central can scan the peripheral module:
所以,DA14531模块到另一个模块工作。但它仍然无法扫描其他任何东西。正如我之前提到的那样,我需要扫描BLE传感器广告温度,压力,湿度在制造的代码中编码如下:
传感器协议描述于:
https://github.com/ruuvi/ruuvi-sensor-protocols/blob/master/dataformat_0...
I hardly believe that there is no CodeLess AT command solution for this. We don't even need BLE-connection to these sensors, just scan them. For CodeLess AT there are only 3 fw-versions and I tried all of them.
If no CodeLess scan possible, then what next?
Thank you very much in advance.
Hi janosN,
请你能在无附庸前的固件上做一个小变化,重新建立并运行它吗?
In the user_on_adv_report_ind() please do the following change in the if-statement : remove theshow &&
Initial :
Modified :
Thanks, PM_Dialog
亲爱的pm_dialog,
Thanks to the suggestion. I modified the file: user_codeless.c
Compiled the project without error. But the Linker reported error that the code size exceeded the limit.
I compiled with maximum optimization O3 (Level 3).
Either I need a license from Keil, or another option would be that Dialog is so kind and sends me the hex file.
Thank you very much in advance.
Hi janosN,
Let me check it and I’ll get back to you.
Thanks, PM_Dialog
Any solution?
嗨sfuentes-digi,
Please see my previous comment. A modification should be done in the user_on_adv_report_ind().
Thanks, PM_Dialog
Hi PM_Dialog,
Thank you for responding so quickly but I mean if there is any solution to compile the file.
I have the same error, there is another program for compilation or other way?
感谢。
Dear PM-Dialog,
Dear Sfuentes-digi,
Below I write in more details about CodeLessat +帕普斯坎issue. My problems at the beginning were the following:
NR.1解决了: what Dialog suggested to leave outshow &&喜欢:
if(show &&(param-> report.evt_type == 0x00 || param-> report.evt_type == 0x04)))//只有adv_ind和scan_response * /
至:
if((param-> eport.evt_type == 0x00 || param-> report.evt_type == 0x04)))//仅adv_ind和scan_response * /
解决NR.2:
examining the code above it was clear thatparam-> eport.evt_type.is responsible what kind of advertising is accepted by AT+GAPSCAN. So, I was looking for another file which describes these types. It was really hard to locate the following header file:...\common\api\co_bt.h; Here the lines 1340-1355:
///Advertising HCI Type
枚举
{
///Connectable Undirected advertising
adv_conn_undir = 0x00,
///可连接的高占空比定向广告
ADV_CONN_DIR,
///Discoverable undirected advertising
ADV_DISC_UNDIR,
///Non-connectable undirected advertising
ADV_NONCONN_UNDIR,
///Connectable low duty cycle directed advertising
ADV_CONN_DIR_LDC,
///枚举终端值用于广告类型值检查
ADV_END
};
In this enumeration from 0x00-0x05 there are different types we can choose. So, I needed onlyADV_NONCONN_UNDIR(0x03值)因为遥测信标识宣传不可连接的无向数据包。您可以阅读更多关于广告类型的信息:
https://www.novelbits.io/bluetooth-low-energy-advertisements-part-1/(scroll to the middle of the page…) So, I further modified the function to:
if ((param->report.evt_type == 0x03)) // Only ADV_NONCONN_UNDIR
Now all beacon devices were listed and others are filtered out.
最后一个问题:我的原始数据在哪里信标应该像温度,气压,湿度,x-y z加速,电池电压一样传输?
解决NR.3:
For this you need to further modify the function to
您在这里看到Param-> Report.Data [30]是原始数据阵列中的最后一个字节。当然,Adv_rep_str [40]的原始大小还不够,现在是260
char adv_rep_str [260];/* original 40*/
The above code is a bit ugly; I could have written in more elegant way in a loop, but it works, I do it later…
解决NR.4:I had a 30-day license from Keil which expired. I needed a way to reduce the code-size. See my previous topic:CODELESS Project Size Reducing - Problem Solved....
在这里,我发现了2行user_at_commands.h你可以评论出更多的房间:
“//#define USE_AT_CONPARand//#define USE_AT_BND是有效的链接之后,代码大小代表orted is:27812(对于Dodeless_531_DataPump)。所以,我现在可以在没有额外的KEIL许可证的情况下编译项目。“
这是一个很长的解释,但我认为你可以解决你的AT +烟道问题。整个修改的功能我拉链和封闭在一起显示结果。
Thanks to Dialog for the support.
Good luck and good health!
Regards,
Janos N.
Thanks so much for the help. Now I can see my devices.
为了编译我必须在user_at_command.h中发表更多的行,只评论你指示的两种增加了增加了程序的大小。
我非常感谢您对您的信息回复的时间,这很有帮助。
Regards.