Jump to content
mozzwald

SIO Wifi modem with esp8266

Recommended Posts

I build this today :-)

Schematics included.

 

My ESP8266-WiFi in a SIO-plug project.

Parts needed: ESP8266, 3.3v reg, 10uF, 2x0.1uF, dual LED, 2x100 and 1.5k resistors, 74LS04, diode, SIO-plug

Does it fit... uhhhh... yes

Does it work... yes

Does it look awesome... Oh hell, yes

Do I want to make more... No

 

Enjoy

 

 

Holy Guacamole!

  • Like 1

Share this post


Link to post
Share on other sites

I build this today :-)

Schematics included.

 

My ESP8266-WiFi in a SIO-plug project.

Parts needed: ESP8266, 3.3v reg, 10uF, 2x0.1uF, dual LED, 2x100 and 1.5k resistors, 74LS04, diode, SIO-plug

Does it fit... uhhhh... yes

Does it work... yes

Does it look awesome... Oh hell, yes

Do I want to make more... No

 

Enjoy

 

Have you looked at the RVERTER handler code?

Does it make use of the SIO MOTOR ON/OFF signal (for a hardware Handshake)?

 

I have connected an external modem (WiModem232) with a simple level shifter (RxD, TxD) and I wondered if it is enough.

Edited by TheMontezuma

Share this post


Link to post
Share on other sites

Hi Marcin,

We know that Motor Ctrl signals are used to disconnect tx rx lines from Din and DOut. You can check it by yourself by loading any terminal program like bobterm (previously load rverter handler) and press play in your cassette player (if you have one, if not maybe with a multitester), it should start playing the cassette. If you ask for example, for a disk directory, the cassette player will stop for 1 or 2 seconds, and then continue after the file listing is complete.

The thing I want to check now is whether proceed or/and other SIO lines are really used by rverter fast handler (the one include with bobterm) to detect ring or/and to implement hardware flow control.

Edited by manterola
  • Like 1

Share this post


Link to post
Share on other sites

The thing I want to check now is whether proceed or/and other SIO lines are really used by rverter fast handler (the one include with bobterm) to detect ring or/and to implement hardware flow control.

Nope, I've disassembled 3-4 R-Verter handlers including Bob-Verter and so far none use the 2 Interrupt input lines that could be used for flow control...

  • Like 1

Share this post


Link to post
Share on other sites

almost all of the time the only hardware handshake that does any thing is the line that says the modem should stop passing data to your computer, I almost never see it say, don't send to the modem etc.. what does surprise me at times is that no one ever did the parallel to serial reversion, since the sio printers and parallel printers etc used a couple of hardware control/error lines...

  • Like 1

Share this post


Link to post
Share on other sites

Cool.

 

For my tests with WiModem232 I prepaired two ATR files that automatically load the RVERTER Handler (actually the rverter from Bobterm 1.21) before starting a terminal itself.

Perhaps they can help someone.

Here are the ATRs:

 

ANSIVBXE terminal can only be used with VBXE (at $D6400) and it is hardcoded for 9600 baud:

ansivbxe.atr

 

I-CET also offers 80 columns and the baudrate is configurable (in the ATR set to 9600):

icet.atr

 

 

Share this post


Link to post
Share on other sites

Nope, I've disassembled 3-4 R-Verter handlers including Bob-Verter and so far none use the 2 Interrupt input lines that could be used for flow control...

I would love to put my hands on the files mentioned in the atarimania FAQ where DSR & RD are mentioned (I would like to read rts cts)

"- The A.I.D. R-Verter was distributed with 4 different R: handler versions,

originally written by Royce W. Powell, © April, 1984 by A.I.D.:

- RHAND1.OBJ - R: handler supporting DSR & RD

- nearly identical: RVDOSXL.COM (version for DOS XL?)

- RHAND1C.OBJ - R: handler supporting DSR & CD

- RHAND2.OBJ - R: handler supporting DSR & RD and translation tables

- RHAND2C.OBJ - R: handler supporting DSR & CD and translation tables"

 

And then renamed Supra (previously AID) distributed these two modem with the renamed "Supraverter" which according with the FAQ supports auto answering...

"==> 1200AT, by Supra (1987)

- Same as: E+E DataComm Avatex 1200

- Low Speed Mode: 0-300 bit/s, binary, serial, asynchronous,

