Bottom Page

Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
 file.write stops while true loop from executing in python3
Hi All,

I am using a python script to control some GPIO pins on a raspberry pi.
Is as follows:

from gpiozero import PWMLED
import time
import os
from decimal import Decimal

led = PWMLED("GPIO12") 				#set the GPIO pin number you are using here. It uses the GPIO method of numbering.
						#details on pin numbering can be found here:
setZero=open("/var/www/html/alpha.txt", "w")

while True:					#a loop that never stops running
	try:					#prevents an bug with the code that would cause it to terminate when writing to alpha.txt file
		initial=open("/var/www/html/alpha.txt", "r") 	#open the alpha.txt file as read only. Declare it as "initial"
		brightness=(	#declare the variable brightness by reading the variable "initial". Convert the string into a number
		x = Decimal(brightness)		#convert the number into a decimal. Store it as the variable X
		int_brightness = round(x,2)	#round the variable x to 2 decimal places. PHP should handle this, but just in-case. Store the rounded variable as int_brightness
		led.value = int_brightness	#set the brightness of the LED to the value of int_brightnesss
		()				#return nothing if code fails
		()				#return nothing if code fails
The trouble is with the following lines:
setZero=open("/var/www/html/alpha.txt", "w")
If I run the script without these 3 lines, the code works fine. As soon as I add it, the LED stops illuminating (I assume the while true loop is not executing). I have confirmed that on startup the script successfully writes a 0 to the file though.

Any ideas on what might be causing this to fail? There is no returned output in the console
You start with brightness 0, which is equal to off. Why would anything happen?
Craig "Ichabod" O'Brien -
I wish you happiness.
Recommended Tutorials: BBCode, functions, classes, text adventures

Brightness starts with off. This changes from a slider in php which writes to the alpha.txt file. The code in the while True loop looks for a change in the value and writes it to the GPIO pin. The reason brightness is set to 0 at the start is so that when the Pi boots up the light starts off.
I would put a print statement in the while loop. Probably a conditional one if the brightness changes, otherwise you'll get a flood of output. You'll have a variable to track the previous value for the conditional. Set that up with a dummy value to make sure it prints the first time through the loop, to confirm that the loop is executing.

My guess is the initial value is messing up the PHP somehow, but I really have no clue. That's why I suggest print statements.
Craig "Ichabod" O'Brien -
I wish you happiness.
Recommended Tutorials: BBCode, functions, classes, text adventures


Top Page

Possibly Related Threads...
Thread Author Replies Views Last Post
  file.write not working properly mnh001 11 187 Nov-09-2019, 10:20 PM
Last Post: mnh001
  Gnuradio python3 is not compatible python3 xmlrpc library How Can I Fix İt ? muratoznnnn 3 86 Nov-07-2019, 05:47 PM
Last Post: DeaD_EyE
  Do break operators turn while loop conditions from True to False? Drone4four 5 214 Oct-24-2019, 07:11 PM
Last Post: newbieAuggie2019
  Does python guarantees that file.write() works without file.close() ? kryptomatrix 7 249 Oct-21-2019, 11:28 AM
Last Post: kryptomatrix
  How to use while true/while loop on python christing 4 211 Oct-08-2019, 08:02 AM
Last Post: perfringo
  How do I read the HTML files in a directory and write the content into a CSV file? glittergirl 1 142 Sep-23-2019, 11:01 AM
Last Post: Larz60+
  How do I write class objects to a file in binary mode? Exsul1 7 462 Sep-14-2019, 09:33 PM
Last Post: snippsat
  how do i write a cross-platform relative file path? pseudo 2 154 Aug-23-2019, 05:07 PM
Last Post: ThomasL
  write to txt file one line antmar904 3 287 Aug-16-2019, 02:40 PM
Last Post: Axel_Erfurt
  read text file and write into html with correct link jacklee26 4 287 Aug-02-2019, 05:48 AM
Last Post: jacklee26

Forum Jump:

Users browsing this thread: 1 Guest(s)