Discussion:
[N8VEM: 18187] FATPIPE RS-422 file transfer for Mark IV SBC
William R Sowerbutts
2014-06-09 01:04:28 UTC
Permalink
I've been working on a program to transfer files through the RS-422 port on
the Mark IV SBC. FATPIPE is my file transfer program, still in development
but already useful.

On my 36.864MHz Mark IV it runs at the hardware maximum of 0.576Mbps
(56KByte/s) with over 98% efficiency. To transfer a 512K ROM image takes 166
seconds with XMODEM at 38400 bps on the console port, but just 9.2 seconds
with FATPIPE -- 18 times faster.

More details, pictures of my RS-422 adapter hardware, the source code and a
compiled executable can all be found here:

http://sowerbutts.com/8bit/fatpipe/

Please let me know if it works for you.

Will

_________________________________________________________________________
William R Sowerbutts will-***@public.gmane.org
"Carpe post meridiem" http://sowerbutts.com
main(){char*s=">#=0> ^#X@#@^7=",c=0,m;for(;c<15;c++)for
(m=-1;m<7;putchar(m++/6&c%3/2?10:s[c]-31&1<<m?42:32));}
Kip Koon
2014-06-10 07:10:30 UTC
Permalink
Hi William!
Cool little project! Nice work! I don't have a Mark IV SBC, but a balanced
line would be handy. What are or will you be using this design for by the
way?

Kip Koon
computerdoc-***@public.gmane.org
http://www.cocopedia.com/wiki/index.php/Kip_Koon
http://computerpcdoc.com/



