420 Magazine Background

Arduinos in the grow room: My project

odam2k

Well-Known Member
I can now assign a Blynk Virtual Pin number to ANY sensor, and if I activate Blynk Scanning for that sensor, then every [interval] seconds the module will scan the sensor, and send the BlynkVirtualPin and sensorRawValue1 to the ESP8266, which in turn sends it to the Blynk Server. EVERY Sensor is now available for complete up to date display on the phone...

I don't want to read a soil moisture sensor every second, so I guess I'll also need a way to read the latest logged value rather than the current value. Perhaps if the sensor has a BlynkVirtualPin assigned, but no sensor specific scanning schedule (ie, it only gets scanned when the module scans all the sensors)

I hope I make sense when I go on like that...
 

Camaro1691

Active Member
It would actually be nice to be able to replace the rotary switch with something electronic, and be able to adjust the brightness, could be useful for temperature control... I suppose you could turn it with a servo, hmmm...

My other ballast is for a 400W MH, and it's just a bare transformer on stilts with a big ass capacitor hanging off the side... Looks like hell, but it's been reliable as heck over a span of many years.
That rotary switch is basically just a potentiometer, unhook it and measure the resistance across its spectrum from lowest to highest and you should be able to find a module or build one to mimic these values and in theory have full control of the brightness in 1% increments
 

odam2k

Well-Known Member
That rotary switch is basically just a potentiometer, unhook it and measure the resistance across its spectrum from lowest to highest and you should be able to find a module or build one to mimic these values and in theory have full control of the brightness in 1% increments
Actually, reminds me of an Arduino project for measuring resistors and capacitors. It used a 4 channel multiplexor to select the resistors to use for the different ranges.

This ballast has 4 positions, it's not smooth... Before I rip open my good ballast, you still think this is a pot? I would think it's a 4 position switch, but I am guessing.... I guess there's really only one way to know...


Capture.JPG
 

Camaro1691

Active Member
In a sense, yes, some pots have detents that it clicks into place, most common pots are smooth operating but not all. you don’t need to necessarily cut your ballast apart but opening it up to see how it functions won’t hurt anything, your used to rc stuff, you know how to be gentle lol. brainstorming aloud. I’ve always loved the hardware side of things and wished I had payed more attention to the programming side of things when I was in school now that I too want to automate my grow room eventually, the data logging part I don’t care about soo much as the functions needed to be performed in the room itself but looking back at the logs would help to know where I could adjust things to make it better.. totally love this thread and hope my thinking aloud doesn’t interfere with your thinking or design in any way. I’ll be watching and popping in once in a while, anyways, gotta get back to that dreaded thing called work lol
 

odam2k

Well-Known Member
I would not have guessed three or four days ago that I would have a working App on my phone that allowed me to view realtime data from the grow room...

Here it is!

It shows:
- the lights are on in the flower room... I will verify that when they go out :)
- the temp in the flower room is 26C
- the temp outside is -5C

All of my sensors are available...

Capture.JPG



I made another change to allow you to specify which Value is sent to Blynk for any given sensor. Because it can have up to 3 raw values, you can choose from Raw 1, Raw 2 or Raw 3, OR, you can choose Calc 1, Calc 2 or Calc 3. I had to do this because otherwise you couldn't display the calculated temperature of a thermistor for example. This offers a lot more flexibility.
 

odam2k

Well-Known Member
Today is day 15 of my latest cloning disaster... I say disaster because I'm still completely failing at cloning... I'm really stumped, because I used to get about 80% success. This time, out of 8 nice big cuttings, only 1 has a root, a nice inch long, pure white, horizontal root... I've tried everything, so I'm not sure what to do next, short of take even more cuttings so with even a 10% success rate, I can continue...

I've been taking cuttings from cuttings, these are maybe 5 generations since seed? (a year or so) That shouldn't be a problem. I know it's best to keep a mother and never flower it, but I've been doing it this way for years.

I wonder if my rooting gel is contaminated? I'll get fresh... but I don't always use it, soif that was the issue, I'd expect to see better results when I don't use it.

Could it be water ph level? Water in our building is something that could change without me knowing. I'm waiting on delivery of a ph meter pen so I can at least get an idea... any day I hope...

I've used the Aqua Cloner, with and without a humidity dome, peat pellets... maybe I should just drop a cutting in a glass of water and see what happens!

I have one more seed, was saving it for an emergency... guess I need to order some more seeds, and try from seed again, and keep a few mothers...
 

Camaro1691

