Components and supplies
Arduino UNO
SparkFun FTDI Basic Breakout - 5V
Jumper wires (generic)
Breadboard (generic)
Resistor 1k ohm
Arduino Pro Mini 328 - 5V/16MHz
Apps and platforms
Arduino IDE
Project description
Code
Sketch and Windows Application Source
Arduino Sketch, and example Windows application source code
Downloadable files
Circuit for Arduino UNO
Circuit for Arduino UNO
Circuit for Arduino UNO
Circuit for Arduino Pro Mini
Circuit for Arduino Pro Mini
Circuit for Arduino Pro Mini
Circuit for Arduino Pro Mini
Circuit for Arduino Pro Mini
Circuit for Arduino Pro Mini
Circuit for Arduino UNO
Circuit for Arduino UNO
Circuit for Arduino UNO
Comments
Only logged in users can leave comments
Anonymous user
2 years ago
I've been following the initial project implementing disk reading. Today I was searching for that to print the instructions and try to build it later this week and found out about your progress in writing too. My aim is to find an easier way to preserve different kinds of floppy formats, including amiga and the easier msdos format, without having to fill my workplace with old computer gear. This could potentially be extended to be a cheap diy kryoflux or catweasel alternative. Amazing work! Kudos to you! :) I'm gonna give it a go this weekend.
Anonymous user
2 years ago
Nice work Rob. Today I started to build a PIC24 floppy reader to try and recover data from a bunch of commodore PET, BBC and Amstrad 1512 disks from my attic life archive on 5 1/4 and 3.5" diskettes. So I've reached the point of streaming data events and index pulses and we'll see where we get to.... I also have a few wd2797s but I get the feeling I'll be able to decode all this on the fly for SD and DD formats.... It's pretty impressive what you can do with a little MCU these days, just wish I could go back to the 80's with it :)
Anonymous user
2 years ago
Hi, Use my Amiga 500 as keyboard for pc. So now replaced the A500 drive with a pc floppy and i use your wonderfull project to read my old amiga disks. I have 2 question. 1) Everything works fine... except if i use hd floppyes (formatted a low density) these disks are not readable i have to close the "HD window" with tape to read it. (if i try to write the floppy without tape the verify fail) 2) i bought from aliexpress a usb 2 floppy adapter to connect a old floppy to a new computer. The idea is connect both to floppy 34 pin interface. And then connect only one usb cable at time. Before to do it i checket the resistance of every pin of the adapter with a tester... And i saw that some pin are connected together: On your adapter pin 16 is connected with 12. But on the usb adapter pin 16 is alone and 14 12 10 and 6 On the adapter PIN 30 (read data) is connected to pin 22 (write data) On your project pin 30 is indipendent to pin 22. Any suggestion to connect both? I oredered another arduino and ftdi adapter. I want to modify sketch to use same pin for read and write. If it works connect with the usb to floppy adapter. and here put a 1k resistor between pin 16 and 12 instead connect togheter. It make sense?
Anonymous user
2 years ago
I can confirm that disk reading works perfectly fine with the common chinese CH340G based Arduino Nano clone. You just have to solder a wire to the unconnected CTS pin 9 of the CH340G and connect it to A2 to pass the diagnostics. Although I used a 5V 2A power supply, the voltage would seriously break down when the stepper motor turned on, causing all sorts of random failures. A beefy electrolytic cap close to the drive fixed that. Writing fails with "An unknown response was received from the Arduino while executing the WriteTrack command.". The disk track is unreadable once I've tried to write though, so it did at least write something. It turns out that the "unknown response" 'X' is infact a known error code for "buffer underflow", meaning that for some reason the PC/CH340 wasn't able to provide the data in time although the CTS mechanism basically works. Anyway: You've shown some extraordinary persistence in getting something to work that everyone thought was impossible to do with only 16 Mhz and 2K RAM. Great job!
Anonymous user
2 years ago
Great job! As a former Amiga developer I'm surprised you had no problems with "precomp" when writing! In fact each bit you create on a floppy is like a magnet and when you write "00" they repel each other, so you must write them a bit faster than when you write "01" or "10" (they attract each other). By the way, one of most used copy protection was writing faster (and more than 11 sectors on a track). A normal disk drive can't do that, but thanks to the included PLL you could read those tracks. I think I will give it a try, and get my A1000 back to life :)
Anonymous user
2 years ago
Rob, thanks for all the effort in researching this and writing all this up! I wonder if this all will work, including write support, to connect an original Amiga 500 internal disk-drive to the PC? I read that, while working on v1, you connected the original drive to confirm something was not working correctly, so that implies it could. But then I also read something about /INDEX not being used on the Amiga, but I do see it connected in the schematics and I'm curious about its requirement. Thanks!
Anonymous user
2 years ago
In the meanwhile I have found a pin-out for the internal disk-drive of the Amiga 500, which I previously was unable to find. I notice that the internal drive also has an /INDEX pin, so my whole question became irrelevant. :) Anyway, I do have another question though: looking at your schematic, and the Amiga internal header pin-out, I have two items that I cannot match up, and I wondered if you could point me in the right direction: - MOTOR_ENABLE_B (PIN 5) that would make sense to be 16, MTR0D but I'm unsure. - HEAD_SELECT (PIN 9) that I suspect is either 32, SIDEB or 2, CHNG. I think I confidently paired the other ones up like this: # Internal PIN header => Arduino Reader/Writer) 8 INDEX => INDEX PIN 2 10 SEL0B => DRIVE_SEL_B PIN 5 18 DIRB => DIRECTION PIN 6 20 STEPB => STEP PIN 7 22 DKWDB => WRITE_DATA PIN 3 24 DKWEB => WRITE_ENABLE PIN A0 26 TK0 => TRACK_0 PIN 8 28 WPRO => WRITE_PROTECT PIN A1 30 DKRD => READ_DATA PIN 4 Thanks in advance! (Edited to add) that I'm sorry for the dumb questions :-) I'm a software person by trade, not a hardware guy. I have taken my Amiga 500 apart and noticing the drive has an identical connector as 'normal' disk drives. Searching a bit more suggests the pin-out is identical. I pulled a floppy drive from an ancient server and am getting unstable, random results. I wonder if that is the drive (cleaning did not help), or the Arduino board (it's not a genuine UNO). I managed to wire up the FTDI to TX/RX of a new Arduino Mega2560 and (after changing the code for the different pin-out), am getting much more stable results now. I never seen the progress bar reach 1%, and it's now over 50%. Looking good! (I'm using the command line tool by John Tsiombikas as I my host computer is Linux.) Thanks again for your work! (BTW, the Arduino Mega also has 8K of SRAM which could perhaps be utilised to cache an entire track.)
RobSmithDev
2 years ago
Hi I don’t think it’s currently being used, some games I think used it for copy protection but not sure. I want to use it later on for sync while reading non dos disks Regards Rob Smith
Anonymous user
4 years ago
I built the circuit with just an arduino nano and connecting the CTS to the USB to serial chip. I can share my PCB It appears that the timing issues are more visible when trying to access and write track zero. I'm able to complete the test and write with verify, but then If I read it most certainly the track zero will have reading errors. Any idea if there is some possible consideration for track 0? I understand the FDD is a CAV type of disk
Anonymous user
4 years ago
Hi, Use my Amiga 500 as keyboard for pc. So now replaced the A500 drive with a pc floppy and i use your wonderfull project to read my old amiga disks. I have 2 question. 1) Everything works fine... except if i use hd floppyes (formatted a low density) these disks are not readable i have to close the "HD window" with tape to read it. (if i try to write the floppy without tape the verify fail) 2) i bought from aliexpress a usb 2 floppy adapter to connect a old floppy to a new computer. The idea is connect both to floppy 34 pin interface. And then connect only one usb cable at time. Before to do it i checket the resistance of every pin of the adapter with a tester... And i saw that some pin are connected together: On your adapter pin 16 is connected with 12. But on the usb adapter pin 16 is alone and 14 12 10 and 6 On the adapter PIN 30 (read data) is connected to pin 22 (write data) On your project pin 30 is indipendent to pin 22. Any suggestion to connect both? I oredered another arduino and ftdi adapter. I want to modify sketch to use same pin for read and write. If it works connect with the usb to floppy adapter. and here put a 1k resistor between pin 16 and 12 instead connect togheter. It make sense?
Anonymous user
6 years ago
Great job! As a former Amiga developer I'm surprised you had no problems with "precomp" when writing! In fact each bit you create on a floppy is like a magnet and when you write "00" they repel each other, so you must write them a bit faster than when you write "01" or "10" (they attract each other). By the way, one of most used copy protection was writing faster (and more than 11 sectors on a track). A normal disk drive can't do that, but thanks to the included PLL you could read those tracks. I think I will give it a try, and get my A1000 back to life :)
Anonymous user
6 years ago
Rob, thanks for all the effort in researching this and writing all this up! I wonder if this all will work, including write support, to connect an original Amiga 500 internal disk-drive to the PC? I read that, while working on v1, you connected the original drive to confirm something was not working correctly, so that implies it could. But then I also read something about /INDEX not being used on the Amiga, but I do see it connected in the schematics and I'm curious about its requirement. Thanks!
RobSmithDev
2 years ago
Hi I don’t think it’s currently being used, some games I think used it for copy protection but not sure. I want to use it later on for sync while reading non dos disks Regards Rob Smith
Anonymous user
2 years ago
In the meanwhile I have found a pin-out for the internal disk-drive of the Amiga 500, which I previously was unable to find. I notice that the internal drive also has an /INDEX pin, so my whole question became irrelevant. :) Anyway, I do have another question though: looking at your schematic, and the Amiga internal header pin-out, I have two items that I cannot match up, and I wondered if you could point me in the right direction: - MOTOR_ENABLE_B (PIN 5) that would make sense to be 16, MTR0D but I'm unsure. - HEAD_SELECT (PIN 9) that I suspect is either 32, SIDEB or 2, CHNG. I think I confidently paired the other ones up like this: # Internal PIN header => Arduino Reader/Writer) 8 INDEX => INDEX PIN 2 10 SEL0B => DRIVE_SEL_B PIN 5 18 DIRB => DIRECTION PIN 6 20 STEPB => STEP PIN 7 22 DKWDB => WRITE_DATA PIN 3 24 DKWEB => WRITE_ENABLE PIN A0 26 TK0 => TRACK_0 PIN 8 28 WPRO => WRITE_PROTECT PIN A1 30 DKRD => READ_DATA PIN 4 Thanks in advance! (Edited to add) that I'm sorry for the dumb questions :-) I'm a software person by trade, not a hardware guy. I have taken my Amiga 500 apart and noticing the drive has an identical connector as 'normal' disk drives. Searching a bit more suggests the pin-out is identical. I pulled a floppy drive from an ancient server and am getting unstable, random results. I wonder if that is the drive (cleaning did not help), or the Arduino board (it's not a genuine UNO). I managed to wire up the FTDI to TX/RX of a new Arduino Mega2560 and (after changing the code for the different pin-out), am getting much more stable results now. I never seen the progress bar reach 1%, and it's now over 50%. Looking good! (I'm using the command line tool by John Tsiombikas as I my host computer is Linux.) Thanks again for your work! (BTW, the Arduino Mega also has 8K of SRAM which could perhaps be utilised to cache an entire track.)
Anonymous user
6 years ago
I can confirm that disk reading works perfectly fine with the common chinese CH340G based Arduino Nano clone. You just have to solder a wire to the unconnected CTS pin 9 of the CH340G and connect it to A2 to pass the diagnostics. Although I used a 5V 2A power supply, the voltage would seriously break down when the stepper motor turned on, causing all sorts of random failures. A beefy electrolytic cap close to the drive fixed that. Writing fails with "An unknown response was received from the Arduino while executing the WriteTrack command.". The disk track is unreadable once I've tried to write though, so it did at least write something. It turns out that the "unknown response" 'X' is infact a known error code for "buffer underflow", meaning that for some reason the PC/CH340 wasn't able to provide the data in time although the CTS mechanism basically works. Anyway: You've shown some extraordinary persistence in getting something to work that everyone thought was impossible to do with only 16 Mhz and 2K RAM. Great job!
Anonymous user
6 years ago
Nice work Rob. Today I started to build a PIC24 floppy reader to try and recover data from a bunch of commodore PET, BBC and Amstrad 1512 disks from my attic life archive on 5 1/4 and 3.5" diskettes. So I've reached the point of streaming data events and index pulses and we'll see where we get to.... I also have a few wd2797s but I get the feeling I'll be able to decode all this on the fly for SD and DD formats.... It's pretty impressive what you can do with a little MCU these days, just wish I could go back to the 80's with it :)
Anonymous user
7 years ago
Rob did an excellent job bij creating this easy (and cheap) Amiga disk reader for PC computers! I have built this Amiga mini Pro adapter twice today to make sure that I made no mistake because it still won't write disks. Reading disk works splendidly though. Maybe I used an old beta .ino version or my version AmigaReader is not up-to-date? Got still no clue why because my floppydrive(s, -I tested 5 different drives that all were okay-) worked perfectly on my other ADFcopy and Amiga Xcopy floppy tot SD card copier? Hope there will be a solution for this strange not writing problem soon.
jonni
2 years ago
Writing works for me just fine and I've already built 10+ boards. And I'm even using the precompiled windows binaries for the reader client. What version of Arduino IDE (and have you double checked that IDE has right board in settings) are you using to compile and upload the .ino file to Arduino Pro? And have you made sure that there are no other devices trying to use the same com port at the some time when running the client. Like if I forget to close Arduino IDE, then reader client fails with communication errors. One suggestion would be to upload pics of your actual build somewhere and maybe we can see problematic connection somewhere (even I mixed couple of traces when building the 1st time). Or something silly like twisted floppy cable etc.
Anonymous user
2 years ago
I have the same troubles while floppy writing. Unfortunately the bath and LOT numbers of FTDI chip you gave are not helpful. Could You please give some more details about board you successfully used for floppy writing?
RobSmithDev
2 years ago
You'd have to follow the logic of the program to verify the various logic levels and validate them, but given your "non verified" disks are completely unreadable I still think the issue is with the CTS flow control. Without verify about 90% of the tracks will write correctly first time, all verify does is to read the track after each write, and if it doesn't match the original it rewrites it. If writing fails completely then something in the interface is either returning an error, or there is an I/O timeout as a result of failed CTS hardware handshaking. The CTS line is used to make the PC "drip feed" the data to it as required rather than it all rushing in all at once as the Arduino doesn't have enough ram to store the entire track in memory. The write process is as follows: The PC sends: Send "Enable Write" command Send "Rewind to Track 0" command Send "Switch to Upper Side" command Then in a loop for each track: 1. Send "select track" command 2. Send "select surface" command 3. Send "write Track" command with data 4. If Verify send "Read track" command and compare. If fails goto 3 5. Go to next surface/track as required and goto 1 *any* of the above commands can report an error, and it would be easier to get the code compiling on the PC to see which reason it breaks out. I am planning on an upgrade to the software with a "hardware diagnostics" option to help debug this issue, but so far out of all the people reporting to have built this I have only see this issue twice (and one turned out to be a faulty wiring). The above, whilst thorough doesn't help me to diagnose what the issue is. The best thing you can to is to get the code downloaded and running in a debugger such as Visual Studio (which is what it was developed in) placing breakpoints throughout the code where errors are reported.
RobSmithDev
2 years ago
As I said you have an issue with your CTS line. Weather it’s in the breakout board or your wiring, you have an issue there.
RobSmithDev
2 years ago
*Please* understand the CTS line is CRITICAL to this working, every byte that is received during writing a disk will be triggered using the CTS line. If it is not functioning correctly a disk will not be written. The size of the pulses from the Arduino for CTS will be be less that 4uSec I would have thought, so you wont see them at 2ms resolution.
Anonymous user
2 years ago
Today 14 March I received the long awaited previously by jonni mentioned CH340 eBay FTDI RS232 to USB board. Which I of course immediately tested with the V2.0 version software. Still the same problem! Reading disks works perfectly. Writing disks breaks of with a communication error every single time. Sorry but I think I give up on the writing disks part because it is just never going to work and it seems Fake? Or the issue is solved in new version 2.1 which I haven't tried yet?
Anonymous user
2 years ago
The CTS line hardly is doing anything. It maybe only activates ones in a while for a very brief 2ms. So it is not programmed to do more. And also Write enable and Write data only popup during that same 2ms. And both are logic '1' the rest of the time as in Read mode. By-the-way: You can check this in the Wavediagrams. Legenda D0 to D7: Motor_on, CTS, Index, Step, Write enable, Write data, Head sel, Read data. I will check the timing in the wave diagrams with those of the my working ADFcopy interface. Thanks, Albert.
Anonymous user
2 years ago
Rob, yesterday I started to examine the not writing problem with my cheap new Saleae clone 24MHz 8 channel Logic Analyzer and the fantastic PulseView sampling software that is free on the SigRok site. You do not need an oscilloscope at all to view the Motor_on, CTS, Index, Step, Write enable, Write data, Head select and Read data signals all simultaneous! You can view them all at the same time in a time diagram with these cheap (8 euro) Saleae (also working with their software!) compatible Logic Analyzers. The diagram showed that Writing to disk with verify on, that just stopped every time after a few seconds, had a briefly inactive Motor_on signal for about 375 ms. And all signals, except CTS and Motor_on, start with being a logic '1'. Only the Index signal shows 3 little logic '0' pulses (2 ms) just before the Motor_on signal starts going inactive for about the mentioned 375 ms. And just before the Motor_on pulse starts being a '1' pulse the Head Select signal becomes a logic '0' signal for about 1370 ms. And only after that pulse is '1' again the Write enable and Write data signal very briefly pulse to (2ms?) logic '0'. And at the same time CTS briefly pulses a logic '1' (also about 2 ms). Almost all that time there are a lot of data pulses on the Read Data line. And after about 4550 ms and also 16 more Index '0' pulses (2 ms) the Motor_on signal is a logic '1' again. And Read data stops. And what it shows is that the STEP signal never gives any signal like it did when it succesfully was Reading a disk. It always just stays being a logic '1'. I can send you the Wave diagram if you like?
Anonymous user
2 years ago
Very good news! After endless testing with 3 previous useless and all different FTDI RS232 to USB boards (including the one that Rob proposed and used in the article!) it finally works!! Conclusion: Only jonni's little eBay adapters, that I recently got, do work!! So if anyone has the same disk writing problems he/or she better only buys the right FTDI RS232RL adapter board. (Mine had the text: FTDI 1221-C GO030631 FT232RL). All others failed after weeks of trying! Don't know why but apparently only the ones ordered on eBay work (the not or too slow working ones came from Aliexpress)! Thanks jonni for the great tip. And indeed a Great job Rob! Sorry for you having to go through all the trouble to add the Diagnostic part into the program. Which by-the-way worked splendidly but previously only reported the errors created by the 3 useless RS232 UART USB boards. Question: I noticed the little housing you created which looks very compact. Does it have enough room for the Floppy drive, the Mini Pro Arduino module and the FTDI RS232 to USB interface? And can I please order one? (through PayPal or Ideal?) Thanks!
Anonymous user
2 years ago
Thank you jonni for your appreciated confirming on the writing disks part. I already have checked all signal connections multiple times and used the same boards as Rob showed in his article (and also made it twice with all brandnew boards!) . Writing is still just useless. With Verify Off it only produces very quick useless disks from perfect .adf images. I've send Rob some photos of my device(s) and also a lot of screenshots of the signals checked with my logic analyzers. It clearly showed why it could not work. I also compared these with screenshots of the signal lines I took on Nick's ADFcopy device. They were completely different. Nick's project uses a more expensive Teensy 3.2 board but also writes disks perfectly (have to use a very short FDD cable though because of the 3.3V levels that have to simulate the 5V FDD signal lines). I yesterday bought the RS232 USB adapter boards on eBay you successfully had used in your PCB project. I hope that adapter will finally solve the writing useless Amiga disk problem with Verify Off, and NOT writing and breaking up with a communication error when Verify ON is selected.
Anonymous user
2 years ago
Today I also made Rob's Arduino UNO interface version to make sure it were not the Mini Pro Boards that caused the Floppydisk writing problem in both 2 and 2.1 versions. It didn't make any difference sadly. Same story same problem. So I wonder if others indeed were able to fix or escape the not writing disks issue, could it maybe still have something to do with the length of the Floppy shugart cable? Because I already tried all different FTDI232RL to USB boards and also another Mini Pro Board which didn't make any difference. According to Rob who used an original 30 cm long cable my 15 cm original cable should not be any problem. For now I stop my experiments. Maybe a new update version will fix this not writing disks issue.
Anonymous user
2 years ago
I understand that it must be something critical why the program keeps breaking up with an communication error. I therefore also tested the interface on my quad-core PC with USB 3.0 interface but still the same problem. I however see the CTS pulse perfectly with my Saleae Logic Analyzer Rob. There only is one CTS pulse visible of about 2 ms which becomes active '1' just after Head select returns to '1' high state during writing in the about 2378 millisecond. And at the same time Write enable and Write data turn low for about 2 ms. After that those 3 signals do not change anymore and Motor_on deactivates back to '1' after about 4750 ms. And the Writing with Verify On failed. None of those 3 pulses show up during reading of course. I don't think both my new FTDI FT232RL are the problem, and neither both also brandnew Arduino Pro Mini Boards. If I have time in the next few days I will check the communication protocol of all signals on my ADFcopy interface and I will record those correct timing signals too! Thanks!
Anonymous user
2 years ago
Thanks for your quick reply Rob. I tried to answer on the site but couldn't so I reply on your e-mail. You write that Writing to disk without Verify_on works 90% of the tracks, but sadly it NEVER does. Not with and not without Verify on. And I guess that you never used a logic analyzer to debug your project? The only thing that works is the protect notch on the Disk check to preserve the original data on disk. And of course reading from disk. I will enclose that Write protect screenshot. Which worked with Writing Verify On and also Off. But sadly also immediately afterwards followed by a communication error. Maybe I should use your Github sourcefile by making a working file but I do not work with Visual Studio. I only used your 1.96 MB file that probably is bugged. I also build Nick's ADFcopy that perfectly reads AND writes to Amiga disk (and never fails!). I will try to sample those communication signals too to analyze where your program differs and apparently fails. I was so happy Nick's interface worked that I contributed him a small donation. Writing with Nick's interface only failed previously because the Shugart cable was with about 15 cm of length too long to work. It now works splendidly after I shorted that cale to about 3 cm. But because you said that shouldn't matter with your project because you used 30 cm long flatcable without any problem I kept my 15 cm long flatcable. I do not quite understand your explanation and found your 7 write attempts far from helpful to say the least. In this case I think only Logic Analyzer Wave diagrams would shed some light in this matter. And that is also what Manufacturers use in their specification guides. I own 4 oscilloscopes of which 2 are High frequency Tektronics scopes but none will help in a case like this where we need to examine at least 8 signals in time. Regards. Albert.
Anonymous user
2 years ago
Keep in mind Mariusz, that the FTDI board that Rob showed in his instructions probably also had problems with correctly writing Amiga disks. As you and I already found out the hard way after many tests with probably that same FTDI board. That board in tests only managed to successfully read Floppies. Only the eBay board from deeplearnings worked for me (and that the right eBay boards work was also previously mentioned by Jonni). All other boards must be fake somehow or just can't keep up with the speed that is needed for the correct timing for writing images to real Amiga Disks. Rob's great AFR project will definitely work when the right ftdi usb to serial adapter is used!
Anonymous user
2 years ago
Hi Mariusz, you used the same wrong FTDI chip adapter I had used that failed working. You need this one from seller Deeplearnings: https://www.ebay.nl/itm/FT232RL-USB-To-Serial-Adapter-Module-USB-TO-RS232-Max232-Download-For-Arduino-dp-/253065338990?hash=item3aebdea06e&_uhb=1 (; ) Albert.
Anonymous user
2 years ago
I noticed Rob's update ArduinoFloppyReaderWin.exe v2.1 file and just tested it by pressing the Diagnostics button. Very impressing add-on that Rob managed to create! Sadly Writing a disk failed again and ended in an error saying: DIAGNOSTICS FAILED: An unknown response was (2x was in sentence) received from the Arduino while executing the WriteTrack command. So the not known response likely still is a wrong timed programming error? I can't share the screenshot I took here why I described the Diagnostics error message that was given.
Anonymous user
7 years ago
I've been following the initial project implementing disk reading. Today I was searching for that to print the instructions and try to build it later this week and found out about your progress in writing too. My aim is to find an easier way to preserve different kinds of floppy formats, including amiga and the easier msdos format, without having to fill my workplace with old computer gear. This could potentially be extended to be a cheap diy kryoflux or catweasel alternative. Amazing work! Kudos to you! :) I'm gonna give it a go this weekend.
DrawBridge aka Amiga Floppy Disk Reader/Writer | Arduino Project Hub
Anonymous user
2 years ago
I built the circuit with just an arduino nano and connecting the CTS to the USB to serial chip. I can share my PCB It appears that the timing issues are more visible when trying to access and write track zero. I'm able to complete the test and write with verify, but then If I read it most certainly the track zero will have reading errors. Any idea if there is some possible consideration for track 0? I understand the FDD is a CAV type of disk