XaiJu
nicsure
nicsure

patreon


nicFW880 The First Steps

This may look pretty trivial but it's not, getting to this stage is a huge relief.

The TD-H3 was an 8051 based device, not exactly difficult to work out, it's a very simplistic MCU compared to ARM. For the 890 and 900 I had already working code to use as a reference. So getting a working binary for those models wasn't too problematic.

The 880 however is a different story, we know the MCU, so that helps, but we know very little else, what the boot loader offset is, how much RAM is reserved at the start and so on. It's not trivial at all to get something running on a device you know very little about.

But we got there.

Comments

bootloader offset is 0x08002800, the reset handler is at 0x08002AC0 (ARM thumb you disregard the least significant bit) as is evident by the opcodes present 0x2C0 into the firmware binary. RAM allocation typically only uses what it needs, the compiler decides where to place the stack top. There is no shadowing of the vectors, so RAM usage starts from 0x20000000 dead, there's 48k available , the stock firmware apparently only needed 39k of it.

Marcus Dudley

So, just out of curiosity (correct me if I'm wrong) bootloader offset is 0x2AC1 and initial RAM allocation is around 39KB?

Dawid Styczyński

Congrats! Just ordered a RT-880 last night in fact! (just because I like new toys to play with, and I 'm out of channel memory slots on my 900 lol -- and of course because I think your firmwares for the H3 and 900 are game changers for those radios!).

Dochartaigh


More Creators