The CRICKET from ThingsOnEdge.COM

thingsonedge.com

See May 25, 2021 Update at the end!

Of course we’ve all seen this form factor before – ESP8266 on a board with power and antenna, FLASH etc.. The ESP-12 is only one of many and now we have a new option – with a difference… also – this is an update of my late-2020 original blog. And the update includes a link to their new CRICKET setup page with DS18B20 support (I’ve asked them if they will look into DHT22 support soon.. See also the end of this entry.

The small IOT Cricket device, I can verify after many conversations with Sylwester Bala from thingsonedge.com, is designed to run on AAA and AA batteries – and has a deep sleep mode consuming as little as 0.5 microAmps., WAY lower than the kind of standby current most of us associate with esp8266-based devices. You can probably imagine how long the battery lasts under those conditions – but with decent batteries it is months – I can verify that.

The module comes with pre-installed software and can be OTA’d either locally or remotely as you prefer – see below…

ThingsOnEdge approached me late in 2020 – I followed up their contact partly because this is something out of the ordinary and partly because the company is based in the UK. I have no axe to grind other than having these product samples to play with – so I suggest giving this a second glance.

The company has been around sinced 2018 and they are a “small start-up”.

In a nutshell, they provide two options for operation of the IOTCricket: 1) Local 2) Cloud

Local: You don’t need Cloud at all to configure Crickets, the configuration can be done entirely locally on the Cricket module from the local network – this demand is mainly driven by hobbyists and DIYers.

Cloud: There is a Cloud option to configure Crickets remotely – this demand is mainly driven by companies and IOT solution providers

Supposedly we’re looking at 15000 “events” on 2 AAA batteries… MQTT and REST API support, status LED, RTC, temperature sensor, 3v3 out, ESP8266 running at 160Mhz… digital and analog input.. in fact, here’s a copy of their data sheet – MQTT back to local Node-Red floats my boat and MQTT responses come back in Node-Red no problem.

By April 2021 I’d had a while to play with these devices. I long ago abandoned using a single battery as, for me, there were issues with impedance (cheap batteries).

I’ve learned a lot while testing these units – my initial attempts with a single battery did not go well as you need a decent tantalum cap to handle the ESP8266 WiFi power surge. I settled on two AAA batteries for my test units. One of my first batch of three samples (which arrived here in Spain in a simple envelope) worked immediately on one AAA battery out of the box – another intermittently – the third (bashed in transit) not at all.

I’ve made recommendations for future shipping so we can ignore the third sample – now in the bin. Both of the others work fine but as I have limited capacitors to hand, I simply series’d up two AAA batteries.

You cannot MQTT to the Cricket as clearly this device spends most of it’s time asleep in super low power mode. – so do any setup via the local http: interface or remotely via the cloud. See below. However, at regular (or irregular) intervals YOU define, it CAN and does sent out MQTT to either an external MQTT broker or your own – I have MQTT brokers on my Raspberry PIs (and why not, the software is free). My (long term tested) samples are currently firing back the battery state and temperature to the Pi regularly – Sylwester at ThingsOnEdge wrote to me as follows:

"With regards to reading the temperature with the onboard sensor. I think it should provide you quite an accurate temperature value when you set the frequency no lower than 5 mins. The temp sensor is on a chip and it requires some time to dissipate heat."
"There is no way to send a MQTT message directly to Cricket. It is one way communication from Cricket to client devices only. However you can switch on/off temperature as well as other configuration parameters by using http://cota.thingsonedge.com. You can set Cricket to fetch the remote configuration with intervals and once you change settings in cota.thingsonedge.com then Cricket fetches it on an aligned wake up interval and adjusts behaviour accordingly. Please see this section how to do it: https://docs.google.com/document/u/1/d/e/2PACX-1vSLMmeT7LHo52Tu5rUoHpomhnLPz2Lr2JFKQCZevg8mKUv2M87bdbqb_7Al5pN9mxoxY2aqX-CRyLHk/pub#h.ol7i0xnxewrf"

Original packaging issues

I’ve been very pleased with the speed of response from ThingsOnEdge. Like most new companies UK and European companies they have to be careful with shipping charges. After the first lot of samples arrived here in Spain (cost them £3 post in case anyone is wondering) in a simple envelope (no padding) which as I said above, dented two and destroyed one of the units. another couple of these tiny modules arrived – again in a simple envelope, both slightly dented. I’ve commented that it might be worth considering a very thin cardboard addition to the packaging.

Meanwhile, back to the battery question

After wasting much time trying to monitor battery voltage on my digital meter – I did what any self-respecting engineering-type would do and pulled out my handy Owon TA3104 battery-powered tablet scope. See the Cricket bottom right of the image below and my 2 series AAA batteries on the left (covered in tape for lack of a suitable container at the time).

Owon TAO3104 Tablet scope motoring Cricket input voltage over time
Owon TAO3104 Tablet scope motoring Cricket input voltage over time

It is worth pointing out here that with the Cricket battery monitoring set to max resolution (8 bits) the formula to get actual battery voltage is:

Vbatt = (3.5/pow(2,res)) * val

Of course in this case I simply read the incoming voltage on the scope (set to 500mv/div). Even with my experience of ESP8266 devices I’d not really thought of the power up surge and WiFi surge mainly as I’ve not done much with battery powered ESP8266s before. I usually power ESP12 and similar modules with 5v USB supplies. I have had ESP8266 issues in the past with start-up using thin power leads (something I cracked ages ago but didn’t at first apply that experience to the Cricket).

So, despite the key advantage (indeed point) of Cricket being ultra low power, enabling the use of these devices in situations where a power supply simply isn’t practical, it seems you DO have to apply a little common sense in terms of short battery leads etc as the (extremely short) massive voltage drop you see in the scope shot above followed by lesser drops until the WiFi shuts down. Note also the comments from ThingsOnEdge about capacitors.

By December 2020, everything seemed to be all coming together. Using the online service (a simple web page who’s frequency of automatic updating is determined by the Cricket itself) I set the RTC update time in the Cricket to 5 minutes – that meant the Cricket would turn itself on every 5 minutes (hence saving battery power) and send data to their COTA service (which we can avoid for privacy) and to my own local RPi-based MQTT broker (or theirs) and the battery voltage (or that which is easily converted into voltage) and the temperature of the Cricket (assuming updates so infrequent (5 minutes or more) as to not unduly skew the reading).

See image below: The function block does nothing more than the simple voltage conversion I mentioned earlier. The temperature is straight out of the Cricket. That ID number can be gotten from the Cricket itself.

So, by now anyone still reading might be thinking – and the point of this is? As well as the info you see here, the Cricket can return input values…. and what’s so special about that? Nothing much EXCEPT for the low-power aspect. At first, my batteries (AAA * 2) were getting hammered as I was updating every 10 seconds.

Here’s the content of the function block in the image above:

msg.payload=Number(msg.payload)*3.5/256;
return msg;

As for temperature, don’t be misled by the fractional temperature values – actual accuracy is maybe one degree C.

In the photo above, back in February I reduced the reporting rate for my main tests to every 5 minutes and by April 2021, the batteries are still looking new after 2 months of continuous operation. I’d planned to reduce the updates (and hence WiFi powerups) and reduced the voltage measuring A/D from 8 bits to 6 bits or even 5 bits – I need to test the promise that 2 AAA batteries will keep these boards running for several months or even a year or more – you can’t get that out of Tasmota, ESP-GO, or Espurna – right now I’m still using 8 bit resolution. Assuming your WiFi will reach to the far end of your garden (or whatever) these units could prove to be useful.

Original Cricket running on one battery + 1000u cap – short leads

See image above of an original IOTCricket unit – all good stuff – but late evening, after leaving the board running all night while watching TV, I returned to find that on one battery and 1000uF 15v cap (because it was handy), the Cricket had failed after a short time, maybe an hour. The offload voltage of the battery was 1.35v. I left the cap in place and re-fitted the original 2 batteries – who’s voltages were low (2.76v combined) but should have still offered reliable operation. After connecting the batteries I pressed the Cricket button briefly to start it up, 5 flashes in a row – no MQTT reporting – nothing – 15 minutes later – nothing.

I wondered if maybe the electrolytic SMT capacitor I’d fitted was reversed – so I removed it with the battery pair in place. At 23:00 that night, the board was correctly updating every 5 minutes – by 6:30am when I got up the next morning it was down to updating maybe once an hour. I turned up the office heat which had dropped from 23c to 16c overnight – I turned on the air-conditioning which in half an hour took the room back to 22c and the Cricket seemed to be getting back to 5 minute intervals but with the odd missed interval. With several readings in a row correctly 5 minutes apart I noted the two last readings – 7:53am and 08:03am – a 10 minute gap.

THEN I realised there’s a FORCED UPDATE setting which I’d completely missed, so the Cricket was only sending updates on significant change of temperature. Now I leave the units with fixed period reporting – and the incoming MQTT gets logged to Grafana on my RPi4l. The image below shows (not very well) temperature and battery readings since mid-after noon on Dec 4, 2020. The battery did not budge from around 2.75v at all after several days.

December 21, 2020 – Power Rethink

One of my Crickets continued to send battery and temperature readings every 5 minutes since a previous update on Dec 7 2020, using 2 (not new) AAA batteries (as I had no tantalum caps handy) until I discovered that it had all simply stopped. After some testing I decided to abandon the single battery approach, though I’m assured by the design company that a single AAA battery will work when propped up by a tantalum capacitor to handle the surge of current whenever the ESP8266 WiFi starts up.

I decided to stick with 2 batteries, no capacitor. For 11 days I had a Cricket sitting on my shelf, running on a pair of new Kodak AAA batteries – no cap – nothing added, just the board and the 2 (Amazon-supplied) batteries in a holder – collecting temperature and battery data – 8-bit resolution – starting with an offload voltage of 3.29v and ending at 2.46v when the unit finally stopped dead. A future step might be to drop the resolution to say 6 bits and reporting period to 15 minutes – I expect that will lead to a considerable battery life improvement – but my Kodak batteries failed after 11 days… I spoke to the guys at ThingsOnEdge and battery choice ended up being the issue.

SO, I started with a new set of Kodak batteries on the original unit – and a second unit on test using Amazon BASICS AA batteries…. which would take a while to prove anything and I was determined to get several months out of IOTCricket. It is worth comparing AA versus AAA, it seems AA (all things being equal) has a capacity ratio of 2.4 to 1.

So on the surface of it, we’re looking at probably a similar ratio between battery life of rubbish to good batteries – my AAAs were Kodak Xtralife Alkaline and my AAs Amazon BASICS alkaline.

I left both boards running next to each other on a shelf and with a little investigation it appears I could not have made a much worse choice than the Kodak batteries. I ended up with Energizer Alkaline and Energizer Lithium and looking at the specs, both are better suited to low-current, long time application than the Kodaks. The Energiser Lithium AAA in particular appear to have a claimed 3600aH capacity.

By February 2021 I became convinced that the move to Energiser batteries made all the difference…

IOTCricket testing
IOTCricket testing

The reading above, indicating 2.99v and 2.84v for the Energiser Alkalines (their top of the range) were taken after 15 days of operation at the end of which they were showing 2.82v and 2.71v respectively – but check out the pair of AAA Lithiums. Starting at 3.49v they showed an amazing 3.46v – I think the latter are going to last forever! Ok, the Lithiums worked out at nearly €1.50 each at Amazon.es (Prime so no postage) – not cheap but it IS looking like these boards could be left doing duties in the garden, wirelessly. It’s not a big stretch to consider lowering the sampling rate from 5 minutes to 15 minutes and using the saved energy to add in some kind of moisture sensor or similar.

I’ve seen capacitive moisture sensors that could last for ages. I had a couple of the Bluetooth MIFLORA sensor units but honestly – the range of Bluetooth isn’t a patch on my WiFi – I don’t know about anyone elses. I already have 12v-powered ESP8266s in the garden picking up WiFi no problem but when I tried the MiFlora units I had to fit a USB Bluetooth extension from my Raspberry Pi controller right up to the window and even then the result wasn’t that reliable.

So the current state of affairs on April 11, 2021 is that three units have been running since february 5, 2021, two on Energiser Alkaline (Ultimate) and one on Energiser Lithium, with reporting periods of 5 minutes – in all cases the battery voltages look just fine at a combined well over 3v for two batteries.

I now have a practical use for a fourth unit – testing my car battery. I’ll leave the test interval at 5 minutes and will run the analog input at default 3v3 8 bits…. this will need a resistive divider to take a reading off my car battery – this will give me 24-7 battery voltage checking and logging. I want temperature, analog input and Cricket battery testing. Let’s see how this goes.

Update April 14 – 2021 – “Sadly”, my wife decided that it was time for me to go get a new car battery yesterday – so that interesting snd successful Cricket battery monitor project was a tad short lived. AS anyone any ideas for DC voltage detection of external devices that requires self-powering – and NOT car batteries 🙂 It isn’t the only now dead project thanks to the new battery – I now have redundant car quick-starters… https://tech.scargill.net/carku-64b-versus-d28a-portable-car-jump-starters/ – oh, well. Oh, here’s a compatible Adafruit light sensor for Cricket.

Meanwhile – this is interesting – see graph below: In the setup instructions – you can check the Cricket’s own battery voltage in anything up to 8-bit resolution – which is what I’ve used up to now. For an experiment I tested dropping down to 6-bit resolution to save a little power. This works exactly as you might expect. I used COTA (online updating) to change the internal battery monitoring res down to 6 bits – note how my calculated voltage (2 Lithium AA batteries in series) dropped from around 3.5v to 25% of that – so if I want to use 6 bits I just change the divisor I use to 25% of it’s current value… easy – and do I really need 256 levels of accuracy while monitoring the Cricket’s power supply? No… probably not.

Cricket battery info and resolution

Update May 25, 2021

Cricket1 – 2 Lithium AAA batteries started Feb 5, 2021 – ran out of power May 24, 2021
Cricket2 – 2 Lithium AAA batteries started Feb 5, 2021 was working on May 25 but I stopped as it will run out soon
Cricket3 – 2 Lithium AA batteries started April 12, 2021 (dividers on the A/D – other side open ended) ran out of power May 24, 2021.

Mixed feelings about this – I would have expected the AA version to last WAY longer than the other two and Cricket 3 only ran for 5 weeks – all 3 experiments using fresh Energiser Ultimate batteries. I was using 8 bit accuracy on all three units – they were at room temperature (Cricket3 was for a couple of weeks un the car under the bonnet – measuring car battery voltage – the other two constantly in a room temperature cupboard) and 5 minute interval reporting. All three reporting their battery voltage and temperature.

Facebooktwitterpinterestlinkedin

