Drive only reacts to 'cbmctrl reset'

22 views
Skip to first unread message

Roy Jacobs

unread,
May 4, 2021, 3:27:20 AMMay 4
to ZoomFloppy Users
I just received my ZoomFloppy. I bought it because previously I had a XUM1541 but it would only send a reset to my 1541 but I couldn't read anything back.

Unfortunately the ZF has the exact same issue: I can send resets but I cannot detect the drive or read anything from it.

I've seen it mentioned that it could be the (plain old) IEC cable, but the 1541 works absolutely fine on my C64 so I'm not convinced that that would be the issue. I've also tried OpenCBM on multiple OSes (MacOS, Windows, Raspberry PI) and they all exhibit the same behaviour.

So I'm at a loss, what could be causing this issue?

Spiro Trikaliotis

unread,
May 4, 2021, 3:20:37 PMMay 4
to ZoomFloppy Users
Hello Roy,
First question: Do you have access to a logic analyser? Then it might help to get
a view of what is actually going on on the lines.


Second test:

Having said that, there is a tool "cbmlinetester" that can be used from
the command line. Just call it with "cbmlinetester -i" (for
"interactive"), and you well see two output lines:

own:
line status:

Now, you can press "a" (for "set ATN"), "d" (for "set DATA"), "c" (for
"set CLOCK"), "r" (for "set RESET"), or the same in uppercase ("A", "D",
"C", "R") for unsetting the lines.

For example, if you press a, d and c, you should get the following
output:

own: ATN DATA CLOCK
line status: ATN DATA CLOCK


Can you please do the following, and after each step, give me the output
of the program:

1. Start the program with "cbmlinetester -i".
Don't forget the status after this first step!

2. Press "r"
3. Wait some seconds
4. Press "R"
5. Wait some seconds
6. Press "d"
7. Press "c"
8. Press "a"
9. Press "D"
10. Press "C"
11. Press "A"

This way, I can see what the xum1541 device thinks it is receiving. It
might give us a hint on what is goind on.


Third test:

Give the following commands on the command line (I assume a unixoid),
and send me the outputs you get:

XUM1541_DEBUG=9 cbmctrl reset
XUM1541_DEBUG=9 cbmctrl status 8
XUM1541_DEBUG=9 cbmctrl detect

I assume that your device is number 8; otherwise, use the number of your
floppy in the second command instead of the 8.

Regards,
Spiro.

--
Spiro R. Trikaliotis
https://spiro.trikaliotis.net/

Roy Jacobs

unread,
May 4, 2021, 3:31:32 PMMay 4
to zoomflop...@googlegroups.com
Hi Spiro,

Unfortunately I do not have a logic analyser. I will be trying to borrow a colleague's 1541 and cable to see if that is somehow related, though.

I will be able to run the tests tomorrow (I'm in CET). Unless it's inconvenient for you I plan to run them on the ZoomFloppy device, since that's hooked up and installed currently. Is that okay? The other device is a Arduino/ProMicro based XUM1541 which is a bit more finicky to set up.

Roy

Spiro Trikaliotis

unread,
May 4, 2021, 3:42:38 PMMay 4
to zoomflop...@googlegroups.com
Hello Roy,

* On Tue, May 04, 2021 at 09:31:18PM +0200 Roy Jacobs wrote:

> Unfortunately I do not have a logic analyser.

So let's try without one. There are not many people who have one, so
this is very common.

> I will be trying to borrow a
> colleague's 1541 and cable to see if that is somehow related, though.

Yes, this might be related. Especially the 1541 might make a difference,
especially since the pullup resistors of it are used by the xum1541, as
Jim wrote.

> I will be able to run the tests tomorrow (I'm in CET).

CET? I am in CEST at the moment. ;)

> Unless it's inconvenient
> for you I plan to run them on the ZoomFloppy device, since that's hooked up and
> installed currently. Is that okay? The other device is a Arduino/ProMicro based
> XUM1541 which is a bit more finicky to set up.

The ZF is okay for me, especially since that is the device that is
officially supported.

Does the ProMicro based device have an inverter (7406), or is it the
variant without it?

Roy Jacobs

unread,
May 5, 2021, 4:35:47 AMMay 5
to zoomflop...@googlegroups.com
Hi Spiro,

> CET? I am in CEST at the moment. ;)

Ah, excellent. Looking at it, your name seems to give that away :)

> The ZF is okay for me, especially since that is the device that is
> officially supported.
>
> Does the ProMicro based device have an inverter (7406), or is it the
> variant without it?

It's the variant without it.

Anyway, I've ran all the tests, results are here:
https://docs.google.com/spreadsheets/d/1OcmLsD8DhhI1egUWYTfLrALfI71UDwWB4EbpMG4WAUg
It looks like "ATN" and "DATA" are always set, regardless of what the
ZF is trying to do. I'm pretty sure that should not be the case. Any
ideas what could be causing this? Again, the drive works fine when
connected to a real C64, so could it be that the voltages are perhaps
out of spec and the C64 just happens to be more tolerant of this?

