I previously set CurrentTime to the current time on the system. I've changed it to 'Not Set' so dev's can identify any configuration errors. I've done this because I fell foul to that problem already. When I was initialising MainPageVM, I was using DateTime.Now as the default value and when initialising it in the View class (MainPage.xaml.cs). This confused me because I couldn't understand why the time wouldn't update when I change the code.
Basically, I was updating MainPageVM because the time displayed on the dashboard matched what I set it as in the ViewModel. But, the time was being changed in the View class (at run-time) with the DateTime.Now property.
The logic for 'factory3' and 'gallery3' is still in place but is not bound to the view (MainPage.xml). The view xml is commented out and not removed. This should make it easier to re-add it if the need comes about.
'factory2' was not updating its timestamp when it received a new reading. It was binding to the wrong property in MainPage.xml (view model). This changes the property to the correct one.