Exit from DFU mode

I don’t know what has been tried so far, but here’s the outline of my procedure for fixing bricked Bluetooth firmware on the GTM in case you find it useful. I have sent a more detailed write-up to the wiki, should go live in a few days.

  • get an Android device
  • sideload a copy of the nRF toolbox from https://github.com/NordicSemiconductor/Android-nRF-Toolbox
  • on your computer, download a copy of the goTenna APK (same version you were running at the time of the fupdate) and unzip it
  • transfer only the files nrf52_*.zip to the Android device
  • in the nRF toolbox, select the nrf52_phase1 file, then select the bricked GTM device (DFUTARG), click Upload and wait
  • repeat for the remaining files in order
  • if successful, the GTM will reboot in an operational state

Standard disclaimer applies, the instructions above may fubar your GTM, but since you’re already there, why not give it a desperate try :slight_smile: and let us know how you go.

5 Likes

Hello Armin!

Thank you very much for your recommendations! I will try to use them and report the result.

I have a few questions:

  1. I updated the GM firmware via my Iphone 6. Why do I need an APK Gotenna under Android phone?
  2. I have already tried to use bluetooth device scanners and noted that the GM activates the RF signal only for 3-4 seconds (I’m not sure that I will have time to transfer something from the files.
  3. I did not find the file “nrf52 _ *. zip” on the link to Github indicated. There are only the following:
    ble_app_hrs_dfu_all_in_one_sdk_v9_0
    ble_app_hrs_dfu_s110_v8_0_0_sdk_v8_0
    ble_app_hrs_dfu_s110_v8_0_0_sdk_v9_0

I’m sorry if my message was a bit unclear on this. The nrf52* files (Bluetooth firmware) that you need are located inside the gotenna APK.
You need to unzip the gotenna APK in order to retrieve these files. This step is best done on a normal computer.

You will need an Android device >4.4 to run the nRF toolbox utility from Github. The utility talks with the Bluetooth chip in DFU mode and doesn’t require pairing.

1 Like

I do not have time to copy files. The device reports: DFU device disconnetcted.

DFU mode is activated only 3-4 seconds, then I do not see the device with a scanner. Maybe you can transfer the file through usb?

Sounds like a different problem then. What firmware version did you say you were running?

1.1.18 looks like a possible typo, did you mean 1.1.8 or 1.1.12?

I tried to update the firmware to version 1.1.8

Please consider correcting the version typo in your message at the top of this thread. You can edit your message using the little pencil icon.

You’re lucky, version 1.1.8 has a serial console.
Try to plug your powered on GTM into a USB port, start a serial terminal at 9600/8n1/noecho, type “log” and press Enter. You should see a lot of system messages, some of them relevant to your problem. “NRF52” and “DFU” are some keywords to look for.

below is the console output. What should I choose?

[22:58:36.569] log
[22:58:36.585] [320708-9651, USB, CLI] Logs enabled
[22:58:52.259] ?
[22:58:52.277] [336398-15690, USB, CLI] ?: Print a help message
[22:58:52.279] [336398-000, USB, CLI] ps: Print useful task stats
[22:58:52.280] [336398-000, USB, CLI] touch: Send a message to all tasks. May fix a stuck task
[22:58:52.281] [336398-000, USB, CLI] version: Print firmware version
[22:58:52.281] [336398-000, USB, CLI] power: Reset the device
[22:58:52.282] [336398-000, USB, CLI] rstreason: Print the reason for the last reset, and any fault info
[22:58:52.283] [336398-000, USB, CLI] rst_stats: Reset system wide messaging stats
[22:58:52.284] [336398-000, USB, CLI] get_stats: Print system wide messaging stats
[22:58:52.285] [336399-001, USB, CLI] shout: Send a shout
[22:58:52.285] [336399-000, USB, CLI] morse: Send morse <text_to_send>
[22:58:52.286] [336399-000, USB, CLI] emergency: Send an emergency
[22:58:52.291] [336399-000, USB, CLI] beacon: Enable or disable the Emergency Beacon
[22:58:52.293] [336399-000, USB, CLI] set gid: Set the GID, specify with decimal
[22:58:52.294] [336399-000, USB, CLI] set_pub: Set the pub key
[22:58:52.295] [336399-000, USB, CLI] set_gidhex: Set the GID, specify with hex string
[22:58:52.295] [336399-000, USB, CLI] clear gid: Clear any configured GIDs
[22:58:52.296] [336399-000, USB, CLI] del gid: Delete a specific GID
[22:58:52.296] [336399-000, USB, CLI] disp-gid: Print all currently configured GIDs
[22:58:52.297] [336399-000, USB, CLI] count 0: Reset the counter responsible for e.g. timestamps
[22:58:52.297] [336399-000, USB, CLI] bat: Print the current battery level in ADC units
[22:58:52.298] [336399-000, USB, CLI] flash: Check ext flash OK
[22:58:52.298] [336399-000, USB, CLI] clrflash: Erase the external flash
[22:58:52.299] [336399-000, USB, CLI] clrmsg: Delete all currently stored messages
[22:58:52.299] [336400-001, USB, CLI] print_filter : Filter selected print messagelevels
[22:58:52.300] [336400-000, USB, CLI] set_serial : Set the BLE serial ID
[22:58:52.301] [336400-000, USB, CLI] get_serial: Get the BLE serial ID
[22:58:52.301] [336400-000, USB, CLI] dev_info: Get the device info
[22:58:52.301] [336400-000, USB, CLI] getmsg: Get the first message from the receive FIFO and print it with textified fields
[22:58:52.302] [336400-000, USB, CLI] getmsgbinary: Get the first message from the receive FIFO and print it in its binary representation
[22:58:52.303] [336400-000, USB, CLI] getmsgcount: Print whether there are more messages
[22:58:52.303] [336400-000, USB, CLI] delmsg: Delete the first message in the Rx FIFO
[22:58:52.304] [336400-000, USB, CLI] getdiag: Print diag info
[22:58:52.304] [336400-000, USB, CLI] clrdiag: Reset diag info
[22:58:52.310] [336400-000, USB, CLI] rstdata: Reset the device to factory settings
[22:58:52.311] [336400-000, USB, CLI] force-mode : Forcibly change the operation mode of the device
[22:58:52.312] [336400-000, USB, CLI] getgid: Print the primary GID and its public key
[22:58:52.312] [336401-001, USB, CLI] setfreqs : Configure device frequency settings
[22:58:52.313] [336401-000, USB, CLI] txpower : Configure device output power
[22:58:52.313] [336401-000, USB, CLI] relay_hist : Configure whether the relay should keep history
[22:58:52.314] [336401-000, USB, CLI] relay_led : Configure relay LED behavior
[22:58:52.315] [336401-000, USB, CLI] relay_print : Control whether relayed messages should be printed
[22:58:52.315] [336401-000, USB, CLI] relay_method : Set the Relay/Trx protocol method: 1 or 2
[22:58:52.316] [336401-000, USB, CLI] relay_info: Print the configurable relay settings
[22:58:52.316] [336401-000, USB, CLI] relay_reset: Reset the relay data base
[22:58:52.316] [336401-000, USB, CLI] trx_hist : Configure whether the TRX should keep a history of message hashes
[22:58:52.317] [336401-000, USB, CLI] trx_turbo : Set TRX turbo mode: trx_turbo <shout_value>
[22:58:52.317] [336401-000, USB, CLI] trx_corrupt: Set TRX corruption mode: trx_corrupt <packet_type> <number_byte>
[22:58:52.318] [336401-000, USB, CLI] trx_intf: Force the TRX state machine into V4_INTF_TX
[22:58:52.318] [336401-000, USB, CLI] trx_time: Force a timesync across the network
[22:58:52.319] [336401-000, USB, CLI] trx_rate: []: Change the bit rate
[22:58:52.319] [336402-001, USB, CLI] trx_prop_set: : write a set property cmd with group, number, value all in hex
[22:58:52.320] [336402-000, USB, CLI] relay_mode: []: Change the relay_mode
[22:58:52.320] [336402-000, USB, CLI] relay_flood: : request a full flood
[22:58:52.321] [336402-000, USB, CLI] relay_prune: : request a prune flood
[22:58:52.321] [336402-000, USB, CLI] relay_prune_rule: : set prune threshold
[22:58:52.322] [336402-000, USB, CLI] relay_bcast: : enable broadcast shout
[22:58:52.322] [336402-000, USB, CLI] trx_reset: Reset the TRX state machine
[22:58:52.323] [336403-001, USB, CLI] trx_calib: Request a Si4460 fine calibration
[22:58:52.323] [336403-000, USB, CLI] ctx : Run a continuous transmission on a channel or frequency
[22:58:52.324] [336403-000, USB, CLI] tx-ber : Transmit a PN9 pattern to check bit error rate on a channel or frequency
[22:58:52.329] [336403-000, USB, CLI] ber: Transmit/Receive a PN9 pattern to check bit error rate on a channel or frequency
[22:58:52.329] [336403-000, USB, CLI] rx-ber : Expect to receive a PN9 pattern, to check RX BER on a channel or frequency
[22:58:52.330] [336403-000, USB, CLI] temp: Print the RF chain temperature
[22:58:52.330] [336403-000, USB, CLI] set_region : Set geofencing (will change frequencies and power on applicable configs)
[22:58:52.331] [336403-000, USB, CLI] rssi : Print the RSSI on the specified channel or frequency
[22:58:52.331] [336403-000, USB, CLI] rf_spi : Print the status of the RF SPI bus
[22:58:52.332] [336403-000, USB, CLI] set_pap : immediately set the Si4460 pap, but dont store the config
[22:58:52.332] [336403-000, USB, CLI] ant : Configure whether an antenna or test connector is expected
[22:58:52.333] [336403-000, USB, CLI] test : Disable or enable test mode (sleep)
[22:58:52.333] [336403-000, USB, CLI] z: Set test 2 with only one character
[22:58:52.333] [336404-001, USB, CLI] ble_state: Print various pieces of state for the BLE task
[22:58:52.334] [336404-000, USB, CLI] ble_dtm : Handle BLE DTM commands
[22:58:52.334] [336404-000, USB, CLI] ble_mac: Print the MAC address of the BLE
[22:58:52.335] [336404-000, USB, CLI] bluetooth : Enable or disable the bluetooth, and store the config
[22:58:52.335] [336404-000, USB, CLI] toggle_led : Enable or disable the LED globally and store the config
[22:58:52.335] [336404-000, USB, CLI] echo: Echo and flash
[22:58:52.336] [336404-000, USB, CLI] dumpfreqs: Print the current channel configuration
[22:58:52.336] [336404-000, USB, CLI] trx_info: Print the current trx configuration
[22:58:52.336] [336404-000, USB, CLI] trx_prop: Print the current trx properties
[22:58:52.336] [336404-000, USB, CLI] get_bcts: Print the BCTS that will be sent to a BLE client next
[22:58:52.337] [336404-000, USB, CLI] latched : Manipulate system latched errors
[22:58:52.337] [336404-000, USB, CLI] getsysinfo: Print system info as sent to the app
[22:58:52.337] [336404-000, USB, CLI] profile : Take a profiling action: start, stop, print, bin, reset
[22:58:52.338] [336404-000, USB, CLI] log: Toggle general logging to this interface
[22:58:52.338] [336405-001, USB, CLI] usbble : Allow BLE to be active when USB is connected and talking
[22:58:52.339] [336405-000, USB, CLI] lsble: Communicate with the NRF to get all GATTS statuses
[22:58:52.339] [336405-000, USB, CLI] corrupt_message: Corrupt the RAM copy of a message to test a handler
[22:58:56.940] [341070-4665, TRX, DEBUG] Si4460 temperature=39
[22:58:56.946] [341070-000, TRX, DEBUG] RSSI[1]: avg=-123 dBm, last=-119 [min=-130, max=-115], num=16
[22:58:56.949] [341070-000, TRX, DEBUG] RSSI[25]: avg=-124 dBm, last=-126 [min=-130, max=-117], num=16
[22:58:56.951] [341070-000, TRX, DEBUG] RSSI[49]: avg=-78 dBm, last=-75 [min=-95, max=-68], num=16
[22:58:56.952] [341071-001, TRX, DEBUG] FSM: state=FSM_RX_AWAKE, stage=0
[22:58:56.954] [341075-004, TRX, DEBUG] FSM: state=FSM_RX_AWAKE, stage=0
[22:58:56.963] [341079-004, TRX, DEBUG] FSM: state=FSM_RX_AWAKE, stage=0
[22:58:56.964] [341083-004, TRX, DEBUG] FSM: state=FSM_RX_SLEEP, stage=0

1 Like

maybe rstdata command?

bluetooth probably does not work. How to turn it on?

[00:08:10.213] ble_state
[00:08:10.230] [900225-19780, USB, INFO] BLE_STATE: bluetooth_status_flag=disabled
[00:08:10.230] [900225-000, USB, INFO] BLE_STATE: forced_off=no
[00:08:10.232] [900225-000, USB, INFO] BLE_STATE: nrf52_connect_status=not_started
[00:08:10.233] [900225-000, USB, INFO] BLE_STATE: ble_enable_state=UNKNOWN
[00:08:10.233] [900225-000, USB, INFO] BLE_STATE: last_bcts_sent_at=0
[00:08:10.234] [900225-000, USB, INFO] BLE_STATE: last_msg_sent_at=0
[00:08:10.235] [900225-000, USB, INFO] BLE_STATE: last_msg_recvd_at=0
[00:08:10.235] [900225-000, USB, INFO] UUID type 0x00, srv handle 0x0000, conn handle 0x0000
[00:08:10.236] [900225-000, USB, INFO] BCTS char handles: value=0x0000, user_desc=0x0000, cccd=0x0000, sccd=0x0000
[00:08:10.237] [900225-000, USB, INFO] VATS char handles: value=0x0000, user_desc=0x0000, cccd=0x0000, sccd=0x0000
[00:08:10.238] [900225-000, USB, INFO] VATC char handles: value=0x0000, user_desc=0x0000, cccd=0x0000, sccd=0x0000
[00:08:10.239] [900225-000, USB, INFO] first handle=0x0000, last handle=0x0000
[00:08:10.239] [900225-000, USB, INFO] Current mtu 0, payload len 0, bcts enabled0

and next

23:58:46.654] [336632-001, USB, CLI] Sleep: Disabled=1, test_mode=0, MAIN=0, FLSH=1, TRX=0, NRF=0, PRNT=0, LED=1, USB=1, SLP=0, RELAY=0, NRFSW=0, DEBUG=0, EMSPI=0
[23:58:46.655] [336632-000, USB, CLI] Counters: attempt 185800412 sleep 0 wait 0, denied by test=0 trx=0 led=0 print=0 usb=0 espi=0
[23:58:46.656] [336633-001, USB, INFO] Flash CB status: maxNumMsgAllowed=230, file_available_capacity=230
[23:58:46.656] [336633-000, USB, INFO] Flash CB status: totalMsgCount=0, msgDeletedCount=0 (diff=0), num_stored=0
[23:58:46.657] [336633-000, USB, INFO] Flash CB status: writableMsgAddress=0x32c000 (in sector 812), firstValidStoredMsg=0x32c000 (in sector 812)
[23:58:46.657] [336633-000, USB, INFO] LED: Last event raised: LED_EVENT_DFU by /var/lib/jenkins/workspace/Firmware-Triggered-Builder/goTenna/Sources/Events.c:254
[23:58:46.658] [336633-000, USB, INFO] LED: Last execution: mask=0x4000, event=LED_EVENT_DFU, pred =0, exec dfu_flash
[23:58:46.659] [336633-000, USB, INFO] LED: State: held=0, in relay confirm=0, current level 0
[23:58:46.659] [336635-002, USB, INFO] Power handler: via_pmic=1, via_usb=0, via_cpu=0

