0

IDE (Intergrated Development Environment) for MRMS ESP32: Arduino, IMU, eFuse, BT, WiFi, CAN Bus (mrm-esp32)

Prerequisites

If not already done so already, install Arduino software and make basic connections, as described in page for MRMS ESP32: Arduino, IMU, eFuse, BT, WiFi, CAN Bus (mrm-esp32).

Task

It will be the best to have a free and powerful IDE (Integrated Development Environment) for this board. These objectives are not easy to achieve but we can get close to the ideal solution.

Arduino IDE

Arduino IDE, found in https://www.arduino.cc, is an obvious choice, developed by authors of the original Arduino board. It works well for Arduino compatible boards, like ESP32, as well. It is a freeware, easy to set, has an USB console (monitor) that works fine. There are downsides, too: there is no much help in typing code, nothing like Microsoft's excellent IntelliSense, which completes the words as you type them, no jumps to functions by Cntrl-cliking the name, no TAB-shifting or commenting blocks of code, no going back to the place where of Your last edit, etc. Programming is not efficient. If You used to work with an IDE like Visual Studio or Eclipse, You will be disappointed.

Microsoft Visual Studio

This may be the best IDE in the world at the moment. However, it doesn't work with Arduino boards, unless You install Visual Micro, which used to be free, but is no more. It is not expensive, but if we like to have a freeware very much, there is a way around. Install an old version of Visual Micro, from the time it was freeware. Visual Micro will keep on warning You that You use out of date software, but do not care about the warnings. The old program works just fine. After some time of the use, the warning pop-up will increase it aggressiveness. Intentionally or not, it will disable serial console in Visual Studio, which had some issues anyway. This obstacle can also be avoided. Read the next paragraph.

Serial console

This program enables communication with Your board through serial USB cable. A chip in ESP32 board transcodes USB to UART and reaches the ESP32 chip. The result is that You can type the text in Your PC console, and ESP32 will receive it in its UART port. The other direction also works. Arduino IDE has a console built in; a small button in the top right corner. Visual Micro has one in Visual Studio, too. Be careful not to leave it open in one IDE and try to upload the program in the other because access will be denied.

Your choice is not limited to these to consoles. You can use one in Your mobile phone, but also some other in Your PC. One of the oldest solutions is PuTTY and it is still quite fine. So, if Visual Studio cannot use console because Visual Micro is not updated, You will still be able to use PuTTY. Just be sure to close it every time You upload the program using Visual Studio. It is a little annoying, but we think that efficient programming is worth this trade off.

Download and install PuTTY, choose "Serial" radio input in the main screen, choose Your COM port (MRMS ESP32: Arduino, IMU, eFuse, BT, WiFi, CAN Bus (mrm-esp32) will show You how to list COM ports), and speed (115200 is a good choice). Enter a name in "Saved Sessions" and click on "Save". We think that it is the best of the 3 consoles because You do not have to select an input box each time You want to type something. You do not even have to hit Enter or Send, if You use ML-R program for ESP32. It will always recognize Your command after You type 3 letters.