Bell 103 compatible

- High Speed Mode: 1200 bit/s character-asynchronous, Bell 212A compatible

- Command Set: 8 Hayes "AT" commands (other options fixed or not needed)

- Auto-answer

- Auto dial (tone or pulse)

- (No speaker)

- Connects to SIO via included SupraVerter interface

- Smart Terminal disk

- CompuServe DemoPak and Delphi membership

 

==> SupraModem 2400AT, by Supra (1988)

- Asynchronous operation at 300, 1200, or 2400 bit/s

- Compatibilities: Bell 103, Bell 212A, V.22, V.22bis

- Hayes "AT" command compatible (100%)

- Auto-answer

- Auto dial (tone or pulse)

- Speaker built-in

- Connects to SIO via included SupraVerter interface

- Smart Terminal disk"

Edited by manterola
  • Like 1

Share this post


Link to post
Share on other sites

I would love to put my hands on the files mentioned in the atarimania FAQ where DSR & RD are mentioned (I would like to read rts cts)

"- The A.I.D. R-Verter was distributed with 4 different R: handler versions,

originally written by Royce W. Powell, © April, 1984 by A.I.D.:

- RHAND1.OBJ - R: handler supporting DSR & RD

- nearly identical: RVDOSXL.COM (version for DOS XL?)

- RHAND1C.OBJ - R: handler supporting DSR & CD

- RHAND2.OBJ - R: handler supporting DSR & RD and translation tables

- RHAND2C.OBJ - R: handler supporting DSR & CD and translation tables"

 

And then renamed Supra (previously AID) distributed these two modem with the renamed "Supraverter" which according with the FAQ supports auto answering...

"==> 1200AT, by Supra (1987)

- Same as: E+E DataComm Avatex 1200

- Low Speed Mode: 0-300 bit/s, binary, serial, asynchronous,

Bell 103 compatible

- High Speed Mode: 1200 bit/s character-asynchronous, Bell 212A compatible

- Command Set: 8 Hayes "AT" commands (other options fixed or not needed)

- Auto-answer

- Auto dial (tone or pulse)

- (No speaker)

- Connects to SIO via included SupraVerter interface

- Smart Terminal disk

- CompuServe DemoPak and Delphi membership

 

==> SupraModem 2400AT, by Supra (1988)

- Asynchronous operation at 300, 1200, or 2400 bit/s

- Compatibilities: Bell 103, Bell 212A, V.22, V.22bis

- Hayes "AT" command compatible (100%)

- Auto-answer

- Auto dial (tone or pulse)

- Speaker built-in

- Connects to SIO via included SupraVerter interface

- Smart Terminal disk"

that's the interface modem combo that had hardware handshake I bought, I used it with and avatex modem as well. the problem is there was more than one driver and more than one supraverter!

  • Like 1

Share this post


Link to post
Share on other sites

cd and dtr could be tied together I think, and rd was receive data.... it worked wonderfully. but they did have a version that controlled 3 lines. carrier detect, dtr, and receive data.... nothing else was needed.... it was stuffed into the same black case as their sio to parallel cable was...

  • Like 1

Share this post


Link to post
Share on other sites

Wow, much response...

 

The interface I built:
MOTOR only controls the 74ls04, switching it on/off, thus passing TX/RX through or not.

This are the only 3 signals needed to drive the interface I built.

 

The only way you can do handshaking is with the Xon/Xoff characters, that is, if the server supports this.

There is no hardwired handshake.

That means that all data coming in must be buffered somewhere.

The Atari-protocol is to store data into system RAM... Data-bus off means data lost...

  • Like 1

Share this post


Link to post
Share on other sites

but couldn't you run the line to the modems hardware line to stop sending data, if level is needed reverse use an inverter? so long as the driver waits long enough for the bit or two that might get by as the 74ls04 gets around to taking it off the bus all should be fine.

Share this post


Link to post
Share on other sites

Could you connect the motor line to the esp and modify the modem firmware (on esp) to buffer data when the Atari SIO is busy (motor line asserted)?

  • Like 1

Share this post


Link to post
Share on other sites

I have no idea, I am running stock firmware.

So I used what the firmware has to offer.

 

Rx/Tx/Vcc/Gnd connected.

Xon/Xoff to pause data-transmission.