-----Original Message-----
From: n8vem-/***@public.gmane.org [mailto:n8vem-/***@public.gmane.org] On Behalf Of
William R Sowerbutts
Sent: Sunday, June 08, 2014 9:04 PM
To: n8vem-/***@public.gmane.org
Subject: [N8VEM: 18187] FATPIPE RS-422 file transfer for Mark IV SBC

I've been working on a program to transfer files through the RS-422 port on
the Mark IV SBC. FATPIPE is my file transfer program, still in development
but already useful.

On my 36.864MHz Mark IV it runs at the hardware maximum of 0.576Mbps
(56KByte/s) with over 98% efficiency. To transfer a 512K ROM image takes 166
seconds with XMODEM at 38400 bps on the console port, but just 9.2 seconds
with FATPIPE -- 18 times faster.

More details, pictures of my RS-422 adapter hardware, the source code and a
compiled executable can all be found here:

http://sowerbutts.com/8bit/fatpipe/

Please let me know if it works for you.

Will

_________________________________________________________________________
William R Sowerbutts will-***@public.gmane.org
"Carpe post meridiem" http://sowerbutts.com
main(){char*s=">#=0> ^#X@#@^7=",c=0,m;for(;c<15;c++)for
(m=-1;m<7;putchar(m++/6&c%3/2?10:s[c]-31&1<<m?42:32));}

--
You received this message because you are subscribed to the Google Groups
"N8VEM" group.
To unsubscribe from this group and stop receiving emails from it, send an
email to n8vem+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/***@public.gmane.org
To post to this group, send email to n8vem-/JYPxA39Uh5TLH3MbocFF+G/***@public.gmane.org
Visit this group at http://groups.google.com/group/n8vem.
For more options, visit https://groups.google.com/d/optout.
William R Sowerbutts
2014-06-10 10:15:51 UTC
Permalink
Hi Kip

I use this for transferring software from my PC (where I compile it) to the
SBC for testing.

Will
Post by Kip Koon
Hi William!
Cool little project! Nice work! I don't have a Mark IV SBC, but a balanced
line would be handy. What are or will you be using this design for by the
way?
Kip Koon
http://www.cocopedia.com/wiki/index.php/Kip_Koon
http://computerpcdoc.com/
-----Original Message-----
William R Sowerbutts
Sent: Sunday, June 08, 2014 9:04 PM
Subject: [N8VEM: 18187] FATPIPE RS-422 file transfer for Mark IV SBC
I've been working on a program to transfer files through the RS-422 port on
the Mark IV SBC. FATPIPE is my file transfer program, still in development
but already useful.
On my 36.864MHz Mark IV it runs at the hardware maximum of 0.576Mbps
(56KByte/s) with over 98% efficiency. To transfer a 512K ROM image takes 166
seconds with XMODEM at 38400 bps on the console port, but just 9.2 seconds
with FATPIPE -- 18 times faster.
More details, pictures of my RS-422 adapter hardware, the source code and a
http://sowerbutts.com/8bit/fatpipe/
Please let me know if it works for you.
Will
_________________________________________________________________________
"Carpe post meridiem" http://sowerbutts.com
(m=-1;m<7;putchar(m++/6&c%3/2?10:s[c]-31&1<<m?42:32));}
--
You received this message because you are subscribed to the Google Groups
"N8VEM" group.
To unsubscribe from this group and stop receiving emails from it, send an
Visit this group at http://groups.google.com/group/n8vem.
For more options, visit https://groups.google.com/d/optout.
--
You received this message because you are subscribed to the Google Groups "N8VEM" group.
Visit this group at http://groups.google.com/group/n8vem.
For more options, visit https://groups.google.com/d/optout.
_________________________________________________________________________
William R Sowerbutts will-***@public.gmane.org
"Carpe post meridiem" http://sowerbutts.com
main(){char*s=">#=0> ^#X@#@^7=",c=0,m;for(;c<15;c++)for
(m=-1;m<7;putchar(m++/6&c%3/2?10:s[c]-31&1<<m?42:32));}
Wayne Warthen
2014-06-11 13:44:20 UTC
Permalink
I really like the use of DMA to handle the high speed. Nice approach.

--Wayne
Post by William R Sowerbutts
I've been working on a program to transfer files through the RS-422 port on
the Mark IV SBC. FATPIPE is my file transfer program, still in development
but already useful.
On my 36.864MHz Mark IV it runs at the hardware maximum of 0.576Mbps
(56KByte/s) with over 98% efficiency. To transfer a 512K ROM image takes 166
seconds with XMODEM at 38400 bps on the console port, but just 9.2 seconds
with FATPIPE -- 18 times faster.
More details, pictures of my RS-422 adapter hardware, the source code and a
http://sowerbutts.com/8bit/fatpipe/
Please let me know if it works for you.
Will
_________________________________________________________________________
<javascript:>
"Carpe post meridiem" http://sowerbutts.com
(m=-1;m<7;putchar(m++/6&c%3/2?10:s[c]-31&1<<m?42:32));}
--
You received this message because you are subscribed to the Google Groups "N8VEM" group.
To unsubscribe from this group and stop receiving emails from it, send an email to n8vem+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/***@public.gmane.org
To post to this group, send email to n8vem-/JYPxA39Uh5TLH3MbocFF+G/***@public.gmane.org
Visit this group at http://groups.google.com/group/n8vem.
For more options, visit https://groups.google.com/d/optout.
Nikolay Dimitrov
2014-06-11 16:36:56 UTC
Permalink
Isn't this port actually RS-485?

Regards,
Nikolay
Post by Wayne Warthen
I really like the use of DMA to handle the high speed. Nice approach.
--Wayne
I've been working on a program to transfer files through the RS-422 port on
the Mark IV SBC. FATPIPE is my file transfer program, still in development
but already useful.
On my 36.864MHz Mark IV it runs at the hardware maximum of 0.576Mbps
(56KByte/s) with over 98% efficiency. To transfer a 512K ROM image takes 166
seconds with XMODEM at 38400 bps on the console port, but just 9.2 seconds
with FATPIPE -- 18 times faster.
More details, pictures of my RS-422 adapter hardware, the source code and a
http://sowerbutts.com/8bit/fatpipe/
<http://sowerbutts.com/8bit/fatpipe/>
Please let me know if it works for you.
Will
_________________________________________________________________________
"Carpe post meridiem" http://sowerbutts.com
(m=-1;m<7;putchar(m++/6&c%3/2?10:s[c]-31&1<<m?42:32));}
--
You received this message because you are subscribed to the Google Groups "N8VEM" group.
To unsubscribe from this group and stop receiving emails from it, send
Visit this group at http://groups.google.com/group/n8vem.
For more options, visit https://groups.google.com/d/optout.
--
You received this message because you are subscribed to the Google Groups "N8VEM" group.
To unsubscribe from this group and stop receiving emails from it, send an email to n8vem+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/***@public.gmane.org
To post to this group, send email to n8vem-/JYPxA39Uh5TLH3MbocFF+G/***@public.gmane.org
Visit this group at http://groups.google.com/group/n8vem.
For more options, visit https://groups.google.com/d/optout.
William R Sowerbutts
2014-06-11 18:20:54 UTC
Permalink
I believe this port is RS-422 since it has no way to disable the transmitter.

Will
Post by Nikolay Dimitrov
Isn't this port actually RS-485?
Regards,
Nikolay
Post by Wayne Warthen
I really like the use of DMA to handle the high speed. Nice approach.
--Wayne
I've been working on a program to transfer files through the RS-422 port on
the Mark IV SBC. FATPIPE is my file transfer program, still in development
but already useful.
On my 36.864MHz Mark IV it runs at the hardware maximum of 0.576Mbps
(56KByte/s) with over 98% efficiency. To transfer a 512K ROM image takes 166
seconds with XMODEM at 38400 bps on the console port, but just 9.2 seconds
with FATPIPE -- 18 times faster.
More details, pictures of my RS-422 adapter hardware, the source code and a
http://sowerbutts.com/8bit/fatpipe/
<http://sowerbutts.com/8bit/fatpipe/>
Please let me know if it works for you.
Will
_________________________________________________________________________
"Carpe post meridiem" http://sowerbutts.com
(m=-1;m<7;putchar(m++/6&c%3/2?10:s[c]-31&1<<m?42:32));}
--
You received this message because you are subscribed to the Google Groups "N8VEM" group.
To unsubscribe from this group and stop receiving emails from it, send an
Visit this group at http://groups.google.com/group/n8vem.
For more options, visit https://groups.google.com/d/optout.
--
You received this message because you are subscribed to the Google Groups "N8VEM" group.
Visit this group at http://groups.google.com/group/n8vem.
For more options, visit https://groups.google.com/d/optout.
_________________________________________________________________________
William R Sowerbutts will-***@public.gmane.org
"Carpe post meridiem" http://sowerbutts.com
main(){char*s=">#=0> ^#X@#@^7=",c=0,m;for(;c<15;c++)for
(m=-1;m<7;putchar(m++/6&c%3/2?10:s[c]-31&1<<m?42:32));}
G. Beat
2014-06-12 02:37:44 UTC
Permalink
John used the Maxim MAX3467, (Maxim data-sheet link)
http://pdf.datasheetcatalog.com/datasheet/maxim/MAX3465-MAX3469.pdf

The Maxim MAX3465-MAX3469 family are high-speed differential bus transceivers for RS-485 and RS-422 communications.
http://www.maximintegrated.com/en/products/interface/transceivers/MAX3467.html

The MAX3467 is a full duplex part (2-pair), but I will have to look at Mark IV SBC schematic.

w9gb
Nikolay Dimitrov
2014-06-12 23:02:26 UTC
Permalink
Just checked the schematic and it actually has 2 links (separate RX and
TX links). I missed this somehow the previous time :).
@Will - What is the error rate of the link? Have you observed any errors
or it's rock-solid?

Regards,
Nikolay
William R Sowerbutts
2014-06-13 12:13:47 UTC
Permalink
@Will - What is the error rate of the link? Have you observed any errors or
it's rock-solid?
I am using only a very short cable -- just a random length of cheap four
conductor cable with RJ14 (6P4C modular jack) on each end. The pairs are not
twisted, it's just a flat cable. I it found lying around in a drawer, it
probably came with a modem or telephone handset or something. It's only about
one metre long.

Over this cable I get rock solid data transfer at 576,000bps. The CRC32
provides a reasonably strong integrity check and it has never reported an
error.

Wikipedia suggests that "a rule of thumb is that the speed in bit/s
multiplied by the length in meters should not exceed 10^8", which suggests I
could expect reliable operation over cables up to about 175 metres long.

If there is any interest I could run a test over a longer cable.

Will

_________________________________________________________________________
William R Sowerbutts will-***@public.gmane.org
"Carpe post meridiem" http://sowerbutts.com
main(){char*s=">#=0> ^#X@#@^7=",c=0,m;for(;c<15;c++)for
(m=-1;m<7;putchar(m++/6&c%3/2?10:s[c]-31&1<<m?42:32));}
Nikolay Dimitrov
2014-06-13 12:49:56 UTC
Permalink
Will, thanks for the info!

Regards,
Nikolay
William R Sowerbutts
2014-07-13 14:10:18 UTC
Permalink
Post by William R Sowerbutts
@Will - What is the error rate of the link? Have you observed any errors or
it's rock-solid?
If there is any interest I could run a test over a longer cable.
I have now built and tested a longer cable run.

I have two lengths of Cat-5e cable that run from my cabling rack in the loft
of my house out to the garden shed. Each run is about 20m long (we live in a
small house!). The shed was installed several years after the cabling in the
house was done so the cabling was installed in three sections and later
joined together, consequently there are two in-line couplers on each cable
run, which can't be ideal for signal integrity.

There are eight twisted pairs in total and I used them all by crimping up
some special cables. I ran the signal from Mark IV in the shed into the
house, then back to the shed, back to the house, and finally back to the shed
and into my RS422 to USB FTDI serial board.

My cable tester measured the overall length as 80m as one would expect.

I've just transferred 50MB over this setup at 576,000bps with zero errors.

I use FATPIPE for all my data transfer to the Mark IV and I find it reliable
and much faster and more convenient than XMODEM.

Will

_________________________________________________________________________
William R Sowerbutts will-***@public.gmane.org
"Carpe post meridiem" http://sowerbutts.com
main(){char*s=">#=0> ^#X@#@^7=",c=0,m;for(;c<15;c++)for
(m=-1;m<7;putchar(m++/6&c%3/2?10:s[c]-31&1<<m?42:32));}
Nikolay Dimitrov
2014-07-14 07:39:16 UTC
Permalink
Hi Will,

Thanks a lot for sharing the results of these tests! This high-speed
link could be the
perfect transport for a "remote virtual disk", managing files on a PC
host and allowing
a faster development (I remember seeing such idea implemented at least
by Dennis
Kuschel, the author of MyCPU project).

Kind regards,
Nikolay

PS: If we attach several Mark IVs with RS-422, we can create a poor
man's Z80-based
transputer :D, we'll just need a state-machine for booting over the link...
Loading...