Open ajacocks opened 3 years ago
Could you try fluxengine test voltages
with both drives plugged in, and then just the 3.5", and then just the 5.25"? Also try reads that way. I've seen oddities with two drives connected simultaneously, probably caused by termination issues.
With both drives connected, we get this:
$ sudo ./fluxengine test voltages
Using FluxEngine with serial number D401021906153294
Output voltages:
Both drives deselected
Logic 1 / 0: 0.64V / 5.00V
Drive 0 selected
Logic 1 / 0: 0.65V / 5.00V
Drive 1 selected
Logic 1 / 0: 0.65V / 5.00V
Drive 0 running
Logic 1 / 0: 0.64V / 5.00V
Drive 1 running
Logic 1 / 0: 0.65V / 5.00V
Input voltages:
Both drives deselected
Logic 1 / 0: 4.88V / 4.98V
Drive 0 selected
Logic 1 / 0: 0.00V / 4.88V
Drive 1 selected
Logic 1 / 0: 0.03V / 4.88V
Drive 0 running
Logic 1 / 0: 0.00V / 4.88V
Drive 1 running
Logic 1 / 0: 0.04V / 4.88V
With just the 3.5, I get this:
$ sudo ./fluxengine test voltages
Using FluxEngine with serial number D401021906153294
Output voltages:
Both drives deselected
Logic 1 / 0: 0.09V / 5.00V
Drive 0 selected
Logic 1 / 0: 0.09V / 5.00V
Drive 1 selected
Logic 1 / 0: 0.09V / 5.00V
Drive 0 running
Logic 1 / 0: 0.09V / 5.00V
Drive 1 running
Logic 1 / 0: 0.09V / 5.00V
Input voltages:
Both drives deselected
Logic 1 / 0: 4.92V / 4.98V
Drive 0 selected
Logic 1 / 0: 0.00V / 4.88V
Drive 1 selected
Logic 1 / 0: 4.98V / 4.99V
Drive 0 running
Logic 1 / 0: 0.00V / 4.88V
Drive 1 running
Logic 1 / 0: 4.99V / 4.99V
With just the 5.25, I get this:
$ sudo ./fluxengine test voltages
Using FluxEngine with serial number D401021906153294
Output voltages:
Both drives deselected
Logic 1 / 0: 0.56V / 5.00V
Drive 0 selected
Logic 1 / 0: 0.56V / 5.00V
Drive 1 selected
Logic 1 / 0: 0.56V / 5.00V
Drive 0 running
Logic 1 / 0: 0.56V / 5.00V
Drive 1 running
Logic 1 / 0: 0.56V / 5.00V
Input voltages:
Both drives deselected
Logic 1 / 0: 4.92V / 4.98V
Drive 0 selected
Logic 1 / 0: 4.99V / 4.99V
Drive 1 selected
Logic 1 / 0: 0.04V / 4.88V
Drive 0 running
Logic 1 / 0: 4.99V / 4.99V
Drive 1 running
Logic 1 / 0: 0.04V / 4.88V
Thanks!
Honestly, that looks pretty normal. Any luck trying a read with just one drive attached?
Hello @ajacocks ,
Regarding the mismatched image after writing/reading back, I did notice an issue with some 5.25" drives that could possibly be addressed with write precompensation. The inner tracks would not read properly after being written. Sometimes they would read on retry. I also tried using GreaseWeazle to read/write using the same drive, and found that enabling write precompensation in GreaseWeazle helped. Unfortunately, the precompensation aglorithm in FluxEngine's Fluxmap::precompensate() did not help; in fact, it made things worse.
After reading an article describing that different amounts of precompensation were optimal for different brands/models of drive, I switched to another brand 360K floppy drive (to an Alps drive from an IBM external 360K drive) and it works fine now.
Also, I added some presets for reading and writing 5.25" floppies in PR#227 which seem to work well for me.
I will give these a shot.
I'm generally not quick to change cabling since my enclosure is pretty tightly packed. I should probably pull everything out until I have all the bugs out, but I haven't done that.
I am attempting to test out a Fluxengine that I have just finished building, by writing and reading some 3.5” and 5.25” IBM floppy images, to verify that everything works. I have the Fluxengine attached to a 3.5” 1.44MB floppy drive, as drive 0, and a 5.25” 360kB floppy drive, as drive 1.
Writing to the 1.44MB drive seems to work:
And reading works, too, but the read-back image isn’t identical to the original:
Writing 720k floppies on that drive seems to work, as well, but reading is an issue:
Reading seems to be somewhat problematic:
Using the 360k drive (#1) also has issues:
So, it seem to be able to read most of the disk, but not the first sector of the first 9 tracks.
Writing doesn’t seem to work, at all:
Thanks for all the hard work! This is an amazing device.