ruuvi / com.ruuvi.station.ios

iOS Ruuvi Station
BSD 3-Clause "New" or "Revised" License
34 stars 21 forks source link

Chart time period: default should be 1 hour - not ALL - improvment 2.8.0 (2406062026 #2042

Closed DG12 closed 1 month ago

DG12 commented 1 month ago

With the current default for the chart time period of all , sensors with a large quantity of data will stall charting. This causes a poor user experience, especially on the first attempt to chart a sensor.

When a sensor has sufficient data, station will become non-responsive to any tap (including attempting to reduce the time period). Even the n agodoes not update!

Perhaps a warning popup should be presented when the user selects a time period with more than ?,??? datapoints stating that this will take a while. This will also distract the user.

With a default of 1 hour the best experience will be provided.

markoaamunkajo commented 1 month ago

@DG12 which iPhone model do you have used for this test?

laurijamsa commented 1 month ago

@DG12 the performance issue you are describing definitely should be addressed. However, doing it by limiting viewport history length is not correct way of doing it. The user experience should be smooth no matter if user has selected 1h or 10 days.

DG12 commented 1 month ago

Agree. Definitely NOT suggesting limiting. Rather initializing default. i am using a iPhone 10x

markoaamunkajo commented 1 month ago

I did some foreground scanning "stress tests" with my old SE. There is a limit for old devices to handle large amounts of data, which is why we have a setting to disable showing all datapoints in charts. When this setting is set to disabled I can browse confidently between charts even with closer to 400k datapoints. Yes the experience is still sometimes slightly sluggish but I expect this to be usable in most use cases.

https://github.com/ruuvi/com.ruuvi.station.ios/assets/50437378/f2e443af-5fa4-4a61-a76f-58e9f5fa51c5

markoaamunkajo commented 1 month ago

@DG12 does the performance issue improve for you if you go to App Settings -> set Show All Measurements to disabled? We are well aware of the issues that significant amount of data can cause bad behavior on old devices.

DG12 commented 1 month ago

I have not changed from the default i.e. show all measurements OFF

DG12 commented 1 month ago

As this seems to only an issue where the many datapoints cause a crash or is very slow. I still think initial user experience would be better if installed default were 1 hour