By the way, I will be borrowing another 1541 from a colleague tomorrow
evening, so hopefully I can do some cable+drive combination
experiments.

Roy

Spiro Trikaliotis

unread,
May 5, 2021, 3:14:09 PMMay 5
to zoomflop...@googlegroups.com
Hello Roy,

* On Wed, May 05, 2021 at 10:35:33AM +0200 Roy Jacobs wrote:

> Anyway, I've ran all the tests, results are here:
> https://docs.google.com/spreadsheets/d/1OcmLsD8DhhI1egUWYTfLrALfI71UDwWB4EbpMG4WAUg
> It looks like "ATN" and "DATA" are always set, regardless of what the
> ZF is trying to do.

Well, after waiting after the big "R", there seems that ATN and DATA
were both low, at least for a small amount of time.

Otherwise, you are right.

You had a drive connected, right? The remaining lines seem to indicate
that.

So, it seems for some reason, the ATN line was activated. Then, the
floppy drive activates DATA, too.

To me, it seems the ZF is pulling ATN low ("active"), at least low
enough so that the floppy recognizes it as low, too, and pulls DATA low,
too.


Do you have some multimeter (or voltage meter, which is needed here).
Then, I would be interested in the Voltages of ATN and DATA on the IEC
bus when everything is inactive ("own" is empty).

I need help from the electronics specialists. Speak up, please. :)

What could cause this?
Could the ZF pull the ATN line low "a little" without being asked to do
so? Could it be that the floppy is too sensitive for this setup?

> I'm pretty sure that should not be the case. Any
> ideas what could be causing this? Again, the drive works fine when
> connected to a real C64, so could it be that the voltages are perhaps
> out of spec and the C64 just happens to be more tolerant of this?

Well, for sure, the ZF does not have any pullup resistor. The C64 has
some. This might be a difference. If it is relevant? I am not the
specialist here.

> By the way, I will be borrowing another 1541 from a colleague tomorrow
> evening, so hopefully I can do some cable+drive combination
> experiments.

I would be interested with the other cable and the other drive.
If the other drive has another device number (does it?), it could also
be interesting what happens if both drives are connected to the ZF (as
there are two pullups active then).

However, this setup will not work of both devices are #8.

Martin Thierer

unread,
May 5, 2021, 5:07:48 PMMay 5
to ZoomFloppy Users
I find the bad pullup theory very plausible.
 
Well, after waiting after the big "R", there seems that ATN and DATA
were both low, at least for a small amount of time.

I think that's a glitch. If I'm not mistaken, the drive 1. isn't physically able to set ATN and 2. sets DATA to acknowledge ATN. Which would suggest that it's the ATN pullup that's bad.

Right now I'd say we wait for the results of Roy's tests with the other 1541. And yes, it's a good idea to connect them both. Even if they have the same drive number it should still be good for a test with cbmlinetester.

Martin

Roy Jacobs

unread,
May 6, 2021, 12:37:01 PMMay 6
to zoomflop...@googlegroups.com
Just a quick update from my end: Using the same IEC cable with a
different drive, and everything works absolutely perfectly.
I'm not an electronics whiz either so I can't determine whether
there's something wrong with the voltages in my own drive, but it
definitely seems like it.

Roy

Roy Jacobs

unread,
May 6, 2021, 12:45:38 PMMay 6
to zoomflop...@googlegroups.com
Another quick update: It turns out the borrowed drive is in fact a
1570 that someone stuck in a 1541 case.
This makes it nice for me, since I can run my backups quicker, but I'm
not sure if comparing results to my own 1541 would make sense now. I'm
still happy to assist with any debugging.

Roy

Martin Thierer

unread,
May 6, 2021, 2:59:37 PMMay 6
to ZoomFloppy Users
If the basic stuff (like "cbmctrl status") doesn't work with your drive and *does* work with the borrowed drive, that's a strong indicator that something is wrong with your drive.