Motor-control to free the IO-bus.

The driver I wrote can handle this, you can stop data with Xoff, free the bus, do IO to disk, turn bus on, tart data again with Xon.

This all without closing and reopening the R: driver.

 

No idea how to code the ESP, I am definitely an 8 bit/6502-guy.

C++ and all that jibber jabber and gobbledygook goes way over my head.

Perhaps somebody can dig into that.

Share this post


Link to post
Share on other sites

At Fujiama me and @manterola were trying out various things with an ESP-07.

We used our AVG Cart to load either Bobterm,Ice-T or PlatoTerm since the SIO bus is occupied.

 

IMG_4792.thumb.JPG.5d7eade3d80798abb417b703af657aa0.JPGIMG_4793.thumb.JPG.db56602fecd6ca1c25af1b9395dd6121.JPG

 

I still have to upgrade my firmware to get a more extensive AT command set but just connecting it with RX,TX,VCC,GND works.

We tested this with Manterola's ESP-07 at Fujiama which was running the ZiModem firmware here https://github.com/RolandJuno/esp8266_modem

 

At Fujiama he also showed me the SIO2IO prototype made by @Dropcheck which he lend me at the end of Fujiama to take with me to Belgium

so I could experiment further with it.

 

The SIO2IO for my uses is a perfect Atari 850 Replacement when used in combination with an AVGcart for example.

It has a header for an ESP board.

 

IMG_4795.thumb.JPG.fa3b3490405f9a37ce5f585d01a6fba3.JPG

 

But also a serial (standard pin layout) and parallel port (not tested yet have to find a printer)

 

I tested the serial port with both a WiModem232 and an SX212.

 

IMG_4798.thumb.JPG.640b672eeb2f897287e06811d40a2976.JPGIMG_4799.thumb.JPG.da2df06e2857d6cd2b015564d780f5ad.JPG

 

Bobterm doesn't like ANSI :) , telnetting to FrontierBBS.net (Amiga board which I use since they have colorful ANSI welcome screens)

 

IMG_4800.thumb.JPG.97557e1dad040c0162ca9037e6508000.JPGIMG_4801.thumb.JPG.0ddb9c4174c6894583e74cf72f1eafac.JPG

 

But ICE-T does the job

 

IMG_4803.thumb.JPG.5bab4605386696cacd99b7686abf1a11.JPGIMG_4808.thumb.JPG.a47dd84dca3a6c527f911eec1dac8b5b.JPG

 

I can even use the arrow keys to move through the Matrix Login screen

 

IMG_4807.thumb.JPG.5b1a7cc24d8898b009826615378a331b.JPGIMG_4804.thumb.JPG.96f8bf7e2cca9c34aee4b734b166ce14.JPG

 

And yesterday I went to my parents house since they still own a landline to test the SX212 modem.

 

IMG_4827.thumb.JPG.1ef8062e1bdda7999b2a27639e7d43e9.JPGIMG_4828.thumb.JPG.45d6dd9ccdd974e473b954e3381a91c1.JPGIMG_4829.thumb.JPG.17425f1ff884f5537cd2c41e1b8ff4cc.JPG

 

I thought about connecting to this Belgium BBS still offering dialup but the number was no longer in use :(

http://www.ibbbs.be/new/nl/index.htm

 

So I called directly to the US (sorry Mom) to the first dialup BBS that actually had a modem responding

https://www.telnetbbsguide.com/bbs/rof/

 

And although it disconnected me (maybe the Commodore detected my Atari :) ) , I first had the handshake noises.

 

IMG_4826.thumb.JPG.0d674b7aebcd2aefbefc66b2b3da57d1.JPG

 

Since I didn't want to run up my parents phone bill , I decided to call it a day.

 

The SX212 can be used with an SIO cable and an R-Verter handler but to use it via serial port , I had to resort to SX-Express.

Might have to look if there is an SX212 handler which I could use in Bobterm or ICE-T.

 

 

 

 

Edited by Lastic
wrong pictures
  • Like 3

Share this post


Link to post
Share on other sites
5 minutes ago, _The Doctor__ said:

There is, I've used the sx-212 with Express, bobterm, ansiterm, ice-t and others via the sio port....

But then you loaded the RVERTER handler ?

 

I'm looking to use the SX-212 with Ice-T via it's serial port not SIO.

