Decat para Mazda MPV 2002

Aqui está outro veterano com problemas no sistema ambiental. A tarefa é desenvolver uma solução de software Decat.

Temos uma unidade de controle do motor (ECU) Mitsubishi FS6S18881B E2T88876H, que utiliza o processador H8 com 128KB de memória flash. O firmware é identificado como EZFS6S.

Este microprocessador tem uma característica específica – quando carregado no IDA Pro, o endereçamento da ROM não começa do início.

Decat para Mazda MPV 2002

Vamos carregar o firmware no WinOls e examinar a tabela de erros. Aqui está o que encontramos:

Decat para Mazda MPV 2002

Parece que os erros relacionados ao sensor de oxigênio traseiro estão localizados na mesma linha, o que simplifica a tarefa, uma vez que os flags de ativação provavelmente estarão no mesmo byte.

Em seguida, vamos analisar as mesmas informações no IDA Pro e localizar os procedimentos necessários:

Decat para Mazda MPV 2002

Através desse processo, descobrimos a “máscara” para os bits de ativação que controlam ambos os erros em nossa string identificada. Ou pelo menos deveriam controlá-los!

Decat para Mazda MPV 2002

No entanto, há uma surpresa inesperada dos desenvolvedores – parece que o DTC P0141 não pode ser desativado usando este método. Tivemos que investigar mais a fundo e, como resultado, encontramos procedimentos adicionais onde os bits necessários são definidos com base em certas condições. Esses flags são escritos na RAM e processados pelos procedimentos apenas quando necessário. Vale a pena notar que só porque observamos a voltagem do acelerador durante os diagnósticos, não significa necessariamente que esses valores estão sendo processados ativamente no programa.

Decat para Mazda MPV 2002

Finalmente, conseguimos localizar o bit específico que precisávamos e desativá-lo. Após vários dias de trabalho, criamos com sucesso uma das variantes Decat para este programa.

Deixe um comentário