Notifications
Clear all

Any Experience with Installation of Heltec ESP 32 Development Boards???

23 Posts
2 Users
0 Likes
2,478 Views
(@farzad_k)
Member
Joined: 3 years ago
Posts: 75
Topic starter  

Hello.

I have been trying to get one of those ESP microcontrollers installed under Arduino IDE and have not been successful. The board in particular is this one and I have followed all the procedures indicated in their instructions, installed the right USB driver, libraries, boards, etc., and Arduino is just not seeing anything attached to the COM port that becomes available after the driver is installed.

I have verified that the board tries to communicate with my two PCs and one Mac, but it looks like Arduino is not picking up the calls and the boards attempts to make connection fails.

Through experimentation I have eliminated all possibilities that I could think of, including cable and cable quality. When I connect my Leonardo to the USB port it is immediately recognized by the PC as a Leonardo and Arduino will know it is a Leonardo that is attached to the COM port of my choosing. When I connect the ESP32 microcontroller, in Windows the driver for it is assigned to a COM port, the COM port becomes available in Arduino without a device name associated with it (unlike when Leonardo is attached), and after selecting the proper board Arduino announces on the bottom right corner that none has been found on the COM port.

Since I know I have installed the right USB driver, and since I know Phython and Pyserial also have been properly installed, I am at a loss as to what the issue might be. I don't think it has anything to do with the microcontroller itself because I can see it is trying to communicate, and I don't think it is Arduino IDE because all that need to be installed is installed. I have also ruled out the hardware by trying it on multiple computers.

I would appreciate any information about success and failures with getting Arduino to notice this or similar ESP2 microcontroller on Windows 10 or even a Mac.

 

Farzad

 

 

 

 

 

 

 

 

 

This topic was modified 3 years ago by Farzad_k

   
Quote
Topic Tags
byron
(@byron)
No Title
Joined: 5 years ago
Posts: 1121
 

@farzad_k 

I have not had any experience with Heltec ESP 32 boards, but from the link I give you below they appear to have their own arduino board manager.  I expect you may have been following these instructions anyway, but just in case here is a link 

https://heltec-automation-docs.readthedocs.io/en/latest/esp32/quick_start.html


   
ReplyQuote
(@farzad_k)
Member
Joined: 3 years ago
Posts: 75
Topic starter  

@byron Yes, I have seen that link, thanks.

 

The problem is with recognition of the device once connected to the PC. I have installed all the drivers and unlike when I attach a Leonardo to my PC and it gets recognized by the OS (can verify in Device Config), when I attach this device, the PC simply recognizes a driver associated with the device on a COM port but it doesn't say what it is - it seems to have no identity. And when I go to Arduino and setup a board with an explicit name, that board is obviously not seen at the port because the device at the port has no identity.

It is mind boggling 🙂

 

 

 

 


   
ReplyQuote
byron
(@byron)
No Title
Joined: 5 years ago
Posts: 1121
 

@farzad_k

It maybe to do with your windows or mac computer not having the correct driver for whatever serial chip is found on your board.  These different ESP 8266 and ESP 32 boards from various manufacturers do come with various different chips and sometimes you need to install the correct driver.

Heres yet another link for you to peruse 😎 

https://docs.espressif.com/projects/esp-idf/en/latest/esp32/get-started/establish-serial-connection.html


   
ReplyQuote
(@farzad_k)
Member
Joined: 3 years ago
Posts: 75
Topic starter  

@byron That is a good suspicion, but they all do have the driver that the instructions consider to be the right driver. The test for it is that when the device is attached the operating system automatically assigns a port to it and associates the right driver to the device. Yes, the CP210, as the link says, is the right driver and it is by Silicon Lab. Unfortunately the only thing I can think of is that the driver(s) may not be functioning properly, but so many other users are able to get the microcontroller recognized without effort that I can't help but suspect a hardware issue, but then I have tried it on two PC's and one Mac with the same exact result.


   
ReplyQuote
(@farzad_k)
Member
Joined: 3 years ago
Posts: 75
Topic starter  

There are just too many sources of installation instructions out there with the manufacturer having as little as they can to do with it. Operating/programming the board is one thing, but installation of it should not be this problematic. I miss the days when hardware came with an installation media. More and more manufacturers/sellers are relying on the community to work towards issue resolution.


   
ReplyQuote
byron
(@byron)
No Title
Joined: 5 years ago
Posts: 1121
 

@farzad_k

As you have tried to connect your board to the Arduino IDE on both your PC and Mac, then the following probably is not relevant.

