Monday, 17 April 2017

Installing Eclipse for Arduino

Eclipse is a more fully featured IDE (Integrated Development Environment.) There is a version available, called Sloeber, that includes support for the Arduino and some IoT (Internet of Things) boards, like the ESP8266.

This is likely to be an odd post because I am typed it as I went to remind myself what I have tried and what failed or worked.

The Arduino IDE is very easy to install, very easy to add the ESP8266 to it and it works reliably. I'm only looking for a couple of extra features. It already has some syntax highlighting but I want the full set of auto-complete and call-tips. The latter being where it shows the method parameters, as you type, so you don't have to keep looking up the library documentation on another screen!

I've used Eclipse before and know it has the features I want and more but I could not remember exactly what I thought about it. Having now tried it again, I remember it has lots of good ideas but, in my opinion, it is not as reliable or user friendly as Microsoft Visual Studio.

Now for the down side. Like many, if not most, of the IDE's I've tried to install, it is a pain. Why can't the people who are clever enough to write such a complex application, manage to sort out a reliable install process.

First the easy bit you need to get the package:
You will need something like 7Zip to uncompress it from the Gzip format tar file!
I chose the 64bit version but with hind sight, perhaps the 32 bit version would have been easier.
Get the latest version. It includes support not only for the Arduino but also the ESP8266 boards.

You'll need Java for it to run and it must be the same as the Eclipse download 32 or 64 bit:

Be careful where you plan to install Eclipse. Install is the wrong word. It just runs from wherever it is but on first run it sets up lots of things that then only work from that location.

I could not get it to work properly in C:\Program Files\. I believe it does not like the spaces! In fact it is listed as a known issue for version 4.
I found that out the hard way and had to unpack it a couple of times before I was happy with where it was.
I eventually extracted it and ran it from C:\Local\EclipseArduino\

Eclipse needs a working folder where it will store all your projects. Again, avoid spaces in the path names, just to be sure.
I used C:\Local\Eclipse\ for the working folder.

Once it starts you need to set a couple of folders. These are mainly for my particular setup because I have a server and my Documents folder is redirected. Something Eclipse also does not understand properly!

Windows -> Preferences -> Arduino
I used C:\Local\Arduino\libraries\ for the Arduino library folder.
I used C:\Local\Arduino\hardware\ for the Arduino hardware folder.

ESP8266 boards are listed by the latest version of Eclipse for Arduino. Like all of the board choices, they are not installed by default. You need to select them from a list and Apply the change.

Windows - Preferences
- Arduino -> Platforms and Boards
- - Expand the tree until you get to the ESP8266, version 2.3.0, tick that.
Add ESP8266 in the available boards
It will then install the files needed for the boards selected.

With my Internet connection they took a few minutes to download.

Hopefully at this stage you are ready for your first project.

It remembers your choices after the first project is created, so you only need to enter the following the first time or probably each time you change project type.

File - New - Project

When starting a new project, select the platform for ESP8266

The board has to be connected to be able to select the COM port

I could now code with tool tips to show the full syntax of the methods. I could compile separately from deploy and I could upload to the ESP8266.

I was not able to move the project or the application after it has been run the first time. It hard codes some paths in to some of the \.settings\ files in to the project and got in a muddle if I moved anything on the disk. I tried to manually edit them to fix it but that did not work. Eventually I had to create a new project and copy back in the code!

This is going to be a problem for me because I work on multiple machines. I assume it would also be a problem for teams. The project files do not appear to be portable.

The resulting code is fine and can be opened by the Arduino IDE, so no work is lost but the benefit of an easier to use faster development tool, is lost!

I'm going to investigate alternative IDE's or see if anyone has added call-tips to the Arduino IDE.

No comments :