diff --git a/wecker.sh b/wecker.sh index a82b2a5..fba85b0 100755 --- a/wecker.sh +++ b/wecker.sh @@ -169,14 +169,17 @@ else fi # Calculate steps for brightness and color temperature per step -brightness_step=$(bc <<< "($end_brightness - $start_brightness) / $steps") +brightness_step=$(( (end_brightness - start_brightness) / steps )) echo "Brightness difference per step: $brightness_step" -echo "Reached final brightness: $((brightness_step * steps)) from $end_brightness" -colortemp_step=$(bc <<< "$start_colortemp / $steps") +echo "Reached final brightness: $((brightness_step * steps + start_brightness)) from $end_brightness" + +colortemp_step=$(( start_colortemp / steps )) echo "Color temperature difference per step: $colortemp_step" -echo "Reached final colortemp: $((start_colortemp - (colortemp_step * steps))) from $end_colortemp" +echo "Reached final colortemp: $((start_colortemp - colortemp_step * steps)) from $end_colortemp" +sleep_duration=$((duration_seconds / steps)) + # Gradual adjustment of brightness and color temperature -for ((i = 1; i <= $steps; i++)); do +for ((i = 0; i <= $steps; i++)); do current_brightness=$(printf "%.0f" $(bc <<< "$start_brightness + ($brightness_step * $i)")) current_colortemp=$(printf "%.0f" $(bc <<< "$start_colortemp - ($colortemp_step * $i)")) @@ -200,10 +203,16 @@ for ((i = 1; i <= $steps; i++)); do sleep 12 echo "DEBUG: Wait 12 sec. between steps." else - sleep 27 # Changes every 30 (27) seconds + sleep $sleep_duration # Changes every 30 seconds fi done +# Set to end values. +current_brightness="$end_brightness" +current_colortemp="$end_colortemp" +set_brightness "$end_brightness" +set_colortemp "$end_colortemp" + # Execute the check_ip function. check_ip echo "$A72_ip"