A2681 repair after water damage

bahlaivlad

New member
Hello everyone! Glad to be a part of repair community. Hope to get some help.
I got a MacBook Air M2 (A2681), which I personally bought for repair. I spent some time trying to repair this laptop, so I will try to describe it in details.

Laptop sustained heavy corrosion of touchpad and battery connectors. Battery is damaged and dead (one bank was shorted by liquid and swollen). Display connector and motherboard are surprisingly clean and do not have any signs corrosion (except touchpad and battery connectors). No previous repair attempts were done to this board.
photo_2024-04-09 03.06.29.jpegphoto_2024-04-09 03.06.28.jpeg

Initial state:
After cleaning all corrosion MB consumed 5V/0.4-0.2A in a loop, constantly trying to turn itself on, but failing. The display backlight flashed like a flashlight (for a moment) during this loop.
Discovered that UP700 IC (part of display backlight circuit) was faulty on 1V25 line and caused power IC to power cycle. After UP700 replacement the MB successfully switches to 20V, but current stuck at around 0.08A (80 mA). No fluctuation, just stable consumption, nothing heats up, except the M2 SoC (up to 40 C, not much). When connected to battery, the battery is charging. All required power lines and voltages are OK. After restoring touchpad and battery connectors diode measurements on them seems to be OK. Tried to connect it to another laptop to see if it's in DFU, but no.

AON Voltages:
PP1V8_AON - 1V8, OK
PP1V8_AON_MPMU - 1V8, OK
PP1V2_AON_MPMU - 1V25, OK


LDO:
PP1V5_LDOINT_MPMU - 1v5, OK
PPVDD_LDO20_14_8_3 - 1V28, OK
PP3V3_S2_LDO - 3V2, OK

S2:
PP1V2_S2_CIO - OK
PP1V05_S2SW_VDD2H - 1V02, OK
PP0V855_S2SW_CIO - 0V85, OK
PP1V25_S2 - 1V28, OK
PP1V8_S2 - 1V8, OK
P3V3S2_PWR_EN_MPMU - 1V8, OK
PP1V8_S2SW - 1V8, OK

AWAKE:
PP1V2_AWAKE_PLL - 1V2, OK
PP1V25_AWAKE_IO - 1V25, OK
PP1V8_AWAKE - 1V8, OK


PP5V_MPMPU_BSTLQ - 5V, OK
PMU_ONOFF_R_L - 1V65
MPMU_FAULT_OUT_L - 1V65
MPMU_SCRASH_L - 1V65V
PMU_CLK32K_SOC_R - OK, has signal
PMU_ONOFF_L - 1V8
IPD_LID_OPEN_1V8 - 1V8, OK
IPD_PWR_EN - 1V8
PMU_SYS_ALIVE - 1V28

NAND Voltages:
PP2V58_AWAKE_NAND_VCC - 2V5, OK
PP1V25_AWAKE_NAND_VCCQ - 1V26, OK
PP1V2_NAND0_S5E1_AVDD1X_PLL - 0V
NAND0_CLK24M_1 - OK, has signal
NAND0_RESET_L - 1V25, OK
PP0V88_AWAKE_NAND_VDD - 0V88, OK
NAND0_LPB_L - 1V26, OK

I forced DFU mode (both keyboard and FORCE_DFU methods work) and the board boots to DFU, but Revive or Restore ends with an error (I connected MLB to known good battery and trackpad+ keyboard). During DFU Revive or Restore the laptop shows Apple logo for a minute or so, but then the logo disappears, no progress bar was shown (the backlight remains turned on though) and then Apple Configurator throws an error (4041 during Revive, 4014 during Restore):
photo_2024-04-09 03.06.26.jpegphoto_2024-04-09 03.06.26 (1).jpegphoto_2024-04-09 03.06.33.jpegphoto_2024-04-09 03.06.34.jpeg
I tried different cables, computers, but nothing helped. Being in desperate I changed MPMU U8100 and SPMU U7700 from known good board, but nothing changed as well (I thought there may be some internal damage to PMU). Finally, I replaced the NAND from another iCloud locked donor board.

After NAND replacement (current state):
Now the board still fails to Revive/Restore, but its behaviour is slightly different. Both Revive and Restore now returns error 9 instead of 4014/4041. And the progress bar now is shown during Revive/Restore process.
When doing Restore, it will just show Apple logo with a progress bar, but then the image disappears, backlight stays on and error 9 is returned.
photo_2024-04-09 03.18.30.jpeg
When doing Revive, it will show Apple logo with a progress bar, it fills about 10% and then the image disappears, backlight stays on and error 9 is returned.
photo_2024-04-09 03.18.29.jpeg
Now the board is stuck in DFU mode (all voltages seems to be present and stable).

So right now I am out of ideas. I have a couple of questions:
1. What to try next?
2. Is the CPU alive or not, can we assume it now? Basically, does it look repairable?
3. How fried touchpad/battery connectors may lead to such consequences?

I will be very grateful for any help.
 

2informaticos

Administrator
Staff member
First of all, welcome to the forum!

This is what we have confirmed about DFU errors:

You should try erasing U1900; maybe U1950 too.
Don't forget to make backup first!
If possible, test with dump files from working board.
 

bahlaivlad

New member
First of all, welcome to the forum!

This is what we have confirmed about DFU errors:

