I'm using dotNet Disk Imager to write images on to microSD cards for lots of Raspberry Pi systems. If I try and write more than three at once I get odd behaviour and the Access Denied error whith no further information, similar to this thread: https://sourceforge.net/p/dotnetdiskimager/featurerequest/7/
My system:
Windows 10 Pro, Version 10.0.14393 Build 14393
dotNet Disk Imager version 0.6 (b157.16)
I am using several Kingston microSD card readers at once, all the same model: FCR-MRG2, and I usually write the raw image file (.img) to brand new blank cards. This time I was using SanDisk 32GB class 10 microSD cards.
If I try and write to more than three drives at once I just get an error message that says "Access Denied". I have tried all of my microSD cards, card readers, and USB ports in different combinations, and they all work individually. It is only when I try and write 4 or more that I get the error.
If I have 4 or more microSD cards attached I can get rid of the error by deselecting one of the drive letters and letting the rest of the drives be written. I have to deselect one at a time and try to write to find out which one I need to deslect. It is only ever one at a time, never more than that. The drive letter and USB port that needs to be deselected are different every time I insert the card readers, except it will never be the last one that I have inserted.
All of the Kingston card readers appear as "Generic STORAGE DEVICE USB Device". If I try to put in another USB stick to act as the one that needs to be deselected it doesn't make a difference to the Kingston card readers. One of them still needs to be deselected.
If I leave the card readers inserted then close and reopen dotNet Disk Imager the drive that needs to be deselected does not change, which leads me to believe that this is something to do with how Windows is handling the drives.
I managed to get seven microSD cards to write at the same time, leaving the 8th inserted but not doing anything and then writing that one on its own. The 7 together got right to the end then said that there was a write failure. I tried to boot one of them because it looked like it had the filesystem on it but I just got a kernel panic - failure to mount root filesystem.
I then tried to image all 8 cards at once and I didn't get the Access Denied error or any write errors. As you pointed out in the linked thread, they all now had a filesystem on them rather than being RAW. Out of these 8, 7 worked fine and one had the same kernel panic as previously.
Hello and thank you for your feedback. I've never tested it with that much devices at once. I've tested with 1,2 and 3 devices at once and always without problem. So I thought it's OK. Obviously my tests were exactly at the limit where it works fine. Sadly I don't posses that much devices to test it right now. I will try to gather more devices somewhere and test it on my system.
Hello once more, with latest release - version 0.7 (b235.18), the error messages are now more detailed. Can you try to repeat your procedure to reproduce the error ? I couldn't gather enough devices to test it myself. I'm interested in error message you get now. Thank you
I tried two sets of writes; one with raw cards straight out of the packet and the other after creating a FAT32 filesystem on each drive. There was no difference between the two. They both gave the same error if I tried to write more than seven drives at once.
The new error message I am getting is:
But I am now only getting this error when I try and write more than seven devices at once. This has already more than doubled my speed, so thank you!
Out of the 10 that had a FAT32 filesystem, once I had written the first 7, the final 3 would not all write at once. Any combination of two would work, but all three gave the error quoted in this post. I fixed that, and wrote all three at once, by using diskpart and running the commands "clean" and "create partition primary" on each drive.
Last edit: James 2016-11-14
OK, it is the same error over and over again. I've released a new test build (HERE), and I would be delighted if you give it a try. I just need to warn you, it's at your own risk, using this tool is always a bit risky, so test it on SD cards with no data or backup first (with production version of dotNet Disk Imager).
Please let me know if you decide either way, to test it or not and if you decide to go for it, let me know what happened.
Thank you for your cooperation.
Last edit: Filip Sikora 2016-11-15
I just tried that version on 10 drives at once and it worked flawlessly. No errors, full write speed.
Happy to hear that. Did you also verified that all devices were written successfully ? Not just by the application itself, but in actual target device, where the SD cards belong to ?
Fixed