iggydrougge wrote:I built one of these today. Worked perfectly on the first attempt thanks to Czietz's firmware. Managed to cram it all into a 5x3 cm casing by desoldering the connectors on the 5 V adaptor board and solder-mounting all pieces with some added hot glue. Haven't tried it on my ST yet, but it worked fine on my Amiga with AmiTCP.

That's great to hear!

iggydrougge wrote:If the firmware could be upgraded to support CSLIP, a bit more performance could be squeezed out.

Since the firmware uses lwIP as its network stack, that would require CSLIP support in lwIP, which isn't in there. And my knowledge of network protocols isn't so extensive that I could easily add this. Note that CSLIP requires you too keep track of every open TCP connection to compress the packet headers. Unfortunately that's nothing that can be quickly patched into existing code.

iggydrougge wrote:I built one of these today. Worked perfectly on the first attempt thanks to Czietz's firmware. Managed to cram it all into a 5x3 cm casing by desoldering the connectors on the 5 V adaptor board and solder-mounting all pieces with some added hot glue. Haven't tried it on my ST yet, but it worked fine on my Amiga with AmiTCP.

If the firmware could be upgraded to support CSLIP, a bit more performance could be squeezed out.

Cool! What speeds have you tried out so far? The ST/STE standard serial port only manages 19200 without modding. (max 115200 modded)

Mega STE/TT/F030 got a different serial chip capable of 614400 I think. Would be fun to see how fast this can work reliably.

I did recieve the ESP8266 I ordered the other day and plan to play around with this the coming weeks.

I've only run it at 19200 bps so far. There is a certain danger in upping the serial speed too far since you won't be able to login to set it back otherwise. Well, I would because I have all manners of hardware, but other users wouldn't. It would be nice if the firmware supported setting the speed without saving it to flash, since that way you could try it out before commiting.

