Skip to main content

DA14531 TINY Module - Confused !

1 month ago

DA14531 TINY Module - Confused !

Posted byShashialabur60 points 6 replies
0 upvotes

Hi,

I received my DA14531 Tiny Modules, made my own FT230XS based USB-Serial board, wired up the module and after a fair amount of trial and error, I could program the module !

I am using the CODELESS examples (codeless_531_datapump.bin, set_two_standalone.bin, standalone.bin).

使用模块#1,我可以将Sysram或SPI Flash下载到SPI Flash中,该模块在智能控制台应用程序中“发现”,我可以连接到它,我可以获得对AT命令的回复,如获取董事会地址等。..但无论我尝试了什么,我都无法将模块放入二进制模式并直接在模块和应用程序之间发送数据。如果我在“SmartSnippet Toolbox”中的“终端”窗口中键入了任何AT命令,则该模块将立即断开应用程序。在我的试验中的某个地方,我认为我使用了OTP程序员选项,现在我无法重新编程这个模块 - 尽管它仍然运行刻录到其OTP内存的最后一个程序,但在智能控制台应用程序中一致地发现并响应在命令(我不记得是,如果我编写了startalone.bin或datapump.bin进入其OTP内存。),但不能进入“二进制”模式。

With Module#2, I can download programs successfully into SysRAM or SPI Flash, module is 'Discovered' in the App but refuses to connect !

If I launch the codeless_host terminal, I do not get any responses from the Module.

My questions :

1. What is the difference between the datapump, standalone, set-two-standalone bin files ?

2. The examples shown in the webpage "http://lpccs-docs.dialog-semiconductor.com/UM-140-DA145x-CodeLess/smart…" for the SmartConsole App, show a Command Mode / Binary Mode selection being available (Section 8.4, Figure 50 and Section 8.4.2, Figure 57),but I do not see these options in the App on my Android phone (App Version is 3.530.4).

3. When should I use the Smart Console App and when the DSPS App ?

4. Why is the Module#2 refusing to get connected ?

5.我使用P0_5作为用于下载程序的单线UART TX / RX引脚。无附件_Host终端是否需要在UART上单独的Rx / TX引脚,或者单引脚P0_5对此是可以的?

I will experiment some more ....but, a little confused at this point !

我想做的就是通过模块的UART发送一些数据,应该在应用程序中收到这一点。

1 month ago

PM_Dialog

Hi Shashialaburm,

Thanks for your question online and for you interest in our TINY module solution.

Regarding the Module #1, you mentioned that :

