Then I decided to connect it to my stlink and reprogram the last bootloader that I had loaded to it, and while doing so the boards touched, and I saw the “magic black smoke” coming our of my maple.
It was a very quick short somewhere, the MCU still gets detected by St-Link, and even writes and verifies the code successfully, but doesn’t turn on the led properly any more, neither gets detected even as a DFU device.
I think it died an honorable death, helping me learn about the ARM, C++, bootloader…
Now I have to wait until some of the others I ordered from different vendors arrive. One was supposedly shipped almost 2 months ago…
I’m sure my wife wont mind if they take a while to arrive though… ![]()
“graveyard” – holy black smoke – or how I got my STM32 into heaven?
I always think after seeing my “working desk”, that I’m lucky not to smoke any module… (ok, I smoked about 3 litihium ion charger, they smell 3 days after death!)
Sorry, that the Magic Smoke escaped.
It reminds me.
I’ve been accidentally powering my STM32F103ZET board from 5V onto its 3V pin, but it seemed to survive
However I’d not recommend this to anyone.
It happened because my USB to Serial boards have both 5V and 3V output, and I swapped from using one USB serial to another, but one was had wires connected to the 3.3V output from the USB to Serial, and the other had the power wire connected to 5V
I wondered why the LED’s were so bright!!!
Anyway, fortunately (and strangely) no harm done.
I ALWAYS use red jumper cables for 5V and orange ones for 3.3V. I learned to separate voltage lines while building an analogue synthesizer and working with +-15V (=30V) and AVR’s (5V) so any mistake had gone up in holy smoke…
I also purchased two cheap DAC board, one of which had been kindly pre-smoked by the Chinese vendor
I picked up the smell the moment I took it out of the antistatic bag. Needless to say it didn’t DAC. The other board worked perfectly.
Anyway, fortunately (and strangely) no harm done.
So even though I have a working CPU, I think the flash memory is giving up…
I’ll try to write a couple of different patterns to all the flash and verify it with st-link, and see if it is just 1 bad page that I need to discard, and extend the life of this thing…
In any case for $4, I think surviving many uploads a days for two months was a fair price
If its just a bit if the flash that us trashed, you could quite easily change the start offset, but you’d need to change the linker script and the boards.txt and if you are using a bootloader, you’d need to change that as well.
It’s a shame we can’t pass the build vector, i.e the start address into the linker script, but it seems that the gcc linker doesn’t support variables or substitution in the MEMORY definition blocks.
I.e I managed to get everything else working, passing the define for the start location to the linker via the gcc compiler ( there is some strange trick you need to do, to pass defines from gcc to gcc.ld)
If love to be proved wrong and for someone to find a way of doing variable substitution in the linker scripts, as it would mean , we would not need loads of separate scripts for the generic boards, but I ran out if time to get it working and I did seem to reach a dead end with it.
Could be the USB re-enumeration, but I don’t think is that either. Some times it detects the maple serial correctly, ID 1eaf, other times it detects it as 0e0f and does not load the driver. It could be that the flash reads and writes correctly thru ST-Link, that goes at about 2Mbit, but not when the MCU is trying to run at full speed. I have tested even the blink example, and would not blink. I may try later compiling a bootloader to upload in the top 64KB of flash, and start going down from there, with a new entry in boards.txt and a new linker script just for that.
So far I have gone back in bootloader versions to the first one Madias posted, which I had used for days without problems before, uploading to 5000. it uploads, but the sketch will not run
st-link shows the upload is there, and the first 4 bytes contain the correct SP vector.
During my troubleshooting I did notice something strange. I went to my Temp folder, after compiling, and then the latest Buildxxxx folder created. I see all the usual files there, but the .bin files, and i have checked even some I compiled weeks ago, all of them have a chunk of nonsense data at the end, with thinks like the path to my arduino folders and things like that.
Have you noticed that before?
What called my attention is that I was uploading some sketch that would take 15KB or so, and I went to find the .bin file to upload it with st-link, and found the bin was 20KB, checked the content, and found that chunk or extra data at the end.
This is a known issue with too much stuff being compiled in, because at the moment we have to use the –whole-archive flag to get over some linker problems, which show up when using attachInerrupt.
This may be why you seem to have junk in the bin file.
You could try removing the –whole archive stuff from platform.txt and try again and see if the junk is still in the bin file (as most things still work)
Apart from that. The other issue could be you have damaged the USB re-enumeration circuit or the pin that it uses to trigger that function.
Without it, the bootloader will appear a DFU, but the sketch will not re-enumerate as USB Serial.
I normally revert back to flashing the LED with morse code in these circumstances or if the led is working, I attach a USB to Serial adaptor to just the RX and TX (Serial 1) pins on the maple, and still power it from USB (not don’t connect 5v from the USB to Serial when running from USB power)
You can connect GND from USB to Serial to the Maple mini, but I’ve found thats not necessary either, as it will get its GND from the USB connector and serial is so slow, using an alternate ground path doesn’t seem to be an issue
Have you tried flashing a file,then reading back the file and comparing the two ? albeit you will need to not read back the whole Maple mini, just the bit you know contains the data. I’d be tempted to somehow make a binary test file e.g. with incrementing number in it, that was perhaps 32k long, and write that to flash, then read back the same data and diff the files. I’m sure there must be some utility that would do this.
The problem was in the diode that feeds the 1117 regulator from the USB 5V. The diode was acting as a zenner, dropping 2.5V across it, and leaving only 2.5V to the regulator input, which was dropping a bit more to the output.
The result was that the STM32 was running to some degree, but crashing randomly. The bootloader seemed to run fine with that power, as I could detect the DFU in perpetual mode and boot to it and even upload sketches, but it would not correctly enumerate the serial, and the sketches would either not run or crash. The LED was fairly dim, which got me thinking on some power issue, and then I fed it 3.3 from the nucleo board and everything would run fine, even sketches.
I looked the original maple mini schematic and has a diode, I guess to protect the USB from reverse voltage, and in the maple mini clones the diode is also there, it is right next to the 1117 regulator.
I have shorted it and all works fine. Now I need to find one of those tinny diodes and replace it.
I have no idea about SMD sizes for discrete components, does anyone now the size and part number for that diode? should I look up the one in the original maple mini?
I know there are sizes like 0805, but by looking at the diode I don’t know what it corresponds too.
If someone can advise on what to replace it with, that would be great.
BTW, one of the other maple minis I ordered has arrived, so now I have at least two to work with. ![]()
Maybe this AVX datasheet will help : http://www.avx.com/docs/catalogs/AVX%20 … asheet.pdf
But purchasing them in low quantity is maybe a problem.
Doing quick search, it seems that SOD-323 is 0805 equivalent. If true, then, maybe something on eBay like the following can be Ok :
http://www.ebay.com/itm/50pcs-SMD-Diode … 1442784389
(in fact, looking at my mini with a magnifier, it seems that it is actually an S4 diode).
I went ahead and ordered those, thanks for the link!
Getting hold of a single SM diode is probably going be tricky.
See what your local electronics supplier has got e.g. 1nN5404 and solder on a normal one in place of your short.
Anyway, interesting to know what happened.
Perhaps I should have a go at moving this to the maple mini thread for future reference once your repair is complete
I don’t think I can buy it cheaper than that anywhere for a single one, so I’ll just have the other 49 around for free…
As the board works fine with a short, I’m not in a hurry and can wait for the delivery from china.
Moving it to the Maple mini section for reference seems like a good idea.
It’s always good to have spares ![]()
Re moving the thread
Ok. Will make sure the database is backed up and then I will have a go at moving the whole thread
Cheers
Roger
I fitted a battery for the RTC to my “Blue Pill” board having checked that VBATT was not attached to anything else first. This worked without any problems…
However I then went to perform the same trick for the “Ugly board” (below).

