- DisclaimerThank you XDA developers! :D
- I am not responsible for bricked devices, dead SMUs, thermonuclear war,
- or you getting a fail grade because the device died. Please do some research
- if you have any concerns about processes shown here in this guide
- before following it! YOU are choosing to do these modifications, and if
- you blame me in any way for what happens to your device, I will laugh at you.
One day, after returning to Bangalore after the latest campus trip a few months ago, I noticed that my ADALM1000 kit wasn’t working. It worked fine when we had to make a binary counter as part of the lab demonstration but now, it suddenly showed no signs of life.
This was DANGEROUS! I did not want to spend ₹6000 to ₹12000 on a new one, especially since the thing is almost a decade old with Analog Devices Inc no longer providing meaningful support/software updates anymore. I had a conversation with my folks that I may have to replace one, and while the conclusion was “go for it”, I had a kind of tinkerer’s brainbug nudging me to prod it with a stick to see what happens.
This was literally Open Hardware, with an ATMEL chip! If I did not fry it then I can revive it… this is so much more doable than the Micromax a109 and a few other older MTK phones I had fixed with SP Flash tools
or my Oneplus One I used
Device state
No LEDs on(which is not always a big deal as they are re-programmable through software, I put my doubts aside). Nothing detected most of the time. Key being… most of the time :)
First Attempt at Flashing
On my linux laptop, it once showed up on lsusb
as a BOSSA device a few days ago, but I tried to flash it with Pixelpulse2
(apologies for the lack of screenshots, I didn’t take any at the time) which successfully detected it.
This was a terrible idea however since even though it told me to reboot, it didn’t get detected afterwards.
What’s worse: it would no longer show up on lsusb! I was scared, thinking it could be a hardware side issue. But I stayed calm as I knew how erratic bricked/halfbricked hardware can be…
TL;DR upto here: Flash success from PP2 software but no matter what I did, it wouldn’t work. Not detected anywhere! D:
Second Attempt at Flashing(Almost there)
So I switched things up. I tried it on my windows machine, and still nothing. I searched up the official procedure and a forum post suggested holding and shorting out two of the pads.
This wasn’t very clear but it turns out I had to do this WHILE plugging it in.
Even though it still refused to work, I went to device manager, and found that after a few trial and error attempts of doing this, it eventually detected as an ADALM1000 SAM-BA Win-USB Driver
.
I thought I should try BOSSA and I flashed the m1000.bin from the releases page. This was a mistake. Scroll further down if you want to see what worked for me.
Here’s what I did:
- right click and
Update Drivers
for the SAM-BA detected device from Windows device manager - Selected
Browse my computer for drivers
- Selected
Let me pick from a list of available drivers on my computer
and selected aBOSSA Programming Port
- Flashed with BOSSA tool, no changes to settings, just selected COM12 as it was detected
- Tried power cycling it as suggested
NOTHING! AT ALL!
No signs of life but luckily, it stayed in BOSSA mode.
Final Attempt at Flashing(Finally Worked)
The device was detected as a
BOSSA Programming Port
and I had Pixelpulse2 and Alice already installed which also configured libsmu for me. If you need help with that, drop a comment and maybe I can release a step by step guide to setting that up.
I opened up a terminal, ran the smu command to flash the firmware and IT FINALLY WORKED :3
(you might wanna change the path to the firmware downloaded here)
|
|
Overview of Steps
So basically:
0. Ensure you have the correct drivers installed. To be safe, configure BOSSA and Pixelpulse2 on your machine. Linux users: Install libsmu, ideally building from source.
0.5. Download the firmware and keep it ready. Note down the path as we’ll need it in step 6. Link to firmware: https://github.com/analogdevicesinc/m1k-fw/releases
2. Brick your ADALM1000, idk how, and disconnect your board.
3. Short the R56 labelled pads on your ADALM1000, nearest to PIO 3
and GND
pins with a metal object like tweezers. DO NOT scratch or drag, do this with extreme precision! You may end up scratching a trace and maybe even end up ruining your expensive board :(
4. While still shorted, carefully plug in the usb cable into your computer. Leave it after a short second of being plugged in.
5. Ensure lsusb
or Device Manager detect the ADALM1000 in one form or the other… Only proceed if they do.
4.5. DO NOT RUN ANYTHING ELSE, NO BOSSA OR PIXELPULSE2’s programmer! This will save you quite a bit of time as it would’ve fixed my device on the first attempt :D
6. Use the smu command to flash the binary smu -f Downloads\m1000.bin
7. Enjoy your unbricked ADALM1000!