ESP8266-based WiFi serial modem emulator ROM
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

README: Add installation instructions for the WiModem232

+89
+89
README.md
··· 1 + ## WiFiPPP 2 + 3 + Yet another ESP8266-based WiFi serial modem emulator ROM featuring a Hayes 4 + AT-style command interface that emulates a serial modem and allows old hardware 5 + to "dial" telnet addresses rather than phone numbers. 6 + 7 + It also includes a built-in PPP server that routes through the WiFi interface, 8 + reachable with `ATDT PPP`. 9 + Inside the PPP connection is a SOCKS5 proxy that can strip TLS from common 10 + services like HTTPS and IMAPS, allowing old hardware to talk to modern, secure 11 + services without needing to do any TLS. 12 + 13 + ### WiModem232 14 + 15 + WiFiPPP currently targets the 16 + [WiModem232](https://www.cbmstuff.com/index.php?route=product/category&path=59_66) 17 + hardware, which includes: 18 + 19 + - ESP8266-12F WiFi module 20 + - (Optional) I2C-based 21 + [SSD1306 monochrome OLED](https://amzn.to/3zs39OL) 22 + (with blue and yellow sections) 23 + - [NeoPixel 5050 multi-color LED](https://www.adafruit.com/product/1655) 24 + with an integrated WS2811 controller 25 + 26 + ### Installation 27 + 28 + For the WiModem232, installation will replace the factory ROM image, though no 29 + hardware modification is needed. 30 + The device can be revered back to stock by just flashing the 31 + [factory ROM](http://www.cbmstuff.com/updates/wimodem232_V2_update.bin) 32 + again. 33 + 34 + This manual installation will only be required once, since future updates can 35 + use the built-in `AT$UPDATE` command to do an over-the-air update over WiFi. 36 + 37 + First, clone this Git repo and compile the WiFiPPP ROM. 38 + 39 + $ git clone --recursive https://github.com/jcs/WiFiPPP 40 + [...] 41 + $ cd WiFiPPP 42 + WiFiPPP$ gmake 43 + 44 + On the back side of the WiModem232 (with the USB port facing down) are 5 45 + vertical sockets. 46 + From top to bottom, these are: 47 + 48 + 1. GPIO0 (to enter bootloader) 49 + 2. TX 50 + 3. RX 51 + 4. 3.3v VCC 52 + 5. GND 53 + 54 + Connect a 55 + [4- or 5- pin USB TTL serial cable](https://amzn.to/3kxsssl) 56 + to the bottom 4 sockets. 57 + It is recommended to use a breadboard so the 3.3V VCC and GND pins can be 58 + connected to the breadboard's `+` and `-` rails, and then connect wires from 59 + those rails to the sockets on the WiModem232. 60 + 61 + Connect a jumper wire between the top port (GPIO0) port and the GND rail. 62 + 63 + Connect another jumper wire to the GND rail which will be used to reset the 64 + ESP8266. 65 + 66 + Run `gmake install` to launch `esptool` and prepare to flash the WiFiPPP ROM 67 + through the USB TTL cable. 68 + 69 + Touch the jumper wire from the GND rail to the RST pin on the ESP8266, which is 70 + the bottom-most pin along the right-hand side. 71 + The blue LED will flash briefly, and if the GPIO0 socket is correctly connected 72 + through your other jumper wire to GND, the ESP8266 will reboot to the 73 + bootloader. 74 + 75 + `esptool` should see this and start uploading the ROM automatically. 76 + 77 + After flashing, disconnect the GPIO0 jumper wire or else it will reboot into 78 + bootloader again. 79 + Touch the RST pin again and the device should boot and show WiFiPPP on the OLED 80 + screen (if your model has one). 81 + 82 + In a serial terminal connected to your USB TTL device at any baud rate, you 83 + should see some junk from the bootloader after rebooting. 84 + Hit enter and type `AT` and it should echo back. 85 + 86 + If all is working properly, you can disconnect all of your cables and connect 87 + through the DB25 port (but not at the same time). 88 + You'll need to re-establish your WiFi settings since the EEPROM layout from 89 + WiFiPPP is not compatible with the factory WiModem232 settings.