H
hysterix
- 14
- 0
Hello everyone,
tl;dr - is there such a thing as open source sensors? If not is it feasible to reverse engineer sensors, or is it better to reverse engineer an already existing system? (growtronix for example).
q. hysterix, that is an epic wall of text down there, should I bother to read it all?
a. yes, only if you are bored!
I've seen there are a few automated grow room threads already, but I wanted to start this one as I am a bit more specific with what I want and will be doing here.
Ever since I figured out how to grow relatively well, I knew you could automate the entire grow. The only thing a human being would have to is physical moving of things, cloning, basic maintenance, etc.
I know there are some good things out there, and I have had my eye on growtronix.
I do not really mind the cost because of how capable things would become upon implementing all their sensors and things.
The only problem with that is now I am tied into the company growtronix and if they go out of business or something else I am out of luck.
I liked growtronix because they are using java as their platform so it can be run on any os, but of course truly mission critical apps should only be ran on a linux box as we want stability, reliability, and on totally open source software that is 100% free with no dreadful licenses to deal with. Currently no other os in the world offers all of the things I just listed, so it is easy to choose. Windows is unstable and has memory leaks, apple is a pay-for-support version of software you can obtain totally for free, that is instead tied to proprietary hardware. (mac itself is a hacked up version of openbsd linux) The concept of running this on anything other than linux is crazy.
The choice of flavor of linux is trivial, but for arguments sake, let's say this box is centos.
I want to run a full out os and not just micro-controllers because of all the fun I can have having it be on a real computer as I will explain later in this post.
The problem now is sensors. It is very difficult to organize the multitude of complex sensor data directly into this open source environment; there is always proprietary issues (from what I've seen) when you purchase a sensor that interfaces with a pc because they want you to run their software and that is not what I'm trying to do.
I'm trying to get the sensor, in all its glory into the pc, and then I can have my fun with it. From what I've seen, it appears growtronix will be as close as I'm going to get to this goal, short of ripping apart sensors, and figuring out how to dump data directly into the pc; how that reverse engineering is done on the hardware is a mystery to me, so I'm speaking with some assembly hackers as you read this.
I'm a software guy, and there currenly is such a thing as, "open source software".
Can any hardware vets. tell me why there is not such a thing as, "open source hardware". Why can't I buy hardware and dump the sendor data directly using a custom daemon or something else that is relatively easily. Why is it all sensor manufacturers want you to use their closed-source software?
Pretty much, if sensor manufacturer's were to give an api with the sensor that tells you how to interface to it, all would be well; I don't think such an animal exists.
I know there are microcontroller you can program with custom c, but that is very tedious and I know I could not do that myself, and I would not know how to go about getting the sensor data itself; again the hardware is a mystery to me.
Once I finally figure out this, I am planning on doing lots of fun things with this data. First off you can control this pc from within your own house, or anywhere in the world.
I stress that systems can be made very secure if you want them to be, you just need the money to fund the equipment and extra servers and it can be made pretty darn safe. So before anyone warns of the danger of having a grow room out on the internet that potentially someone could "hack" and control, know that could only happen if it is set up improperly, and/or a weak password is used.
The growroom itself is totally controllable anywhere in the world, from your own house or when you are on vacation. You can do anything from check different angles of the room, adjust your light height, check ppm and ph, balance ppm and ph, check other sensors just like how the growtronix system works.
I guess the question needs to be asked, why not use growtronix then?
Very simple, it is not 100% open source (to my knowledge) so I do not have full control over what is going on.
What I plan on doing can only be accomplished using open source, because I am going to incorporate a large number of other open source technologies and if done this way, it will be seamless.
Apart from the normal things the growtronix system offers in regards to sensors, I want to take it to the next level in regards to control over what you do with that data. I want to be able to create triggers for the sensors that do anything, call any script, send the data to do anything from anywhere.
What this means is that say your ppm starts falling out of range, and of course, the system normally is auto adjusting the ppm by injecting nutes depending upon a custom program created by you earlier and you adjust how the rez is dosed.
But what happens if something malfunctions and now your reservoir is not being dosed any more or being dosed too much? That is where the triggers come in and you can set them to do anything you want.
Want an email when the ppm goes out of range, you get one.
Want a phone call from an automated voice system telling you someone just opened up your window, done.
Want a text message your temps are abnormally too high, or the lights did not turn off or on when expected?
All this becomes possible when the code is open-source, and in proprietary systems it is not.
I hope I have conveyed this post properly. It is a hybrid question to any hardware engineers out there, and also just a statement of what I'd like to do. If you could not tell I'm a developer and I am going to combine my growing knowledge with application development.
I am currently in contact with assembly developers, and we are discussing whether or not it is more feasible to hack growtronix up to suite our needs, reverse engineer a solution using their sensors and write custom firmware for it; or try to do it all on our own from scratch.
I have had this subject on the back of my mind for many years, and I feel this is the appropriate environment to dump all this information and thoughts and ideas.
If anyone has any thoughts, ideas, opinions, advice, or just say, hey hysterix, you are nuts, I'd love to hear it!
tl;dr - is there such a thing as open source sensors? If not is it feasible to reverse engineer sensors, or is it better to reverse engineer an already existing system? (growtronix for example).
q. hysterix, that is an epic wall of text down there, should I bother to read it all?
a. yes, only if you are bored!
I've seen there are a few automated grow room threads already, but I wanted to start this one as I am a bit more specific with what I want and will be doing here.
Ever since I figured out how to grow relatively well, I knew you could automate the entire grow. The only thing a human being would have to is physical moving of things, cloning, basic maintenance, etc.
I know there are some good things out there, and I have had my eye on growtronix.
I do not really mind the cost because of how capable things would become upon implementing all their sensors and things.
The only problem with that is now I am tied into the company growtronix and if they go out of business or something else I am out of luck.
I liked growtronix because they are using java as their platform so it can be run on any os, but of course truly mission critical apps should only be ran on a linux box as we want stability, reliability, and on totally open source software that is 100% free with no dreadful licenses to deal with. Currently no other os in the world offers all of the things I just listed, so it is easy to choose. Windows is unstable and has memory leaks, apple is a pay-for-support version of software you can obtain totally for free, that is instead tied to proprietary hardware. (mac itself is a hacked up version of openbsd linux) The concept of running this on anything other than linux is crazy.
The choice of flavor of linux is trivial, but for arguments sake, let's say this box is centos.
I want to run a full out os and not just micro-controllers because of all the fun I can have having it be on a real computer as I will explain later in this post.
The problem now is sensors. It is very difficult to organize the multitude of complex sensor data directly into this open source environment; there is always proprietary issues (from what I've seen) when you purchase a sensor that interfaces with a pc because they want you to run their software and that is not what I'm trying to do.
I'm trying to get the sensor, in all its glory into the pc, and then I can have my fun with it. From what I've seen, it appears growtronix will be as close as I'm going to get to this goal, short of ripping apart sensors, and figuring out how to dump data directly into the pc; how that reverse engineering is done on the hardware is a mystery to me, so I'm speaking with some assembly hackers as you read this.
I'm a software guy, and there currenly is such a thing as, "open source software".
Can any hardware vets. tell me why there is not such a thing as, "open source hardware". Why can't I buy hardware and dump the sendor data directly using a custom daemon or something else that is relatively easily. Why is it all sensor manufacturers want you to use their closed-source software?
Pretty much, if sensor manufacturer's were to give an api with the sensor that tells you how to interface to it, all would be well; I don't think such an animal exists.
I know there are microcontroller you can program with custom c, but that is very tedious and I know I could not do that myself, and I would not know how to go about getting the sensor data itself; again the hardware is a mystery to me.
Once I finally figure out this, I am planning on doing lots of fun things with this data. First off you can control this pc from within your own house, or anywhere in the world.
I stress that systems can be made very secure if you want them to be, you just need the money to fund the equipment and extra servers and it can be made pretty darn safe. So before anyone warns of the danger of having a grow room out on the internet that potentially someone could "hack" and control, know that could only happen if it is set up improperly, and/or a weak password is used.
The growroom itself is totally controllable anywhere in the world, from your own house or when you are on vacation. You can do anything from check different angles of the room, adjust your light height, check ppm and ph, balance ppm and ph, check other sensors just like how the growtronix system works.
I guess the question needs to be asked, why not use growtronix then?
Very simple, it is not 100% open source (to my knowledge) so I do not have full control over what is going on.
What I plan on doing can only be accomplished using open source, because I am going to incorporate a large number of other open source technologies and if done this way, it will be seamless.
Apart from the normal things the growtronix system offers in regards to sensors, I want to take it to the next level in regards to control over what you do with that data. I want to be able to create triggers for the sensors that do anything, call any script, send the data to do anything from anywhere.
What this means is that say your ppm starts falling out of range, and of course, the system normally is auto adjusting the ppm by injecting nutes depending upon a custom program created by you earlier and you adjust how the rez is dosed.
But what happens if something malfunctions and now your reservoir is not being dosed any more or being dosed too much? That is where the triggers come in and you can set them to do anything you want.
Want an email when the ppm goes out of range, you get one.
Want a phone call from an automated voice system telling you someone just opened up your window, done.
Want a text message your temps are abnormally too high, or the lights did not turn off or on when expected?
All this becomes possible when the code is open-source, and in proprietary systems it is not.
I hope I have conveyed this post properly. It is a hybrid question to any hardware engineers out there, and also just a statement of what I'd like to do. If you could not tell I'm a developer and I am going to combine my growing knowledge with application development.
I am currently in contact with assembly developers, and we are discussing whether or not it is more feasible to hack growtronix up to suite our needs, reverse engineer a solution using their sensors and write custom firmware for it; or try to do it all on our own from scratch.
I have had this subject on the back of my mind for many years, and I feel this is the appropriate environment to dump all this information and thoughts and ideas.
If anyone has any thoughts, ideas, opinions, advice, or just say, hey hysterix, you are nuts, I'd love to hear it!