Try usbble 1 :slight_smile:

Bluetooth does not turn on. Log below:

[15:05:31.552] log
[15:05:31.567] [009877-5820, USB, CLI] Logs enabled
[15:05:38.513] ble_state
[15:05:38.525] [016837-6960, USB, INFO] BLE_STATE: bluetooth_status_flag=disabled
[15:05:38.525] [016837-000, USB, INFO] BLE_STATE: forced_off=no
[15:05:38.527] [016837-000, USB, INFO] BLE_STATE: nrf52_connect_status=not_started
[15:05:38.528] [016837-000, USB, INFO] BLE_STATE: ble_enable_state=UNKNOWN
[15:05:38.528] [016837-000, USB, INFO] BLE_STATE: last_bcts_sent_at=0
[15:05:38.528] [016837-000, USB, INFO] BLE_STATE: last_msg_sent_at=0
[15:05:38.529] [016837-000, USB, INFO] BLE_STATE: last_msg_recvd_at=0
[15:05:38.529] [016837-000, USB, INFO] UUID type 0x00, srv handle 0x0000, conn handle 0x0000
[15:05:38.530] [016837-000, USB, INFO] BCTS char handles: value=0x0000, user_desc=0x0000, cccd=0x0000, sccd=0x0000
[15:05:38.531] [016837-000, USB, INFO] VATS char handles: value=0x0000, user_desc=0x0000, cccd=0x0000, sccd=0x0000
[15:05:38.531] [016837-000, USB, INFO] VATC char handles: value=0x0000, user_desc=0x0000, cccd=0x0000, sccd=0x0000
[15:05:38.532] [016837-000, USB, INFO] first handle=0x0000, last handle=0x0000
[15:05:38.532] [016837-000, USB, INFO] Current mtu 0, payload len 0, bcts enabled0
[15:05:45.112] usbble 1
[15:05:45.134] [023444-6607, USB, DEBUG] Forcing NRF connection off
[15:05:45.136] [023444-000, USB, CLI] BLEUSB:OK
[15:05:52.503] [030822-7378, TRX, DEBUG] Si4460 temperature=34
[15:05:52.510] [030822-000, TRX, DEBUG] RSSI[1]: avg=-121 dBm, last=-121 [min=-128, max=-113], num=16
[15:05:52.512] [030822-000, TRX, DEBUG] RSSI[25]: avg=-124 dBm, last=-123 [min=-129, max=-114], num=16
[15:05:52.514] [030822-000, TRX, DEBUG] RSSI[49]: avg=-85 dBm, last=-84 [min=-94, max=-74], num=16
[15:05:52.516] [030823-001, TRX, DEBUG] FSM: state=FSM_RX_AWAKE, stage=0
[15:05:52.518] [030827-004, TRX, DEBUG] FSM: state=FSM_RX_AWAKE, stage=0
[15:05:52.526] [030831-004, TRX, DEBUG] FSM: state=FSM_RX_AWAKE, stage=0
[15:05:52.528] [030835-004, TRX, DEBUG] FSM: state=FSM_RX_SLEEP, stage=0
[15:06:07.580] [045896-15061, TRX, INFO] INT PREAMBLE_DETECT (Ctrl chn=49)
[15:06:07.586] [045898-002, TRX, DEBUG] FSM: state=FSM_RX_SYNC, stage=0
[15:06:07.618] [045932-034, TRX, INFO] FSM: Timer Expired: FSM_RX_SYNC (pre=1, sync=0)
[15:06:07.621] [045933-001, TRX, DEBUG] FSM: state=FSM_RX_INIT, stage=0
[15:06:07.622] [045937-004, TRX, DEBUG] FSM: state=FSM_RX_AWAKE, stage=0
[15:06:07.627] [045941-004, TRX, DEBUG] FSM: state=FSM_RX_AWAKE, stage=0
[15:06:07.629] [045945-004, TRX, DEBUG] FSM: state=FSM_RX_AWAKE, stage=0
[15:06:07.647] [045949-004, TRX, DEBUG] FSM: state=FSM_RX_SLEEP, stage=0
[15:06:10.845] ble_state
[15:06:10.871] [049169-3220, USB, INFO] BLE_STATE: bluetooth_status_flag=disabled
[15:06:10.871] [049169-000, USB, INFO] BLE_STATE: forced_off=no
[15:06:10.873] [049169-000, USB, INFO] BLE_STATE: nrf52_connect_status=not_started
[15:06:10.874] [049169-000, USB, INFO] BLE_STATE: ble_enable_state=UNKNOWN
[15:06:10.874] [049169-000, USB, INFO] BLE_STATE: last_bcts_sent_at=0
[15:06:10.875] [049169-000, USB, INFO] BLE_STATE: last_msg_sent_at=0
[15:06:10.876] [049169-000, USB, INFO] BLE_STATE: last_msg_recvd_at=0
[15:06:10.877] [049169-000, USB, INFO] UUID type 0x00, srv handle 0x0000, conn handle 0x0000
[15:06:10.878] [049169-000, USB, INFO] BCTS char handles: value=0x0000, user_desc=0x0000, cccd=0x0000, sccd=0x0000
[15:06:10.878] [049169-000, USB, INFO] VATS char handles: value=0x0000, user_desc=0x0000, cccd=0x0000, sccd=0x0000
[15:06:10.879] [049169-000, USB, INFO] VATC char handles: value=0x0000, user_desc=0x0000, cccd=0x0000, sccd=0x0000
[15:06:10.880] [049169-000, USB, INFO] first handle=0x0000, last handle=0x0000
[15:06:10.881] [049169-000, USB, INFO] Current mtu 0, payload len 0, bcts enabled0

