hart2hart Posted Tuesday at 09:50 PM Posted Tuesday at 09:50 PM is there a way to wait the number of minutes stored in an integer variable? Quote
Guy Lavoie Posted Tuesday at 11:22 PM Posted Tuesday at 11:22 PM (edited) No, not as a Wait statement, within a single program. But you can do it if you break it up into more than one program. I have my bathroom fan timer set up like that. For example, you want to perform Action B a number of minutes after Action A, where the number of minutes is in variable "i_wait". In this example s_timer is a status variable. If original trigger condition Then Action A Then s_timer = 1 If s_timer > i_wait Then Action B Then s_timer = 0 If s_timer > 0 Then s_timer +=1 Then Wait 1 minute The third program is the "timer", incrementing by 1 every minute, as long as the s_timer is set to any value above 0. Edited Tuesday at 11:38 PM by Guy Lavoie Quote
larryllix Posted yesterday at 01:30 AM Posted yesterday at 01:30 AM (edited) This is how I did it with two programs. Any program wanting to start the time just sets the state variable, $sHouse.countdowner, to X minutes and the rest happens automatically. After the timeout the house is marked as unoccupied. Note usage of constant integers. Occupied.countdowner - [ID 0167][Parent 000B][Run At Startup] If $sHouse.occupied.timer > 0 And From 9:30:00AM To 11:00:00PM (same day) // [Run at Startup] enabled Then Wait 1 minute $sHouse.occupied.timer -= 1 Else - No Actions - (To add one, press 'Action') Self retriggering timer. -If startup occurs outside wake timeframe, will self start at beginning of timeframe. -If timeframe commences while .timer is 0, first new occupied.timer value will start again. Occupied.flagger - [ID 0168][Parent 000B] If $sHouse.occupied.timer > 0 Then $sHouse.occupied = $cTRUE Else $sHouse.occupied = $cFALSE Power up assumes home unoccupied! Shouldn't be long to correct that. Program cannot be combined into "Occupied countdowner" program as it's timeframe end would zero occupied.timer Edited yesterday at 01:32 AM by larryllix Quote
IndyMike Posted yesterday at 12:24 PM Posted yesterday at 12:24 PM Single program version using a Repeat - While Loop The second "Repeat 1 times" is required to end the loop if you wish to have follow on statements. Not required if nothing follows. You can decrease the wait time to gain granularity, but it comes at the expense of overhead. A 1 second wait loop requires roughly 2 seconds to execute and is working the ISY994 rather hard. Variable Minute Wait Test Program - [ID 0060][Parent 0004][Not Enabled] If - No Conditions - (To add one, press 'Schedule' or 'Condition') Then $I.MinuteCount = 2 Repeat While $I.MinuteCount > 0 $I.MinuteCount -= 1 Wait 1 minute Repeat 1 times Set 'Basement / SC BSMT Entry' Off Else - No Actions - (To add one, press 'Action') 1 Quote
hart2hart Posted yesterday at 01:34 PM Author Posted yesterday at 01:34 PM Thanks to each of you for your methods and insights... What I want to do is have a simple way of triggering an irrigation run for multiple watering needs -- lets say Light, Standard, and HotAndDry. With each one defined for a ceration number of minutes. See the simplifed Standard needs trigger program and actual watering activity for entire yard. Note that I'm moving from EZ-Rain Insteon modules to Rachio controller with PlugIn model and have only changed the first Irrigation step to Rachio style Irrigation:Standard If ( On Sat, Mon, Wed Time is Sunrise - 4 hours And $Yard_Irrigation_Status_Manual_Update_Ony is 1 And $Yard_Irrigation_Needed_I is 1 ) Or ( Time is Sunrise - 4 hours And 'Virtual Devices / Yard:Irrig Standard' Switch Status is On ) Then $Irrigation_Run_Minutes = $Irrigation_Standard_Minutes Run Program 'Irrigation:Entire Yard' (Then Path) Set 'Virtual Devices / Yard:Irrig Standard' Off Else - No Actions - (To add one, press 'Action') Irrigation:Entire Yard If - No Conditions - (To add one, press 'Schedule' or 'Condition') Then $Water_Today_Start_I = 'Flume Water / FlumeWater / Flume Sensor' Today US gallons Set 'Yard / Yard:Front Mulch Beds' Start '$Irrigation_Run_Minutes Minutes' Wait 25 minutes <====Want these to be variable based on $Irrigation_Run_Minutes Set 'Yard / 2Yard:Front Mulch Beds' Off Wait 1 minute Set 'Yard / 2Yard:Front Left' On Wait 25 minutes Set 'Yard / 2Yard:Front Left' Off Wait 1 minute Set 'Yard / 2Yard:Front Right' On Wait 25 minutes Set 'Yard / 2Yard:Front Right' Off Wait 1 minute Set 'Yard / 2Yard:Back Fountain Driveway' On Wait 25 minutes Set 'Yard / 2Yard:Back Fountain Driveway' Off Wait 1 minute Set 'Yard / 2Yard:Back Front Left' On Wait 25 minutes Set 'Yard / 2Yard:Back Front Left' Off Wait 1 minute Set 'Yard / 2Yard:Back Front Right Center' On Wait 25 minutes Set 'Yard / 2Yard:Back Front Right Center' Off Wait 1 minute Set 'Yard / 2Yard:Back Center Left' On Wait 25 minutes Set 'Yard / 2Yard:Back Center Left' Off Wait 1 minute Set 'Yard / 2Yard:Back Center Right' On Wait 25 minutes Set 'Yard / 2Yard:Back Center Right' Off Wait 1 minute Set 'Yard / 2Yard:Back Rear Left' On Wait 25 minutes Set 'Yard / 2Yard:Back Rear Left' Off Wait 1 minute Set 'Yard / 2Yard:Back Rear Right' On Wait 25 minutes Set 'Yard / 2Yard:Back Rear Right' Off Wait 1 minute Set 'Yard / 2Yard:Front Mulch Beds' Off Set 'Yard / 2Yard:Front Right' Off Set 'Yard / 2Yard:Front Left' Off Set 'Yard / 2Yard:Back Fountain Driveway' Off Set 'Yard / 2Yard:Back Front Right Center' Off Set 'Yard / 2Yard:Back Front Left' Off Set 'Yard / 2Yard:Back Center Right' Off Set 'Yard / 2Yard:Back Center Left' Off Set 'Yard / 2Yard:Back Rear Right' Off Set 'Yard / 2Yard:Back Rear Left' Off Wait 5 minutes $Water_Today_End_I = 'Flume Water / FlumeWater / Flume Sensor' Today US gallons $Water_Today_Difference_I = 0 $Water_Today_Difference_I += $Water_Today_End_I $Water_Today_Difference_I -= $Water_Today_Start_I Send Notification to 'MeText' content 'Irrigation Log Data' Else - No Actions - (To add one, press 'Action') Quote
paulbates Posted yesterday at 01:39 PM Posted yesterday at 01:39 PM (edited) 5 minutes ago, hart2hart said: Irrigation:Entire Yard If - No Conditions - (To add one, press 'Schedule' or 'Condition') Then $Water_Today_Start_I = 'Flume Water / FlumeWater / Flume Sensor' Today US gallons Set 'Yard / Yard:Front Mulch Beds' Start '$Irrigation_Run_Minutes Minutes' Wait 25 minutes <====Want these to be variable based on $Irrigation_Run_Minutes Insert @IndyMike's suggested repeat loop steps at this point in your program Then $I.MinuteCount = 2 Repeat While $I.MinuteCount > 0 $I.MinuteCount -= 1 Wait 1 minute Repeat 1 times Set 'Basement / SC BSMT Entry' Off Obviously tweak the variables of the loop to count down your desired wait time Edited yesterday at 01:40 PM by paulbates 1 Quote
hart2hart Posted yesterday at 01:55 PM Author Posted yesterday at 01:55 PM 11 minutes ago, paulbates said: Insert @IndyMike's suggested repeat loop steps at this point in your program Then $I.MinuteCount = 2 Repeat While $I.MinuteCount > 0 $I.MinuteCount -= 1 Wait 1 minute Repeat 1 times Set 'Basement / SC BSMT Entry' Off Obviously tweak the variables of the loop to count down your desired wait time Thanks Paul. I want to do it for all 10 zones. It felt very confusing looking since all actions after a repeat fall into its loop structure so then needing to add many Repeat 1 times? Is that what you are suggesting? I had considered breaking each zone into its own program and having the programs execute each other in order with logic like Mike suggested. 1 Quote
paulbates Posted yesterday at 02:05 PM Posted yesterday at 02:05 PM 7 minutes ago, hart2hart said: Thanks Paul. I want to do it for all 10 zones. It felt very confusing looking since all actions after a repeat fall into its loop structure so then needing to add many Repeat 1 times? Is that what you are suggesting? I had considered breaking each zone into its own program and having the programs execute each other in order with logic like Mike suggested. Yes, that block of code would be needed including the Repeat 1 time, which simply marks the end of steps in the repeat loop. If your count down scenario is the same for all zones, you could put this repeat -countdown code in a separate program (with no if) and call it from each zone's program. Might take some experiment and testing, but it's plausible. Quote
IndyMike Posted yesterday at 02:50 PM Posted yesterday at 02:50 PM (edited) @hart2hart, I'm not sure where your "zones" are in the program. I do see the "25 minute waits" at numerous places in the program. If this is where the Zones are, your could insert the code at each "25 minute wait". I think your program would resemble the following. That doesn't look crazy unmanagble. If you want to change all of the waits over to programmable delays, that would get rather confusing. At that point multiple zone programs/delay programs would become more "readable". Then $Water_Today_Start_I = 'Flume Water / FlumeWater / Flume Sensor' Today US gallons Set 'Yard / Yard:Front Mulch Beds' Start '$Irrigation_Run_Minutes Minutes' $I.MinuteCount = $Irrigation_Run_Minutes Minutes Repeat While $I.MinuteCount > 0 $I.MinuteCount -= 1 Wait 1 minute Repeat 1 times Set 'Yard / 2Yard:Front Mulch Beds' Off Wait 1 minute Set 'Yard / 2Yard:Front Left' On $I.MinuteCount = $Irrigation_Run_Minutes Minutes Repeat While $I.MinuteCount > 0 $I.MinuteCount -= 1 Wait 1 minute Repeat 1 times Set 'Yard / 2Yard:Front Left' Off Wait 1 minute Set 'Yard / 2Yard:Front Right' On $I.MinuteCount = $Irrigation_Run_Minutes Minutes Repeat While $I.MinuteCount > 0 $I.MinuteCount -= 1 Wait 1 minute Repeat 1 times Set 'Yard / 2Yard:Front Right' Off Wait 1 minute Set 'Yard / 2Yard:Back Fountain Driveway' On $I.MinuteCount = $Irrigation_Run_Minutes Minutes Repeat While $I.MinuteCount > 0 $I.MinuteCount -= 1 Wait 1 minute Repeat 1 times Set 'Yard / 2Yard:Back Fountain Driveway' Off Wait 1 minute Set 'Yard / 2Yard:Back Front Left' On $I.MinuteCount = $Irrigation_Run_Minutes Minutes Repeat While $I.MinuteCount > 0 $I.MinuteCount -= 1 Wait 1 minute Repeat 1 times Set 'Yard / 2Yard:Back Front Left' Off Wait 1 minute Edited yesterday at 02:52 PM by IndyMike Quote
dbwarner5 Posted yesterday at 04:14 PM Posted yesterday at 04:14 PM (edited) @hart2hart I have a set of programs to run my sprinkler system. The overall concept is that I can trigger "groups" as on or off, I can set minutes per zone, and I can set a % multiplier to adjust for rain / dry conditions. For example, if I want the garden to run every other day, I can set a flag for that frequency and assign minutes for that zone. Then I have an overall multiplier that is 100% for normal operations. I can easily change the 100%, the minutes or the frequency per week. This concept applies to four groups: garden, lawn, pine trees and bushes drip line. For the lawn, each zone has its own program with a waterfall effect where when zone 1 is completed, it calls the zone 2 program, etc until the last zone is done and it stops the sprinkler system. The other "groups" only have one zone each so they are much simpler. Also for the lawn, I have two sets of sprinkler times so that if I need a second run on a certain zone ie: I've laid some grass seed that needs more frequent watering etc. Each group has its own folder which allows a high level of"on/off" test. Here are the groups. The groups are also under an umbrella folder that disables the whole system ( for in the winter etc) An example of the sprinkler 1 folder test: 1 is enabled, 0 is disabled. Sprinkler 1 530am - [ID 02BD][Parent 0162] Folder Conditions for 'Sprinkler 1 530am' If $Sprinkler_1 is 1 Then Allow the programs in this folder to run. These are the zone controllers for sprinkler 1. The last three programs determine when they run: daily, odd days or 3 days per week. Here is the program for 3 days a week. the variable days is 3 which is the deciding trigger. In the 7 days a week, that variable is set to 7 and for odd days it is set to 2 which triggers the other programs. Sprinkler 1 3 Days - [ID 02D6][Parent 02BD] If On Mon, Wed, Fri Time is 2:30:00AM And 'Elk Non Alarm / Rain Sensor' Logical Status is Normal And $Sprinkler_1 is 1 And $I_Sp1_Days is 3 Then Run Program 'SP1 1Start / Stop' (Then Path) This then starts the "waterfall effect by running the following program: SP1 1Start / Stop - [ID 0338][Parent 02BD] If - No Conditions - (To add one, press 'Schedule' or 'Condition') Then Run Program 'SP1 Lake 1' (If) Else Run Program 'SP1 xStop' (Then Path) So then zone one (sp1 lake 1) runs. $I_Sp1_Lake is the minutes I have set for that zone. If it's zero, the Else runs and immediately goes to the next program in line. I initiate the second zone before stopping the first so the pump stays running. There is a separate program that monitors if any of the zones are on, the pump turns on. SP1 Lake 1 - [ID 02C4][Parent 02BD] If $I_Sp1_Lake_1 > 0 Then Set 'Elk Controller and Outputs / Sprkl Lake 1' On $I_Sp_Counter = $I_Sp1_Lake_1 $I_Sp_Counter *= $I_Sp1_Percent $I_Sp_Counter /= 100 Repeat While $I_Sp_Counter > 0 Wait 1 minute $I_Sp_Counter -= 1 Repeat 1 times Run Program 'SP1 Lake 2' (If) Wait 4 seconds Repeat 2 times Wait 2 seconds Set 'Elk Controller and Outputs / Sprkl Lake 1' Off Else Run Program 'SP1 Lake 2' (If) In this program the variables are as follows: -Counter... gets used to match the minutes for that zone. Is used in each program -$I_SP1_Lake_1 is equal to the minutes I have set for that zone -$I_Sp1_Percent is equal to the "adjustment %) I want for that group, ie 100%, 75% etc. This program counts down and then calls the program for zone 2 which is SP1 Lake 2 This continues down the list from the screen shot above until it hits the last zone in that group. SP1 Wild Flowers - [ID 02F1][Parent 02BD] If $I_Sp1_Wild_Flowers > 0 Then Set 'Elk Controller and Outputs / Sprkl Wild Flowe' On $I_Sp_Counter = $I_Sp1_Wild_Flowers $I_Sp_Counter *= $I_Sp1_Percent $I_Sp_Counter /= 100 Repeat While $I_Sp_Counter >= 1 Wait 1 minute $I_Sp_Counter -= 1 Repeat 1 times Set 'Elk Controller and Outputs / Sprkl Wild Flowe' Off Wait 4 seconds Repeat 2 times Wait 2 seconds Run Program 'SP1 xStop' (Then Path) Else Run Program 'SP1 xStop' (Then Path) This runs the following program which is set up as a safety to ensure all zones are actually off. SP1 xStop - [ID 02D3][Parent 02BD] If - No Conditions - (To add one, press 'Schedule' or 'Condition') Then Set 'Elk Controller and Outputs / Sprinkler Pump' Off Wait 2 seconds Set 'Elk Controller and Outputs / Sprinkler Pump' Off Wait 1 second Set 'Elk Controller and Outputs / Sprkl Deck Spray' Off Stop program 'SP1 LDeck Sprays' Wait 1 second Set 'Elk Controller and Outputs / Sprkl Lake 1' Off Stop program 'SP1 Lake 1' Wait 1 second Set 'Elk Controller and Outputs / Sprkl Lake 2' Off Stop program 'SP1 Lake 2' Wait 1 second Set 'Elk Controller and Outputs / Sprkl Lake 3' Off Stop program 'SP1 Lake 3' Wait 1 second Set 'Elk Controller and Outputs / Sprkl Lake North' Off Stop program 'SP1 Lake North' Wait 1 second Set 'Elk Controller and Outputs / Sprkl Lake South' Off Stop program 'SP1 Lake South' Wait 1 second Set 'Elk Controller and Outputs / Sprkl Road 1' Off Stop program 'SP1 Road 1' Wait 1 second Set 'Elk Controller and Outputs / Sprkl Road 2' Off Stop program 'SP1 Road 2' Wait 1 second Set 'Elk Controller and Outputs / Sprkl Road North' Off Stop program 'SP1 Road North' Wait 1 second Set 'Elk Controller and Outputs / Sprkl Road South' Off Stop program 'SP1 Road South' Wait 1 second Set 'Elk Controller and Outputs / Sprkl Wild Flowe' Off Stop program 'SP1 Wild Flowers' I have set up favorite screens in UDMobile to then easily control everything . On this screen I can enable / disable the whole group, choose the frequency per week, choose the % multiplier, and lastly adjust each zones minutes. For the other "groups", they all only have one zone each so I skip the whole multiplier concept because it's just as easy to adjust the time. Here is a screenshot of UDM for the Garden. In summary, using variables and wait times, what you want to do is easily accomplished. I hope this helps! Feel free to reach out if you need further help in setting this up! Edited yesterday at 04:20 PM by dbwarner5 Quote
hart2hart Posted yesterday at 04:50 PM Author Posted yesterday at 04:50 PM @IndyMike Thanks for helping me understand it does not have to look so odd. Does the following look right? I've updated it down to the point of the Zone called Front Left and for readability here I've added color coding and line breaks to clarify what is required for each zone: On Set minute counter Repeat loop for timing Off Irrigation:Entire Yard If - No Conditions - (To add one, press 'Schedule' or 'Condition') Then $Water_Today_Start_I = 'Flume Water / FlumeWater / Flume Sensor' Today US gallons Set 'Yard / Yard:Front Mulch Beds' Start '$Irrigation_Run_Minutes_I Minutes' $Minute_Counter_I = $Irrigation_Run_Minutes_I Repeat While $Minute_Counter_I > 0 Wait 1 minute $Minute_Counter_I -= 1 Repeat 1 times Set 'Yard / Yard:Front Mulch Beds' Start 0.0 minutes Set 'Yard / Yard:Front Right' Start '$Irrigation_Run_Minutes_I Minutes' $Minute_Counter_I = $Irrigation_Run_Minutes_I Repeat While $Minute_Counter_I > 0 Wait 1 minute $Minute_Counter_I -= 1 Repeat 1 times Set 'Yard / Yard:Front Right' Start 0.0 minutes Set 'Yard / Yard:Front Left' Start '$Irrigation_Run_Minutes_I Minutes' $Minute_Counter_I = $Irrigation_Run_Minutes_I Repeat While $Minute_Counter_I > 0 Wait 1 minute $Minute_Counter_I -= 1 Repeat 1 times Set 'Yard / Yard:Front Left' Start 0.0 minutes Wait 1 minute Set 'Yard / 2Yard:Back Fountain Driveway' On Wait 25 minutes Repeat 1 times Set 'Yard / 2Yard:Back Fountain Driveway' Off Wait 1 minute Set 'Yard / 2Yard:Back Front Left' On Wait 25 minutes Set 'Yard / 2Yard:Back Front Left' Off Wait 1 minute Set 'Yard / 2Yard:Back Front Right Center' On Wait 25 minutes Set 'Yard / 2Yard:Back Front Right Center' Off Wait 1 minute Set 'Yard / 2Yard:Back Center Left' On Wait 25 minutes Set 'Yard / 2Yard:Back Center Left' Off Wait 1 minute Set 'Yard / 2Yard:Back Center Right' On Wait 25 minutes Set 'Yard / 2Yard:Back Center Right' Off Wait 1 minute Set 'Yard / 2Yard:Back Rear Left' On Wait 25 minutes Set 'Yard / 2Yard:Back Rear Left' Off Wait 1 minute Set 'Yard / 2Yard:Back Rear Right' On Wait 25 minutes Set 'Yard / 2Yard:Back Rear Right' Off Wait 1 minute Set 'Yard / 2Yard:Front Mulch Beds' Off Set 'Yard / 2Yard:Front Right' Off Set 'Yard / 2Yard:Front Left' Off Set 'Yard / 2Yard:Back Fountain Driveway' Off Set 'Yard / 2Yard:Back Front Right Center' Off Set 'Yard / 2Yard:Back Front Left' Off Set 'Yard / 2Yard:Back Center Right' Off Set 'Yard / 2Yard:Back Center Left' Off Set 'Yard / 2Yard:Back Rear Right' Off Set 'Yard / 2Yard:Back Rear Left' Off Wait 5 minutes $Water_Today_End_I = 'Flume Water / FlumeWater / Flume Sensor' Today US gallons $Water_Today_Difference_I = 0 $Water_Today_Difference_I += $Water_Today_End_I $Water_Today_Difference_I -= $Water_Today_Start_I Send Notification to 'JPaulText' content 'Irrigation Log Data' Else - No Actions - (To add one, press 'Action') Quote
dbwarner5 Posted yesterday at 05:21 PM Posted yesterday at 05:21 PM 27 minutes ago, hart2hart said: @IndyMike Thanks for helping me understand it does not have to look so odd. Does the following look right? I've updated it down to the point of the Zone called Front Left and for readability here I've added color coding and line breaks to clarify what is required for each zone: Two questions for you on your program: 1) Looks like you are setting the counter to the same variable (minutes for that zone) each time. This means each zone will run the same amount of time? Dont you want a separate variable for the minute setting for each zone? $Minute_Counter_I = $Irrigation_Run_Minutes_I 2) when each zone ends, what happens to your pump? will it momentarily shut off until the next program starts again? If that is the case, you will cause unusual wear on your pump and a higher electric bill. But if using municipal water, then no problem. 1 Quote
hart2hart Posted yesterday at 05:31 PM Author Posted yesterday at 05:31 PM 5 minutes ago, dbwarner5 said: Two questions for you on your program: 1) Looks like you are setting the counter to the same variable (minutes for that zone) each time. This means each zone will run the same amount of time? Dont you want a separate variable for the minute setting for each zone? $Minute_Counter_I = $Irrigation_Run_Minutes_I 2) when each zone ends, what happens to your pump? will it momentarily shut off until the next program starts again? If that is the case, you will cause unusual wear on your pump and a higher electric bill. But if using municipal water, then no problem. Thanks for your insights and feedback. 1. I'm using that to show process, and I plan to have multiple variables that are calculated and adjusted by a program before this program runs. 2. It is municipal water. 1 Quote
IndyMike Posted yesterday at 09:03 PM Posted yesterday at 09:03 PM @hart2hart, I'd say you've got the gist of the repeat loop. Please do pay attention to @dbwarner5's cautions on irrigation. They don't only apply to well fed systems. Cycling solenoid valves on irrigation should not be taken lightly. Rapid cycling and water hammer can destroy pipes - ask me how I know... At one time I tried to integrate my Evapotranspiration calculations, current weather conditions, and my irrigation. It didn't go well and I burst a 2" line. Caught my attention. I don't do that anymore. 1 Quote
dbwarner5 Posted yesterday at 09:47 PM Posted yesterday at 09:47 PM @hart2hart the easiest way to avoid the water hammer that @IndyMike mentions is to “overlap” each section of your programming ie: turn on the next valve before shutting the previous one if you look at my programs (I chose to break each one out separately vs one long program) you can see the overlap concept good luck! 2 Quote
hart2hart Posted 23 hours ago Author Posted 23 hours ago Thanks @IndyMike and @dbwarner5. Paul 1 Quote
hart2hart Posted 20 hours ago Author Posted 20 hours ago I tested and confirmed that Rachio irrigation controller will only let one zone be On at a time. Therefore, I removed the zone Off commands as it turns off last zone when turning on the next zone. 1 Quote
hart2hart Posted 12 hours ago Author Posted 12 hours ago I located Rachio Minimize Water Hammer setting that open next valve about 10 seconds before closing. I’ll do some adjustments and testing to confirm the feature has impact when using API vs their schedule feature. 2 Quote
hart2hart Posted 1 hour ago Author Posted 1 hour ago Still going. It appears that water hammer feature only works for a Rachio Schedule and not individual zones like I posted above. I’ll work with node server author to see if we can expand it to send a schedule or to execute a schedule stored in Rachio. I can watch for irrigation on to potentially grab the water usage via Flume. Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.