Mycontroller 2.x ideas
-
Hi jkandasa!
I recently found your project, and I really like it. While studying the capabilities of MyController. I wanted to wish to document the initial start for beginners in more detail. I must study by trial and error.
I plan to use MyController in conjunction with NodeRed via MQTT. This approach seems to me promising in my opinion a beginner.
I wish you good luck and creative success! -
Great news that version 2.0 is soon in progress!!
I would like to see a more user focused product with many more guages 'out of the box' and colour options to fully customise the web interface, individual graph colour options, and more drag and click to setup the windows in the dashboard.
I strongly suggest you go to the my sensors site and visit all the 'other' controller sites to seek inspiration to take your next version to the top!I think the automation rules/actions is far to annoying in its current state and a better way of getting something to happen based on conditions would be a bonus.
I'd prefer to keep the operations in one place on one page, that would help to start with!It would be nice if we could also have the ability to add a video window to the dashboard pages. I use motioneye as cctv controller and would love to easily be able to add cameras from this to the mycontroller pages. All cameras are pi+camera and motion pi runs on a pi3 next to the mycontroller pi. An option to have a 'pop-up' video window on motion detect would also be nice to have.
Ability for dark mode display on timer or light sensor. Good for night time usage and also powersaving.
Ability to add floorplans for bulidings and surrounding area (gardens, outbuildings) etc with sensor locations and sensor status shown on there. Would then see at a glance which security sensor has triggered the alarm on the plan.
Ability to add photos similar to the above. Then taping or clicking on (for example) the lamp in the photo of the room would control that item.
Built in voice control - but probably a step too far for a controller, but maybe the ability to interface with another pi running voice recognition. This is very low on the list though.
Full support for 'ack' messages and better debugging of the system. Maybe some form of test page where each sensor can be interrogated and report back the result?
An automated installer! - I think that setting this all up puts a lot of people off even trying it,which is a shame. Add to that an updater script. These two things alone would improve usability to those who are put off by the current process!
Battery level graph on the dashboard. A must really.
Ability to zoom and pan the graphs within the dashboard environment. Would be probably more use on tablets, but with mouse would also work.
Easy implementation of min/max values and reporting.
Easy support for 'multi use' sensors. E.g. A motion sensor in my kitchen has various modes. Armed = send alarm on detection. Perimeter= Turn on kitchen lights on motion detection and leave on until no motion detceted for x minutes, but only if it is dark enough (that info is from another sensor). Off = Do nothing on sensor detection. Currently it is a pain to get this type of thing working.... which gives me the idae to be able to create a rule and then use that rule as a template for the next sensor/actuator by copying and changing the node/sensor/automation to suit, that would speed up setting things up!
I hope this will give you some thoughts to making an even better mycontroller in 2018!.......
Thank you for making and sharing mycontroller and making this all possible in the first place - Your support and talent is amazing!
Thank you!
-
Now you mention it it would be nice to have an "and" / "or "condition in the rules section...
-
"and before 25, December 2017, version 1.1.0 will be available for the public"
Ahem.........
I am sure it will be well worth waiting for
-
@skywatch Thank you for the excellent feedback on 2.x release.
Just now release 1.1.0.Final
-
Another thing myc needs is 'real world' feedback on the dashboards. - I'll explain the problem....
I have a page with 4 switches which are used to turn power on/off to devices via a 4 relay board. It works well. But if the node goes down for any reason the dashboard for that room does not show this and the switches still show an on/off status even though the node isn't responding.
So if I were to turn on a light or heater, it would show as being on in the dashboard while in real life they are still off. I guess this goes with the 'ack' processing I mentioned before, but its an issue I had just now with no sound from the amplifier for this very reason. MYC showed the amplifier as 'ON' but the node was down (due to the robot vacuum chewing the cable and pulling it out under the unit ....Grrrr....) and so no sound..... This would be really bad with electronic door locks and some other systems (like thinking you turned off the garden watering system only to come home to find your lovely lawn replaced by a paddy field!)..... -
@skywatch Yes, it is a good feature. I hope this will be covered by ACK response. Which is not supported at this moment.
-
It would be a bonus if there was an easy way to set up MYC to store all sensor data on an external lan server/nas running mysql.
But I suppose that if the server/nas were to fail then data would be lost, but MYC pi should still function - So maybe have MYC push data to the serve/nas at a user selectable intervals keeping only most recent data on pi and switching to pi storage if the server/nas becomes unreachable?
-
@tag said in Mycontroller 2.x ideas:
I am using InfluxDB for approx 1 week now where mycontroller simply "dumps" the data. This is a really cool feature. (when you mention influx are you planning to use the complete "TICK" stack which influxDB is part off?)
I also really like the philosophy of the TICK stack.
I just try the rest of the TICK programs (Chronograf,Capacitor,Telegraf) and so far very pleased with their capabilities.
It would be very cool to integrate into the MyController 2.0 a complete TICK stack. -
Good point
IMHO the "TICK" stack is very complex, and therefore maybe not so suitable for a larger audience, the beauty of mycontroller is that it is relatively easy to install and use.
InfluxDB can be setup automatically..Another thing that needs to be taken into account is that the TICK stack is very resource hungry (ofcourse depending on the load from the sensor network), the OrangePIzero will have a hard time with just 512MB memory... even 1GB is small for the complete stack.
Just my 2 cents..
-
@Tag
Maybe you're right. I have not tried to load TICKstack with a lot of data streams from sensors. I installed all parts of TICKstack's and I'm studying the possibilities of this system with one temperature data stream and three relays.The memory capacity of Orange Pi Zero is still sufficient.Maybe then it makes sense to provide interfaces for the interaction of MyController 2.X with Kapacitors, Cronograf and InfluxDB, and TICKstack itself should be installed as an option?
I want to find a simple and beautiful dashboard with drag and drop programming. -
@wanvo
Mycontroller is beautifull
Try influx and grafana4 this will get you a highly customizable dashboard with all the stuff you want.
I did a setup of mysenors --> mycontroller --> influxdb --> Grafana4 and it works, but it is no easy setup. and will definitely not run on one single OPI0... CPU will be continuously in high performance mode and the OPI0 will get very very hot....In this setup mycontroller is handling the relays....
-
How is Grafana better than the built-in Dashboard of Cronograf? Cronograf weakly loads the processor and quickly runs on OrangePiZero. He really does not have a mechanism for controlling the relay or other devices. So far I have not figured out how to combine graphics and buttons on the same control panel. It may be necessary to use NodeRed and organize a virtual MQTT node.
-
-
Well the minimal system requirements give an indication on what hardware should be used. OPI0 is from a memory perspective a little "light". anyway it all depends on the load. So it might be that for you it works fine.
-
Thank you!! will have a look!
-
@jkandasa
Thank you for the project. I like MyController a well-developed transport layer, a lot of communication interfaces. I like using the MQTT broker. There is not enough user-friendly dashboard with drag and drop programming, so that the user does not need to delve into the subtleties of html, css, etc. to connect third-party widgets. I want a script editor with direct access to InfluxDB, so that you can make decisions on historical data, including the old one.
I do not know how to write this all at https://github.com/mycontroller-org/mycontroller/projects/1 and what open sourse resources to use. So I write the wishes in this topic.
In general, MyController cool thing! -
I think I might suggest that you forget about the dashboards, graphs and gauges, and focus on the data-flow, conversions, notifications and rules.
And dont be fooled by the time it takes to start from scratch. I dont think your timing is right, I dont see any benefits of changing all those frameworks. But a significant re-design of some parts might be cool.
-
@njbuch
You are right! I am not going to start from scratch. I will start 2.x branch from the existing code and do major changes, like support ACK (needs a lot of change on message queue), Rul engine performance improvement, Switch to Angular4 on UI, standardize REST API, ionic mobile application, InfluxDB for metrics(no more RDBMS metrics support) and much more.I have rewritten everything. Reasons:
- needs to write everything on GoLang (backend), ReactJS (frontend)
- However I have taken the logic used in 1.x, So it speeds up the development
-
The one thing I can say would be nice (from a very early user) is less reliance one scripting based setup.
While I don't mind delving into it, the ability for my non-programming-centric wife to be able to edit the schedule for our watering system would be nice.
There is a button to change the state of my relays, why do I have to script a timer for them?
set the run time in the operation for each zone, set the schedule using the timer, run.
Hope to discuss more with you all as I learn more myself!