Hello!

Do you have any other ideas for activating the bluetooth?

Hello! Are there any other options?

Thank you for this helpful thread. My firmware upgrade from app was failed and i was stuck on DFU mode.

I managed to exit from forced DFU mode, by first activating BLE in USB mode, and then realizing that my nrf52 firmware is bad (from the log), and finally followed @armin’s guide (Exit from DFU mode)

Here’s the log after I entered “usbble 1”

[470767-9868, USB, DEBUG] Forcing NRF connection off
[470767-000, USB, CLI] BLEUSB:OK
[483386-12619, NRF, INFO] NRF52 DFU complete, checking version
[483386-000, NRF, INFO] NRF52 forcing bootloader
[484036-650, NRF, INFO] NRF52 checking version
[484038-002, NRF, ERROR] NRF52 version mismatch: Want 0xb9 got 0x81
[484038-000, NRF, WARN] NRF52 firmware bad, forcing DFU
[490912-6874, TRX, DEBUG] Si4460 temperature=36
[490912-000, TRX, DEBUG] RSSI[1]: avg=-119 dBm, last=-119 [min=-128, max=-110], num=16
[490912-000, TRX, DEBUG] RSSI[25]: avg=-116 dBm, last=-115 [min=-123, max=-107], num=16
[490912-000, TRX, DEBUG] RSSI[49]: avg=-115 dBm, last=-115 [min=-119, max=-109], num=16
[490913-001, TRX, DEBUG] FSM: state=FSM_RX_AWAKE, stage=0
[490917-004, TRX, DEBUG] FSM: state=FSM_RX_AWAKE, stage=0
[490921-004, TRX, DEBUG] FSM: state=FSM_RX_AWAKE, stage=0
[490925-004, TRX, DEBUG] FSM: state=FSM_RX_SLEEP, stage=0