Active Member
Today is day 15 of my latest cloning disaster... I say disaster because I'm still completely failing at cloning... I'm really stumped, because I used to get about 80% success. This time, out of 8 nice big cuttings, only 1 has a root, a nice inch long, pure white, horizontal root... I've tried everything, so I'm not sure what to do next, short of take even more cuttings so with even a 10% success rate, I can continue...

I've been taking cuttings from cuttings, these are maybe 5 generations since seed? (a year or so) That shouldn't be a problem. I know it's best to keep a mother and never flower it, but I've been doing it this way for years.

I wonder if my rooting gel is contaminated? I'll get fresh... but I don't always use it, soif that was the issue, I'd expect to see better results when I don't use it.

Could it be water ph level? Water in our building is something that could change without me knowing. I'm waiting on delivery of a ph meter pen so I can at least get an idea... any day I hope...

I've used the Aqua Cloner, with and without a humidity dome, peat pellets... maybe I should just drop a cutting in a glass of water and see what happens!

I have one more seed, was saving it for an emergency... guess I need to order some more seeds, and try from seed again, and keep a few mothers...
I have always had the best luck cloning when using clonex solution, it’s $25 roughly usd and works wonders, I always ph after letting the solution mix to 5.8-6.2 ph, I bleach the cloner between cuttings and let the pump run with bleach for a good 2-3 hours then flush it a couple times with water. I don’t worry about RO water like some do, I use maybe 2/3 the amount that the bottle recommends and I built a box for my cloner to sit in to elevate for easier draining without having to actually move it. I have a light switch on top that controls the outlet inside the box soo I can just flip the switch off when I want to check the roots without water going everywhere or having to unplug each time.. the outlet on top of the box has a timer plugged into it and the light receptical in the box plugs into that timer, I use a “y” adapter to use 2 cfl bulbs, soo far, not to jinx myself or toot my own horn, but to date I have had a 100% success rate with every cutting I have taken. Not trying to get your thread off topic but this is my cloner station
 

Attachments

Latitude17

Active Member
Here’s a shot of one of my HiGrow trackers, glad you’re enjoying the experience as well so far.

I guess I should have emphasized the local server installation more - sorry about the surprise on the energy.

5B4A43B9-8519-4CF8-A533-A29A8D107B53.png
 

odam2k

Well-Known Member
I have always had the best luck cloning when using clonex solution, it’s $25 roughly usd and works wonders, I always ph after letting the solution mix to 5.8-6.2 ph, I bleach the cloner between cuttings and let the pump run with bleach for a good 2-3 hours then flush it a couple times with water. I don’t worry about RO water like some do, I use maybe 2/3 the amount that the bottle recommends and I built a box for my cloner to sit in to elevate for easier draining without having to actually move it. I have a light switch on top that controls the outlet inside the box soo I can just flip the switch off when I want to check the roots without water going everywhere or having to unplug each time.. the outlet on top of the box has a timer plugged into it and the light receptical in the box plugs into that timer, I use a “y” adapter to use 2 cfl bulbs, soo far, not to jinx myself or toot my own horn, but to date I have had a 100% success rate with every cutting I have taken. Not trying to get your thread off topic but this is my cloner station
Thanks, I do like that it's stealthy... I will try some Clonex, and checking my ph, maybe I'll buy a paper test kit till my pen gets here... I do clean the machine, pump included, thoroughly using bleach between each run... I even tried adding a bit of bleach during the process to keep the slime away, but it didn't help me get any roots :(
 

odam2k

Well-Known Member
I've been taking cuttings from cuttings, these are maybe 5 generations since seed? (a year or so) That shouldn't be a problem. I know it's best to keep a mother and never flower it, but I've been doing it this way for years.
Hmmm, so I've been taking clones from other clones that were nearly impossible to root... perhaps somewhere along the way I limited myself to one bad mother... (that sounds tough! "one bad mother" :) )

I wish I had records from the earlier days...

Ok, so it that, or the water... or... ?
 

odam2k

Well-Known Member
When I started this thread, September 2, last year, I was already a month into this project. That means I've been at it now for just over 5 months. WOW! I can tell you, since the beginning, I've spent every waking moment working on this, my sleep patterns are completely whacked.... My coffee budget keeps climbing!

Anyhow, I'm humbled by the fact that everything I have accomplished in all that time, you can probably do in a weekend with Blynk and the right choice of sensors.

I'm not going to give up my work, in fact, I won't use Blynk to actually control anything. Blynk will just be another Input/Output device, a place to show stuff, and if required, get responses. That is no differnt that if I had written my own Android app, it would never have been the brains...

So that said, I've managed full integration with Blynk using my existing framework, almost to the point you would think I had planned this all along :)

