Help with Pi hardware for work

I have a project at work that uses raspberry pi’s and I need to add a piece to the hardware. It’s an external system clock.

This is the clock

Its got to go on a Pi 2 B that is running Windows 10 IoT

Is there anyone that could help me get these set up? If so, how much would it cost?

Here is the use case in case anyone is curious:

The device is used only occasionally, it spends days unplugged. When it is plugged back in it often will not have an internet connection. This causes a problem because the Pi still thinks it was the date it was last powered on since it can’t reset it’s system date over the network. This causes all our data to be recorded with the wrong date time stamp.

We are hoping having the external clock with battery will solve the issue.

2 Likes

It seems fairly well documented:

Is there some part, specifically, that you need help with?

4 Likes

I would assume some of his difficulty is doing the equivalent in “Windows 10 IoT”.

Not sure how much it helps (just now hearing about Windows 10 IoT for the first time), but not sure if you’ve seen this short thread:

Reading a serial device like this RTC is trivial in Windows 10 IoT.

Open the port, send your command, read the response. Literally just a few lines of code.

Edit to add: I’m not sure if you’re looking to set the system time or if your application needs to just read the time from the clock. If the latter, this is trivial.

Setting the system time is not something I’ve done in Windows 10 IoT, nor have I set up an RTC that the OS is automatically aware of.

Yeah, I’m sure it’s not a big deal, but apparently taking that data and setting the time requires a powershell command according to that Stack Exchange thread due to a lack of API’s?

I’ve literally never heard of “Windows 10 IoT” before this thread, but I did a lot of Windows programming a long time ago. These days my life is all in containers.

1 Like

This is an I2C device, while I doubt it’s difficult it’s probably a bit more convoluted than a UART.

The TX/RX pins on the board are simply bringing the rPI uart up so the user can access it since this board covers them up. They’re not connected to the RTC.

Never actually seen anyone using Windows 10 IOT before. Linux is a bit too much abstraction for me, I imagine windows is much worse.

1 Like

Nope looks TTL serial to me.

Regardless, there is good support in Windows 10 IoT for SPI/I2C and serial.

Quick google found a function that sets system date:

Windows.System.DateTimeSettings.SetSystemDateTime(dto);

dto is an object of type DateTimeOffset. Haven’t looked it up but I’m sure the constructor has a few simple parameters.

So you’d read the RTC using serial commands (see data sheet). Use those values to create a DateTimeOffset and then call SetSystemDateTime().

In the sense that I2C is a TTL level serial interface, yes, but it’s quite distinct from UART, which is what Linux and Windows refer to as a Serial port.

The schematic on amazon and DS1307 datasheet clearly show this…

1 Like

I completely missed that part. Well, I take back my suggestion.

Why one would want to proliferate Windows is beyond me. :slight_smile:

1 Like

This is why you should switch to FreeBSD (or NetBSD – even more spartan).

Michael is 100% correct. I2C is synchronous, meaning it has a clock line, while UARTs are asynchronous (no clock line). This part is I2C and has CMOS-level I/O, not TTL.[1] :wink:

[1] http://e2e.ti.com/support/logic/f/151/t/862744

You’re right. The fact that it’s also connected to the (async) serial TX and RX pins on the Pi - and the unconventional labeling of the pins on the clock board - threw me. I didn’t look up the clock chip.

In any case, reading it is easy from within an application on IoT Core.

I appreciate all the help, most of the documentation above may as well be written in Klingon as far as my developer skills go. I’m a career ux and front end guy. I’d be lost without all your input.

I got a pm from someone who is helping me.

As to the question of why windows 10… It was originally running on Linux and working for it’s original requirements. When the prototype got advanced to development the developer at my office inexplicably rewrote the whole thing in c# on windows 10… I had no idea until I got it back to qc it. That dev no longer works for the company.

That said, this bug is a problem with how we are trying to use the hardware not the software. I would have had to fix it either way, but as far as I can tell from what you have all said above, with Linux adding the clock would have been a little more straight forward.

While I don’t understand much of this stuff I do find it terribly interesting. That’s why I was working with Raffi to try and have his committee do a hackathon. Perhaps when we reopen we should revive that idea.

2 Likes

Windows 10 IoT Core was actually pretty cool. But they gave up on it and stopped development. Very easy to use and basically no relationship to Windows as we know it.

Another company called GHI Electronics picked it up and are still adding features.

If I start down that path next thing you know I’ll be using emacs.

1 Like

Every project I worked on that was to be deployed with MS/Windows tools ended up being screwed by Microsoft abandoning the tools.

Example: Widows SmartCards, they had the best solution to storing fairly decent datasets on the card 16-24kb. As soon as we were ready to deploy for offshore training tracking, they stopped licensing the manufacturers who made the cards. It was buy 1 million cards or nothing.

Shlumberger jumped in and saved the project even though it was for a competing oil company. They made good where Microsoft was no longer interested. Microsoft has a history of leaving a space if the market does not grow at the pace they want. It’s like they have developers with nothing to do and they have them develop a new SDK to keep them busy. Once complete they have six months to get returns all the while dragging the market around.

2 Likes

A Nissan project I worked on was burned by this. They signed a big deal to integrate Cortana into their cars. Then a year before launch they killed Cortana. BMW was part of the deal too but they saw it coming and jumped ship to Amazon auto.

1 Like

This is off topic but you work for Integer? Did you work on the NFM project?

1 Like