You should try erasing U1900; maybe U1950 too.
Don't forget to make backup first!
If possible, test with dump files from working board.
Thank you!
I've read this article about DFU mode, it is very thorough and useful! Writing it took a lot of effort!

Can you suggest the programmer model that can be used to flash U1900, U1950? All I have is CH341 model.

I should mention that I tried to replace U1950 from donor board, but had no luck (no effect).

After your suggestion I replaced U1900 with the one from donor board, leaving the original U1950. And it seems like we got some progress! Now the progress bar fills more (around 20%), but Revive/Restore still fails. Revive still fails with error 9, while Restore fails with error 10.
photo_2024-04-09 05.06.16.jpeg

04:55:07.8077] <Restore Device 0x1171da1f0>: operation 80 progress 1
[04:55:07.8078] requested restore behavior: Erase
[04:55:07.8319] requested restore behavior: Erase
[04:55:07.9132] <Restore Device 0x1171da1f0>: operation 80 progress 50
[04:55:07.9133] requested restore behavior: Erase
[04:55:07.9563] <Restore Device 0x1171da1f0>: operation 80 progress 100
[04:55:07.9580] Completed checkpoint id: 0x1312 (update_ean)
[04:55:07.9580] Started checkpoint id: 0x130A (install_fud)
[04:55:07.9581] Completed checkpoint id: 0x130A (install_fud)
[04:55:07.9597] Started checkpoint id: 0x1304 (update_stockholm)
[04:55:07.9597] <Restore Device 0x1171da1f0>: operation 55 progress 0
[04:55:08.2365] RestoreOS mode device disconnected
[04:55:08.2365] RestoreOS device removed before restored completed
[04:56:01.9955] ASR progress: Broken pipe
[04:56:01.9956] ASR progress: Could not read all of client request
[04:56:01.9961] ASRServerHandleConnection failed: 65
[04:56:01.9965] encoded CFError was missing from unsuccessful restore
[04:56:01.9965] Sending acknowledgement that final status was received
[04:56:01.9965] device restore output unavailable
[04:56:01.9966] AMRAuthInstallDeletePersonalizedBundle
[04:56:01.9966] preserved personalized bundle: (null)
[04:56:01.9967] <Restore Device 0x1171da1f0>: Restore failed (result = 10)
[04:56:01.9967] Can't send dump_console command since device is not in recovery mode
[04:56:01.9970] Finished RestoreOS Restore Phase: Failed
[04:56:01.9970] State Machine Dump, status:ERROR - [state:DFU remaining-cycles:1] -> [state:Recovery remaining-cycles:0] -> [state:RestoreOS remaining-cycles:0 (current state)]
[04:56:01.9973] Changing state from 'Restoring' to 'Error'
[04:56:01.9973] State is now set to error: AMRestorePerformRestoreModeRestoreWithError failed with error: 10
[04:56:01.9998] Restore completed, status: 10
[04:56:01.9998] Elapsed time (in seconds): 126
[04:56:01.9998] Restore Checkpoint Fingerprint: 1304.0000
[04:56:01.9998] Failure Description:
[04:56:01.9998] Depth:0 Code:-1 Error:AMRestorePerformRestoreModeRestoreWithError failed with error: 10
[04:56:01.9998] Depth:1 Code:10 Error:Failed to handle message type StatusMsg (Protocol error)
[04:56:01.9998] Depth:2 Code:10 Error:invalid error description

If I replace both U1900 and U1950, if fails earlier (around 10-15%).

Should I try to erase these ICs or replacing them from donor board is acceptable?

BTW, the touchpad is not connected to the laptop during these attempts. I do not have a spare one at the moment.
 
Last edited:

2informaticos

Administrator
Staff member
Some boards can't complete DFU without good trackpad connected!
Not sure if is the case here, but is good to test.

Be sure the machine appears in DFU, not Recovery, on AC2.
Test if used connection cable allows DFU completion on other machines.
 

bahlaivlad

New member
Some boards can't complete DFU without good trackpad connected!
Not sure if is the case here, but is good to test.

Be sure the machine appears in DFU, not Recovery, on AC2.
Test if used connection cable allows DFU completion on other machines.
Yeah, I’ve read on that article that touchpad may be needed for some boards. Yet, I tested another A2681 board w/o touchpad and it did not fail like this. So, my assumption is the case is not in touchpad.

The machine appears in DFU, not Recovery. I tried using different cables.

What about erasing U1900, U1950? Can you suggest which programmer should I use to work with these ICs? Thank you.
 

2informaticos

Administrator
Staff member
U1950 is 1.8V chip, so need an adapter.

U1900 is powered from 1.25V and possibly RT809H supports it.

Trackpad and battery connectors are not directly connected to M2 CPU.
However you can't discrad a damage of this, caused by corrosion.

BTW, write directly into reply box, instead of clicking Reply button.
I don't see any reason to quote an entire post, visible few centimeters above.
 

2informaticos

Administrator
Staff member
SEP EEPROM is tied with M2 CPU.
But should be reflashed in DFU restore; in case of corrupted binary.
As I said, don't forget to make backup, if you want to touch it!
 

bahlaivlad

New member
I bought 1.8V adapter, it should arrive tomorrow, I will try to read U1950.
Unfortunately, I could not found any suitable programmer for U1900. It is Macronix MX25S6473F with Vcc 1.14V-1.6V. Do you know any programmer that works with 1.2V SPI ROM ICs? According to RT809H documentation, it does not support 1.2V ICs.
 
Top