WATCH ON-DEMAND | STM32 Summit 2026
Ask questions and find answers on connectivity ICs, focusing on protocols and I2C challenges on STM32 Nucleo boards and BlueNRG products.
Most recent activity
Posted on July 14, 2018 at 02:19Hello! I'm having problems with using USB comm ports and STM32. I've used CubeMX to configure the USB as a CDC. When I first upload the firmware to the micro it works well on windows 10, but as soon as I reset the board the computer do not recognize my device anymore (it works on Windows 7). Any ideas of what could be causing the problem? I've already tried updating the driver and running the dpinst.exe for Win7. Thanks in advance!
I would like to change the names of my devices (at the device), and it looks like the BTLE spec says that Write access is "Optional" https://bit.ly/2NYnkvoIs it better to do that (and how would you do that, since it's in the aci_gap_init function and not the usual aci_gatt functions?)If I were to make a GATT string property and update that, do I reboot the device to update its name?
Good day, Support Team,I have a question regarding BlueNRG-1 simultaneous master/slave mode support.As I see from documentation "BlueNRG-1, BlueNRG-2 BLE stack programming guidelines.pdf" - BlueNRG-1 can support master/slave mode to be connected to the phone as peripheral device and at the same time can scan and connect as master to another BLE peripherals.In my case I need to develop BLE device, which will communicate as BLE slave peripheral with mobile phone and at the same time will interact as BLE master with BLE peripheral with temperature/humidity sensor.Main BLE device should periodically connect to BLE peripheral to read temperature/humidity values, and use them in it's program and also send temperature/humidity values to mobile phone.I have tried to enable simultaneous master/slave mode, but can only scan or connect to BLE peripheral (as master) or connect to phone (as slave) at a time.I used this code to configure GAP:/* GAP Init */aci_gap_init(GAP_PERIPHERAL_ROLE | GAP_CENTR
Hello,I am trying to read attribute from connected slave device on my BLE master device.Both devices are BlueNRG-1, the first device is configured as slave, the second device is configured as master/slave.In master mode I try this code to read attribute value after successfully connected to slave:aci_gatt_read_char_value(connection_handle, attribute_handle);I have set actual connection_handle which I got on master device and attribute_handle which I know on slave device.aci_gatt_read_char_value(...) return SUCCESS, and I should get the result (the attribute value) in aci_att_read_resp_event(...) but I have no response.aci_att_read_resp_event() is not called.Please, provide any suggestions.In advance thanks,Evgeny Boltunov
We are developing low power BLE device , for smart watch ,we need example codes for BlueNRG-1 , for RTC, advertising content,and etc, can you please tell us where can we get from STM website.Regardsshreyas
Good afternoon,I've found few information about the available memory to use as for the GATT service in the BlueNRG-ms.I have a GATT service defined and I want to know if it fits in the BlueNRG and,if not, how much I have to reduce it For the second, I'll would like to know how many memory is available and how many is consumed by allocating services and characteristics.Thanks for the support,David
I am issuing the commands from AN4683 section 3.2, and the AT+CFUN=1 command times out without completing. Would there be example C code somewhere that can perform these steps with success? Thanks!
Posted on June 05, 2018 at 08:51Hello everyoneI am confused by documentation of BlueNRG and various description of exiting from WFI for Cortex-M0.What is going on when BlueNRG-2 is woken up from deep sleep by external gpio pin?Is the program continuing execution at instructions following WFI, or it causes a reset and starts from ResetHandler?In my program interrupts are disabled before WFI.Thankshttps://forum.mikrotik.com/viewtopic.php?f=2&t=132789&p=652366
Posted on June 29, 2018 at 17:16Hello!i am trying to pair a nordic nrf52 mcu with the stusb1602 throug a usb c cable but i would like firmware upgrades on our upcoming product to go through the usb 2 protocol too and i have no clue how to pair the usb c an the controllerhope to get some answers. Im new to this
We are especially interested in status changes eg. changing from active to NRND and obsolescence etc
Does anyone here uses SPBTLE-1S Bluetooth LE module? All the other modules from different manufactures and developers have at least -90 dBm and usually around -93 dBm. What's wrong with this module? Also datasheet of it is just awful: a lot of missing information regarding the RF part of the module such as antenna emission charts.
Posted on June 26, 2018 at 08:54I'm using BlueNRG-2 in Network Coprocessor mode over the SPI interface. After establishing a connection with my device, how can I tell if the remote device supports Data Length Extension?I've experimented with the ACI_GATT_EXCHANGE_CONFIG command but that negotiates the max ATT_MTU size for L2CAP but the Response Event doesn't tell you anything about the Link Layer data size and if Data Length Extension is being used. Is there a way to find out?
Using BlueNRG-2 in Network Coprocessor mode with 2.1 FW. ATT_MTU = 247, max PDU = 251When using coprocessor mode, commands and events are sent as packets over the SPI bus. One of first parameters in a packet is the length of the packet (without the Opcode). The length field is only 1 byte. When sending an ACI_GATT_UPDATE_CHAR_VALUE_EXT command or receiving an ACI_GATT_ATTRIBUTE_MODIFIED_EVENT, this doesn't work if the data is at the max length using Extended Data Length. The length of the packet exceeds 255 bytes and doesn't fit in a byte.I'm working around this by limiting the negotiated ATT_MTU size but is a fix planned for this?Might want to also tell the BlueNRG GUI developers about the problem too.
Hi,using the new sdk 3.0.0 I get a big increment in size of libbluenrg1_stack.a. With the same project the size jumps from 74K to 103K !Is it normal??libbluenrg1_stack.a: [15] aci_events.o 2 906 272 acl.o 738 acl_list.o 204 advance_wakeup_time.o 1 236 aes128cmac.o 184 att.o 5 560 16 bluenrg_gap_aci.o 382 bluenrg_gatt_aci.o 182 bluenrg_hal_aci.o 8 bluenrg_main_func.o 1 160 crypto.o 2 018 296 device_id_data.o 300 gap.o 2 180 gatt_client.o 1 394 gatt_server.o 7 500 hal.o 472 hci.o 1 042 host_timer.o 916 isr_postproc.o 332 isr_routines.o 756 l2cap.o 1 300 ll_isr.o 5 908 ll_privacy.o 3 650 1 512 ll_routines.o 248 ll_routines_master.o 3 780 ll_routines_support.o 296 mem_alloc.o 816 1 56 multi_master_time.o 3 446 nvm.o 76 pka.o 264 1 pm.o 978 rom_att.o 1 462 rom_gap.o 680 rom_gap_rom.o 364 rom_gatt_server.o 364 rom_global_var.o 1 1 rom_list.o 126 rom_ll_isr_postproc.o 354 rom_ll_isr_routines.o 1 192 rom_ll_ll_routines.o 3 136 rom_ll_ll_routines_master.
Posted on June 22, 2018 at 09:54Hi everyone,I would like to count packets which I send in advertising channel. How can I do it? Maybe could I send each packet manually with any function? Then I will be able to increase my counter after sending one packet. BRMary W
Hello,i want to use the USB-Port (CN1, USB-User), which is directly connected to the LoRa-Modul.How i have to implement it with CubeMx or manually?Best RegardsManni
..
Posted on July 14, 2018 at 08:12Hello everyone! I'm new here and this is my firt question.I've been trying for a while to use the X-NUCLEO-IDW01M1, with poor success: I can't even build the example projects in the X-CUBE-WIFI1 software expansion package into System Workbench! But this is not what I'm asking about right now.Few days ago I found this Wi-Fi training Hands-On (https://www.st.com/content/ccc/resource/sales_and_marketing/presentation/product_presentation/group0/d9/23/1a/c2/0c/55/46/2c/STSW-IDW002%20Wifi%20hands-on%20training/files/stsw-idw002_wifi_training.pdf/jcr:content/translations/en.stsw-idw002_wifi_training.pdf ) and finally I can see something runs. Unfortunately, I still encounter some issues: Lab 4: Push data on serial port. I'm trying to connect to [module's IP address]/output_demo.html, but it seems I can't connect to that IP at all! I tried with every other built-in html pagewith no resultsLab 8: MiniAP mode. I can't connect to captiveportal.net, it re
Posted on July 16, 2018 at 13:51Hello guys!I'm trying to build an automation that involves flashing and reseting an STM32F407 MCU.I'm using ST-LINK CLI V3.2.0.0 in order to do so.My problem is, that when I try to reset the MCU using -Rst -Run the ST-LINK CLI asks me to press Enter in order to continue... (I run this as an internal script that I pass to an external library so i can't just use a batch/bash script)Is there any option to cancel the necessity of pressing Enter at the end of the resetting?thanks!#stlink
Posted on July 11, 2018 at 03:45I have achieved scanning or advertising as well as a connection as a slave to 1 master and simultaneously a master of 2 slaves.Now I need simultaneous scan & advertise (whether or not in connection as a slave or master), but cannot achieve it.Would someone please point me to an example which achieves this or show some code snippets that worked for them?I am following guidelines of en.DM00141271 BlueNRG Prog Man Rev 6 Dec 2016, Chapter 4: BlueNRG multiple connections timing strategySpecifically wrt advice 4:Every time you start Advertising:b) If not Direct Advertising, choose Advertising_Interval_Min = Advertising_Interval_Max such that (Advertising_Interval_Min + 5ms) is an integer multiple of the shortest allocated connection intervalThe error I am getting is 0x85: BLE_STATUS_INTERVAL_TOO_LARGEOrder of work:0. initialize Mode4:uint8_t DataMode = 4;aci_hal_write_config_data(CONFIG_DATA_MODE_OFFSET, CONFIG_DATA_MODE_LEN, &DataMode));and of course
Posted on July 14, 2018 at 01:47Why when running BlueNRG-MS v7.2c Mode4, while connected as a BLE slave or a master of some other slave, attempt to scan fails with error code 0x0C:&sharpdefine ERR_COMMAND_DISALLOWED (0x0C)Note that before the connection as a slave, BlueNRG-MS can advertise and/or scan (either one or both simultaneously) on and off, but during and after, it can only advertise on and off.Parameters being used are theses:aci_gap_set_discoverable(ADV_IND, 1208, 1208, PUBLIC_ADDR, NO_WHITE_LIST_USE, 0, NULL, 0, NULL, 0, 0)))aci_gap_start_general_discovery_proc(304, 19, PUBLIC_ADDR, true)))After connecting as a slave to LightBlue, request and get parameter update:aci_l2cap_connection_parameter_update_request(bleConnHdl, 72, 84, 4, 210)(Note that above step can be left out and result is the same)While connected as a slave (with no connections as a master)
Posted on July 12, 2018 at 19:49Hello, I am trying to get a simple HTTP POST command to work. I am using http://ptsv2.com to host a server. I tested the server using curl command in ubuntu, so I know the issue is not there. What I am doing for HTTP POST:-> Create a file called 'helloworld.txt' with Hello World! written in it using the AT+S.FSC command (I get the AT-S.OK)-> Connect to a WIFI network (I get the WIND:24 message)-> Send the following command : AT+S.HTTPPOST=ptsv2.com/t/testtesttest/post,/helloworld.txt,,,,,,ptsv2.com/t/testtesttest/post being the hostname for the server and helloworld.txt is just a file in RAM. I am getting: AT-S.Http Client Error:0AT-S.ERROR:111:Request failedI also tried sending config.fhtml instead of helloworld.txt which is a file in the flash, got the same error. EDIT: AT-S.Http Client Error:0 is 'Error while resolving Hostname'. Not sure why the hostname is wrong, I am using th
Posted on July 06, 2018 at 07:27Hi,I'm using a Nucleo-F401RE whith HSE at 9.8304MHz.I try to receive, on UART6, IRDA frames of unknown dimension : from 4 to 60 bytes max; the third code received specify, by a table, the length of the frame. (STX, DEST ADDRESS, COMMAND_CODE, (N-PARAMETERS))Interrupt is enabled and I'm using receiveng byte after byte:HAL_IRDA_Receive_IT(&hirda6, DataTemp,1);IRDA settings are: hirda6.Init.BaudRate = 38400; hirda6.Init.WordLength = IRDA_WORDLENGTH_8B; hirda6.Init.Parity = IRDA_PARITY_NONE; hirda6.Init.Mode = IRDA_MODE_TX_RX; hirda6.Init.Prescaler = 1; hirda6.Init.IrDAMode = IRDA_POWERMODE_NORMAL;Receiving is made by a personal procedure due to the arriving frames:void USART6_IRQHandler(void) { uint32_t isrflags = READ_REG(hirda6.Instance->SR); uint32_t cr1its = READ_REG(hirda6.Instance->CR1);
Posted on July 12, 2018 at 16:59Hello,I have a pb with UART1 for L152RE board. I connected a sensor to my board in UART2 through a Max232 and i succeed to have information to my hyperterminal (TerraTerm). But i was not able to have information in the variable (or buffer) in my code. I was told that UART2 can not do that, so i was adviced to use UART1.So i did it with UART1 but i'm not able to get data neither through hyperterminal nor in the variable in my code.To parametrize the code, i use CubeMX and i changed the main.c. Do i have to change something else?Find attached my code.Thank you for your help.
Posted on July 10, 2018 at 15:37Hello,Do you have any automotive option of SPBTLE-RF or SPBTLE-RF0?Best regardsMich
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.