Share this post


Link to post
Share on other sites

the standard R: handler in the 850/PR:connection/MIO/BlackBox/and the RBINS all work just fine with the same software and the sx-212. The SX-212 worked perfectly with my ST and wintel box as well. The modem never had an issue for me other than it was too slow :) I always went for the fastest modem on the BBS... so the SX and XM were always strictly for calling until the next faster modem went on the BBS and the other computers got it's left overs.

What exactly are you needing? Just use any serial port on those devices and the standard Atari/ICD serial modem cable...or make your own as I have always done. 9 pin to 25 pin... the cable specifics are posted on the forum more times than I care to count and are in the pdf manuals of all the devices as well...

 

Edited by _The Doctor__

Share this post


Link to post
Share on other sites
39 minutes ago, _The Doctor__ said:

the standard R: handler in the 850/PR:connection/MIO/BlackBox/and the RBINS all work just fine with the same software and the sx-212. The SX-212 worked perfectly with my ST and wintel box as well. The modem never had an issue for me other than it was too slow :) I always went for the fastest modem on the BBS... so the SX and XM were always strictly for calling until the next faster modem went on the BBS and the other computers got it's left overs.

What exactly are you needing? Just use any serial port on those devices and the standard Atari/ICD serial modem cable...or make your own as I have always done. 9 pin to 25 pin... the cable specifics are posted on the forum more times than I care to count and are in the pdf manuals of all the devices as well...

 

 

When I used the SIO2IO prototype which mimics an 850 , I connected the SX212 via the SIO2IO's serial port to the modem using a standard (non-Atari) serial cable. (DB9 to DB25)

So Atari SIO -> SIO2IO -> SIO2IO serial port -> SX212 serial port

In Bobterm using the RVERTER handler , the modem didn't respond.

When I used SX-Express, the modem responded to AT commands, using the same cable.

 

My WiModem232 does work using Atari SIO -> SIO2IO -> SIO2IO serial port -> standard (non-Atari) serial cable. (DB9 to DB25) using RVERTER handler in Bobterm.

 

So  should I have used the Atari serial cable that I use on my 850 to connect to the serial port of the SX212 ?

