🎁📬❄️📦 Holiday Shipping Deadlines are approaching! International customers and domestic ground - get your orders in 12/9/2020 📦❄️📬🎁
0

AirLift not found by UNO; suspect bad board
Moderators: adafruit_support_bill, adafruit

Please be positive and constructive with your questions and comments.

Re: AirLift not found by UNO; suspect bad board

by ewhansen on Mon Oct 05, 2020 3:30 pm

I looked at those suggestions, and it seems they go pretty far down into the weeds, dealing with issues that should be taken care of in the shield design (how resets are asserted to enter bootloader mode, etc). I found another thread in this forum from a couple of years ago, viewtopic.php?f=53&t=168719&start=15 in which it was suggested to put an SD card into the reader and run the CardInfo example sketch. I tried that, making sure to assign the correct pin (4) to the SD reader's SPI chipSelect line, and received an error message,

Initializing SD card...initialization failed. Things to check:
* is a card inserted?
* is your wiring correct?
* did you change the chipSelect pin to match your shield or module?

This suggests that there's actually a SPI problem, since the ESP32 and the SD reader use the same MOSI and MISO lines. Curious, because I'm getting bad behavior on both an UNO and a Metro M0.

Over to you --- as always, thanks for your help.

ewhansen
 
Posts: 21
Joined: Tue Feb 12, 2019 3:18 pm

Re: AirLift not found by UNO; suspect bad board

by mikeysklar on Tue Oct 06, 2020 2:42 pm

Hi ewhansen,

I think we should backup a step from reading off the SD Card and focus on the firmware upgrade because I feel that is the most logical reason for some board working and newer ones you have received not to be functioning.

It looks like you had everything in place to upload with esptool and it would fail to upload the NINA_W102-1.6.1.bin.

Did you solder the following pads on the bottom?

https://learn.adafruit.com/adafruit-air ... t-firmware

Make sure to solder all three of these pads together. You will not be able to upload firmware to your ESP32 if they are not connected.


pads.png
pads.png (242.38 KiB) Viewed 25 times

mikeysklar
 
Posts: 2398
Joined: Mon Aug 01, 2016 8:10 pm

Re: AirLift not found by UNO; suspect bad board

by ewhansen on Tue Oct 06, 2020 4:11 pm

I believe so, yes.
AirLift.jpg
AirLift.jpg (104.22 KiB) Viewed 24 times

ewhansen
 
Posts: 21
Joined: Tue Feb 12, 2019 3:18 pm

Re: AirLift not found by UNO; suspect bad board

by mikeysklar on Tue Oct 06, 2020 6:00 pm

Great.

Did you hit the reset button 2x when using ESPTOOL I just noticed that was it is prompting for with the ----.... notation.

Code: Select all | TOGGLE FULL SIZE
python esptool.py --port /dev/cu.usbmodem14401 --before no_reset --baud 115200 write_flash 0 ~/Desktop/NINA_W102-1.6.1.bin

mikeysklar
 
Posts: 2398
Joined: Mon Aug 01, 2016 8:10 pm

Re: AirLift not found by UNO; suspect bad board

by ewhansen on Thu Oct 22, 2020 9:35 pm

Me again. I just bought two more AirLift shields and wired up their headers. Neither one works, i.e., I get messages that the WiFi chip can't be found, in the Arduino setup where my first board works happily. Now I'm 2 for 6. Going back to trying a firmware fix with a Metro M0 Express as host. Do you know if you have recently changed the firmware version on the boards you're shipping, so that I could have gotten two that work followed by four that don't?

ewhansen
 
Posts: 21
Joined: Tue Feb 12, 2019 3:18 pm

Re: AirLift not found by UNO; suspect bad board

by ewhansen on Fri Oct 23, 2020 12:15 pm

Update, with further tests.
* My working shield runs the ScanNetworks example (and my final application code) successfully, on an Arduino UNO. The two new shields fail on the UNO.

Changed to a Metro M0 Express rather than an Arduino UNO, to get at the possibility of borderline UNO capability with the AirLift, as has been suggested.
* Plugged my working shield into the Metro, successfully ran ScanNetworks. Also inserted an SD card and ran the CardInfo example, and as expected, it worked OK.
* Next, plugged one of my new shields into the Metro and repeated the experiment. CardInfo worked OK, but ScanNetworks returned the message "Communication with WiFi module failed!".
* Plugged my other new shield into the Metro, with the same results.

From these observations: Using an UNO is not the problem, nor is it a problem with the processor's SPI bus, since the CardReader works OK. There seems to be something amiss with the shields themselves, in particular, with the ESP32.

How do you suggest I troubleshoot further? Is there a diagnostic step short of reflashing the ESP32 firmware?

Thanks much.

ewhansen
 
Posts: 21
Joined: Tue Feb 12, 2019 3:18 pm

Re: AirLift not found by UNO; suspect bad board

by mikeysklar on Fri Oct 23, 2020 7:58 pm

@ewhansen,

Thank you for the updates. I see you have a armload of non-Wifi functional airlifts and I am confident we are looking at firmware update to resolve this. Yes, I know we have been here before.

