OpenEnergyMonitor Community

iOS app thoughts

Tags: #<Tag:0x00007f1be323f068> #<Tag:0x00007f1be323eed8> #<Tag:0x00007f1be323eca8> #<Tag:0x00007f1be323eac8>

Hey all.

So I’ve been developing the iOS app. All going well so far. However, I’m in a bit of a rut and I realised that it’s largely down to me not having a good plan for what to support.

My initial thoughts were to be the same as the Android app, i.e. MyElectric. But then I realised there’s a couple of issue with that:

  1. It’s not very extensible. I personally use MySolarPV (well, my +divert one) on the web app. And so I’m not particularly fussed about the MyElectric. Shooting for that alone seems limiting.
  2. I thought that a list of feeds and current values would be important in the mobile app.
  3. I liked the idea of being able to decide on your own graphs in the mobile app, and combine them to make your own little dashboards.

However, I’m getting a bit stuck. I just don’t know which direction to move in. I’m at the point where I need to dedicate some work time to moving it in the right direction.

So I’m soliciting opinions and thoughts. What direction should the iOS app move in? Options are:

  1. Mirror the apps from Android / web app. Just single MyElectric, MySolarPV, etc.
  2. Mirror the apps from Android / web app, but allow you to have multiple MyElectric, etc. Benefit there is you can have a MyElectric style dashboard for your overall consumption, or for other things.
  3. Keep going on being centred around feeds and charts. And go all out on that, adding more options and features like bar graphs, combining charts into little dashboards, etc.

Help! Especially folks who are on the beta testing of the app - I’d love your thoughts as you’ve got the app to play with.

Just to jump in, hopefully the Android app will be more extensible soon!
I think the predefined MyElectric dashboard makes it easy to get started for new users, so I’d be hesitant to remove. The ability to have multiple instances of any of the predefined apps would give a lot of flexibility without requiring you to be a power user - could be quite time consuming to set up a lot of your own dashboards if you have a lot of feeds etc.
I’ve actually got access to an iPad at the mo, so I’ll see if I can have a look at your app, I’m interested to see how you’ve approached it! :slight_smile:

Good questions, hard to reply and I guess we need some brain storming

But before going into that very long street … let’s try to be realistic. I have your test app and I played some … and I already got basic questions coming up from day one

  1. how far can we push the graphical part on small screens without going to the extend to try to reproduce what we have on a computer screen about 20 times larger ? Is this useful ? Some will argue yes as they don’t have another option then a phone … but are those people really using emoncms ???

  2. In my case I have 2 nodes with about 30 feeds, I know some have way more … already when I see the page with my feeds … try to find your way in there … it works but user friendly ???

  3. started to make some graphs … but basically I’m re creating what I already have on computer … I’m just making mobile what already exists … nothing more … where is the added value ? I have to keep 2 systems up to date if I change things …

So basically I came to the point, what do I really want on my mobile ?

  • Access to the graphs but not by recreating them … ok, just use safari then and go to the page … -> what we really need is responsive design then … what else ?

  • mmm what would really be a plus is that I get alerted when … definition to make -> sends notification -> I can interact … can we remotely do something via emoncms only ? not much except if we rerouted stuff via ex node-red etc but here we go to ‘expert’ level

  • and what about the novice one ? He’d like to see some simple data displayed I guess, a bit like the solar thing … easy to set up (Android style)

Whatever route you decide to go, I would suggest to go in stages … and have 2 levels. The lambda user just wanting to see what happens (setup in a few easy steps) and maybe after that add an expert level (that can be opened via a preferences so lambda users don’t get caught in there and run away). In which case the data has to be structured, prepared so it can be done from day one.

:head_bandage: ouch we have quite some extra thinking to do here before we reach some framework … but let’s see what others have to bring in here

All very good points, and thanks for the detailed thoughts. It seems we’re pretty aligned. There’s so many ways I can take it, and I want to do what people think is useful.

You’re totally right that we shouldn’t just replicate what we have on emoncms web app, because that works fine. My SolarPV + divert app works great on an iPhone screen for example. However the downside there is you have no offline caching, or ability to do something on the watch, etc. But then again, how much does that matter? I haven’t found it an issue yet.

I’d love some other thoughts here. What do /you/ want from the iOS app? What do you miss from not having an app?

Right. I’ve been doing some thinking about the direction that the iOS app should go in. I thought a lot about the comments from @bidouilleur. And that’s totally right about people want the iOS app to be a simple to set up thing where you can just go and see something quickly.

The fruits of my thinking are that actually the app should be focussed around the apps, just like the Android app. My plan is to backtrack a little (don’t worry, not much effort went into what I’ll end up taking out) and remove the saving of charts bit. And then add back in the apps.

I want to make the apps a little extensible, so each will be a sort of template. You could therefore have 2 “MyElectric” apps if you wanted. This is something I know the Android app is moving towards. You could then have one to check on solar generation, one for electric usage, one for car charging, etc.