1 Like

Hello all!
Unfortunately, I could not turn on the bluetooth on my device.

[15:05:45.112] usbble 1
[15:05:45.134] [023444-6607, USB, DEBUG] Forcing NRF connection off
[15:05:45.136] [023444-000, USB, CLI] BLEUSB:OK
[15:06:10.845] ble_state
[15:06:10.871] [049169-3220, USB, INFO] BLE_STATE: bluetooth_status_flag=disabled
[15:06:10.871] [049169-000, USB, INFO] BLE_STATE: forced_off=no
[15:06:10.873] [049169-000, USB, INFO] BLE_STATE: nrf52_connect_status=not_started
[15:06:10.874] [049169-000, USB, INFO] BLE_STATE: ble_enable_state=UNKNOWN
[15:06:10.874] [049169-000, USB, INFO] BLE_STATE: last_bcts_sent_at=0
[15:06:10.875] [049169-000, USB, INFO] BLE_STATE: last_msg_sent_at=0
[15:06:10.876] [049169-000, USB, INFO] BLE_STATE: last_msg_recvd_at=0
[15:06:10.877] [049169-000, USB, INFO] UUID type 0x00, srv handle 0x0000, conn handle 0x0000
[15:06:10.878] [049169-000, USB, INFO] BCTS char handles: value=0x0000, user_desc=0x0000, cccd=0x0000, sccd=0x0000
[15:06:10.878] [049169-000, USB, INFO] VATS char handles: value=0x0000, user_desc=0x0000, cccd=0x0000, sccd=0x0000
[15:06:10.879] [049169-000, USB, INFO] VATC char handles: value=0x0000, user_desc=0x0000, cccd=0x0000, sccd=0x0000
[15:06:10.880] [049169-000, USB, INFO] first handle=0x0000, last handle=0x0000
[15:06:10.881] [049169-000, USB, INFO] Current mtu 0, payload len 0, bcts enabled0

