(06-02-2018, 11:21 PM)evilbunny Wrote:(06-02-2018, 09:48 PM)pfeerick Wrote: Although I'm not sure what the fuss is about for a RTC on a SBC... what's wrong with the network time? Or just adding your own I2C RTC if you really need it (like we used to do with the rPi? :-P Gotta have some ingenuity... can't have it all served up to you on a platter... where's the fun in that? :-P
One real world example I have is my r64 is hooked up to a weather station. Software then tries to download missing records while the r64 was offline, this occurs before network or ntp is up and running, this can be delayed, but my solution was to hook up a car battery to a UPS, but RTC would have been nicer.
Exactly, SBC's are often used in portable devices that need accurate time keeping when not connected to the network.
On my Raspberry Pi's I use one of those little coin cell driven DS3231 boards, but found it a pain to always have to install drivers. Now I think the Pi does have RTC kernel driver support that can be activated in boot config, but have always just used the script I wrote.
This highlights what I consider the bigest advantage of built in RTC support - STANDARD BUILT IN DRIVERS.
One thing I do like about the DS3231 based boards is that they are MUCH more accurate than typical simple 32.768kHz crystal based RTCs because they are temperature compensated. You can run them for months and still keep time accurate to a few seconds per month, but if someone needs that kind of unattended accuracy, they can easily add one of these add-on modules as pfeerick said - BUT THEY SHOULDN'T BE FORCED TO DO THIS JUST TO GET BASIC RTC FUNCTIONALITY.
The simple built in RTC clocks provided by these ARM chipsets are good enough for most folks, and will also keep great time if auto synced to Internet time every few weeks, and I find it offensive as an engineer that the end user should be forced to pay 5 to 10 dollars for an add-on module, and deal with custom drivers, just because the person who designed the board was too cheap to spend 25 cents to add the parts necessary to make the on-board RTC functional.