hmm, now it seems I get to the locking try: ser = serial.Serial(dev, 19200, rtscts=1, timeout=1) if ser.isOpen(): try: fcntl.lockf(ser,fcntl.LOCK_EX) but get into some weirdness - trying to lock does not time out! The script stops at this line and waits ?for ever? (it waits for 15 minutes at least, that I have tried).
Andra > not the goal setup but the way I tried it out - a webpage to send an > sms to mobile phone. This is an php what calls a python script. A > python script opens serial device, checks for gsm network, sends a > message - on all the way I try to make sure that appropriate answers > are received from the gsm device so that I know that all is going well > (and if not - cancel it with error message). > > Testing it with sending an sms from two open webpages, I normally got > that one message was sent and for the other I received "try once more, > happened that and that". But I got also an inadmissible situation - > the received sms contained also unwanted text. As far as I can realize > how to deal with it is not allowing writing to the device for two > processes simultaneously. > > Andra > > On 19 Marts, 11:00, taco <[EMAIL PROTECTED]> wrote: > > > [EMAIL PROTECTED] wrote: > > > hello group, > > > > how to get ttyS0 serial port for exclusive access? I have a python > > > script that uses this device with AT commands. I need that two > > > instances can call simultaneosuly this python script but only one of > > > them gets the device. I tried fcntl.flock, it was just ignored, put > > > writtable file LCK..ttyS0 in /var/lock, tried ioctl (but I may not > > > know what are appropriate arguments), googled half a day for various > > > phrases, error messages etc....without success. > > > > please help, > > > > Andra > > > not sure if I understand you well, but how about a server application which > > accepts 2 clients which can send messages which are output on the serial > > device? The serial device access protected with a mutex while receiving > > messages done in 2 threads or something. > > taco -- http://mail.python.org/mailman/listinfo/python-list