On Apr 3, 3:44 pm, "Gabriel Genellina" <gagsl-...@yahoo.com.ar> wrote: > En Thu, 02 Apr 2009 20:04:14 -0300, gert <gert.cuyk...@gmail.com> escribió: > > > On Apr 2, 8:53 pm, Kushal Kumaran <kushal.kuma...@gmail.com> wrote: > >> On Thu, 2 Apr 2009 10:01:02 -0700 (PDT) > >> gert <gert.cuyk...@gmail.com> wrote: > >> > from subprocess import * > >> > check_call(['mode', 'COM1:9600,N,8,1,P'],shell=True) > >> > while True: > >> > with open('com1', 'r') as f: > >> > for line in f: > >> > print(line) > > >> > This works very well except for one thing. After a reboot I have to > >> > launch 1 time any windows serial exe application no mater with one, > >> > that just opens an closes the com port, before i can launch this > >> > script. The script keeps on working even after closing and reopening > >> > it, until i reboot the pc. Then again I have to launch one time a > >> > serial.exe and close it again. The exe does not run anything in the > >> > background it just does something in windows python does not do when > >> > it reads from the com port after a fresh reboot. > > >> > And i really appreciate it if somebody knew what it was. > > >> I don't know why you're getting this behaviour, but have you tried using > >> a python library for accessing the serial port? > >> Seehttp://pyserial.wiki.sourceforge.net/pySerial. > > > I am sorry but I don't think pyserial will work on python3.x and I > > also like to know whats going on before I consider it. > > A real Windows program accessing the serial port is likely to use > SetupComm, SetCommState, and other functions in addition to CreateFile. > Seehttp://msdn.microsoft.com/en-us/library/aa363196(VS.85).aspx > > pySerial takes care of all those details, as suggested. > > > Maybe its a bug in open() on windows? > > open() doesn't care about the file name; it's the OS that interprets > "com1" as a serial port.
I do understand, and I went looking into pySerial, but it is a long way from getting compatible with python3.x and involves other libs that are big and non pyhton3.x compatible. Also I can not imaging activating a com port wouldn't be possible with a check_call dos instruction. I can already configure com with mode. -- http://mail.python.org/mailman/listinfo/python-list