I’m a little unsure if the “Feeds” tab needs to stay in the app if the app becomes heavily focussed to the apps. Or if the app should even be tabbed like it is at all. But that can easily change, and for now the feeds tab is quite useful in my opinion.

Thoughts anyone?

Tagging all those who have got the beta:


Matt - I updated to iOS 10 a few days ago and downloaded the app. I like what you outlined above!

The only item I would like to add would be to display Dashboards (the items in this area):

Maybe this is the Templates you mention above?

No editing of Dashboards, just viewing. Maybe this can be a version 2 or v3 add. No need while learning.

To replicate the dashboards natively would be a lot of work. And possibly not useful. The reason being that it would mean duplicated effort on the iOS app and the web app. Rather, I could pretty easily add in the ability to list your dashboards and view them in web views inside the app. You’d get no offline support, but would that matte? WDYT?

I’m generally in 2 minds about it though. Is there enough utility in this on top of just using Safari to view your dashboards? I for example have an iPad and an iPod Touch around my house which display different dashboards. They’re added to the homescreen on the device using Safari’s “Add to Home Screen” feature. And that works awesomely IMO.

Thoughts? Do you see utility in having it alongside being able to get to it from the web site anyway?

Right now I have all of the functionality via Safari’s “Add to Home Screen” feature. So I have 3 or 4 “shortcuts” on my Home Screen that points to My Electrical and the Dashboards I regularly view.

So maybe the question is: What does the iOS app (or the Android app) bring to the table beside integrating them into a single app?!? And for me, that would be enough so I don’t have to back arrow, find a little itty bitty menu, click on it, center it, etc. The simplified menus and standardized apps (one size fits all) is good. If Dashboards cannot be done natively (without lots of work) I’d be OK with accessing them via a simplified menu (via a web view / like a shortcut).

Does this help or did I just muddy things up?

EDIT: My guess is the Templates & extensibility (mentioned here: iOS app thoughts)
may be able to do what I want. So maybe we should flush that out…

Hi thanks for the work so far.
The thing I am most keen for is a “my electric” widget. As you say not a lot of utility in replicating the website. Any web view to get at that content would be fine

Yeh that’s helpful!

For me, the iOS app brings also the ability to have some offline support (largely cosmetic, and you tend to want up-to-date info, so not the best example). But, the real killer of having a native iOS app for me is to have a watch app and a today extension. The today extension for me will be really useful. Being able to swipe left when on my lock screen and see details about how my solar is doing. That saves lots of taps, and it’s right there ready when I need it.

But, I could see that quick links to dashboards is useful. I’ll see what I can do to add this in so people can play with it and see if it’s worth having / extending upon.

Agreed. That’s where I’m headed now. I actually have the code for 99% of it. I just took it out of the most recent builds (and it’s hidden in master right now) because I thought it wasn’t the right way to go. I think it is though…

WDYT about the feed list of the app currently? Worthwhile?

1 Like

I like what you created with the Feeds. I’d use it when I see something “odd” on the My Electric app (e.g., too much power being used). As far as worthwhile - I look at it as a “nice to have” versus a “must have”. (if I was troubleshooting from an iPad, then it would be closer to the “must have” side, but that is not the case for me)

When I scan the QR code, it fills in my data correctly but I get no feeds.

My thoughts on My Electric app (and apps in general): They don’t work well with USA power, since it’s split phase: we need 2 CT’s to read the main breaker, so the UK defaults are not very useful. I end up making my own feeds/dashboards.

Hmm interesting. It never loads at all? Can you try pulling to refresh? And are you on an up-to-date emoncms?

JD - I use emoncms in the Chicago area and it works very well with US power. Yes, you do need two CTs (one CT for each leg). And My Electric works as expected. There was only one default that I needed to change to flip things from UK to US. See section 3 in:

mee too (see bug)
also can’t get feeds from a local emoncms either

I just deleted the app and re installed it via testflight, scanned qr code and works …
You instal manually or via testflight ?

That sounds good. I do however like being able to look at the raw feeds. It is kind of a way to verify that the app is connected and to check against digital inverters and such . Something I wish the android app did. The graph idea is cool too but I can see how that can be limiting on a mobile device.

The feeds will stay for sure. Current idea is to have MyElectric on a first tab, feeds on second (and you can drill into them to see graphs) and settings on third tab.

I’m very close to having MyElectric usable for all. Will release a new beta when I do.

Sounds good.

Yes, @tamsin is working on this. I have seen a working demo.

Yes, totally. This is exactly the path I think the mobile apps should go in. The apps are the most useful thing to view on a mobile device. Getting MySolar into the Android/IOS app in the future would be great.

Agree, its’s useful to be able to easily check the values from any feed via the app. I wish the functionality was in the Android app!

Agree with @David_Hunnisett a widget / notification tray display would be useful. This is also a feature I would like see in the Android app.