Electronics > Microcontrollers

Need help disassembling this binary

(1/2) > >>

I am analyzing the firmware for my heat pump.

The main controller software binary is a standard ELF file, I was able to successfully load it into IDA Disassembler as ARM little-endian (thumb), patch some constant to change the heat pump's behavior, and retrieve the master password which was hardcoded into the binary. The firmware for the controller runs on a MCU that I could identify as ATSAMD21G18.

However, there is another file from the complete firmware package, and that is simply a generic .LIN file. I believe this file to contain code that runs on another controller board that communicates with the main controller software. However I was not yet able to identify what MCU it runs on.

Here is the .LIN file, I was hoping some expert here could jumpstart a noob like me and tell me what kind of binary / CPU architecture that is. I can only see garbage trying to disassemble it as ARM bytecode.

If looking at the "Strings in the binary"

They seem to match here (google search)

Ie: FreeRun forbidden in sleep mode   (Line 880)

That might indicate it's for another sam processor


The .LIN file is for Cortex-M MCU too, it is a raw binary with load address 0x401800.
A quick look shows ADC address 0x40038000, UART address 0x40024000 - this arrangement matches ATSAM4S.

Thank you, I'll try to disassemble it again.

Ghidra can break any arm code. It's my favorite tool.


[0] Message Index

[#] Next page

There was an error while thanking
Go to full version
Powered by SMFPacks Advanced Attachments Uploader Mod