Driver Updates, Rev2 work, Node Installs

A project log for ESP32 LoRa Gateway

ESP32 with dual LoRa modules

morganmorgan 12/02/2021 at 02:130 Comments

Driver Update

I've been getting some work in on the esp32-lora driver (in addition to moving to self-hosted git) and happy to report it can happily handle at least two devices! Basic testing of having one device send and the other receive works as expected, though this wouldn't be the expected operating mode. This turned out to be fairly straight forward, at least in part due to the esp-idf handling bus sharing, though it also required FreeRTOS Semaphore locking as suggested by the esp-idf development guide. With these changes I've also dropped all KConfig based defaults as they don't play well with multiple devices and even cause confusion when expectations are to 'just work' (looking at you Arduino). This means the driver will no longer abort (via assert) if the config is wrong and return an error code instead.

Hardware Revision 2

This has been started, so far it's mainly adding breakout header for the remaining GPIOs, all 4 of them! Some things have been rearranged in an effort to make assembly easier. I'm also intended to add #SOICbite Programming/Debug Connector Footprint to lower the cost/assembly time of non-development boards. Sadly I still don't have anymore insight into the reset issue but I will certainly assemble the last two boards before sending out Rev2.

Node Installs

With the growing confidence in the driver I'm getting ready to put some new nodes in place. The first node will be at my home, with the second being 12.5km away at a friends property. I've already achieved similar distance with my last test setup but these two have less than perfect Line-of-Sight, with a single hilltop dead center.
                     Google Earth accuracy is questionable at best but there's a solid chance this hill is in the way

Thankfully bad LoS in this situation is an more a testing opportunity than a failure. For the third node I want to go 3.8km in the opposite direction to a higher hilltop that will have LoS to Node 2, at a distance of 16.2km. This will offer a great relaying test bed. With these in place (particularly Node 3) pretty much everywhere I go mountain biking regularly will be covered and I can start coverage mapping by carrying a portable unit around with me. The basic idea is every minute or so it will send out the GPS location and see which nodes receive it and attempt to relay back to my house for logging.