(I do have a MegaSTE, but I gather that it's only some of the ports that can handle higher speeds?)

Another way to ensure higher speeds (and avoid packet loss even at lower speeds) would be if the firmware supported hardware handshake (RTS/CTS). Mind you, the 5V Arduino support PCB recommended does not support any other lines than RX and TX, but they could easily be extracted from two GPIO pins and the MAX232 used has two unused channels that may be used for handshaking.

iggydrougge wrote:I've only run it at 19200 bps so far. There is a certain danger in upping the serial speed too far since you won't be able to login to set it back otherwise.

Note that if you make sure that the module connects to your Wifi network before you change the bit rate, in case of problems you can still use Telnet from another computer in your Wifi to login and reset the module. I've added this information to my website, as it was recently pointed out to me by the author of the SLIP firmware.

iggydrougge wrote:Another way to ensure higher speeds (and avoid packet loss even at lower speeds) would be if the firmware supported hardware handshake (RTS/CTS). Mind you, the 5V Arduino support PCB recommended does not support any other lines than RX and TX, but they could easily be extracted from two GPIO pins and the MAX232 used has two unused channels that may be used for handshaking.

While the ESP8266 micro-controller has hardware flow control for its UART, the corresponding GPIOs are not available on the ESP-01 board that I use. Hence I could not test such a firmware. And I don't like publishing untested stuff.

May have posted this sometime back, excuse if it's duplicate.I have a SonicView SV8000 Satellite receiver. It only has a serial port to communicate with external ISPs to do what it does ( ). There's a device called Wizznet which converts serial to TCIP, is easily flashed (standalone or over the network (even if an incorrect setting is made, my Asus router ID's it by MAC address and port). It works great on the receiver, will work with both static and DHCP IP.As I read through this thread, it looks like there may be communication issues on the software side. I'm not clear on that (yet). It sets behind the router on a wireless sub router. There are different versions, might even be a wireless version, haven't looked. Price wise, it's more expensive than home brew, kind of the topic of the thread.

czietz wrote:Note that if you make sure that the module connects to your Wifi network before you change the bit rate, in case of problems you can still use Telnet from another computer in your Wifi to login and reset the module. I've added this information to my website, as it was recently pointed out to me by the author of the SLIP firmware.

How come I never thought of that!

czietz wrote:While the ESP8266 micro-controller has hardware flow control for its UART, the corresponding GPIOs are not available on the ESP-01 board that I use. Hence I could not test such a firmware. And I don't like publishing untested stuff.

I shouldn't have written "easily", obviously. We probably have the same ESP-01 module, though I also have a NodeMCU board laying around. That one has lots of I/O pins and might even run without the Arduino support board since it's got its own 5 V regulator.

iggydrougge wrote:I've only run it at 19200 bps so far. There is a certain danger in upping the serial speed too far since you won't be able to login to set it back otherwise. Well, I would because I have all manners of hardware, but other users wouldn't. It would be nice if the firmware supported setting the speed without saving it to flash, since that way you could try it out before commiting.

(I do have a MegaSTE, but I gather that it's only some of the ports that can handle higher speeds?)

Another way to ensure higher speeds (and avoid packet loss even at lower speeds) would be if the firmware supported hardware handshake (RTS/CTS). Mind you, the 5V Arduino support PCB recommended does not support any other lines than RX and TX, but they could easily be extracted from two GPIO pins and the MAX232 used has two unused channels that may be used for handshaking.

I also believe the MAX232 got a max rated speed of about 500kbit, the ESP about 4mbit. Another solution than the max might be needed to get the maximum speed out of this, but anything 115200 and up is still very much useable imho.

iggydrougge wrote:If the firmware could be upgraded to support CSLIP, a bit more performance could be squeezed out.

Since the firmware uses lwIP as its network stack, that would require CSLIP support in lwIP, which isn't in there. And my knowledge of network protocols isn't so extensive that I could easily add this. Note that CSLIP requires you too keep track of every open TCP connection to compress the packet headers. Unfortunately that's nothing that can be quickly patched into existing code.

I just found out that lwIP does support PPP, both in client and server mode. According to what I remember from the 90s, this should give a performance boost equal to CSLIP.

iggydrougge wrote:I just found out that lwIP does support PPP, both in client and server mode. According to what I remember from the 90s, this should give a performance boost equal to CSLIP.

The lwIP port for the ESP8266 doesn't include PPP, though. Any volunteers, feel free to add it, assuming it will even fit into the very limited amount of RAM available on the ESP8266. I'm happy with SLIP.

iggydrougge wrote:I shouldn't have written "easily", obviously. We probably have the same ESP-01 module, though I also have a NodeMCU board laying around. That one has lots of I/O pins and might even run without the Arduino support board since it's got its own 5 V regulator.

I have just ordered another ESP8266-based module that has the required IOs for RTS/CTS. So I might do a firmware with hardware flow control in the future. It will be some weeks though until the module even arrives.

Double check that the serial level shifter (MAX....) is wired correctly. (Or did you program the ESP via the same level shifter? Then it should be OK.)

As stated, the firmware will default to 19200 bit/s. Did you set your Falcon's serial port accordingly?

PS: 192.168.240.1 is the address you need to use for TELNETing to the module, 192.168.240.2 is in the config file because it will be the IP address of the Atari.PPS: After the module has booted (maximum some seconds) there should be no more traffic on the serial link -- unless of course you're receiving data that you requested. If you see constant traffic without sending data to the module, there's something wrong.

This repetitive, seemingly binary data could mean that the module is crashing and thus constantly rebooting. The ESP8266 will output its boot messages at the slightly unusual baudrate of 74880 bit/s. I don't know if the Falcon can be set to this, but if you connect the module to your PC again and use a terminal program there, you'll be able to see the (clear text) boot messages. They should give more information what's happening.

Thanks for the feedback. I shall add a note to the description on my website.

Usually ESP-01 modules come pre-programmed with some firmware, e.g. the default AT command firmware, so flashing the esp_init_data_default.bin is not necessary before flashing the SLIP router firmware. But it seems your module needed this.

czietz wrote:Thanks for the feedback. I shall add a note to the description on my website.

Usually ESP-01 modules come pre-programmed with some firmware, e.g. the default AT command firmware, so flashing the esp_init_data_default.bin is not necessary before flashing the SLIP router firmware. But it seems your module needed this.

czietz wrote:I have just ordered another ESP8266-based module that has the required IOs for RTS/CTS. So I might do a firmware with hardware flow control in the future. It will be some weeks though until the module even arrives.

Just a short update: This is not forgotten -- although I'm currently busy with another Atari-related project. The module has of course arrived in the meantime; however it turned out not to be totally easy to add RTS/CTS flow control. The RTS pin of the ES8266 has another function during boot and it has to be kept on a specific logic level until the firmware has booted. Thus, I might have to come up with a clever circuit that only connects RTS to the Atari (via the RS232 level shifter, of course) after booting... I will have to experiment a bit.

OK, I have a prototype of the WiFi-to-SLIP router including RTS/CTS flow control on my breadboard and I have built a firmware that supports flow control. I tested this on a TT with different serial bit rates and it is working. Using STinG I can connect to the Internet.

Depending on whether there is even still interest here, I might draw the schematic or even make a PCB...