Requirements¶
Project requirement document¶
Requirements Overview¶
Requirement |
Discord username |
Category |
|
|---|---|---|---|
1 |
Support different ESP modules |
wassfila |
uC |
2 |
power cut-off circuit + RTC Timer |
Informatic0re |
power |
4 |
3v3 Output |
Andreas Spiess |
power |
5 |
5V Output |
Andreas Spiess |
feature |
6 |
USB charging |
Andreas Spiess |
charging |
7 |
Solar charging |
Andreas Spiess |
charging |
8 |
Charging while powering |
Andreas Spiess |
charging |
9 |
Replacable batteries |
Andreas Spiess |
battery |
11 |
Low voltage signal/alarm/interrupt |
Andreas Spiess |
power |
12 |
Battery low voltage protection |
Andreas Spiess |
battery |
13 |
Over charge and discharge protection |
Andreas Spiess |
battery |
14 |
charge indicator |
Andreas Spiess |
charging |
25 |
Charger control (enable/disable) |
tealbrains |
charging |
26 |
Li-Ion Chemistry as 18650, 16340 and FlatPack |
tealbrains |
battery |
28 |
Hysterisis between battery low and battery ready. |
metimmee |
feature |
32 |
Modular architecture with optional components |
wassfila |
organisation |
33 |
Test Points |
Informatic0re |
feature |
34 |
Expose ESP32 Serial pinouts for flashing |
wassfila |
uC |
35 |
LOW power consumption (of the regulator board itself) |
||
37 |
Usb C |
fabrifer020 |
feature |
38 |
Reverse voltage protection |
fabrifer020 |
safety |
40 |
Controllable 3v3 Output |
leven |
|
43 |
Expose Battery pins (post protection) |
tealbrains |
feature |
46 |
Having Both Holder And Connecter |
Trance_Paradox |
feature |
50 |
Short Circuit Protection on the output |
johnheuk |
safety |
53 |
Barrel Jack / Screw Terminals |
johnheuk |
feature |
63 |
Expose unused ESP32 GPIO Pins |
wassfila |
uC |
88 |
Open Hardware License |
Noki |
All Initial Requirements¶
status |
Requirement |
Discord username |
Category |
Why ? |
|
|---|---|---|---|---|---|
1 |
Support different ESP modules |
wassfila |
uC |
ESP32 WROOM, WROVER, S2 |
|
2 |
power cut-off circuit + RTC Timer |
Informatic0re |
power |
Cutting off the power lowers the current draw to <1mA |
|
3 |
rejected |
Actionable documentation |
LEMD49 |
organisation |
Containing: principles & block diagram, wiring diagram, BOM w all components and mechanical parts / connectors, Normal operations levels (can be notes on cct diagram), troubleshooting flow…. |
4 |
3v3 Output |
Andreas Spiess |
power |
Power supply for MCU |
|
5 |
5V Output |
Andreas Spiess |
feature |
Usefull for sensors which need 5V but should have a on/off |
|
6 |
USB charging |
Andreas Spiess |
charging |
||
7 |
Solar charging |
Andreas Spiess |
charging |
Power for the system when it is installed in locations where USB is not available and where swapping the battery every year or so is not desired |
|
8 |
Charging while powering |
Andreas Spiess |
charging |
||
9 |
Replacable batteries |
Andreas Spiess |
battery |
||
11 |
Low voltage signal/alarm/interrupt |
Andreas Spiess |
power |
||
12 |
Battery low voltage protection |
Andreas Spiess |
battery |
||
13 |
Over charge and discharge protection |
Andreas Spiess |
battery |
||
14 |
charge indicator |
Andreas Spiess |
charging |
||
15 |
rejected |
Maximum Battery life ( e.g. sensor mode current < 50uA, life 1 year) |
wassfila |
feature |
Define the maximum achievable savings by the modular design, (e.g. short wake up, send ESP-NOW packet and back to sleep). I set 50 uA arbitrarily as suggested by tealbrains an anyone please feel free to vote or update |
16 |
rejected |
Minimum Battery life (e.g. performance mode current <200uA, life 3 Months) |
wassfila |
feature |
Set a target for the least achievable performance of the modular design, e.g. when deprived from all external optional components. e.g. no external RTC. |
17 |
rejected |
Specify a maximum quiescent current |
tealbrains |
organisation |
(Instead of 15. and 16.) Lifespan of device will be application dependent. The property of this circuit must be independent. For example, fix quiescent current to be < 50uA. |
18 |
rejected |
ESD security |
RV3Dtech |
safety |
|
19 |
rejected |
I2C Interface & Arduino Library |
RV3Dtech |
feature |
|
20 |
rejected |
Security of supply of the components + 5y |
RV3Dtech |
organisation |
|
21 |
rejected |
Breadboard friendy design |
Informaticore |
feature |
you know why |
22 |
rejected |
Multi-chemistry |
tealbrains |
Some users may use Li-Ion, others may use LiFePO4. NiMH is broadly available |
|
23 |
rejected |
Temperature (over and under) protection |
Thomas |
safety |
Safety (can’t charge battery at any temperature, there is a risk of damage), can be part of the charger IC |
24 |
rejected |
Battery heater |
Thomas |
feature |
If used in cold areas there might be many weeks/months of continious battery temp too low for charging. |
25 |
Charger control (enable/disable) |
tealbrains |
charging |
Reduce the number of charging cycles (specially for solar applications, where we may not want to charge the battery constantly) in order to increase lifespan of battery. AND allow to measure the battery voltage accurately |
|
26 |
Li-Ion Chemistry as 18650, 16340 and FlatPack |
tealbrains |
battery |
Some users may use Li-Ion 18650 and 16340 or Flat Pack |
|
27 |
rejected |
LiFePO4 Chemistry |
tealbrains |
battery |
Some users may use LiFePO4. The chemisty is better for cold climates. |
28 |
Hysterisis between battery low and battery ready. |
metimmee |
feature |
Solar devices in winter may bump along at minimum voltage for extended periods. For some applications, it may be better for the micro to go to sleep for an extended period to allow the battery to charge more than the minimum amount. |
|
29 |
rejected |
Optional OLED based small info display |
Wajid |
feature |
can display self health and other parameters without being attached to target system |
30 |
rejected |
cascading option for increased power |
Wajid |
for example some project need more power then it can simply stack the power supplies to increase power |
|
31 |
rejected |
Designing a full featured (one or more) board and a standalone board for “any” application with the same requirements. |
Vincent (inspired from Discord - I do not remember the name of the author…) |
organisation |
It allows to have a ready to go board. Or to have a module. |
32 |
Modular architecture with optional components |
wassfila |
organisation |
Although this might be the main idea already, I added it as requirement to refer to it and translate its impact on the design. This might have to be broken down into what is modular and what not ? RTC optioanl, ESP32 itself optional as mentionned in req_31 ? … |
|
33 |
Test Points |
Informatic0re |
feature |
We need test points at any usefull position for proper validating of the circuit |
|
34 |
Expose ESP32 Serial pinouts for flashing |
wassfila |
uC |
If we plan to have a module soldered on the PCB, we would need to flash it, a serial to usb converter might not be necessary to be on the pcb as it could be similar to the ESP32-cam with external serial to usb. Use https://randomnerdtutorials.com/esp32-pinout-reference-gpios/ as aa reference (very good) And do not expose GPIO36! Ask Informatic0re why |
|
35 |
LOW power consumption (of the regulator board itself) |
In Solar powered applications, the overhead power consumtion of chargers/regulators can be too much. |
|||
36 |
rejected |
Wemos D1 mini shield |
It is nice to have the power board directly fit on the Wemos D1 mini as many other shields |
||
37 |
Usb C |
fabrifer020 |
feature |
This will make it more future-proof and its going to be nice to have the new usb standard while not having to worry about wich way you connect the usb |
|
38 |
Reverse voltage protection |
fabrifer020 |
safety |
To not fry our Boards with a common mistake that could be prevented with just a few components and negligible current loss for saving our boards |
|
39 |
rejected |
Adjustable output voltage (buck/boost) |
davidfet |
feature |
To allow the board to be used for multiple projects which may have varying power requirements |
40 |
Controllable 3v3 Output |
leven |
A 3.3V Output which can be tunred on and off by the MCU to power sensors and other things |
||
41 |
rejected |
Create (1+) standard slots for expansions |
tealbrains |
Some features are “nice to have” such as additional buck / boosts, or power bus controls. Ultra-low power modes such as using an RTC + SRAM. These features are not “core features” so leaving the slots unpopulated by default will allow the team to develop some expansions and the users to also develop their own expansions if they need to. |
|
42 |
rejected |
Define maximum/minimum acceptable size |
tealbrains |
dimensions |
This will limit the number of options, connectors, etc and requirements that can be met. Is having a connector for 18650 for example a good idea? Or 14500? etc |
43 |
Expose Battery pins (post protection) |
tealbrains |
feature |
This allows the user to power some modems or loads directly from the battery without extra losses that occur using a voltage regulator |
|
44 |
rejected |
Power on-off behaviour, similar to a mobile phone |
Florian |
feature |
Possibility to power off via a button and via a MCU signal. If external power transitions from off to on while the board is powered off because of low battery, then power it on. But do not power it on if battery level is OK, indicating powering off was intentional (via power off button or MCU signal). This behaviour would be helpful when the external power is intermittent (solar pannels, mobile units similar to a phone). It would allow automatic restarts when external power is available after a powerdown because of low battery, while allowing for voluntary shutdown too. |
45 |
rejected |
Support For ESP 32 Modules |
Trance_Paradox |
uC |
Support for different Modules like ESP32-Wrover, ESP32-Mini, ESP32-Wroom etc And providing breakouts for those also |
46 |
Having Both Holder And Connecter |
Trance_Paradox |
feature |
Having both 18650 Holder and connector terminals for li-po battery would provide grea flexibility |
|
47 |
rejected |
Toggle switch to turn on and off boost circuitry |
feature |
boost circuit takes considerable amount of stand by current (quicient Current). if the user have the option to turn off the boost circuitry by a toggle switch(or simply by a jumper) and use only the 3.3 V from a ldo would be beneficial when working with 3.3 V low power devices. |
|
49 |
rejected |
consider modularity; e.g. having additional boost / display options as hats |
johnheuk |
feature |
to keep base price / complex of basic supply as low as possible. the hats need not physically sit on top of each other or require additional board space but could be connected via 2.54mm dupont pins to keep the basic board as compact as possible |
50 |
Short Circuit Protection on the output |
johnheuk |
safety |
we all know why…… :D |
|
51 |
rejected |
at least the outputs should have 2.54mm jumper pins for quick connection to a breadboard, ideally there should pins and pads for the input, battery and output |
johnheuk |
feature |
pushing modules into a breadboard can be difficult / the user may not have one to hand / they use up a lot of space. for permanent installation, solder pads would be a good idea. this would also allow the user to monitor incoming / storage & outgoing voltages more easily. some people may want to tap into the battery supply itself as batteries typically offer much, much better noise performance |
52 |
rejected |
ideally there should be two or three such 2.54mm pins for the output and they should be positioned on opposite sides of the board, not adjacent to one another |
johnheuk |
feature |
the user may want to connect one set to their micro and another to a different module. i have managed to exploderise a breadboard power supply 30 seconds after powering it up after i accidentally shorted the gnd and vcc output header pins checking the voltages with a meter probe - the pins where right next to each other |
53 |
Barrel Jack / Screw Terminals |
johnheuk |
feature |
not everyone has a soldering iron, or one that’s good enough to solder to via stitched ground planes, or may not have a spare usb lead. having a few different connection methods would be great |
|
54 |
rejected |
MPPT (power tracking) / scavange / harvest |
johnheuk |
power |
if the device is trickle charging from a tiny solar cell, having an MPPT type charge controller may be a good idea. could also look into other harvesting methods, e.g. RF, although the power available is likely to be even lower (we can assume that many of these devices will be in range of a standard WiFi router though). |
55 |
rejected |
strain relief built into the board; e.g. holes drilled near connection points that the user can loop the wire through and perhaps add some epoxy glue to (not that epoxy really needs to be kept away from copper as it is acid catalysed and can begin to corrode exposed copper |
johnheuk |
feature |
if a squirrel attacks a node the wiring will be less likely to be ripped from the board; fewer pads lifted etc |
56 |
rejected |
a hat option to measure Joules of energy consumed; this could be applied to both the esp and pi but would be particularly well suited to the pi |
johnheuk |
feature |
a feature of Texas Instruments’ Code Composer is that it will suggest alterations to code; e.g. use a timer instead of a loop. their MSP430 demo boards go further and can actually monitor real world energy usage when running code, so the user can tune their code and get a better idea of how long the supply will last. this is a feature entirely missing from the esp hat would as far as I’m aware but could be very useful for checking deep sleep type operations. we need to start thinking in terms of Joules per operation / byte sent as opposed to mA |
61 |
rejected |
tracking solar panel; additional add on module |
johnheuk |
feature |
if solar is being used, an additional ‘hat’ option could be to have the panel track. given the low power usage requirement, it would likely be better if this was achieved through a system that didn’t include RV servos or steppers being continually engaged. this could possibly be achieved via a 3d printed high gear ratio (so the panel doesn’t move in the breeze even with the power removed) or some form of solenoid like lock on the panel tilt that is normally engaged; so it only energises to move. it may not need to continually track, just point in roughly the right direction at the right time of day (e.g. east in the morning, half way in between at lunch time, west in the evening) to reduce movement frequency. this could be also be achieved by rotating some form of cam or actuating some form of ratchet. this could be particularly useful for higher power applications; like the pi, or more continuous wifi usage via the esp. it should use readily available, generic motion components as opposed to end of line / stock clearance microsteppers |
62 |
rejected |
Smallest Board config size 4cm x 3cm |
wassfila |
dimensions |
I input this as initial starting point as stated in the video in time 12:50. It is only to give a guideline for the moment not to deviate too much but given all other requirements this might have to be reconsidered in case some features are really attractive. |
63 |
Expose unused ESP32 GPIO Pins |
wassfila |
uC |
The reference board in the video shows gpio exposed on a header on the sides, and it makes sense that a maker that needs this PCB also wants to use the ESP32 gpios he paid for. |
|
64 |
rejected |
minimal config costs less than 10 € |
wassfila |
organisation |
Given the market where charging modules cost 1 ~ 2€, and ESP boards 5 ~ 8 € including lcd screens : 10 € sounds attractive. Let us place ourself in the buyers side, and think what we would pay for it ? Let’s say this board is special and would be made on demand so maybe 15 €, but if it is 20€ or 30 € would you buy it ? |
65 |
rejected |
3d printed case |
wassfila |
organisation |
If this is agreed, it could relax constraints on fitting PCB holes to existing housing standard format as discussed in discord. This could give more flexibility and is today a reasonable expectation from every maker or every one that has a maker as a friend. |
66 |
rejected |
Optional Battery format 16340 (16 mm x 34 mm) |
wassfila |
dimensions |
This is mentioned by Andreas in the video time 12:50 and because 18650 is much bigger than an ESP32 module and 16340 fits quite good and matches the size req 62 |
67 |
rejected |
Operating Temperature range -20° 70° |
wassfila |
specification |
The ESP32 operating range is -40° 125°, but the batteries have more restricted range, so we might save on other compoenents as we don’t need the full range. |
68 |
rejected |
Charging Temperature range 0° 45° |
wassfila |
specification |
Charging between 0°-5° might be possible but below 0° might damage the battery. I tool Li-Ion as reference. These could be configurable if it is LifePo. |
69 |
rejected |
The design has to be Open source |
wassfila |
organisation |
As stated in the video timing 14:15, I take these requirements here so that they’re visible to everyone even to those who do not remember every word of the video. |
70 |
rejected |
It can be manufactured by JLCPCB |
wassfila |
organisation |
same, from the video 14:15 |
71 |
rejected |
Parts should be availabe from LCSC |
wassfila |
organisation |
same, from the video 14:15 |
72 |
rejected |
battery ampere meter |
wassfila |
feature |
This would allow used capacity calculation and is different than overcurrent protection. Also stated in the video 15:52 as one reference board had this function, so even if it is hardly feasible, it is worth putting this on the table. |
73 |
rejected |
Optional flat battery pack connector |
Informatic0re |
feature |
allows an even more compact size than the 16340 so gives more flexibility |
74 |
rejected |
Super Capacitors |
Noki |
Sensors that don’t require frequent updates could easily be powered from supercaps instead of batteries. Even frequent measurements are not a problem if you store them and only transmit multiple collected measurements together from time to time. Supercaps are easy to charge, are not subject to overcharge and have a good low-temperature charge and discharge performance which makes them great for outdoor usage in cold environements. Supercapacitors don’t require a battery heater, but might require a larger panel to compensate for the higher self discharge. |
|
75 |
rejected |
Parts can be hand soldered |
himynameisbuzz |
for user who opt not to use a specific function in the board can choose not to solder the parts and to reduce the board’s cost. BGA is a no no |
|
76 |
rejected |
Add PTC Resetable Fuse in design |
veilands |
Preserve other components due mistakes in assembly and operations, increase reliability of new design |
|
77 |
rejected |
Inclusion of LORA Option |
mtroyer |
feature |
Provision of a low power option for a LORA board such as an RFM95 or the like. |
88 |
Open Hardware License |
Noki |
We might need to choose a license to open source our hardware properly |