Let me know what else i can do?
In the help there is a separate command to launch “bluetooth”, but I do not know the necessary argument.

Hi @Posman,

after entered “usbble 1” did you get error message in gotenna periodical log? such as

[484038-002, NRF, ERROR] NRF52 version mismatch: Want 0xb9 got 0x81
[484038-000, NRF, WARN] NRF52 firmware bad, forcing DFU

i looked at my output logs after entered “ble_state” and it seems that our problem might be the same. here’s my log (before pushing update via nrf tools)

ble_state

[2549463-11072, USB, INFO] BLE_STATE: bluetooth_status_flag=disabled
[2549463-000, USB, INFO] BLE_STATE: forced_off=no
[2549463-000, USB, INFO] BLE_STATE: nrf52_connect_status=not_started
[2549463-000, USB, INFO] BLE_STATE: ble_enable_state=UNKNOWN
[2549463-000, USB, INFO] BLE_STATE: last_bcts_sent_at=0
[2549463-000, USB, INFO] BLE_STATE: last_msg_sent_at=0
[2549463-000, USB, INFO] BLE_STATE: last_msg_recvd_at=0
[2549463-000, USB, INFO] UUID type 0x00, srv handle 0x0000, conn handle 0x0000
[2549463-000, USB, INFO] BCTS char handles: value=0x0000, user_desc=0x0000, cccd=0x0000, sccd=0x0000
[2549463-000, USB, INFO] VATS char handles: value=0x0000, user_desc=0x0000, cccd=0x0000, sccd=0x0000
[2549463-000, USB, INFO] VATC char handles: value=0x0000, user_desc=0x0000, cccd=0x0000, sccd=0x0000
[2549463-000, USB, INFO] first handle=0x0000, last handle=0x0000
[2549463-000, USB, INFO] Current mtu 0, payload len 0, bcts enabled0

