Using WiModem232 with TCP/IP stack?
#1
I'm wondering if the WiModem232 can be used to connect to the Internet on an Amiga using a TCP/IP stack (Genesis, AmiTCP, Roadshow, etc) so the Amiga can be fully "online" to use web browsers and other tools?  If it looks like a regular modem to the Amiga, is there a way to configure it like a PPP dialup connection?  If so, this would be a giant boon for anyone that can't afford a network card yet still wants to get their Amiga online.
Reply
#2
You should be able to use a SLIP setup, since that uses a regular dial-up modem.
Reply
#3
(01-06-2018, 01:02 PM)Frogking Wrote: I'm wondering if the WiModem232 can be used to connect to the Internet on an Amiga using a TCP/IP stack (Genesis, AmiTCP, Roadshow, etc) so the Amiga can be fully "online" to use web browsers and other tools?  If it looks like a regular modem to the Amiga, is there a way to configure it like a PPP dialup connection?  If so, this would be a giant boon for anyone that can't afford a network card yet still wants to get their Amiga online.

I did this with minimig/roadshow on my MIST board connected to an old raspberry pi I had lying around following the instructions here :

http://lallafa.de/blog/2013/11/networkin...-roadshow/


i realise its not the same as using the wimodem and I'm not sure how you would do the ATDT (Gateway) but that post is a good resource for getting the Roadshow/PPP side configured.

Hope it helps.
The Workshop -  http://home.reidspace.com/ 

Reply
#4
(01-06-2018, 01:02 PM)Frogking Wrote: I'm wondering if the WiModem232 can be used to connect to the Internet on an Amiga using a TCP/IP stack (Genesis, AmiTCP, Roadshow, etc) so the Amiga can be fully "online" to use web browsers and other tools?  If it looks like a regular modem to the Amiga, is there a way to configure it like a PPP dialup connection?  If so, this would be a giant boon for anyone that can't afford a network card yet still wants to get their Amiga online.

That's what I've been trying to do on and off for a few weeks now.

