At work I research and design some cool things, then I send them off to a client and that's the last I see of it. Welp, I'm making a toy for myself based on the technologies I use everyday professionally.
This project is in the research/information gathering stages at the moment. A few things are clear though. The device must do these things:
- Have a very long battery life (multiple years)
- Be capable of sending sensor data long distances to a gateway of some kind
- Be small and discrete
- Be low cost
- Be an extendable platform to develop feature rich stuff with
From this list of requirements, things I'm pretty set on are:
- ESP32 PICO D4
- HopeRF RFM95 Radio
- 1 or 2 AA batteries (Lithium?) for power
* Optional PSRAM for fun?
This is my first project on Hackaday, and my first personal project that I've taken even slightly seriously. Let's hope I make it to Revision 1!
Initial design has begun, I would usually do my design in KiCad but I thought I'd like to give EasyEDA a try. I really want to try out the integration between EasyEDA/LCSC/JLCPCB because I've not used any of these services previously, and having a Cloud based EDA seems like a good idea for collab/public space projects.
Here are the two sheets for my current design. I may reduce this to one sheet in the future, depending on how much real estate I use. But I like to have some space to do lazy drag-selection when designing.
I want to be able to use the Top Level Sequencer (State Machine) on the SX1276 (RFM95), as well as the FSK and OOK modes. Some of the features I want such as Preamble/RSSI Detect require DIO3 or DIO4 so I at least need more DIO pins than the usual LoRaWAN stack for example. (DIO0-DIO2)
I'm torn between mapping all of the DIO pins to the ESP32 (The Input only pins from 34 to 39 are tempting), or just using some diodes here. I could also do a Wire OR, that can't be too bad right? I really need to think about the DIO more before I finalize that part of the design. Page 1 shows a tiny Diode array I found on Digikey (1.6mm square) but this could be precious real-estate later, they are also $0.50 each.
Another thing I do not have is a header to break all the pins out. I want something low profile (mezzanine connector?), and I'm also considering a castellated PCB. Still things to consider here.
@Josh Lloyd Check out new SiP from Microchip - SAMR34, low power, integrated LoRa transceiver and only ~3.5$. It's game over for RFM95 modules with this killer SiP
@Karol These chips look very good, compared to an ESP32 though the Cortex M0 cannot compete with computation power. But I expect excellent low power modes. Where did you find them for $3.50, in what quantity?
Actually they are $3.74 for 5K, (microchip direct) you can get samples form microchip easily. Microchip also provides schematic and board files (check SAMR34 dev board) if you want to make your own design. I'm not sure if you can program it without Atmel-ICE, this thing is a bit expensive.
Sorry, I don't know if there will be any modules by microchip. I was thinking about making one myself but I noticed someone already did this. I guess at some point microchip will make one, this chip is relatively new. Their design (SAM R34 Chip-down Design Package files) is certified, you can copy it and make your module out of it or even better, put it on your board directly.
Hi Josh, we do this routinely using the Murata CMWX1ZZABZ (STM32L082/SX1276) LoRaWAN module (see: https://hackaday.io/project/35169-hackable-cmwx1zzabz-lora-devices). All of my efforts to run an ESP82XX/ESP32 device from a small (~350 mAH) LiPo battery for more than a day or two have failed. I run LoRaSensorNodes like this one (https://www.tindie.com/products/TleraCorp/lorasensortile/) for months on this kind of battery. It would be great to be able to do this for an Espressif-based device.
@Kris Winer mentioned in Hack Chat that it would be great to collect minutely readings and consume on average less than 25uA in the deployed solution. Seems like quite a challenge to achieve with an ESP32 but I'm certainly going to try.
How low have you managed to go with the pico ? If you choose a good LDO with low Ignd (Iq) you can go down to 20-25uA during deep sleep. But 25uA on average ? I tried everything (arduino/platformio/esp-idf) and never managed to drop below 17uA during sleep with ULP enabled (with 1-3uA LDO).
@Josh Lloyd Check out new SiP from Microchip - SAMR34, low power, integrated LoRa transceiver and only ~3.5$. It's game over for RFM95 modules with this killer SiP