Hi,
I use Murata module Type ZY (DA14580) daughter board with P2ML3078 evaluation board.
I connected the evaluation board to STM32L152 discovery evaluation board.
I use SPI (from STM as master) to load the code to the device, and use USART for communication with the device.
When I load the DSPS code to the device I manage to connect to a smart phone and start USART communication.
I try to add IO port indication to know if the device is connected (in my final design I will use P1_0 to signal the host MCU (STM) that the device is connected so USART communication will happen only if connection is active).
I did the following changes to the DSPS code:
In function "main_func" I added the following lines right after the call to periph_init() function.
GPIO_SetPinFunction(GPIO_PORT_1, GPIO_PIN_0, OUTPUT, PID_GPIO);
GPIO_SetInactive(GPIO_PORT_1, GPIO_PIN_0);
At the end of the functions "app_disconnect_func" and "app_adv_start" I added the following line so the port will be low when the device is not connected.
GPIO_SetInactive(GPIO_PORT_1, GPIO_PIN_0);
At the end of the function "app_connection_func" I added the following line so the port will be high when the device is connected.
GPIO_SetActive(GPIO_PORT_1, GPIO_PIN_0);
After adding these lines I no longer able to find the device on my phone.
Ideas?
Thank you
Dear Dialog,
I would like to know what reason why DA14580 disconnected while being interrogated. Any condition or trigger for this case occurring?
My code is based on sample128, which works well for most of time. But sometimes this problem happens -- DA14580 can not be connected by my app, and it's reported "The peripheral disconnected while being interrogated." by Light Blue tool. Meanwhile, the advertising works very well -- The advertising data changed dynamically by sensor detecting.
If this case occurs, DA14580 never be connected all the time. The only way to let it work is "power-down reset". After reset, it works well. The problem does rarely happen, and not easy to be reproduced.
Is it caused by calling disconnecting function? I didn't find it from my code, may be somewhere or timing issue? So far, I can't find any clue for it. Please help!
Thanks!
Hi Support Team,
I met a problem again for connection issue, which is not easy to duplicate and reported before.
I modified from sample-128 to be a peripheral, and works well for my application. Recently the advertising data is updated by sensor detection, that works well too. But occasionally the connection can't be responded!!
Today, when I tried to send command to DA14580 device by my App/iPhone, no response at all, but I can see the data from advertising. In another words, the advertising works very well. I tried to use LightBlue to test it, and the same results (It means that my app works well). There is a report from LightBlue "The peripheral disconnected while being interrogated". After reset DA14580, it works very well again and this case is very difficult to duplicate but it's a fatal issue for a product.
I can't find any issue from my side. I think there may be a bug somewhere for disconnection. I'm not sure if there is any problem from advertising data updated by stop_advertising and start_adverting, but the advertising data is sent and can be received well by my app. Please help!
Thanks!