Pager Lora

Ingredients

  • Arduino / ESP8266 ? Arduino is more conservative but doesn't seem to be the popular choice. I mean, speed might be an issue with transmission so bang it out on a Wemos with WIFI disabled.

Goals

  • Clamshell
  • Nokia 5110 screen / e-ink
  • Buzz tune on receipt
  • Opening wakes up device screen
  • Small as poss, but poss 18520 batteries, so..
  • Lora communication over 300m

Input

Mobile keypad text is a fun way to go. Revive that old skill.

Drawing?

Would be nice, but bandwidth is limited, as well as rendering capabilities so.. it'd be a whole thing. Couldn't be real-time.. but still an option if I make a larger device.

Comms

Send Device Listen Device User
Listening always Listening always
Emit (n?) Send
Receive Buzz
Store to EEPROM
Emit message received? meh
Stop emitting
Screen on, display message Open device

Power

The power concerns are real. So let's make sure to do all dis:

Disable WIFI on microcontroller

WiFi.mode(WIFI_OFF);

Sleep

If possible, I mean perhaps it could sleep half the time? Let's have a shufty at some power requirements. Complete conjecture, but anyways:

  • Microcontroller General: 20mA ESP w/out WIFI or 5mA for pro mini Sleep: Negligible

  • LoRa (3.3v) Receiver: ≦ 10mA (LnaBoost off, band 1) Transmit: ≦ 120mA (+ 20dBm) Sleep: Negligible Total, if listening always and transmitting like 1% of the time: 11mA

  • Screen Unlit: 1mA Backlit: <= 80mA, so maybe don't bother!

  • 18650 2400mah 3.7v 5v converters are supposedly 90% efficient so 2160mAh

So, assuming they're always listening and transmit at glorious 28.8kbps modem style speed now and then:

Battery capacity (mA/h) / Current draw (mA) = hours of battery life  .. right?

2160mAh / 32mA = 67 hours
900mAh / 32mA = 28 hours
240mAh / 32mA = 7.5 hours

Woah. I mean, these are conservative numbers too. Not three bad. So yeah, sleep both chips if possible when closed and poss use an Arduino (5mA).

C rating?

Literally anything is fine. Peak current, with lit screen and full transmit is like 220mA, so 0.5C @ 500mA is enough. (18650 are 1C)

Sleep LoRa chip

Just a reminder to sleep this along with the microcontroller.

Battery

5V step ups bitch out under .5v, which won't matter much, but the efficiency varies with input voltage (and current): http://www.hobbytronics.co.uk/u1v10f5-5v-regulator

Battery V mAh Effic ->~mAh Life(h) mAh/32mA Notes
AAA (r/c) 1.5v 1000 @70% 700 22
AAA (r/c) x2 1.5v 2000 @70% 1400 44
AA (r/c) 1.5v 2400 @70% 1680 53
Lipo 50x30mm 3.7v 2000 @90% 1800 56 Better form factor than AA
18650 3.7v 2400 @90% 2160 66 All lipos easy to charge
Lipo 90x60mm 3.7v 4000 @90% 3600 113 Phone bat size, affordable

Lipo batteries supposedly self-disarge at only 5%/month (despite my experience), not far off alkaline. So any lipo really, high mAh as possible for the best form factor. But deeefinitely invest in a voltmeter setup (see below). Perhaps flash the screen hard and/or chirp for a turn off.

Battery monitoring

Feed battery into analogue input, with a voltage divider to reduce it.

Wemos A0 has a voltage divider built in. 220k / 100k (2/3rdsness). People say it has a range of 3.3V, but I should test that.

+++++++++
    |
  [10k]
    |
    |----(100pF -> 1nF)---> analogue input
    |    reduce wobble? Didn't work..
    |
  [10k]
    |
---------

V divideness = (R1 / R1 + R2)
             = 1 / 2

So if my lipo spits out a mad 4.6V, A0 would receive 2.3V. Update: 1024 max value is 6.1V, in reality, through my divider.

Lipo V Desc Dividered A0 (theory) Human
4.6 Pumped 2.3 713 100%
4.2 Full 2.1 652 100%
4 Good 2 621 75%
3.86 Mid 1.93 599 50%
3.75 Low 1.875 582 20% !
3.7 Low 1.85 574 10% !
3.5 Dead 1.75 543 0% off
A0 (theory) = Dividered V / 3.3 * 1024

Empirical realities are close but a little different:

Lipo V Desc A0 (theory) Human
4.6 Pumped 762 100%
4.2 Full 706 100%
4 Good 660 75%
3.86 Mid 634 50%
3.75 Low 615 20% !
3.7 Low 608 10% !
3.5 Dead 577 0% off

Power off

It really should power itself off, LoRa et al, with low batt for safety. Might not be worth it though, I mean, do my charge protection circuits handle that? Probs eh?