More suggestions for smol

First, I’d like to echo the appreciation of [Clemens for the smol.

The first “use case” that came to mind was a sensor to attach to my snail-mail box to indicate when it had been opened – basically sends an MQTT message via WiFi back to the house. I’d like to make it solar powered (I find it interesting that SparkFun announced the smol line the same day that several small solar panels were announced), and am pleased that future plans include a solar power board.

The “deep sleep” mode implemented in the ATtiny841 on the power boards would prove useful, however, I really think it would be useful to be able to have a “wake on event”, e.g., a magnetic switch such as COM-13247 opening or closing. Yes, to preserve the extreme low power one would have to use a pullup resistor on the order of megohms, but in at least some situations, that should be doable. Hopefully the “wake on event” would be in addition to “wake at specified time”.

BTW, since I’m getting a “404” message when I try to look at the Power Board Arduino Library, I can’t verify what I can get back from the ATtiny841. It would be useful to be able to have the ESP-32 be able to at least read the ATtiny841’s idea of “millis()”. And if you do implement a “wake on event”, be able to descern what caused the wake up call.](https://forum.sparkfun.com/viewtopic.php?f=123&t=56617)

I also just noticed that one of the power boards seems to use the ATtiny43U and the other the ATtiny841. Is that correct?

Hi @ArizonaClark ,

Thanks for the great feedback!

Oops! My bad. I forgot to publish the smôl Power Board Arduino Library. I’ve made it public and you should be able to install it via the Arduino Library Manager in the next few hours.

Right now, there is no ‘easy’ way to wake up the power board once you have put it into deep sleep. You either need to: wait for the sleep interval to expire; pull and re-insert the battery connection; or reset the board via the ISP pins. You can find a picture of the ISP pins in the hookup guide.

For your application, the following should work (if you’re up for a little soldering):

Connect the magnetic door switch into (in series with) the battery pack positive lead

The magnet goes on the mail box door

When the mail box door is opened, the switch opens and power is disconnected

When the door is closed again, the power is reconnected. The Power Board resets and powers up the Processor Board

The Processor Board sends the MQTT message and then tells the Power Board to go back into deep sleep

If you set the sleep duration to (e.g.) 24 hours, the system could wake up and send a daily “battery level” health-check message, and then go back to sleep

Adding “wake on event” support is a good suggestion - thanks! I’ve opened an issue for “suggestions for the next board revision” on the hardware GitHub repo and have included it there:

https://github.com/sparkfunX/SparkX_smo … o/issues/1

INT0 can wake the ATtiny841 and ATtiny43U from power-down mode, so we’re OK there.

Yes, correct. We use ATtiny841 on the Power Board LiPo, and ATtiny43U on the Power Board AAA. The ATtiny43U’s built-in boost regulator makes it a good choice and allows it to run directly from a single AAA or AA cell. The Arduino Library supports both, there’s a class for each board.

Very best wishes,

Paul