Homebrew Wifi modem for CMM2

Below are instructions for connecting inexpensive and commonly available NodeMCU-type modules to the Colour Maximite 2 for use as a Wifi modem.


  1. Flashing. Use Arduino IDE to install firmware onto the module before you connect it to the CMM2. Connect the Hiletgo module to your computer, taking note of the COM port that is assigned by the operating system. Open the zimodem.ino file in the folder containing the Zimodem firmware you downloaded. Set the proper COM port that matches the Hiletgo module in Arduino IDE. Select Generic ESP8266 as the board type. You may need to install extra libraries to have the ESP8266 boards as an option. You can search for libraries in Arduino IDE to find the ESP libraries needed.

  2. After flashing the firmware is completed successfully, disconnect the Hiletgo module from USB connection. Now connect the module to your Colour Maximite 2 using the photos shown below. The colors of the wires are not important but the connection pins are critical to avoid damage to your CMM2 and Hiletgo module. It’s important to run the Hiletgo module off of the 5V bus of the CMM2 (and only the CMM2, do not leave it plugged into USB on the HiLetgo at the same time as the CMM2) because the 3.3V bus of CMM2 does not provide much power to reliably run the module. See the photo below of the CMM2 GPIO pinout. On the HiLetgo module, connect the pin labelled Vin to either pin 2 or 4 (5.0 Volt Power) on the CMM2. Connect the GND pin next to Vin on the HiLetgo module to pin 6 on the CMM2. Connect the RX pin on HiLetgo to pin 8 on the CMM2. Connect the TX pin on HiLetgo to pin 10 on the CMM2.

  1. Software. Power on the CMM2, launch Maxiterm using COM 1, 115200 (or whatever Baud rate the HiLetgo is set for if you changed that in the Zimodem code), and TTL Serial COM type. If it’s working then you should see the startup information from the HiLetgo module after it sends the initialization strings.

  2. Assuming you have the Baud rate matching between Maxiterm and the HiLetgo module, you might have an issue where the HiLetgo module is expecting Flow Control signals like RTS/CTS but those aren’t connected. The command to disable that is AT&K0. If the module responds to AT commands and is interactive when you aren’t connected to a BBS, but doesn’t respond when you are connected then it’s likely a Flow Control issue. AT&K0 should fix it, but you can also try AT&K1 and AT&K2 and higher numbers to see if that changes anything. Also try AT&F to perform a factory reset and see if that helps. But it should work on first try with stock firmware settings.

  3. You should be finished at this point and have the module responding to AT commands. Just dial ATDT or ATD then the hostname to call BBSs. Good luck!