racsiii

Serial Communication: Raspberry Pi to Lantronix EDS1100

(Did we, did we really?)

(Whisper on)it’s been too easy (Whisper off)

I’m just as impatient as you are to get this going. I see there is data on the drive, and I want to complete Raspberry Pi & Lantronix EDS1100 and be able to bring this journey to a close. Having it booted and not able to do anything is going to really be an annoyance. So, instead, lets see what we can do about connecting this sucker serially to something and getting the ability to connect. We can start off with telnet, but I’ll want SSH after that. Let’s discuss about Raspberry Pi & Lantronix EDS1100.

Investigation

I hadn’t tested it before, but with the RS-232 Serial Board back in the machine, it was time to test it. I had the Serial Cable I bought new from Ian Mavric’s TRS80 Universe store on eBay. It was a card edge to a DB-25 Male. On the other side, I had my Mac which I have a USB-C to 4 port USB-A. Like the famous “How Many Licks Does it Take to Get to the Center of a Tootsie Pop?”, how many devices and gadgets would it take to get those 2 bridged.

So given the fact I still use some devices here that are serial based, most notably a Cisco Router (Its in my “lab” setup where I emulate on a smaller device the equipment I use in the NC house so that I can make changes and test before I implement them remotely) I actually had a PL2303/DB9 based Serial cable in my little “anything to anything” kit bag I mentioned before.

And given what I remember from yesteryear, I needed to implement a null modem. Another piece of equipment in Tuc’s bag of tricks. Lantronix

So I still needed to get from the null modem to the DB9. Well, as mentioned, yet another piece out of my bag of tricks.

You put that all together and what do you get? A freaking mess, that’s what!!

How fast CAN we go?

I put in the disk with that SMAL-LDOS and Modem program into the Model I and rebooted. Then found a modem program for the Mac called Serial. Set the specs for the fastest I could, a whole 9600 baud. If you aren’t familiar with what baud is, its the number of bits it can send in a second. For 9600 baud, that’s 9600 bits, and 9600/8 (8 bits to a byte) so 1200 bytes a second. That means a 1 Megabyte file is going to take 873 seconds to transfer. Compared to that, my home connection is 150Mb/s. That means a 1MB file will take, well, 1/5th of a second. Yea, we had to deal with this back “in the day”.

Once things were set up, I typed an “E” on the Mac, and saw the “E” on the TRS-80. I did the same on the TRS-80 and saw it on the Mac. HIZZAH! Theres connectivity back and forth. Lantronix

Not QUITE a perfect setup. :-/

Having to allow people to come to my apartment, sit at my Mac, and log into the Model I next to it. That presents a lot of difficulties for both sides. People having to come to the east coast, me having to keep answering the door at all hours, worrying about 2 people wanting to access it at the same time, etc. So there’s gotta be some other way.

I looked at a whole bunch of hardware on the interwebs. there were a lot of different possibilities. I was looking for something with very little capability. There were only a few items I needed –

  • Only needs to handle a 10Mb/s connection since that’s much more than the 9600 baud
  • I’d rather not have to have the daisy chain of cables to get from it to the TRS-80
  • Needs to be able to support telnet. While its a lesser used protocol nowadays, it’s still available on most platforms even phones.
  • I really, REALLY wanted it to be able to have SSH too. That’s the successor to telnet, also available on pretty much anything that can have IP connectivity
  • It needs to be able to… well, actually, that’s pretty much it.

Oddly, even though serial is a bit of a dinosaur like telnet is, there are plenty of devices out there. The problem is, I’m not willing to pay that. Some of the devices were worth more than the whole setup is worth.

Maybe there’s another way to do it

In recent years, there’s been a surge in small cheap single board computers. One of the leaders of it was the Raspberry Pi. As per Wikipedia –

The Raspberry Pi project originally leaned toward the promotion of teaching basic computer science in schools. The original model became more popular than anticipated, selling outside its target market for uses such as robotics. It is widely used in many areas, such as for weather monitoring, because of its low cost, modularity, and open design. It is typically used by computer and electronic hobbyists, due to its adoption of the HDMI and USB standards.

I’ve been using them since their release in 2012. I’ve gone through every model they have. My lab currently consists of :

  • Khadas Vim 4 – Small like the Raspberry Pi, with similar features running Ubuntu
  • A Raspberry Pi CM 4 – A Compute Module just like the Raspberry Pi 4. I’ve got it in a CM-IO-BASE-BOX
  • Raspberry Pi 4 8M
  • Raspberry Pi 4 4M
  • Raspberry Pi 4 1M
  • Turing Pi 2 populated with 4 Raspberry Pi CM4’s
  • And, ok, a Lenovo ThinkCentre M73 Tiny Desktop with Fedora on it, but it gets the least amount of use.

Raspberry Pi for the WIN

I took one of my spares, loaded the lastest Raspbian Raspberry Pi OS on it. (Debian version: 12 (bookworm)). My PL2303 is immediately recognized as ttyUSB0. That part of the equation was really quick and easy to set up, now just for the software. That shouldn’t be hard, right?

By now, though, you know nothing is ever straight forward about this. During my search I found a lot of Virtual Modems, but the problem was they were looking to dial OUT and not be dialed IN. This really cut down on my possibilities. I searched for serial and network, and found a lot of terminal server setups. That’d only allow someone who is already on the Pi to talk out a serial connection. Not what I’m looking for either.

