Closed n5qm closed 4 days ago
I was provided, indirectly, a new bootloader from Seeed to recover the device and that seems to have worked. I flashed the new bootloader and then installed the latest 2.4.2 Beta and it seems to be functioning as expect.
adafruit-nrfutil --verbose dfu serial --package Downloads/t1000_e_bootloader-0.9.1-5-g488711a_s140_7.3.0.zip -b 115200 -p /dev/tty.usbmodem101 Upgrading target on /dev/tty.usbmodem101 with DFU package /Users/r/Downloads/t1000_e_bootloader-0.9.1-5-g488711a_s140_7.3.0.zip. Flow control is disabled, Dual bank, Touch disabled Opened serial port /dev/tty.usbmodem101 Starting DFU upgrade of type 3, SoftDevice size: 152728, bootloader size: 39000, application size: 0 Sending DFU start packet Sending DFU init packet Sending firmware file ######################################## ######################################## ######################################## ######################################## ######################################## ######################################## ######################################## ######################################## ######################################## ############### Activating new firmware
DFU upgrade took 20.723652839660645s Device programmed.
This happened to me as well, but that fix didn't work for me. I found the bootloader file on Seeed's site, installed adafruit-nrfutil, converted the .hex file to a .zip package, and attempted to flash it to the device. I'm on Linux and dmesg shows the serial device as /dev/ttyACM2 and drive as /dev/sdc. Results look like this (and yes, the device is in DFU mode and I do have write access to /dev/ttyACM2):
Upgrading target on /dev/ttyACM2 with DFU package /home/mike/meshtastic/dfu-package.zip. Flow control is disabled, Dual bank, Touch disabled
Opened serial port /dev/ttyACM2
Starting DFU upgrade of type 4, SoftDevice size: 0, bootloader size: 0, application size: 1034328
Sending DFU start packet
Failed to upgrade target. Error is: device reports readiness to read but returned no data (device disconnected or multiple access on port?)
Traceback (most recent call last):
File "/home/mike/meshtastic/adafruit-nrfutil/.venv/lib/python3.10/site-packages/adafruit_nrfutil-0.5.3.post16-py3.10.egg/nordicsemi/__main__.py", line 296, in serial
dfu.dfu_send_images()
File "/home/mike/meshtastic/adafruit-nrfutil/.venv/lib/python3.10/site-packages/adafruit_nrfutil-0.5.3.post16-py3.10.egg/nordicsemi/dfu/dfu.py", line 235, in dfu_send_images
self._dfu_send_image(HexType.APPLICATION, self.manifest.application)
File "/home/mike/meshtastic/adafruit-nrfutil/.venv/lib/python3.10/site-packages/adafruit_nrfutil-0.5.3.post16-py3.10.egg/nordicsemi/dfu/dfu.py", line 199, in _dfu_send_image
self.dfu_transport.send_start_dfu(program_mode, softdevice_size, bootloader_size,
File "/home/mike/meshtastic/adafruit-nrfutil/.venv/lib/python3.10/site-packages/adafruit_nrfutil-0.5.3.post16-py3.10.egg/nordicsemi/dfu/dfu_transport_serial.py", line 179, in send_start_dfu
self.send_packet(packet)
File "/home/mike/meshtastic/adafruit-nrfutil/.venv/lib/python3.10/site-packages/adafruit_nrfutil-0.5.3.post16-py3.10.egg/nordicsemi/dfu/dfu_transport_serial.py", line 243, in send_packet
ack = self.get_ack_nr()
File "/home/mike/meshtastic/adafruit-nrfutil/.venv/lib/python3.10/site-packages/adafruit_nrfutil-0.5.3.post16-py3.10.egg/nordicsemi/dfu/dfu_transport_serial.py", line 264, in get_ack_nr
temp = [x for x in self.serial_port.read(6)]
File "/home/mike/meshtastic/adafruit-nrfutil/.venv/lib/python3.10/site-packages/serial/serialposix.py", line 595, in read
raise SerialException(
serial.serialutil.SerialException: device reports readiness to read but returned no data (device disconnected or multiple access on port?)
Since that failed I decided to take a chance on flashing the bootloader found here onto the device using USB storage mode (flashing the UF2 file, of course). That also fails - the device just keeps booting into DFU mode, which is the same thing it was doing before.
This device looks pretty thoroughly bricked. Any suggestions would be greatly appreciated.
@circuitmike the bootloader I used and the instructions that worked for me are located here. I put the device in DFU mode and then just followed the directions. After the bootloader flashed, it rebooted back into DFU mode and I was able to copy the firmware over and it rebooted again and all was well.
https://wiki.seeedstudio.com/sensecap_t1000_e/#flash-the-bootloader
@n5qm Does it mean that official Release 0.9.2 of the Adafruit nRF52 Bootloader is not good enough?
@lyusupov
yes, it is the latest available, i suggest add/use these extra command line options "--singlebank --touch 1200"
The new bootloader and instructions from the Seeed wiki fixed it for me!
Category
Other
Hardware
Other
Firmware Version
2.4.3.91d6612
Description
I attempted to upgrade to this version of the firmware which seems to have been successful however the device is now in a boot loop.
I have attempted to utilize the nrf_erase2.uf2 image to clear the storage on the device and that appears to fail as the device reboots after that and no longer presents a serial interface.
Relevant log output