====== KryoFlux - Incorrect Signal Levels ====== //2009-11-16// With regards to the problem of [[2009-11-14|incorrect signal levels]], lets look at the facts: - We hardly, if ever, get wrong logical levels from 3.5" drives. - We frequently get them from 5.25" drives. Issues: * Was this never considered a problem by different hardware manufacturers over the course of 30 years? It seems unlikely. * It's only a problem if you can detect and use a signal that is too short by the electrical specification to be considered valid. A (working) glitch filter would solve it. * It's only a problem if there are cases that are considered as 0 by TTL (5V) standards, but just signal an 1 by at 3.3V. Level shifters would take care of that. * It could be an issue with the chip. It's very possible to be a combination of all of the above, but in the hardware errata we found a section on PIO (Programmed Input/Output) Electrical Characteristics, where a certain condition causes leakage through VDDIO (power supply for Input/Output) and incorrect signal levels. It recommends what we had intended to do - use an external pull-ups to solve the problem. So hopefully, this is just down to the internal pull-ups not working very well with the 5.25" drives electrical specs. We plan to disable the internal pull-ups and add external circuitry (simply different/better resistors) in an attempt to solve the problem.