this is the log from “output”

[892519-5400, USB, CLI] Device type: goTenna 900
[892519-000, USB, CLI] FW Version : 1.1.8.remotes/origin/mesh-5.0-release-candidate-0-gd438b05 (jenkins@gotenna-buildserver)
[892519-000, USB, CLI] Build Date : Jun 28 2018 12:32:00
[892519-000, USB, CLI] Boot Version: 00.09
[892519-000, USB, CLI] Boot flag: 1c. Firmware CRC: 3d054690
[892519-000, USB, CLI] BLE bootloader version 1, softdevice 0x81
[892519-000, USB, CLI] Features: FEATURE_EXTENDED_BCTS=off, FEATURE_FULL_FREQ_CONFIG=off, FEATURE_GEO_CONFIG=on, FEATURE_MASK_RATE_CONFIG=off, FEATURE_RELAY_MODE=on, FEATURE_RELAY_NODE_LED=on, FEATURE_TX_CHAN_SELECT=off, FEATURE_TX_POWER_CONFIG=off

1 Like

after send “usbble 1” next output (no erorr)
[22:59:57.500] usbble 1
[22:59:57.524] [071251-10420, USB, DEBUG] Forcing NRF connection off
[22:59:57.528] [071251-000, USB, CLI] BLEUSB:OK
[23:01:18.154] dev_info
[23:01:18.177] [151899-990, USB, CLI] SERIAL no: AA12341234
[23:01:18.180] [151899-000, USB, CLI] Bluetooth flag 1
[23:01:18.180] [151899-000, USB, CLI] LED flag 1
[23:01:18.182] [151899-000, USB, CLI] RELAY flag 0
[23:01:18.183] [151899-000, USB, CLI] Device Type goTenna 900
[23:01:36.850] ble_state
[23:01:36.875] [170600-18701, USB, INFO] BLE_STATE: bluetooth_status_flag=disabled
[23:01:36.875] [170600-000, USB, INFO] BLE_STATE: forced_off=no
[23:01:36.878] [170600-000, USB, INFO] BLE_STATE: nrf52_connect_status=not_started
[23:01:36.879] [170600-000, USB, INFO] BLE_STATE: ble_enable_state=UNKNOWN
[23:01:36.879] [170600-000, USB, INFO] BLE_STATE: last_bcts_sent_at=0
[23:01:36.880] [170600-000, USB, INFO] BLE_STATE: last_msg_sent_at=0
[23:01:36.882] [170600-000, USB, INFO] BLE_STATE: last_msg_recvd_at=0
[23:01:36.883] [170600-000, USB, INFO] UUID type 0x00, srv handle 0x0000, conn handle 0x0000
[23:01:36.883] [170600-000, USB, INFO] BCTS char handles: value=0x0000, user_desc=0x0000, cccd=0x0000, sccd=0x0000
[23:01:36.886] [170600-000, USB, INFO] VATS char handles: value=0x0000, user_desc=0x0000, cccd=0x0000, sccd=0x0000
[23:01:36.887] [170600-000, USB, INFO] VATC char handles: value=0x0000, user_desc=0x0000, cccd=0x0000, sccd=0x0000
[23:01:36.887] [170600-000, USB, INFO] first handle=0x0000, last handle=0x0000
[23:01:36.888] [170600-000, USB, INFO] Current mtu 0, payload len 0, bcts enabled0