Yesterday I was playing with some ESP8266 boards to have them run micropython. (to enable them to be the wifi connection for some rpi pico boards also running micorpython).  In this process, a couple of times, when reconnecting the ESP board to my mac the connection the ESP8266 board failed utterly.  Something got its knickers in a twist and I had to reboot the mac to get it all connecting again.  So if you haven't already do make sure you start the connections from scratch by powering everything down before you attempt to establish a link.  

But probably you have tried this so I expect you may be nearing the ultimate solution and giving the your ESP board a whack with a hammer 😎 


   
ReplyQuote
(@farzad_k)
Member
Joined: 3 years ago
Posts: 75
Topic starter  

@byron Yes, thanks. I seem to have been able to overwrite the default sketch on the device that repeatedly checks for WiFi, and now an amber light lit on the board and I am not able to get Putty to test a connection to the board. I must have established some kind of connection with the device albeit a detrimental one.

I am giving up on this and looking elsewhere. I wanted this device to work because I could use it as a WiFi access point and also get it to do other things for me while setup at my astronomy gear.

 

Thanks for the suggestions.


   
ReplyQuote
byron
(@byron)
No Title
Joined: 5 years ago
Posts: 1121
 
Posted by: @farzad_k

I am giving up on this and looking elsewhere.

Whoa up there, hold the horses you seem as if you are almost there.  You can upload a sketch to your ESP32 board, but are having difficulty in seeing the output in a serial monitor ?  Your sketch appears to blink some lights, but does it actually output anything to the serial monitor??  The typical blink sketch just blinks the led's.  Does your sketch have any Serial.print statements ?


   
ReplyQuote
(@farzad_k)
Member
Joined: 3 years ago
Posts: 75
Topic starter  
Posted by: @byron
Posted by: @farzad_k

I am giving up on this and looking elsewhere.

Whoa up there, hold the horses you seem as if you are almost there.  You can upload a sketch to your ESP32 board, but are having difficulty in seeing the output in a serial monitor ?  Your sketch appears to blink some lights, but does it actually output anything to the serial monitor??  The typical blink sketch just blinks the led's.  Does your sketch have any Serial.print statements ?

No, that is not the case. The controller comes pre-programmed with a WiFi check sketch and it runs automatically whether communicating with the port or not. Usually a bright white LED and an amber LED are on during that process. What I meant is that during the trial and error process of attempting to upload a sketch to a board that Arduino said was not on the COM7 port, I must have managed to upload something because the controller no longer does the WiFi check look and it only shows the amber light as being on. I cannot upload any sketches to it and Arduino says no board at that com port.

 

 

esp32

   
ReplyQuote
byron
(@byron)
No Title
Joined: 5 years ago
Posts: 1121
 

@farzad_k

I do all my stuff on a mac, so try the following on your mac.  Connect your ESP32 to your mac's usb port.  Then open a terminal session and at the prompt type ls /dev

Up should pop a long list of ports and you will probably have to scroll up.  You should see something like

tty.usbserial-01B97C74 

amounts the very long list.

Then uplug the ESP32 - redo the ls /dev and the port as above should then disappear.  If you can find the port then you should be on a roll. (well first up will be to load a blink sketch before getting too deep 😀 )

If you cant establish a port, then maybe get another board like a TinyPico ESP32 board that will work for you and has plenty of support from its maker 

https://www.tinypico.com


   
ReplyQuote
(@farzad_k)
Member
Joined: 3 years ago
Posts: 75
Topic starter  
Posted by: @byron

@farzad_k

I do all my stuff on a mac, so try the following on your mac.  Connect your ESP32 to your mac's usb port.  Then open a terminal session and at the prompt type ls /dev

Up should pop a long list of ports and you will probably have to scroll up.  You should see something like

tty.usbserial-01B97C74 

amounts the very long list.

Then uplug the ESP32 - redo the ls /dev and the port as above should then disappear.  If you can find the port then you should be on a roll. (well first up will be to load a blink sketch before getting too deep 😀 )

If you cant establish a port, then maybe get another board like a TinyPico ESP32 board that will work for you and has plenty of support from its maker 

https://www.tinypico.com

Thank you. I ran the test you mentioned and indeed when the device is connected I see the port you described. I also see it being available in Arduino: Tools > Port (see attached).

But, I disregarded the notice of the board not being found on the port and uploaded the blink sketch and lo and behold the sketch gets uploaded and the led begins to blink.

 

Thanks a lot. I might also actually try the other board you recommended. Next I need to check if ignoring the statement that the board was not found on the com port is the way to go on windows too.

 

 

image

   
ReplyQuote
(@farzad_k)
Member
Joined: 3 years ago
Posts: 75
Topic starter  
Posted by: @byron

@farzad_k

