Hermes

Hermes is a fork of The Old Net - RS232 Serial WIFI Modem by Richard Bettridge, a Hayes-compatible Wi-Fi modem emulator that runs on the ESP8266 microcontroller within your Protea development board. Named after the Greek messenger god who bridged the divine and mortal realms, Hermes provides seamless connectivity between vintage computing hardware and the modern internet, enabling classic computers to access online resources without any special software or network configuration. Hermes operates exactly like the dial-up modems of yesteryear, responding to standard AT commands that any vintage terminal program recognizes. Your classic computer doesn’t know it’s connecting to the internet - it simply sees a familiar Hayes-compatible modem. From your vintage computer’s perspective, you’re using a regular phone modem. The complexity of Wi-Fi, TCP/IP, and internet protocols is completely hidden - you just “dial” IP addresses instead of phone numbers.
Version
1.00
FirmwareDownload
Source CodeRepository
LicenseGPL v3

Unlike modern networking solutions that require drivers, network stacks, or special software, Hermes works with any terminal program from the 1980s onwards. Simply use the same communication software you’ve always used. Connect your vintage computers to modern BBS systems, telnet services, and online communities. Access text-mode internet resources, participate in retro computing networks, and explore the digital world exactly as computing pioneers did decades ago.

Windows Installation and Setup

Prerequisites: Protea development board, USB-C cable for programming, computer USB flash drive support (Windows), latest Hermes firmware file (.bin format).

Step 1: Install Python

Download Python from python.org. During installation, check “Add Python to PATH”. Verify installation by opening Command Prompt and typing: python --version.

Step 2: Install esptool.py

Open Command Prompt as Administrator. Install esptool using pip: pip install esptool. Then, verify installation: esptool.py version.

Step 3: Install USB Drivers (if needed)

If USB to Serial chip is not detected by your Windows system, you will need to find CH340 drivers or follow the tutorial on Sparkfun, for example.

Step 4: Identify COM Port

Connect Protea board via USB-C and Open Device Manager ("Win + X" → Device Manager). Look under “Ports (COM & LPT)” for your ESP8266 device. Note the COM port (e.g., COM3, COM7).

Step 5: Flash Hermes Firmware

Put ESP8266 into download mode by holding the "ESP BOOT" button while connecting USB. Open Command Prompt in the directory containing your firmware file and run the flash command (replace "COM3" with your actual COM port): esptool.py --chip esp8266 --port COM3 --baud 460800 --before default_reset --after hard_reset write_flash --flash_mode dio --flash_size detect 0x0 firmware.bin

macOS Installation and Setup

Prerequisites: Protea development board, USB-C cable for programming, computer USB flash drive support (macOS), latest Hermes firmware file (.bin format).

Step 1: Install Homebrew (if not installed)

Open Terminal and install Homebrew by running: /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)". Follow the on-screen instructions to complete the installation.

Step 2: Install esptool via Homebrew

Install esptool directly: brew install esptool. Verify installation by running: esptool.py version.

Step 3: Install USB Drivers (if needed)

If USB to Serial chip is not detected by your macOS system, you will need to find CH340 drivers or follow the tutorial on Sparkfun, for example.

Step 4: Identify COM Port

Connect Protea board via USB-C. In Terminal, run: ls /dev/cu.*. Look for ports like "/dev/cu.usbserial-*" or similar. You can also use esptool to auto-detect: esptool.py flash_id.

Step 5: Flash Hermes Firmware

Put ESP8266 into download mode by holding the "ESP BOOT" button while connecting USB. Navigate to firmware directory in Terminal and run flash command: esptool.py --chip esp8266 --port /dev/cu.usbserial-0001 --baud 460800 --before default_reset --after hard_reset write_flash --flash_mode dio --flash_size detect 0x0 firmware.bin (replace with your actual port if needed).

Linux Installation and Setup

Prerequisites: Protea development board, USB-C cable for programming, computer USB flash drive support (Linux), latest Hermes firmware file (.bin format).

Step 1: Install Python and Dependencies

Most Linux distributions include Python 3. Verify with: python3 --version. If not installed, use your package manager (e.g., sudo apt install python3 for Debian/Ubuntu). Install pip if not present: sudo apt install python3-pip (for Debian/Ubuntu; adjust for your distribution).

Step 2: Install esptool.py

Install esptool: pip3 install esptool. Verify installation: esptool.py version. If you encounter permission issues, try running with sudo or adjust permissions on the esptool script.

Step 3: Set User Permissions

Add your user to the dialout group: sudo usermod -a -G dialout $USER. This allows access to serial ports without root privileges. Log out and back in for changes to take effect.

Step 4: Identify COM Port

Connect Protea board via USB-C. Monitor connection with: journalctl --follow or check available ports with: ls /dev/ttyUSB* or ls /dev/ttyACM*. Look for ports like "/dev/ttyUSB0" or similar. Common ports are "/dev/ttyUSB0" or "/dev/ttyACM0".

Step 5: Flash Hermes Firmware

Put ESP8266 into download mode by holding the "ESP BOOT" button while connecting USB. Navigate to firmware directory in Terminal and run flash command: esptool.py --chip esp8266 --port /dev/ttyUSB0 --baud 460800 --before default_reset --after hard_reset write_flash --flash_mode dio --flash_size detect 0x0 firmware.bin (replace with your actual port if needed).