I tried other console commands. Below output:

[23:03:25.712] touch
[23:03:25.735] [279463-14561, USB, ERROR] invalid evt (0), task_id=7
[23:03:37.469] ps
[23:03:37.487] [291213-11750, USB, CLI] Counters:
[23:03:37.489] [291213-000, USB, INFO] Task activity counters:
[23:03:37.489] MAIN, evts: 1454, msgs: 3, timeouts: 0
[23:03:37.491] FLSH, evts: 0, msgs: 4, timeouts: 0
[23:03:37.491] TRX, evts: 1, msgs: 3, timeouts: 290442
[23:03:37.491] NRF, evts: 0, msgs: 0, timeouts: 0
[23:03:37.492] PRNT, evts: 0, msgs: 2, timeouts: 0
[23:03:37.492] LED, evts: 14438, msgs: 0, timeouts: 0
[23:03:37.493] USB, evts: 0, msgs: 6, timeouts: 29029
[23:03:37.494] SLP, evts: 27297, msgs: 0, timeouts: 152213035
[23:03:37.494] RELAY, evts: 0, msgs: 0, timeouts: 0
[23:03:37.495] NRFSW, evts: 0, msgs: 0, timeouts: 0
[23:03:37.495] DEBUG, evts: 1, msgs: 1, timeouts: 0
[23:03:37.496] EMSPI, evts: 0, msgs: 0, timeouts: 0
[23:03:37.496] [291213-000, USB, CLI] MQX:
[23:03:37.496] MAIN: state=READY, last_pc=0x2, timeout=291213
[23:03:37.497] FLSH: state=READY, last_pc=0xfffffffd, timeout=291213
[23:03:37.498] TRX: state=READY, last_pc=0xfffffffd, timeout=291213
[23:03:37.498] NRF: state=READY, last_pc=0xfffffffd, timeout=291213
[23:03:37.498] PRNT: state=READY, last_pc=0xfffffffd, timeout=291213
[23:03:37.499] LED: state=READY, last_pc=0xfffffffd, timeout=291213
[23:03:37.500] USB: state=READY, last_pc=0xfffffffd, timeout=291213
[23:03:37.500] SLP: state=READY, last_pc=0xfffffffd, timeout=291213
[23:03:37.501] RELAY: state=LWEVENT_BLOCKED, last_pc=0xfffffffd, timeout=538
[23:03:37.502] NRFSW: state=LWEVENT_BLOCKED, last_pc=0xfffffffd, timeout=0
[23:03:37.503] DEBUG: state=LWEVENT_BLOCKED, last_pc=0xfffffffd, timeout=538
[23:03:37.503] EMSPI: state=BLOCKED, last_pc=0xfffffffd, timeout=0
[23:03:37.504] [291214-001, USB, CLI] Sleep: Disabled=1, test_mode=0, MAIN=0, FLSH=1, TRX=0, NRF=0, PRNT=0, LED=1, USB=1, SLP=0, RELAY=0, NRFSW=0, DEBUG=0, EMSPI=0
[23:03:37.506] [291215-001, USB, CLI] Counters: attempt 152213035 sleep 0 wait 27297, denied by test=0 trx=0 led=27297 print=0 usb=0 espi=0
[23:03:37.507] [291215-000, USB, INFO] Flash CB status: maxNumMsgAllowed=230, file_available_capacity=230
[23:03:37.515] [291215-000, USB, INFO] Flash CB status: totalMsgCount=0, msgDeletedCount=0 (diff=0), num_stored=0
[23:03:37.516] [291215-000, USB, INFO] Flash CB status: writableMsgAddress=0x32c000 (in sector 812), firstValidStoredMsg=0x32c000 (in sector 812)
[23:03:37.517] [291215-000, USB, INFO] LED: Last event raised: LED_EVENT_DFU by /var/lib/jenkins/workspace/Firmware-Triggered-Builder/goTenna/Sources/Events.c:254
[23:03:37.519] [291215-000, USB, INFO] LED: Last execution: mask=0x4000, event=LED_EVENT_DFU, pred =0, exec dfu_flash
[23:03:37.521] [291215-000, USB, INFO] LED: State: held=0, in relay confirm=0, current level 0
[23:03:37.521] [291217-002, USB, INFO] Power handler: via_pmic=1, via_usb=0, via_cpu=0
[23:03:37.523] [291217-000, USB, CLI] Emergency beacon status: 0

also in the log there is a periodic debugging:

[23:03:41.178] [294915-3698, TRX, DEBUG] Si4460 temperature=38
[23:03:41.186] [294915-000, TRX, DEBUG] RSSI[1]: avg=-122 dBm, last=-123 [min=-127, max=-116], num=16
[23:03:41.188] [294915-000, TRX, DEBUG] RSSI[25]: avg=-125 dBm, last=-123 [min=-129, max=-120], num=16
[23:03:41.191] [294915-000, TRX, DEBUG] RSSI[49]: avg=-84 dBm, last=-81 [min=-91, max=-73], num=16
[23:03:41.193] [294916-001, TRX, DEBUG] FSM: state=FSM_RX_AWAKE, stage=0
[23:03:41.195] [294920-004, TRX, DEBUG] FSM: state=FSM_RX_AWAKE, stage=0
[23:03:41.214] [294924-004, TRX, DEBUG] FSM: state=FSM_RX_AWAKE, stage=0
[23:03:41.217] [294928-004, TRX, DEBUG] FSM: state=FSM_RX_SLEEP, stage=0

the command “rstdata” and factory reset also does not solved problem

I do not know what else can be done in the console. Maybe developers will be able to help me.