“ Somewhere during my trials, I think I used the OTP Programmer option and now I am unable to reprogram this module - though it is still running the last program that got burned into its OTP memory, is consistently discoverable in the Smart Console App and responds to AT commands ( I don't remember if I programmed the standalone.bin or datapump.bin into its OTP memory.), but cannot get into "Binary" mode.”

A. So, the module is booting from OTP? Did you program the application flags in the OTP Header? Keep in mind that OTP stands for One Time Programmable, thus you can’t erase and re-write the OTP multiple times.

B. Did you use the pre-built binaries from the Codeless directory, or did you use the Keil IDE to build the project?

C. The “Binary mode” is supported only in the datapump project. So, if you sent the AT+BINREQ via UART, what is the response? If the respond is OK, then the module is running the datapump project.

Regarding the Module #2 :

1. Please check section 9.1 in CodeLess user manual (UM-B-140). The DA14531 datapump configuration which is optimized for making binary data transfers supports 30 commands, including all binary data commands, So, the difference in the AT commands that the different projects support – see Table 8. You can also verify it in the CodeLess application code.

2. Make sure that the module is running the datapump application – just checked this in my mobile phone and I can see this button.

3. CodeLess and DSPS are two different projects. SmartConsole should be used in the case of CodeLess. If the module is running the DSPS firmware, then you should use the DSPS application. Here you can find all the DSPS documentation://www.xmece.com/products/dialog-serial-port-service-dsps#tab-field_tab_content_resources

4. Can you please try to connect with a BLE generic application (such as BLE Scanner)? When you are trying to connect from the SmartConsole App, what is the behavior? Can you detect the device over the air?

5. The module can be programmed either via JTAG or via single-wire UART on P05. The default UART pins are shown in Figure 10 in the user guide. After programming via P05 is finished, the P05 can be used for UART.

谢谢,PM_Dialog

4 weeks ago

Shashialabur 60 points

I am working with my Module #2.

I am using P0_5 as a single pin UART during programming and I can download to SysRAM or SPI Flash successfully.

我只使用无附件目录中的预构建二进制文件。

I have a jumper selection to use P0_5 (J14) as a single pin UART while programming and then switch over to the 2 pin UART with P0_2 (J10) to receive data and P0_5 (J14) to transmit data out.

如果我将“DataPump.bin”文件下载到SPI Flash,智能控制台以及通用BLE扫描仪不会检测到此模块。

如果我将“DataPump.bin”下载到Sysram,那么智能控制台和BLE扫描仪检测到该模块 - 但拒绝连接。

The jumper selection for the single pin UART or 2 pin UART makes no difference in this case.

There is no response to any AT commands - the Terminal stops responding when I send any AT command.

The Module#1 was very consistent at least - I could always connect and even get responses to the AT commands !

So, is this a defective Module or am I doing something wrong ?

Thanks !

4 weeks ago

Shashialabur 60 points

I removed Module#2 and wired #1 back and it is detected consistently in the Smart Console App, responds to the AT commands.

But, if I try the AT+PRINT=, it immediately disconnects and I have to cycle the power to the board for it to be discovered and connected again (right now it is powered by the FT230XS based USB to serial board).

AT+BINREQ returns "Invalid command" response.

I am assuming I burned the "standalone.bin" into it ?

I didn't do any changes to the application flags in the OTP programming.....in fact, I saw it only now after seeing your response !

The "Terminal" in the Smart Snippets Toolbox does not give me any response - why ? How do I use this terminal ?

4 weeks ago

PM_Dialog

Hi Shashialabur,

I would suggest to use the Keil project and run the code in debug mode so you can check what might be wrong.

可能在连接时重置模块。你有我们的dks吗?如果是,则可以将它们用于JTAG接口 - 请参阅本教程:

http://lpccs-docs.dialog-semiconductor.com/Tutorial_SDK6/debug_probe.html

You can also use the Keil project to build any of the CodeLess projects.

I am not able to replicate this with the DA145xx_CODELESS\6.380.12.6\binaries\codeless_531_datapump.hex.

Regarding the module #1, since the response on when sending the AT+BINREQ returns "Invalid command", this means that the module is running the standalone.bin.

> > >我没做任何更改应用程序标记s in the OTP programming.....in fact, I saw it only now after seeing your response !

Can you please read the OTP contents from the SmartSnippets Toolbox and share a screenshot?

>>>The "Terminal" in the Smart Snippets Toolbox does not give me any response - why ? How do I use this terminal ?

Check if you are using the correct UART configuration from the “Board Setup”.

https://s3.eu-west-2.amazonaws.com/lpccs-docs.dialog-semiconductor.com/UM-B-083/tools/Board_Setup.html

Otherwise you can use any other Serial Terminal – see this section :

http://lpccs-docs.dialog-semiconductor.com/UM-140-DA145x-CodeLess/howToUse.html

谢谢,PM_Dialog

3 weeks ago

Shashialabur 60 points

Hi,

I do not have the PRO or the USB DK and hence I am unable to debug the problems !

Anyway, now I have made all my 5 modules into removable daughter boards which can be plugged into my prototype board one by one for testing.

My set up is : FT230XS based USB to Serial module, also supplies power to the DA14531 Modules for testing.

Module#1 - OTP编程,可能是STANDALONE.BIN被编程,因此响应AT + BINREQ命令的错误

Modules #2, #3, #4 : All of them get programmed successfully every time when I download the "datapump.bin" to SysRAM or SPI Flash, are discovered in the SmartConsole App, but 'Disconnect' when I try to connect.

模块#5已连接,我可以运行大部分命令。我可以通过命令模式选项看到橙色圈,+ binreq返回确定。

Now, how do I send random data between the Module and the SmartConsole App ? (the AT+Print=Hello command returns an Invalid command error)

I am using the single pin UART on P0_5 for programming. For this random data exchange, do I still use the single pin UART configuration or separate TX/RX pins ?

If I use the Terminal or with the Terminal Scripting or with the Codeless Host application to send any commands, I don't get any response.

The Smart Console "Peripherals" view shows P0_5 & 6 as RX & TX, but as per the V2.3 Datasheet for the Module, Figure 11 on page 16 shows P0_2 as TX and P0_5 as RX (for the Module)

How do I send random text or hex characters from the Module to the App ?

3 weeks ago

PM_Dialog

Hi Shashialabur,

Modules #2, #3, #4 :

  1. Program the SPI flash with the datapump project.
  2. Open a Serial Terminal ( such as Teraterm). See the following section for the UART configuration :http://lpccs-docs.dialog-semiconductor.com/UM-140-DA145x-CodeLess/howToUse.html#hardware-setup
  3. Try to send the “AT” command. Does the CodeLess respond with OK?
  4. Then, try to connect with a mobile app. You should see the following output in the Serial Terminal upon connection.

+AWAKE

+连接

  1. When the module is disconnected, you should see : +DISCONNECTED

Please keep in mind that the CodeLess is using the following UART scheme by default :

#define UARTx_TX_GPIO_PORT GPIO_PORT_0

#define UARTx_TX_GPIO_PIN GPIO_PIN_6

#define UARTx_RX_GPIO_PORT GPIO_PORT_0

#define UARTx_RX_GPIO_PIN GPIO_PIN_5

#define GPIO_UARTx_RTS_PORT GPIO_PORT_0

#定义GPIO_UARTx_RTS_PIN GPIO_PIN_7

#define GPIO_UARTx_CTS_PORT GPIO_PORT_0

#define GPIO_UARTx_CTS_PIN GPIO_PIN_8

Please also see Figure 10 DA145xx 4-wire UART connection overview from the user guide and make sure that you have the correct setup.

Module #5

  1. 使用正确的UART配置打开串行终端。
  2. Connect with the SmartConsole App.
  3. Set it up into Binary mode from the SmartConsole App.
  4. 在串行终端中,您应该看到:+ Binreq
  5. After doing steps 3 and 4, you should send the AT+BINREQACK from the terminal and the CodeLess should respond with OK. See this section for more info :http://lpccs-docs.dialog-semiconductor.com/UM-140-DA145x-CodeLess/binar…
  6. Then you can write data from the Serial Terminal to the SmartConsole App and vice versa.

谢谢,PM_Dialog