The Revelation

I finally found something called tcpser. It sounded like it would work. I cloned, built, and put it up. It didn’t seem to set the serial settings I was hoping for. Knowing the program, it needed to see certain settings on the serial line, otherwise it’d claim there was a serial issue and not allow anything to happen. I probably could edit it and set up some sort of out of band signaling. Visions of the special device built for the cassette port by my friend Andrew Van Brocklin danced in my head. I think I had trashed my original cable so I immediately found a 3ft version from 8 Bit Classics and got it shipped in just in case.

The Trial

I ran MODEM80 and attempted to type back and forth. It didn’t work. This was a bit puzzling. I used the Mac before and it worked, and the PL2303 was touted to work natively with Linux. Maybe there was a cabling issue. I took a jumper and started diagnosing from the TRS-80 side. First pins 2+3 on the serial cable. Echo. Then the Null modem. Same. Then the DB9<>DB25. Same. I put back the PL2302 and then loaded a modem program called Minicom. It worked fine. Meh, not ready to start dealing with it since its a not currently maintained. Time to move on.

The next thing I ran into was an article about gensio and ser2net. Seemed really interesting, but the article was a bit confusing. I contacted the author of the article, John Goerzen. It was suggested to start dealing more directly with ser2net. As it turns out, gensio and ser2net are both written by the same person, Corey Minyard. I loaded ser2net and it was really easy to configure and get running. But, it didn’t change the terminal lines in the way I needed. But it worked, so there was that. I filed a Github issue and had a little bit of back and forth trying to resolve my issue. Lantronix

In an effort to see what it SHOULD be, I decided to buy an old US Robotics Model 0701 Sportster Fax Modem 56K with Power Cord. It was only a few bucks. I did want a 9600 only, but people were asking some pretty pennies for them. I figured the USR Sportster was a known modem. When it came, I configured the dip switches as if it was going to actually be used, and put it on the computer.

My test program immediately registered a change in setting without it even being on! After I did turn it on, it momentarily went to 255, but then to another number. So it seems that the modem was sending the right signals to the computer as my old Novation Cat did with Andy Van Brocklin‘s special opto/cassette interface or my, um, acquired Bell Telephone Dataphone 212A. I updated the Github ticket about it. Lantronix

This, however, is where the ser2net story stands. Unfortunately, as of this writing, I haven’t heard back about moving forward with anything to be able to get the signals to be present BEFORE the tcp telnet connection is made. Maybe I’ll update later if there’s anything big to mention. Lantronix

Always good to keep your options open though

When I started to look into the hardware, I realized there was the possibility that I could get what I want, but used and at a discount . If I can get it cheap enough, even if it doesn’t work out it won’t be a total loss. So one of the devices I saw, but couldn’t justify buying new was from a company I’ve dealt with before, Lantronix. It was the EDS-1100. Maybe it was just the fact it mentioned the name of a company I worked for for over 12 years, Electronic Data Systems. I found a vendor that was selling what looked like working pulls. I ordered one and had it sent to me.

The Trial

It actually showed up today (Along with that 8Bit cable I ordered before) so I gave it a try. I looked up online the latest firmware and web ui for it, downloaded it, and then tried to make contact with it. Didn’t see it come onto the network, so DHCP probably wasn’t enabled (Plus the fact it looked like the final 2 octets of an IP address were on it).

Instruction

Downloaded the manual and they said you could do the old ARP trick. They had a weird door knock setup in that you needed to set the Lantronix ARP on your machine, then telnet to port 1 of the device, then it’d close and you then had to telnet to 9999 and press enter in 5 seconds. I tried numerous times with no luck. So, went the brute force way. I connected it directly to the Mac and ran Wireshark on the interface to see what it thinks it was called. And, sure enough, its IP matched the partial IP on the label. I was able to set the Mac to one off, and gain access.

At this point I attempted to connect it to the Model I, and ran a quick program to see what it thought was going on. The numbers weren’t 255, which was all I cared about. GREAT!

Summing up

Of course, one of the first things that I do when I get old equipment, is look for updated software. I was able to find a newer version and proceeded to load it via tftp (First time I ever used tftp PUT to update software). I decided that the unit was operating well and I would give the eBay user feedback when I noticed a little hiccup.

My unit was actually a Lantronix UDS1100, not Lantronix EDS1100. SIGH, really. And of course I wanted the EDS over the UDS, since the EDS can do ssh. SO, meh, I’ve contacted the seller to see what’ll happen. Although it’ll only take a few days to resolve it, as much as I’d like to move forward, I’m also going out of town on a trip, so its not worth getting everything running and then having to tear it down. Well, okay, maybe just for a few days. 😉

Tagged , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,

About Tuc .

Tuc, owner and Sysop of RACS III started his computing adventures on an IBM 5110 with a 4 inch screen, 16K Basic, 2 8" floppy drives and a 132 column dot matrix printer in 1978. After retiring for a bit to Tucs Beachin OBX House in NC, he came back and is now the Senior Site Reliability Engineering Manager for a global SAAS company.
View all posts by Tuc . →

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.