Connection experiment successfully completed ZX Spectrum To Telnet-BBS via the network Internet. Computer used ZXM Phoenix r.4, which has a built-in serial port. Any Spectrum-compatible computer equipped with a serial port supported by the program can be used Melon Terminal.
To connect a computer to the Internet, a simple experimental device based on a microcomputer has been assembled Arduino, which acts as a bidirectional information converter between the ZX Spectrum serial port and the Internet server running Telnet BBS.
The device includes: a homemade board with an Arduino Pro Mini microcomputer (based on the Atmega328 microcontroller), a homemade TTL-RS232 adapter board (based on the MAX232A chip), an Ethernet adapter board (Ethernet-shield based on the Wiznet W5100 chip).
https://www.arduino.cc/en/Main/ArduinoEthernetShield
The components are cheap and available on Aliexpress.
All three boards are connected in a stack with standard connectors. The Ethernet adapter operates via SPI and uses pins 10, 11, 12, 13, and the last three should only be taken from the ISCP connector. The TTL-RS232 adapter board only uses RX/TX pins. The design would look much simpler if you used an Arduino Uno R3 and a cable with a USB-RS232 converter, or even simpler if you used a Freeduino MaxSerial board, which already has a COM port. With these boards, you don't need to solder anything. However, for the experiments, it was the Arduino Pro Mini board that was at hand, and after assembly I had to throw in three wires to connect to the Ethernet adapter via SPI. To program the Pro Mini, a USB programmer on the CP2104 chip was used. On a UNO board, a conflict between two RS232 adapters on one UART is inevitable.
A simple program with a Telnet client has been written for the Arduino Pro Mini microcomputer, which selects a Telnet BBS number, exchanges information via a serial port, and connects to the Telnet BBS server via port 23. To operate the Ethernet Shield board, a ready-made Ethernet library is used, a detailed description of which is located at : https://www.arduino.cc/en/Reference/Ethernet. It should be noted that the library has various classes, supports TCP/IP, UDP, DHCP, DNS, HTTP requests, etc.
ZXM Phoenix runs Melon Terminal 1.9a. The computer plays the role of an intelligent terminal. The ZX Spectrum is connected by a null modem cable to the TTL-RS232 adapter board, and the Ethernet adapter board is connected by a network cable to the switch (hub). It should be noted that the Ethernet adapter on the W5100 chip does not work with some D-Link switches, and there are no problems with ZyXEL switches.

The Melon Terminal program starts on the computer. The speeds of the COM ports in the program and Arduino must match, otherwise a set of characters may be displayed instead of messages. To configure the Melon Terminal program, you should hold down the Shift key during startup so that after loading you can immediately get to the settings menu. Otherwise the program may freeze. In the settings menu, select the interface type that matches the hardware configuration of the serial port. For ZXMC - a serial port with Kondratieff addressing, for the SMUC adapter - set “SMUC” accordingly. The COM port speed should be changed using the Ctrl+6 keys. Exit the settings menu – Ctrl+Space. Reentering the menu – Ctrl+Shift.
After completing the settings, you should turn on the Arduino, after which a message about connecting to the Arduino will be displayed and a proposal to select a specific Telnet BBS server. After selection, the device searches for a server and tries to connect to it via the Internet. If the connection is successful, a corresponding message is displayed and the Telnet BBS prompt appears. Well, then - the usual work with BBS, as was done during the Maximus and Terminate programs, which many Spectrumists remember well. The text does not fit on the entire screen of the terminal program, but when registering on a BBS, you can choose the type of interface.
In this case, the connection is made with a Telnet BBS running the Synchronet BBS package. Information on this package and a list of Telnet BBS are located at: