New DFU V3.45

So I just received a DSO Nano V3 (no MMC slot) from seeed. My goal is to upgrade to the BenF firmware “BenF_3.64APP_3.53LIB_patched_v2”, and I am getting stymied every step of the way. I am hoping someone else has run into this and can shed some light. First - the details on my DSO.

The hardware info screen (accessed by pressing Right and OK while turning on power):

The firmware upgrade screen (accessed by pressing Down while turning on power):

Everything looks pretty cool so far. I see the virtual disk mount in my Windows 7 x64 machine. I see files in the structure. Drag / drop of files seems to work without issue. This is true for both normal (virtual disk named “DSO_NANO_V3”) and firmware upgrade modes (virtual disk name “DFU V3_45_D”). (Interestingly, though not central to my issue, the hardware info also invokes a series of USB device loads, but some of them are unknown. I wonder if this is some obscure fallback compatibility mode for earlier versions of the upgrade tools. Hmmm.)

So - I boot the DSO into firmware upgrade mode. I see the Explorer window pop open and see files in it. I drag the “BenF_P2.hex” file into it. The DSO quickly does a soft reset, the Explorer window closes and immediately reopens. And in it I see file named “BenF_P2.err”. Rats!

I have tried a number of alternate DFU and APP .hex files and all but 2 of them give a similar error. The exceptions are “NANO4_28.hex” and “NANO4_30.hex” (my as-shipped version). Both of these files will be accepted by the firmware upgrade tool, and the .rdy file will appear when Explorer reopens. When I boot the DSO into normal mode, the splash screen will show the version I just downloaded.

I think the drag / drop / firmware update / rebooting - all that stuff is working okay. So why is the firmware tool rejecting all the other .hex files I throw at it? I suspect seeed has injected a new validation scheme, and all the other older versions of the DFU and APP fail the test.

Does anyone else have DFU version 3.45D and APP version 4.30? Maybe some insight into what is going on? I’d like to get off 4.28 / 4.30, and into something a little more customer friendly.

Thanks!

(I am new to the DSO Nano world. If I have said something incorrect, kindly let me know.)

The new bootloader might not be happy with bogus “05 - Start Linear Address Record” found at the end of the hex file on line,

:0400000500000000F7

Try replace it with

:040000050800C1210D 

You can also try to remove it completely.

Other thing I see in 4.30 is that they joined LIB and APP and the is no longer any gap between them and all of the code is in 08004000-0800C9D8, BenF lives in LIB 0800400-08007B0C and APP 0800C000-08014C4C, so perhaps the bootloader has a limit on the range.

edit:

I also suggest renaming the hex files something similar to one that it accepts.

@motopasscode - Excellent ideas. Let me give them a try and I’ll post back with the results.

@motopasscode - That was exactly it! Revising the start segment was the key. Now THIS is the DSO I thought I was buying. Thank you for the assistance.

Awesome! If possible, do you think you could edit your original post to mention Benf 3.64 on DFU 3.45D and attach the fixed hex. I think it would help out new users with the new bootloaders.

In case someone wants to try Benf v3.64 on DFU v3.45 Link (Remember: no support for internal SD flash) You could attempt SD Hw Mod Link

And here is the latest stock firmware v4.32 Link