I have an Amiga 2000 (with '030 card) running TermiteTCP, TermiteTelnet, and have IBrowse for browsing.  This was my exact set up as it was 20 years ago that worked fine when calling into work and logging into a CHAP/PPP session when using a US Robotics Sportster modem.

Now I've created a Linux droplet on DigitalOcean where I have a special login that starts the pppd daemon.  I've gotten far enough that I can get TermiteTCP to successfully initiate a PPP session and then I can start running TermiteTelnet to allow me to login to servers on the 'net via a successful DNS lookup and running Telnet over the TCP/IP connection (which is running over PPP running over telnet running over the Wimodem232  Smile ).  However, it isn't fully working yet.  At some point the Telnet sessions always hang in various repeatable ways, and I also haven't been able to get IBrowse to load and display a page yet.  I'm currently studying the PPP logs of the bytes exchanged to find out what is happening when the sessions hang.
Reply
#5
(04-01-2018, 01:25 PM)qbarnes Wrote: Now I've created a Linux droplet on DigitalOcean where I have a special login that starts the pppd daemon.  I've gotten far enough that I can get TermiteTCP to successfully initiate a PPP session and then I can start running TermiteTelnet to allow me to login to servers on the 'net via a successful DNS lookup and running Telnet over the TCP/IP connection (which is running over PPP running over telnet running over the Wimodem232  Smile ).  However, it isn't fully working yet.  At some point the Telnet sessions always hang in various repeatable ways, and I also haven't been able to get IBrowse to load and display a page yet.  I'm currently studying the PPP logs of the bytes exchanged to find out what is happening when the sessions hang.

In the last few days, I've made more progress.  I found out the source of the hang is that for some reason the two byte sequence 0x0d 0x00 is getting turned into a single byte sequence of 0x0d.  I don't know why that is happening or what is responsible, but once I added 0x0d to PPP's escape sequence, that solved all the hangs I had been seeing.  I'm able now to pump as much data as I'd like through the PPP connection without hangs.  My PPP server is configured now with "asyncmap 200a2000 escape 0d,11,13,1d,ff".  I don't know if that's optimal yet, but it 's functional.  I'm able to load http pages in IBrowse, abet very slowly.

However, all is not happy.  The networking throughput is about at 1/3 of what it should be.  I'm seeing a lot of duplicate ACKs and packet retransmissions.  I need to track down what's causing that next.
Reply
#6
Sounds like progress! Once you get this going, you can try increasing the baud rate of the WiModem232 to 115200 and use BaudBandit.device for the serial driver (assuming you are using an Amiga).
Reply
#7
(04-11-2018, 03:14 PM)admin Wrote: Sounds like progress!  Once you get this going, you can try increasing the baud rate of the WiModem232 to 115200 and use BaudBandit.device for the serial driver (assuming you are using an Amiga).

Hi Folks,

Did anyone get their Amiga and WiMODEM and Roadshow to talk to the internet, and if so, can I ask how - sounds like you needed an intermediary, like a Raspberry pi?

I am using OS 3.2, and can successfully use serial.device at 115200 in an Amiga 1000 with a Terriblefire 536 installed.  No need for baudbandit, or 8n1 replacements!

I am using Ncomm, and conenct via telnet to BBS's no worries, but if it's possible to use a SLIP device and get net access, then we can use UHCTools or even IBrowse through the WiMODEM, which would be even more awesome!

Any tips?
Reply
#8
I need to look into this. I know that you can use a real modem with a SLIP connection. That would be the exact same setup for use with the WiModem232.
Reply
#9
This was of my main use cases for getting a WiModem232 - actually a pair of them so that I could use them together in nullmodem mode without having to run a physical serial cable. One would plug into my Amiga, the other into a Linux PC with an old-school serial port. The Linux side runs a PPP server:

Code:
sudo pppd demand holdoff 5 nodetach local crtscts lock noauth noipv6 192.168.11.34:192.168.11.10 /dev/ttyS0 115200

where 192.168.11.34 is the PPP address for the Linux machine and 192.168.11.10 is for the Amiga, and /dev/ttyS0 is where the WiModem232 is plugged in. This gives a reusable, on-demand connection: I can bring it up/down repeatedly from the Amiga without having to restart the PPP server. I've been using MiamiDx on the Amiga because it's easy to set up and troubleshoot, but other PPP software should work.

Using a single WiModem232

Today though I realised that I could possibly make it work using just the WiModem232 on the Amiga, since the WiModem232 can make TCP/IP connections itself, and the Linux box already has TCP/IP connectivity. The idea would be to expose a PPP connection via a network port for the WiModem to connect to. Now, pppd normally talks to a serial port (/dev/ttyXX), but can also use a pseudo-tty or pty. The bridge between that pty and the TCP/IP side of things can be made using a command such as socat. Here's a crude illustration:

Amiga + WiModem <---> socat / pty / pppd <---> Internet

While it's possible to pass the socat command as part of the pppd command line, I found it necessary (or at least easier to follow) to run them separately in order to get the same on-demand reusable connection behaviour as my nullmodem scheme.

First the socat command will listen on a TCP port and bridge that connection to a pty device file that it creates (the name /dev/ttyV0 suggests a virtual serial port). I used port 6400 as that's what the WiModem232 uses by default for its listening port.

Code:
sudo socat PTY,link=/dev/ttyV0,rawer,echo=0,wait-slave,unlink-close=0 TCP-LISTEN:6400,reuseaddr,fork &

Then you can run pppd, telling it to use the pty device that connects via socat to the server port:

Code:
sudo pppd persist maxfail 0 holdoff 2 nodetach local lock noauth noipv6 192.168.11.34:192.168.11.10 /dev/ttyV0 115200

In order to reach the outside world, you might also need to enable packet forwarding on the Linux gateway, update route settings, firewall config, etc.

Code:
sudo sysctl -w net.ipv4.ip_forward = 1

Then you can "dial in" from your PPP client using the WiModem, à la:

Code:
ATDT192.168.1.34:6400

(or whatever IP address or hostname reaches the Linux gateway)

Note: This approach does expose the potential security vulnerability that anyone who can reach your PPP port could connect to your network directly (effectively using a local IP address). You could restrict access to the port using a firewall, limit the access provided to the PPP subnet, and require PPP authentication to improve this.

So, yes, you do need an intermediary device, just like an old-school dial-up PPP connection. Here we have the added novelty that it's like dialup but it's wireless! Smile The PPP connection runs on top of the TCP/IP stack provided by the WiModem, so the full stack from the Amiga would be something like TCP/IP/PPP/TCP/IP/WiFi. And yes, you could certainly use a Raspberry Pi for this.

I'm also excited to see that someone has released a modern, lightweight TCP/IP stack for Amiga release 1.3 named TheWire13. I'll try this with my WiModem232 on my Amiga 500 soon...

Hope this helps!
Reply
#10
If someone can point me to info on what is required for PPP I would just add it to the WiModem232 Pro. I have 85% code space left. Smile
Reply




Users browsing this thread: 1 Guest(s)