- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
We have a custom design based on the BCM20736S. The boards work fine but after programming 2 of them with the same firmware, they are bricked and cannot be programmed again, even when following the recovery procedure.
I looked at the various discussions on this topic and couldn't find any solution. I followed those steps (from another thread):
0. Remove UART connection to PC.
1. Short SDA to GND
2. Power up the chip and wait for a couple of seconds or so.
3. Remove SDA to GND short.
4. Connect HCI UART for programming.
5. Try downloading with -NODLMINIDRIVER.
I get :
2015-01-26@11:27:07.773 Will be downloading 0 bytes of code and 8090 bytes of data using minidriver uart_DISABLE_EEPROM_WP_PIN1.hex
2015-01-26@11:27:07.773 BTP file: 20736_EEPROM.btp
2015-01-26@11:27:07.773 The config data is coming from the following files
2015-01-26@11:27:07.773 xxx_test_1_0.hex
2015-01-26@11:27:07.773 Sending bytes to HW:
4 bytes: 01 03 0C 00
2015-01-26@11:27:07.873 ERROR: Failed to execute HCI Reset
Some comments:
- I'm using an FTDI TTL-232R-3V3 serial to USB cable
- Shorting SDA to GND or Vdd doesn't make any difference
- Using the following command:
Chipload.exe -BLUETOOLMODE -PORT COM3 -BAUDRATE 115200 -MINIDRIVER uart_DISABLE_EEPROM_WP_PIN1.hex -BTP 20736_EEPROM.btp -CONFIG xxx_test_1_0.hex -LOGTO program.log -CHECKCRC -NOVERIFY -DLMINIDRIVERCHUNKSIZE 251 -NODLMINIDRIVER
Or trying to recover from the IDE using:
app_name-BCM920736TAG_Q32 UART=COM3 VERBOSE=1 recover
as the target name doesn't make any difference either.
Any help would be appreciated.
Solved! Go to Solution.
- Labels:
-
Recovery
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Can you try the below?
0. Connect HCI UART connection to PC.
1. Short SDA to GND
2. Power up the chip and wait for a couple of seconds or so.
3. Remove SDA to GND short.
4. Try downloading with -NODLMINIDRIVER.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Can you try the below?
0. Connect HCI UART connection to PC.
1. Short SDA to GND
2. Power up the chip and wait for a couple of seconds or so.
3. Remove SDA to GND short.
4. Try downloading with -NODLMINIDRIVER.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
It works thanks ! Why does the connection of the UART cable before powering up the chip fix the issue on my hardware ?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Interesting. Glad to hear you have solved the problem. As to why.. I also wonder why, having had some experience with recovery recently.
The SDA must be grounded BEFORE booting the chip in order to be in recovery mode. In my configuration, connecting the USB to the PC is "equivalent" to powering the chip because during programming our board gets its power from the USB.
I suppose in your system you might have a separate power supply driving your BCM chip and the USB is used only for UART and not for chip power.
If that's the case then it makes sense that you have two separate independent steps for "Plug in USB" and "Power on Chip". The key thing to keep in mind is that the SDA must be grounded during the chip power up... which may be independent of the USB status.