The goal is to use the SIO2IO prototype , not an 850, to check wether a modem which only has a serial port can connect to the Atari . ( I know the SX212 has both SIO and serial but I don't have any other modem )

This way any non-Atari modem could be used via serial port , connected to SIO2IO which connects it via SIO to the Atari.

Share this post


Link to post
Share on other sites
1 hour ago, Lastic said:

 

When I used the SIO2IO prototype which mimics an 850 , I connected the SX212 via the SIO2IO's serial port to the modem using a standard (non-Atari) serial cable. (DB9 to DB25)

So Atari SIO -> SIO2IO -> SIO2IO serial port -> SX212 serial port

In Bobterm using the RVERTER handler , the modem didn't respond.

When I used SX-Express, the modem responded to AT commands, using the same cable.

 

My WiModem232 does work using Atari SIO -> SIO2IO -> SIO2IO serial port -> standard (non-Atari) serial cable. (DB9 to DB25) using RVERTER handler in Bobterm.

 

So  should I have used the Atari serial cable that I use on my 850 to connect to the serial port of the SX212 ?

The goal is to use the SIO2IO prototype , not an 850, to check wether a modem which only has a serial port can connect to the Atari . ( I know the SX212 has both SIO and serial but I don't have any other modem )

This way any non-Atari modem could be used via serial port , connected to SIO2IO which connects it via SIO to the Atari.

The DB9 serial port on the SIO2IO proto board is wired for industry standard (non-850) connections.   It was my hope that a direct connection could be made without the use of a 850/clone and non-industry standard cabling. 

 

Thank you for the testing.  🙂  The DB9 serial port is not a real serial port, but rather mimics the internal SIO connections inside the SX212.  Unfortunately that means it probably will have limited speed, around 1200 to a max of 2400baud.

Edited by Dropcheck
Added info

Share this post


Link to post
Share on other sites
8 minutes ago, Dropcheck said:

The DB9 serial port on the SIO2IO proto board is wired for industry standard (non-850) connections.   It was my hope that a direct connection could be made without the use of a 850/clone and non-industry standard cabling. 

 

Thank you for the testing.  🙂  The DB9 serial port is not a real serial port, but rather mimics the internal SIO connections inside the SX212.  Unfortunately that means it probably will have limited speed, around 1200 to a max of 2400baud.

 

Thank you for creating such a wonderful prototype !

 

I haven't tried higher speeds with my WiFiModem232 connected to the SIO2IO's serial port, it was at 1200 BAUD , will try a higher speed and let you know the results.

 

The SX212 is only able of 1200 Baud so that's OK, just wanted to know wether a modem worked via the serial port.

Share this post


Link to post
Share on other sites

Just for info.  The parallel port is a clone of the Supra Microprint printer adapter.  So anything it can do, the prototype should be able to do too. 

 

In the prototype there is an issue with having both wifi/hardline serial going at the same time of course.  Not that you normally would.....😧

 

I have tested both a standard ESP-01(with adapter) and ESP-07 module with a later version of the wifi connection.  I believe I was using Manterola's Atariized C-64 Wifi Modem software on the ESP units.  This prototype is almost identical so you could dispense with your C-64 wifi modem and go direct to your local wifi rtr.  🙂

  • Like 1

Share this post


Link to post
Share on other sites

if the SIO2IO is a clone of the SX212 internal SIO to R: converter it makes perfect sense the the SX212 SIO driver (Rverter +)  is working.

 

The interface is capable of faster speeds but the driver needs to be modified to do so.

 

This means the SX212 R: handler should be all that is needed to use the SIO2IO with the other software you want to use... the only difference being the now somewhat standard rs232c cable instead of the Atari/ICD modem cable... I'd label the port as such...

 

You really should be able to use the them all as the sx handler does work with the mentioned software.... so the sx212 express handler only need be taken out and modified.

This is good news.

 

If there were a speed issue faster versions of the chips could be substituted in circuit (I haven't looked at sx212 internally for some time nor the sio2io) but just as with the sio2pc of old subbing a faster, stronger chip yielded faster and more reliable speeds... but I haven't looked so it very well might be already capable of the faster baud rates.

Hack at the driver...

 

If I understand what's described, the serial port can't be used on the sio2io currently if is already hosting a wifi device (is this because it's wired to the serial port directly?) Time to go to dropchecks site and see..

Edited by _The Doctor__

Share this post


Link to post
Share on other sites

Today I went to a local electronics store to buy some stuff and noticed they sell these cases also .

Colorwise it's a bit darker than the XE grey but still close enough, it's a tad longer but that is maybe needed for a female SIO connector.

 

IMG_4838.thumb.JPG.8ea086882bdcd99831d97cd6d8722811.JPGIMG_4839.thumb.JPG.c8e3b3842069540bfb16ab370dde03ca.JPG

 

Still would need a switch to turn off the ESP and the ESP inside a box might not be the best idea for WiFi reception

Share this post


Link to post
Share on other sites

What I did with the ESP-07 and ESP-01 was to remove and replace the vertical 4pos male headers with RA male headers.

 

The ESP-07 has an external antenna connector.  So using something like this will make it easier to install a ESP device inside a container:

 

IPEX U.FL to SMA jack pin cable and External Antenna

 

As far as a switch between the DB9 and the Wifi that gets a bit harder since when I designed the proto I didn't really think about the conflict problem and my routing meanders haphazardly between the two conjoined circuits.  I'll take a look and see if there is a easy break that can be made in the routing that will allow a SPDT toggle switch to be wired up. 

Share this post


Link to post
Share on other sites
12 hours ago, Dropcheck said:

What I did with the ESP-07 and ESP-01 was to remove and replace the vertical 4pos male headers with RA male headers.

 

The ESP-07 has an external antenna connector.  So using something like this will make it easier to install a ESP device inside a container:

 

IPEX U.FL to SMA jack pin cable and External Antenna

 

As far as a switch between the DB9 and the Wifi that gets a bit harder since when I designed the proto I didn't really think about the conflict problem and my routing meanders haphazardly between the two conjoined circuits.  I'll take a look and see if there is a easy break that can be made in the routing that will allow a SPDT toggle switch to be wired up. 

I meant to say I removed and replaced the RA 4pos male headers with vertical male headers so that the ESP-07 lays flat in the board connector instead of standing vertically.  Seems I have written dyslexia.

Edited by Dropcheck
added and corrected info

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...