-
Notifications
You must be signed in to change notification settings - Fork 8
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
add an ADC to enable direct connection to floppy analog test points #9
Comments
I couldn't find a test pin on most floppy drives, only some of them have them as far as I know. That part of the code that uses an oscilloscope can be considered alpha and is purely to explore if it's worth it to retrieve the analogue signal instead of letting the drive do the processing. As a result of my experiments I'm not convinced it's worth it to take the effort other than purely academic interest. The best and fastest way is still to use the arduino shield and an arduino Due with this project. I've considered adding ADC but it has several issues. You'd need a mcu that has at least 2 channels that can capture ADC data simultaneously. Then there's the amount of data that needs to be transferred to the host PC. It takes about 6M samples per second per channel in 8 bits. That's 12MB/s. While most USB2 high speed devices should be able to reach that, bit's not guaranteed on many mcus. A Teensy would probably be able to do it but I haven't ported it to that platform. Feel free to do so. But if you really want to hook up an oscilloscope here are the basic steps:
That's about it. I've included an example waveform so you can open it without needing an oscilloscope so you can play with this functionality. |
All floppy drives that I've looked at have analog test points. It's used
in conjunction with alignment disks to set the head exactly over a
reference track written precisely at a particular radial position. The
stepper motor will have an interval set for the inter-track spacing, but
the registration to a reference track needs to be adjusted.
The drive maintenance manual will have a detailed process for this,
including what test points,and what oscilloscope settings to use. Look
under radial alignment.
This is a standard adjustment for any repairable drive, and I would be
shocked if any drive didn't have such a test point.
…--curt
On Tue, Sep 17, 2024, 03:29 imqqmi ***@***.***> wrote:
I couldn't find a test pin on most floppy drives, only some of them have
them as far as I know.
That part of the code that uses an oscilloscope can be considered alpha
and is purely to explore if it's worth it to retrieve the analogue signal
instead of letting the drive do the processing. As a result of my
experiments I'm not convinced it's worth it to take the effort other than
purely academic interest. The best and fastest way is still to use the
arduino shield and an arduino Due with this project.
I've considered adding ADC but it has several issues. You'd need a mcu
that has at least 2 channels that can capture ADC data simultaneously. Then
there's the amount of data that needs to be transferred to the host PC. It
takes about 6M samples per second per channel in 8 bits. That's 12MB/s.
While most USB2 high speed devices should be able to reach that, bit's not
guaranteed on many mcus. A Teensy would probably be able to do it but I
haven't ported it to that platform. Feel free to do so.
Then there's the effort vs value, which doesn't make too much sense to
implement this.
But if you really want to hook up an oscilloscope here are the basic steps:
1. Make sure you've installed national instruments oscilloscope
driver. Not sure what version, you'll have to experiment
2. I think ch1 is the index signal with trigger, ch2 the analogue flux
signal and optionally ch3 for read data
3. Connecting to the scope can be fiddly. If you have issues, try to
install oscilloscope companion from Marcin Gosiewski and install the NI
VISA drivers and connect to the scope with that and try if that works. If
it works it should also work with FloppyControl.
4. The software will mostly setup the oscilloscope automatically with
the right settings (Rigol DS1054Z, not sure about other scopes). Hook it up
to the network as the USB port option is 10x slower.
5. In floppy control go to the network tab and set the track you want
to capture. Then start the capture.
6. When the capture is done I think it will switch to the waveform
editor. You may have to adjust diff. gain number control to get a good
signal, you'll see the scatterplot, if there's 3 clear bands then you're
good. Click Proc R Data button. After it's done processing you can head to
the Quick tab and click the histogram to set the thresholds. Then click the
process Amiga or Process PC button to process the flux transition data to
sector data.
That's about it.
I've included an example waveform so you can open it without needing an
oscilloscope so you can play with this functionality.
—
Reply to this email directly, view it on GitHub
<#9 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AJJUTK225UR2DMO5HL53I4LZXAAAXAVCNFSM6AAAAABOJ6AU6SVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGNJVGIZTQMBQG4>
.
You are receiving this because you authored the thread.Message ID:
***@***.***>
|
every floppy disk has a test pin used to perform drive alignment. this pin is connected to an oscilloscope to see the raw, analog output of the head amplifiers. this analog signal is processed by the drive's filters and edge detection circuits to generate the digital flux pulses seen at the read data lines.
your project uses an an oscilloscope to grab this data; this sharply complicates the capture of real analog data.
I've got one of these oscilloscopes, but it's not clear how to rig this all together.
The text was updated successfully, but these errors were encountered: