Use this forum to chat about hardware specific topics for the ESP8266 (peripherals, memory, clocks, JTAG, programming)

User avatar
By DrG
#33510 [quote="ahull
/--- snip --/
DrG, your approach does have many distinct advantages, not the least being that it uses easy to source parts, and well documented code, however it would certainly be useful to explore the built in RTC in greater detail, in case it can be pressed in to service, potentially saving component count, pin count and complexity.

The problems I have uncovered in my brief trawl round the internet for information on the ESP8266's built in RTC, do not however paint a very clear picture. Furthermore, some of the pins required to use it, may not be brought out on most boards. VBat and the RTC oscillator input for example. I'll keep trawling however and see if I can make any sense of what I find, in particular I'll see if there is any similarity between the Cadence documentation and any info for the ESP8266.[/quote]
______________________________ (I messed up the quoting and am too tired to figure it out)

Truthfully, I couldn't agree with you more and personally I think that the longevity of the ESP is going to depend a lot on the available documentation. There is a limit to how much the "community" can uncover and when others show up with clearer documentation it is going to be a more competitive situation. I *almost* went for a Microchip board at ~6 times the price because I knew the documentation was there and detailed. Recently, I bought a photon using the same reasoning (I haven't even open the cute package it came in). For this current project, no way I get as far as I have without the ESPArduino interface (and I know that there are others).

I am regularly faced with wondering if I should choose dirt cheap prices that sometimes seem like they leave it up to you to figure out...your time is worth something ...blah blah blah. But right now, today, I am pretty darn impressed with these things.
[end soapbox speech]
User avatar
By trackerj
#33526
trackerj wrote:
wififofum wrote:
trackerj wrote:Still running, uploading temperature and humidity data every 10 minutes:


Still looking good. Must be over 1500 transactions by now?

https://thingspeak.com/channels/58350/c ... 2015-01-01

Did you ever post the full schematic for this?



01 Nov 2015 : 1788 Entries
Still working OK: https://thingspeak.com/channels/58350

Will see how long it will last. I was not thinking at a long time run, just used a small, random selected battery available around, without full charging, plugged-in "as-it-was", somewhere at 4.05V. Unfortunatelly don't even remember when charged it last time, so, when will go off I will charge the battery full and give it another run for a more comprehesive test.

Did not post yet the schematic (still adjusting some things on it for a v3 ) but when happy with, I will post all the info and made it available. On the basic, it's nothing more than a clasic Li-Ion battery charger with RTC power monitor to be added to your ESP8266/Arduino/whatever board you want:

cbdb_v3_5.a_top_finished_1_2.jpg


Or as a dedicated ESP8266 board, all included:

cbdb_v3_5.a_top_finished_esp8266_1.jpg



09 Nov 2015 - 2878 Entries / 3.76507V
Still working OK: https://thingspeak.com/channels/58350

Have tested also a MCP79410 RTC version, looks good so far.
As soon as I have some decent schematics, not my hand written notes, I will publish them. Working on it . The idea was to run tests with different IC's and configurations to have more than one RTC solution.
User avatar
By torntrousers
#33529
ahull wrote:
DrG wrote:
ahull wrote:Does the ESP8266 not include a built in RTC? If so it would most likely be based on the Cadence IP defined here. Assuming that it exists, and that the on-board RTC is powered from the same source as the main processor, does this not make an additional RTC redundant?


Nope, not redundant in my view. The main purpose of using an external RTC - and the original purpose of this thread - was to develop a circuit that would power up the ESP8266 and related circuitry and various intervals. After doing its thing, the ESP would then shut itself off. The RTC would then turn things back on for the next interval. The idea being to have some very long lasting batteries as you would be drawing juice only when the ESP826 needed to do its thing and then only briefly. This could, potentially surpass even deep sleep type low power solutions.

The power circuit that I arrived at has already appeared earlier in the thread and it represents improvements based on some comments from some contributors. It is working just fine and I am close to actually doing a long term test.

Also, while some would call this a classic solution, my approach is to share the schematics and code out for anyone to use and improve.


DrG, your approach does have many distinct advantages, not the least being that it uses easy to source parts, and well documented code, however it would certainly be useful to explore the built in RTC in greater detail, in case it can be pressed in to service, potentially saving component count, pin count and complexity.

The problems I have uncovered in my brief trawl round the internet for information on the ESP8266's built in RTC, do not however paint a very clear picture. Furthermore, some of the pins required to use it, may not be brought out on most boards. VBat and the RTC oscillator input for example. I'll keep trawling however and see if I can make any sense of what I find, in particular I'll see if there is any similarity between the Cadence documentation and any info for the ESP8266.

I use the built in RTC. I can see the external RTC approach has some advantages but using the internal one has some too, not least is its free, and doesn't have the complexity of the extra components.

Using the internal RTC with deepSleep I get a sleep current of around 16 to 35 microamps, seems to depend a bit on the setup and individual ESP boards. Thats probably a bit more than the external RTC approach uses but its still low enough to allow batteries to last a long long time.

The internal RTC doesn't have as flexible alarms as an external RTC, it just allows sleeping for some microseconds and the maximum is about 71 minutes, so to sleep for days requires keeping track of the time over multiple sleeps. I've an example of doing that here in a sketch that publishes readings once a day. I've tried that on several ESPs and they all seem to run a bit slow so it loses about 7 minutes per day, which probably wouldn't happen with an external RTC. I mean to enhance the code to get the current time from the HTTP Date header that comes back from the publish and adjust the sleep time based on that, but i've not finished that yet...
User avatar
By Philbot
#33705
DrG wrote:UPDATE: So this is where I am at with the project.
That's where I am at right now, I will keep all updated and I am fine sharing the code on any of this - especially after I "unslop" it :) Just ask.
DrG


Hi Dr. G.

I have a 1-wire based environmental monitoring system (web reporting) that I developed 8 years ago (http://www.welserver.com) and I have deployed it to nearly 1000 sites. Recently I'be been considering augmenting it with a ESP wireless solution.

I've been trying out some ideas, but your approach seems pretty applicable. Naturally I'm very interested in seeing the recent specifics of your solution, but I'm not looking to just grab it up. Is there any way I can help contribute to your own project with some time of my own? This could be design, fab, development or even testing.

Note: I'm an accomplished embedded software developer, with a lot of custom circuit design experience. I'm also very active mentoring youth robotics teams. Here's a fun kickstarter I just did with a couple of kids. https://www.kickstarter.com/projects/82 ... g-made-fun

Phil Malone.