You now have two IEC cables, right? Could you do the test that Spiro suggested? That is: Daisy chain the two drives and (it probably doesn't matter which one is closer to the zoomfloppy), power them both on and then:

1. If the two drives have or can be set to different drive numbers: Check if your own drive now works, or
2. If the two drives are both number 8 and can not easily be changed: At least repeat the check with "cbmlinetester" and report the result (they still both would have to be powered on, but cbmctrl, etc won't work because of the conflicting drive number).

Which type is your 1541? The old, long 1541 or a 1541-II?

Martin

Roy Jacobs

unread,
May 6, 2021, 3:20:05 PMMay 6
to zoomflop...@googlegroups.com
Hi,

> 2. If the two drives are both number 8 and can not easily be changed: At least repeat the check with "cbmlinetester" and report the result (they still both would have to be powered on, but cbmctrl, etc won't work because of the conflicting drive number).

I've run the cbmlinetester tests again, with the ZF connected to the
1570 and the 1570 connected to the 1541. The results are in the Google
Sheet I've linked to previously. The results now seem much more sane,
with ATN/DATA turning on and off as would be expected.

> Which type is your 1541? The old, long 1541 or a 1541-II?

It's an old model 1541 (well, the version with the turning latch, not
the push-down latch). The 1570 has the push-down latch.

Roy

Spiro Trikaliotis

unread,
May 6, 2021, 3:30:52 PMMay 6
to zoomflop...@googlegroups.com
Hello Roy,

* On Thu, May 06, 2021 at 09:19:53PM +0200 Roy Jacobs wrote:

> I've run the cbmlinetester tests again, with the ZF connected to the
> 1570 and the 1570 connected to the 1541. The results are in the Google
> Sheet I've linked to previously. The results now seem much more sane,
> with ATN/DATA turning on and off as would be expected.

They look good, yes.

It does not even mean that your 1541 is broken: It can be that it is
just too sensitive on the input side. It might be the inverter to the
ATN input (pin3 of the IEC serial bus connector), or it might be the
pullup resistor on the same line that is problematic or even broken.

As it works with a second drive, I would go for the pullup.

Note that the 1570 must have a switch to change it to drive #9. Put it
there, and then test your setup again (cbmctrl detect; cbmctrl status 8;
cbmctrl status 9). I would expect it will work.

Martin Thierer

unread,
May 6, 2021, 3:55:41 PMMay 6
to ZoomFloppy Users
I've run the cbmlinetester tests again, with the ZF connected to the
1570 and the 1570 connected to the 1541. The results are in the Google
Sheet I've linked to previously. The results now seem much more sane,
with ATN/DATA turning on and off as would be expected.

That seems to confirm that the ATN line might be to blame. In the attached photo of the zoomfloppy that I found online, I marked where I concluded from the schematic that the IEC lines should be exposed on the big, unpopulated header in the middle. (When counting from the bottom part of the photo: 1&2 GND, 4 ATN, 6 RESET, 7 DATA, 8 CLK; all on the right side of the connector).

If your ZF looks the same and you have access to a multimeter: Could you please measure the voltage between the pin marked "ATN" and one of the "GND" pins with 1. only your 1541 connected *and powered on* and 2. with both your 1541 and the 1570 connected and *both powered on*? No need for any commands, just connect the drive(s) and measure the voltages.

Optional:

1. Also measuring the voltages of the other lines.
2. Issue a cbmlinetester "a" command and check the voltage at the "ATN" pin again (it should be ~5V before and ~0V after, but with only your 1541 connected it's probably less than 5V even before issuing the command).

Martin

zf iec signals.png

Roy Jacobs

unread,
May 11, 2021, 4:53:42 AMMay 11
to zoomflop...@googlegroups.com
Hi Martin,

> If your ZF looks the same and you have access to a multimeter: Could you please measure the voltage between the pin marked "ATN" and one of the "GND" pins with 1. only your 1541 connected *and powered on* and 2. with both your 1541 and the 1570 connected and *both powered on*? No need for any commands, just connect the drive(s) and measure the voltages.

Unfortunately I don't have a multimeter so I won't be able to measure this.

However, since all signs point to this being the issue I am satisfied
that this is not really something that can be addressed in the ZF.
Perhaps the firmware could be a bit more tolerant of out-of-spec
voltages but other than that I wouldn't know there's anything that can
be done.

If someone wants to pay postage I'd be happy to mail it to them so
they can do some debugging and perhaps get it to work with the ZF,
otherwise I'm happy to leave things where they are for now.

Thanks for all the responses, though. This is an awesome community!

Roy

Spiro Trikaliotis

unread,
May 11, 2021, 11:55:03 AMMay 11
to zoomflop...@googlegroups.com
Hello Roy,

* On Tue, May 11, 2021 at 10:53:29AM +0200 Roy Jacobs wrote:
> Hi Martin,

> Unfortunately I don't have a multimeter so I won't be able to measure this.

That's a pity. But, no problem.

> Perhaps the firmware could be a bit more tolerant of out-of-spec
> voltages but other than that I wouldn't know there's anything that can
> be done.

Well, the Voltages are generated by the ZF. This might be also an issue
with the Voltags that it gets from your USB port or via the cable.

Unfortunately, there is nothing we can do about the problem from the ZF
side: The floppy sees a wrong ATN state and generates an answer signal.
Both things are a problem, and we cannot do anything about it. Perhaps,
if you would have a "better" voltage on the USB side, this might change
something if it is just a little bit off. But without measurements, it
is hard to say.
Reply all
Reply to author
Forward
0 new messages