You can connect up to 5 WiFi throttles. For the standard Mega board, we recommend the Conductor-Friendly Makerfabs WiFi shield below. Keep in mind you can also purchase a Mega+WiFi board online that has both a Mega clone and an ESP8266 built onto the same board. However, you will have to upload new firmware to that board, so that would be a Tinkerer option. See the Mega+WiFi page
For more information on how to configure your CS to use the boards below, see Wifi Setup
Mega+WiFi Configuration. (this link will take you to another page)
This is NOT to make a connection to JMRI. Use a USB cable instead. The WiFi and Ethernet solutions are designed to allow throttles to connect directly to the DCC-EX CS without the need for any other software such as JMRI. While using a WiFi/Ethernet connection to JMRI will work, the overhead required internally will slow performance, take up valuable system memory, and prevent broadcast messages for sensors and power state.
Makerfabs WiFi Shield¶
Duinopeak WiFi Shield¶
You will need an ESP-01s to plug into this board. This is just an expansion shield board. It allows you to plug an ESP8266 onto an Arduino with no jumper wires. This board also has a voltage regulator, level shifters and a reset button for programming.
See the ESP-01S in the next section below that must be installed on this board
You can use this board stand-alone with jumpers, or use the Duinopeak ESP-8266 Wifi Expansion Board above and plug this board into it.
There are also other boards that require jumper wires (they are not shields) but they work great and provide a voltage regulator to take 5V and convert it to the 3.3V these boards need. They also have level shifters to offer more protection by converting the 5V from the Arduino Tx pin to 3.3V and convert the Tx pin on the ESP8266 from 3.3V to 5V which offers a little more certainty that the signal is read properly. It is better to power the board from the 5V output of the Arduino because it can deliver more current than the 3.3V regulator on the Arduino.
Buy the one that looks like this:
We have used the ones that look like the one below just as well, but you have to make sure to wire power to 3.3V NOT 5V and there is no voltage regulation and NO LEVEL SHIFTERS. The GPIO pins on the ESP8266 appear to be 5V tolerant, but there is not guarantee it won’t shorten its life to have a 5V signal on the Tx pin. Several testt versions are running fine like this after a year, but if you are going to buy a board to stick this into instead of wiring it directly, then why not buy one with the extra circuitry?
AKA: Uno R3 Mega Esp8266 Serial Wifi Shield / ESP-12E Board
Tinkerer to Engineer Level
This board has many names, the easiest way to identify it is by the red dipswitch bank. Then zoom in on the pictures you see on the supplier site and look for “WangTongze” on the board. They may blur it out. DO NOT buy this board unless you know you are getting a genuine WangTongze board! If you get a “good” board, it will work perfectly, if you get a bad clone, it won’t work without employing workarounds. A genuine Wangtongze has no misspellings.
One board has “shield” spelled incorrectly as “shiald”. The “shiald” version works, but some say it has an unreliable WiFi connection.
There is another version where the “more” in “more info” is spelled “moer” and “Arduino” is spelled “Arbuino”. This board has the wrong transistors soldered onto it in the level shifter circuit. Get out your cell phone, take a picture of your board and zoom in on the section of the board you see here:
If these 2 transistors are labelled “JIY” you are lucky and the board with work with no modifications. If they are labelled “J3Y”, you have two choices to get this to work:
Tinkerer way - You could bypass the header connections and use jumpers to wire directly to the debug pins of the ESP8266, but that bypasses the Tx/Rx level shifters. The ESP8266 Tx/Rx pins are 5V tolerant, but it is always best if you can to shift 5V from the Arduino to 3.3V. You could also make a small 2 resistor voltage divider to connect to the debug header Rx pin. The Tx pin to the Arduino will be fine as is.
And here is a voltage divider with just two resistors you can use as a signal level shifter circuit:
Engineer way - You can buy the correct surface mount transistors and replace two of them using a magnifier as we did when we had nothing better to do that day, but that’s a lot of trouble to go through unless this is the only board you can find. If they are labelled “J3Y”, you can order “J1Y” replacements, remove the old ones, and solder in the new ones. This is a job for a skilled solderer.
The bottom line is that we don’t recommend this board because you would have to be very careful and know which one you are buying. That said, we can provide more information on these boards if you have one and want to get it to work.
Here is a link to the Video and info from Wang Tongze himself
Sparkfun Thing Plus (ESP32)¶
This is a very powerful board in its own right. It almost seems a shame to use it just for WiFi, though with custom firmware, it could handle WiFi duty and a lot more. The advantage of this board is it has a connector for an external antenna. The board is relatively expensive, but Sparkfun has quality products and top notch support. Detailed installation instructions can be found at: https://docs.espressif.com/projects/esp-at/en/latest/Get_Started/index.html
ESP32_Ant-01 Breakout and Development Board (ESP32)¶
Like the Sparkfun board, this board is a very powerful board in its own right. It almost seems a shame to use it just for WiFi, though with custom firmware, it could handle WiFi duty and a lot more. The advantage of this board is it has a connector for an external antenna. It is half the price of the Sparkfun board and comes with an antenna. Detailed instructions on intallation can be found at: https://docs.espressif.com/projects/esp-at/en/latest/Get_Started/index.html