Remember my Flower Room? 3 rows of 6 pots? (Not all spots filled) This data (Soil Moisture %) comes from the last logged values, it does not actually read the sensors, although that can be done as well.

Capture.JPG
 

odam2k

Well-Known Member
I guess I should have emphasized the local server installation more - sorry about the surprise on the energy.
I think they give you 100K when you start on their server. On my server I set it to 1M
After all my playing around so far, I'm down to 994K, so I've only used less than 6K.

That's not bad, I've been adding and dropping widgets like crazy, if I knew this up front, I wouldn't have been concerned...
I am concerned however about putting my data on their server, so the local server is pretty much a requirement for me.

Ok, so that's i2c and blynk, what's next? :nomo: :)
 

odam2k

Well-Known Member
I'm just going over my "known issues" and one has me stumped...

I have 2 IDENTICAL "Modules" which consist of a Wemos Mega 2560 with built in ESP8266 - these boards are identical, with identical hardware (LCD, RTC,etc) and identical software. The ONLY difference that I know of is the MAC Address :)

They both have the same binary code loaded on them, and both have a momentary contact button wired between ground and pin D8.

I have the following code running on the Mega 2560:

const int scanButtonPin = 8; // Digital Pin for Scan button on front panel

in setup():
pinMode(scanButtonPin, INPUT_PULLUP);

Later in the code...
if (digitalRead(scanButtonPin) == HIGH) scanAllSensors(true);


So here's the weirdness...

This works on Module 1 (and Module 3, my development module) but on Module 2, it always detects the button as pressed (or HIGH) and I have to recompile the program with it checking for LOW instead, just for module 2.... And it's consistent, never fluxuates.

Anyone have any ideas? As I said, they are identical in every way possible... module 3 is basically the same as 1 and 2...
 

DrewT

Member
Anyhow, I'm humbled by the fact that everything I have accomplished in all that time, you can probably do in a weekend with Blynk and the right choice of sensors.
Welcome to my world, constantly finding something that would have saved me time and resources! But what's most important imo is what you say next:

I'm not going to give up my work
That's what I'm talking about! All that creative energy is priceless, keep running with it! Also, know that you're saving others a ton of time with your explorations. I for example can cross Blynk off my list not because its a bad solution, but because you and @Latitude17 sussed out the core functionality in a way I understood. Thanks again for that!

What's next? I'll start a related thread today on software architecture and other systems that may prove a better fit. As always, I'd love to see you drop in with some insights!
 

DrewT

Member
As I said, they are identical in every way possible...
Switches are identical? I have push-buttons that look identical... except one is normally open and the other is normally closed. I had a similar issue and ended up marking one with a sharpie :) .

Also, ensure you're not re-purposing pinmode on the fly (admittedly does not fit you one-out-of-three situation):

The pull-up resistors are controlled by the same registers (internal chip memory locations) that control whether a pin is HIGH or LOW. Consequently, a pin that is configured to have pullup resistors turned on when the pin is an INPUT, will have the pin configured as HIGH if the pin is then switched to an OUTPUT with pinMode().
Arduino - DigitalPins
 

odam2k

Well-Known Member
Welcome to my world, constantly finding something that would have saved me time and resources! But what's most important imo is what you say next:

That's what I'm talking about! All that creative energy is priceless, keep running with it! Also, know that you're saving others a ton of time with your explorations. I for example can cross Blynk off my list not because its a bad solution, but because you and @Latitude17 sussed out the core functionality in a way I understood. Thanks again for that!
Well, as I've said all along, it's the journey, not the destination..

When I was doing this professionally, it was always about budget, and time was always a real concern.
Now, I can take weeks to solve a simple problem, and it doesn't affect the bottom line :)

What's next? I'll start a related thread today on software architecture and other systems that may prove a better fit. As always, I'd love to see you drop in with some insights!
I started trying to document my system from an Architectural view, but it changes so fast that I knew I'd be wasting my time... I think I said somewhere back that on projects like this, I don't like planning too far ahead, I prefer to stay flexible rather than work to a spec. So that means finishing the software, then writing the spec :)
 

odam2k

Well-Known Member
Switches are identical? I have push-buttons that look identical... except one is normally open and the other is normally closed. I had a similar issue and ended up marking one with a sharpie :) .

Also, ensure you're not re-purposing pinmode on the fly (admittedly does not fit you one-out-of-three situation):



Arduino - DigitalPins
Software and functionality are identical...

But, if the switches were not the same... that would explain it. They look identical, but I'll go test them right now...
 
Top Bottom