31 thoughts on “The CRICKET from ThingsOnEdge.COM

    1. I want more already – I’m pondering use with a CR2032 as combined temperature and window sensor – could make a very slim item depending on battery life. I also suggested they need to be careful about pricing as it would not be hard to make a cheapo ESP12 board do the same thing depending on the regulator. This of course id good for those who don’t want to do much tinkering.

        1. just a guess but possible reason is the current spikes needed for radio xmission. A capacitor might solve that problem but it would likely need to be on the larger size.

    2. The trigBoard has a much wider application scope as it uses an ESP32 and exposes many more pins including I2C, SPI, PWM, extra ADC, 2 DACs. It does cost maybe 50% more, though. I think for simple sensors and single relays the IOTCricket looks a smart option and you have to admire the thinking behind it and the execution.

      When I first looked at the Cricket I did find, almost immediately, I wished it included I2C. Although on the 8266 it would have to be software driven. It really would make a huge difference to it’s capabilities and application.

      1. A single diode in series with the Li battery will give 3.5V at the top charge side(4.2V) but it will also effect the low side too. Sometimes that’s a good thing as Li batteries don’t want to be discharged below 3.0V. If the device will run on 2.3V or above then the diode/Li battery setup should work.

        A nice “feature” of the rPiZ/ZW is that it’ll run directly connected to a Li battery and stops operating at ~3.3v. Far better to have battery voltage monitored and messaged out but if not, shutdown will help protect the battery from damage.

      1. Seon has already prototyped a feather format board based on the ESP32-S2. His target price is the same as the Tinypico and it has even more potential, taking advantage of the S2 best bits and taking the power requirements/capabilities of the Tinypico. I’m sure that if he hadn’t had all the issues with his pick & place (a sage well worth following!) he would have released the new board by now.

        I have to say that we are lucky to have all these options and people pushing the boundaries for us. Ultra Low power, wide battery options with plenty of GPIO’s in an affordable format => Santas list is getting longer and longer.

  1. Pete,

    What’s the part number on the RTC chip? I’m wondering if it’s one of the newer models with a built-in rechargeable battery and MOSFET for switching the ESP on and off. It might also explain why they’re not breaking out the I2C …they’re using the ESP to reload the RTC alarm registers and don’t want other devices on the bus to mess things up.

    -John-

  2. I’ve got two up and running, talking directly to my own MQTT broker and reporting to my Node-red Home control system. Easy to set up and battery powered.

  3. I have an ESP8266 with a BME820 which reports the temperature every six minutes and has run with two AA batteries for six months. The BME820 is powered down during deep sleep to conserve the battery which is connected without a regulator to the ESP8266. I haven’t looked at the startup voltage drop, but I might consider a capacitor to make it run for longer.
    This is to provide additional control for my Vaillant central heating using Node Red and Blynk and another ESP8266 linked to the Vaillant eBus.

  4. Great device but unfortunately any connected sensor will consume power and deplete the battery. It would be nice if the external 3.3V was only switched on at the time of the reading.

    1. As promised, I asked and got a quick response. The 3v3 is only active when the Cricket is awake… so any device getting it’s power from the 3v3 will be turned off when not being read.

      I2c coming in a later revision.

  5. I’ve ordered one to use as a remote temperature monitor, looks like it will do that job just fine but I don’t tink it will do the ob of monitoring doors opening etc. unless you use a reed switch that is normally open when the door is closed which is the oppposite of the standard door switch. The Trigboard on the other hand looks to be perfect for this task but unfortunately it is far too expensive and costs over a tenner to get delivered from the states!

  6. I found the Cricket concept fascinating, and duly ordered one. It arrived, quite securely and safely here in Western Australia, with minimal delay given the covid pandemic issues. It also had postage included in the price – something I see has now been unfortunately superseded by the imposition of an additional cost. I was very impressed with the speedy TOE response when I hit a couple of problems with getting it to work correctly. I’m running mine from 2 AA batteries, and after three days of 5-minute interval MQTT messages, the battery voltage is exactly the same as when I started. Impressive!

  7. No doubt about it, these are not the most flexible or inexpensive ESP8266 devices, but the low-power has it’s uses and I for one cannot fault the communications I’ve had from this small company.

    I can’t quite match your battery voltage consistency – as you know batteries vary wildly, I’m using Kodak AAA alkaline batteries – from Amazon. Offload 3.29v initially, 3.02 offload after 2.8 days… temperature and voltage reading once every 5 minutes via MQTT. Want to comment in here exactly what you are reading every 5 minutes to make comparison easier? I have the board talking to my Raspberry Pi locally (MQTT Broker on the Pi) – I’ve included a photo of the Grafana graph on the Pi.

  8. So I checked my settings again, and it looks like I configured this on 17 Jan – 8 days ago. It is using two (previously partially used) Ikea AA batteries (I find Ikea is a good place to purchase batteries, especially their rechargeable ones). The voltage on startup was 2.73v – I’m using 6 bits of resolution; the RTC is on; I sample temp every 10 minutes (mostly in high 20s – well, it is summer!!) and after a week of continuous use, the voltage this morning is down to 2.54v. Not too bad! No, not the cheapest of devices, although it was very pleasing to see that postage, even ‘down under’ was included – although that has, unfortunately, now changed. And as you say, very impressive service from TOE.

    1. My only concern here is that 2.54v is the offload voltage – we’ll have to wait and see if much lower than that is able to sustain the WiFi startup current – ideally these things should run for months. I started with fresh batteries this time – on jan 22 late morning. I’m doing every 5 minutes, can’t remember if I’m doing 8 bits or 6 bits… voltage and battery measuring. A couple of power cuts in the middle don’t help though my RPI self-recovers from that… it is now lunchtime on 25th – battery total is 3.05v. Temperature varies from 18c-24c – winter here but this is in my office. I’m checking in every day.

    1. The only issue I have with that is that in America that price is high, outside of America it would be unfeasible. For me to have one of those Trigboards sent to Spain would be utterly impractical – $29 + tax + duty + shipping – I think not… Erm, has anyone though of taking a simple ESP8266 board (3v3 operated – without regulator or USB as both would contribute to current consumption) and putting Tasmota onto it… I’ve not checked as low-power isn’t normally my thing but I’m sure I’ve seen something about sleep in the Tasmota commands. It really isn’t rocket science.. erm, yes, command DeepSleepTime.

      More on this later as I have a Google MEET call coming up with ThingsOnEdge to get some more info from them.

Leave a Reply

Your email address will not be published. Required fields are marked *

Leave the field below empty!

This site uses Akismet to reduce spam. Learn how your comment data is processed.