Now the mistake I made was not checking that the VBATT pin was not connected to anything else….. you can see where this is going…..

All went well for a few minutes, long enough to load a sketch in fact… then BANG! (and I do mean BANG!)… followed by a rather interesing (and no doubt mildly toxic) smell.
OOPS! Fortunately I had wrapped the battery holder and battery in tape, so the shrapnel didn’t go flying round the room. Both battery and holder were destroyed in this little experiment.
The moral of the story is… if you are fitting a battery to VBAT. check first that the board manufacturer hasn’t simply hooked this pin to 3v3.. if so you need a rechargeable battery or a diode to protect your cell from being converted into a firecracker.

Now which idiot thought it was a good idea to fit a zero ohm link there in the first place?
Is that the worst soldering job you have seen on one of these STM32 boards? My removal of R14 is the neatest work on the board ![]()
I don’t think I can buy it cheaper than that anywhere for a single one, so I’ll just have the other 49 around for free…
(Nearly) the same happened to me 2 weeks ago. Funny fact: After “burn” the mini works again, so I think the diode is no diode anymore but a bidirectional “jumper wire” (ok, I should really replace it

I’m still able to laugh since I’ve temporarly replaced the diode with a 0R (in the mean time I received my diode order), and my board still working.
Oufff ! (I’m also lucky for my USB port)
I don’t think I can buy it cheaper than that anywhere for a single one, so I’ll just have the other 49 around for free…
But, yes, too expensive … Better use the Chinese postal subvention …

BTW, I think I just may have to reduce my intentory to 48… I just shorted something to GND in a maple mini and is not powering anymore… after all it makes sense to buy 50 of those at once ![]()
What called my attention is that I was uploading some sketch that would take 15KB or so, and I went to find the .bin file to upload it with st-link, and found the bin was 20KB, checked the content, and found that chunk or extra data at the end.
Now the FTDI cable is stamped 3V3 on the USB shell, so being of limited intellect I presumed that meant that VCC from the cable would be 3V3… Never assume, always measure (or even, read the datasheet). The data pins are 3V3, but VCC is 5V….
ESP8266 boards get very hot when you overfeed them.
One more puff of magic smoke curls heavenwards. However at £1.67 for a replacement, this was fairly cheap as smoke related incidents go.
“special electronic pitmaster of the year”
“special electronic pitmaster of the year”
srp
It was a very quick short somewhere, the MCU still gets detected by St-Link, and even writes and verifies the code successfully, but doesn’t turn on the led properly any more, neither gets detected even as a DFU device…
it hurts for a really long time as it’s a very high usage and highly nerved appendage. in my case a reversely powered ATMega16, no smoke, no colour, just that, that smells warm sense.
I probably burn myself on various thing a few times a year, including just accidentally touching hot metal baking trays ( at 180 deg C), and the cold water trick usually means I dont end up with any long lasting pain
additionally it’s the finger i took about 1/8″ off the tip with grass scythe when i was 12 or so.
last thing my mother said was don’t!
doctors and then an auction, every time the hammer went, so did my finger.
it’s been extra sensitive ever since.
stephen
I must have fast reaction times, as i normally don’t hold my finger on hot things long enough to do that much damage.
I probably burn myself on various thing a few times a year, including just accidentally touching hot metal baking trays ( at 180 deg C), and the cold water trick usually means I dont end up with any long lasting pain
I think there was sound groundbreaking work done for sever burns (by a british doctor based in Peth Australia) where they said cooling the burn for 20mins, massively improved the recovery.
I agree, after a while, application of some other burn treatment is also beneficial. I think you can buy products for that, I think I may have something in our medical cupboard, but I suspect its just something like Aloe-vera
i’ve also noticed that things i’d seen with older people and at the time, thought that must hurt or annoy them, actually don’t.
although i’m not a mini anything, 6’3 and a variable 17+2/-3st, the topic seems to fit.
i’ve written off a mini(car) with my head(inside a crash helmet) and a 750cc m/bike, think Tom and Jerry indentation
and i’m the only person the makers know of who’s rolled their recumbent tricycle(ICE Trice QNT) 540degs.
the technique involves rain, tarmac and a steel drains cover, i got turned broadside as the left front skidded on the cover, then stopped on tarmac suddenly.
also got others, one involving a 1:6, 1:4 and a further 1:6 need i say downhill. i walked away, my kneecaps got saved by my fairing and i missed out on a helicopter ride; severely scared some council workers as i aborted a downhill into a 90 bend and went right instead.
stephen
unstable, not a lot of memory free, i need my maple mini’s
started checking the rest, caught just a tiny wisp of blue smoke. rewired the bread board, vcc and gnd pins swapped on the display
retried, showing only bottom right quadrant sized missing alternate dots demo resulted, bent pins over and threw it.
carefully checked the vcc, gnd, scl and sda pin sequence on the rest and all wired appropriately checked out ok
next the spi ones … … …
stephen