https://learn.adafruit.com/upgrading-es ... rnal-esp32

Going to the External AirLift Breakout section of the Upgrade ESP32 Firmware guide. Go ahead and make sure you upload the SerialESPPasstrhough.ino to your Arduino UNO board. Then proceed to burning the nina-fw with esptool. I don't think you had been doing the Arduino SerialESPPassthrough.ino code on the UNO last time we tried the firmware update is that correct?

One more thing I'd like to try as I've seen reports of it working on HUZZAH32 is the erase_flash option with esptool.py.

viewtopic.php?f=57&t=170489&p=833207&hilit=erase_flash#p833207

mikeysklar
 
Posts: 2398
Joined: Mon Aug 01, 2016 8:10 pm

Re: AirLift not found by UNO; suspect bad board

by ewhansen on Mon Oct 26, 2020 11:09 am

Good morning. I have a solution.
I had already learned that I can't use UNO R3 with SerialESPPassthrough, because Serial1 is required and 328p doesn't have that port. This is why I'm using the Metro.

I successfully uploaded SerialESPPastthrough to the Metro, and then ran esptool, which resulted in the message "A fatal error occurred: Failed to connect to Espressif device: Timed out waiting for packet header".
Searching on this error message led me to https://github.com/espressif/esptool/issues/293 and a long discussion of how to properly enter the bootloader mode on the ESP32. It says that GPIO0 on the ESP32 must be held low during reset. This should be handled by lines 100-107 in SerialESPPassthrough:
// manually put the ESP32 in upload mode
digitalWrite(ESP32_GPIO0, LOW);

digitalWrite(ESP32_RESETN, LOW);
delay(100);
digitalWrite(ESP32_RESETN, HIGH);
pixel.setPixelColor(0, 20, 20, 0); pixel.show();
delay(100);

ESP32_GPIO0, in the code, is #defined to "-1", with a comment "Not connected". This is the problem. Following the schematic for the shield, IO0 on the ESP32 is nominally pulled up to 3V3, but can be pulled down through a MOSFET (Q3) if the signal GPIO0 is LOW. For firmware upload, this signal is jumpered to pin D6. Thus, in the SerialESPPassthrough, ESP32_GPIO0 must be #defined to 6. When I made this change, everything worked fine and esptool could upload new firmware to the ESP32. ScanNetworks finds my home network.

Finally, I unsoldered the jumpers and plugged the shield back into the UNO, and my application software works fine. Next up is to try the same thing on my other boards.

Looking back through the instructions again, https://learn.adafruit.com/upgrading-es ... rnal-esp32, I do see a note about the ESP32_GPIO0 signal for the AirLift breakout, which makes sense in retrospect. But it isn't clear in reading the SerialESPPassthrough.ino source code, where only the SPIWIFI_SS, ESP32_RESETN, and SPIWIFI_ACK signals are #defined to actual pins.

When the other boards are done, if all goes well I'll make one final post to close the thread. Thanks again for your help.

ewhansen
 
Posts: 21
Joined: Tue Feb 12, 2019 3:18 pm

Re: AirLift not found by UNO; suspect bad board

by mikeysklar on Mon Oct 26, 2020 2:05 pm

@ewhansen,

Great work!

Thank you for pointing out the single line #define ESP32_GPIO0 change to 6 and direction section that was a bit confusing.

Good luck with the rest of the boards.

mikeysklar
 
Posts: 2398
Joined: Mon Aug 01, 2016 8:10 pm

Re: AirLift not found by UNO; suspect bad board

by ewhansen on Mon Oct 26, 2020 3:04 pm

Happy to report all five boards are now working properly. One final note: In the directions, https://learn.adafruit.com/adafruit-air ... t-firmware, under "Verifying the upgraded firmware version," it is suggested "you may also want desolder the connections between the Optional ESP32 control pins you made earlier". I found that four of my five boards tested out OK with ScanNetwork, with the jumpers still soldered, but the fifth board did not work correctly until the jumpers were desoldered. So I would upgrade "you may also want to desolder" to "you should now desolder".

Thanks, again.

ewhansen
 
Posts: 21
Joined: Tue Feb 12, 2019 3:18 pm

Re: AirLift not found by UNO; suspect bad board

by mikeysklar on Tue Oct 27, 2020 11:35 am

@ewhansen,

Thank you for the suggestion. I will pass it on to the guide author.

Well done, Sir!

mikeysklar
 
Posts: 2398
Joined: Mon Aug 01, 2016 8:10 pm

Re: AirLift not found by UNO; suspect bad board

by mikeysklar on Wed Oct 28, 2020 12:27 pm

Note front Brent Rubell (guide author):

@mikey: I changed the verbiage to be more severe and bolded it, the user is correct.


Your suggestion has been added to the guide.

https://learn.adafruit.com/upgrading-es ... 3041621-33

mikeysklar
 
Posts: 2398
Joined: Mon Aug 01, 2016 8:10 pm

Please be positive and constructive with your questions and comments.