I do all my stuff on a mac, so try the following on your mac.  Connect your ESP32 to your mac's usb port.  Then open a terminal session and at the prompt type ls /dev

Up should pop a long list of ports and you will probably have to scroll up.  You should see something like

tty.usbserial-01B97C74 

amounts the very long list.

Then uplug the ESP32 - redo the ls /dev and the port as above should then disappear.  If you can find the port then you should be on a roll. (well first up will be to load a blink sketch before getting too deep 😀 )

If you cant establish a port, then maybe get another board like a TinyPico ESP32 board that will work for you and has plenty of support from its maker 

https://www.tinypico.com

So, I tried the board on my PC, ignoring the board announcing it failed to connect as it boots up, and ignoring that Arduino says no such board on the assigned COM port, and I loaded a sample sketch and it also worked there.

What are your thoughts about why Heltec fails to connect when it is first starting up with the  built-in OLED WiFi search program? Why would it fail to connect, and why would Arduino not see it attached yet be able to upload sketches to it?

I looked the TinyPICO and the only reason it won’t work for me is that it doesn’t have WiFi ability. The WiFi ability and the built-in OLED were the two attractive features of the Heltec microcontroller for me because they would work well in my project. The project is a simple voltage controller and it serves as a WiFi access point.

Do you have recommendation for another microcontroller similar to the Heltec?

 

thanks

 

 


   
ReplyQuote
byron
(@byron)
No Title
Joined: 5 years ago
Posts: 1121
 

@farzad_k

Hey you can blink your board - you'r on a roll. 😀.   Next step is maybe to send some messages to your serial monitor.  - Serial.println("Im blinking") etc.  You will need to start the serial comms in your code - Serial.begin(9600) to use the serial at 9600 baud and when you open your serial monitor ensure its communicating at the same baud rate you set in your program

All esp32's and esp8266's are capable of wifi comms (including the TinyPico - but your current uploads programs and blinks so keep going with your board before splashing the cash for another).   You will of course need to put in the appropriate code for wifi to work.  You can start the wifi something like:

WiFi.begin(WLAN_SSID, WLAN_PASS);
while (WiFi.status() != WL_CONNECTED)
{
delay(500);
Serial.print(".");
}

You pass your own SSID and Password for the wifi to connect to your router and it prints a dot to your serial monitor whilst it goes about its business of making the connection.

The above is using the wifi station mode.  If you really need your board to be an Access Point then you can sort that out later down the road.

Posted by: @farzad_k

What are your thoughts about why Heltec fails to connect when it is first starting up with the  built-in OLED WiFi search program

Something wrong with the program loaded to the board, or maybe how you are connecting to it as an Access Point, assuming it is set up as an Access Point ??  I suggest you start off in small steps with your own program and build up your knowledge which will enable you to seen what the existing program is doing.  I hope you have the program that was originally loaded to your board to examine and reload it when ready.

I see you want to read voltage information.  I expect you have, but be sure to read up on how to do this as connecting more than 3.3 volts to an esp32 pin would be the same as a good whack with a hammer.

Finally are you sure you want the wifi in Access mode instead of Station mode.

 


   
ReplyQuote
(@farzad_k)
Member
Joined: 3 years ago
Posts: 75
Topic starter  

@byron My quest is to build a device for my astroimaging work that involves a lot of hardware and devices attached to a telescope that hopefully can be configured to work without a babysitter, all night, in the dark and cold.

Onboard the telescope, a PC is used to run all the applications, and the scope(s) are heated to avoid development of dew. To operate and monitor the work you would need to remote into that onboard PC, which is what I currently do with an independent portable router that is also onboard and it works as an access point.

The onboard PC hooks up to the portable router, I hook up to it with my PC, then I remote into the onboard PC and get things started.

I am also designing a dew heater controller that will sense temperature and humidity and sends voltage to the telescope heater(s) as needed to maintain a temperature above the dew point. I can do this with any ordinary Arduino board and I am currently working on it. But, if the device was also a WiFi access point, then it would double-duty with very low voltage. If the device has its own OLED then I can have a lot of information displayed on it while it is doing its job.

I am not able to execute your suggestions at the moment but I will later today. I did upload a few examples meant for the board, including a WiFi access point example, and none of them powered up the OLED. I was surprised, and haven't had the time yet to look at the code to see if it is coded to do it or if it needs to be coded.

The "connecting...failed" message at the beginning is still puzzling though, and you have a good point, maybe it is failing to connect to something other than the COM port? I will have to look at the code for that routine to see what it is supposed to do. The code is included in the examples.

 

Thanks again.

 

Farzad

 

 

 

This post was modified 3 years ago 3 times by Farzad_k

   
ReplyQuote
Page 1 / 2