NimmLor / esp8266-fastled-iot-webserver

A universal software for all my LED projects, with many awesome features
https://www.thingiverse.com/surrbradl08/designs
GNU General Public License v3.0
366 stars 94 forks source link

Android/(iOS) App #131

Open NimmLor opened 3 years ago

NimmLor commented 3 years ago

Hi, I'm thinking of building an react-native app to control the LEDs.

React-Native is a framework that allows to build hybrid apps that run on android, iOS and even on the web. However, I'm not planning to release to the app store because of the yearly fees (~ 125$/y).

In the first stage I'm planning to implement just the basic control UI.

Your welcome to post some feedback and suggestions here 😄

bb-Ricardo commented 3 years ago

Hey,

you could do that but I think this is a bit too much. It would definitely integrate much nicer but also takes quite some time to develop. And I would need to compile it myself to get it onto my phone.

I was searching for generic LED control app where we would just need to implement the endpoint but couldn't find anything.

Also Blynk sounds good but this requires to use an IoT cloud or running your own instance locally.

I think the current solution is quite ok. Just needs some UI improvements. And Uploading the data to the filesystem should also be improved, that you don't need the Arduino plugin (just don't know how).

Maybe loading from github: if (wifiConnected && SPIFFS.bytesUsed == 0) { getDataFromGithub(); } or something like that.

bb-Ricardo commented 3 years ago

There is another popular (W)LED webserver project on github which has a good color picker and pattern controls. But the settings pages are really ugly. Maybe this has some inspirations on improving things.

WarDrake commented 3 years ago

I've been using homeassistant to contol mine, I never even open the web settings anymore, homeassistant is built on react and it's a great way at least for me control it I have the UI I like.

also, the app you wouldn't need to compile Ricardo, it could simple be added as a different git repo with it's own releases and you just download an APK that's open source.

as for endpoints, anything that can send MQTT messages can control the leds using the mqtt integration already, tho webhooks could be easily added.

CrimsonAC commented 3 years ago

In my case, i am planning to control the LEDs via MQTT, too. So in my opinion there is no need for a dedicated app to control the LEDs. The webserver should be sufficient for someone who does not use automation.

kraa965 commented 3 years ago

and as for me, it would be cool to create a separate application, so as not to go into the browser, but just through the phone turned on and everything, just through the phone you can connect several panels. it would also be cool to make an implementation of this type, so that through the phone you can create a diagram of your panels. Nanoleaf-Aurora-Rhythm-App-889x722 here is an example implementation from a human FY9KC25KHYUJL35 only here it is implemented through code editing, and if you make a graphic designer, so that you can edit it in the browser or in the application.

philippnbg commented 3 years ago

@WarDrake how did you integrate the endpoint to homeassistant and how do you control the various settings via the homeassistant-frontend? so far i did not find any custom integrations (e.g. via HACS), nor natively

WarDrake commented 3 years ago

The integration to homeassistant is baked into the firmaware, you don't need a custom integration Enabled MQTT in the firmware Enable MQTT in homeassistant

and the leds will show up immediately as a light image This is my control card for them image These are the details when you open the entity itself.

I added some custom made scripts for things like activating certain patterns with certain brightness and speeds or controlling toggles with voice from google home by triggering custom toggles in HA that are linked to them.

But the basic integration is baked into the firmware by default you only need to enable the MQTT functionality in it (uncomment Line 165)