473,396 Members | 1,608 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,396 software developers and data experts.

RTS/CTS and DTR/DTS control

Is there a library in Python that will give me control over the
handshaking lines directly?

Thanks
Jul 18 '05 #1
5 8605
"Mike" <mi**@kordik.net> wrote in
news:pa****************************@kordik.net:
Is there a library in Python that will give me control over the
handshaking lines directly?

Thanks


For Windoze, I heartily recommend siomodule.
( http://starship.python.net/crew/roger )

This is a wrapper around a well-designed professional serial I/O package.
The Python version includes the dll for free (when used with Python).
Jul 18 '05 #2

I am running Linux, Python 2.2.2. It would be nice (not mandatory)
to be cross platform though.

Thanks,
Mike

On Fri, 04 Jul 2003 18:30:11 +0000, Mike wrote:
Is there a library in Python that will give me control over the
handshaking lines directly?

Thanks


Jul 18 '05 #3
Mike wrote:
Is there a library in Python that will give me control over the
handshaking lines directly?

I am running Linux, Python 2.2.2. It would be nice (not mandatory)
to be cross platform though.


You call them handshaking lines, so one might infer you want
to use them as such while doing serial communications. Are
you in fact actually planning to control them as discrete
inputs and outputs, for some kind of control application?
(If not, I'm curious why you want to control them directly.)

There is Chris Liechti's library, which you can find with
http://www.google.com/search?q=python+serial+port but I'm
not sure it supports direct control of the I/Os... if it
doesn't you should be able to get direct control of those
lines under Linux using appropriate fcntl.ioctl() calls, I
would think, though I haven't done it myself.

-Peter
Jul 18 '05 #4
Mike wrote:

On Fri, 04 Jul 2003 19:36:45 -0400, Peter Hansen wrote:
Mike wrote:
> Is there a library in Python that will give me control over the
> handshaking lines directly?


I actually want to control my X10 firecracker device. I have done it in
Java (on Windows) already but now I want to do it in Python on Linux. You
control the device by wiggling the control lines with certain patterns.


Okay, that helps. Are there any tight timing constraints with X10?
It's been a while since I looked at the specs. Pretty low data rate,
isn't it?

Here's a few snippets/ideas that might help get you started, if there's
nothing off the shelf:

From inside a "SerialPort" class we've built, which is lacking
what you need but has some pieces that might be relevant:

class SerialPort:

def some method():
self.port = os.open(self.portName, os.O_RDWR | os.O_NOCTTY )
def CD(self):
'''retrieve CD status'''
status = fcntl.ioctl(self.port, TIOCMGET, TIOCM_zero_str)
value = struct.unpack('I', status)[0] & TIOCM_CD
if value > 0:
return 1
else:
return 0

At the top, we have some ugly constants defined, probably grabbed from
various web pages/google searches on Linux serial ports:

-------------
# The following may be Linux specific
TIOCM_CD = 0x040
TIOCM_CAR = 0x040
TIOCMGET = 0x5415
TIOCMSET = 0x5418

# The following is used to convert between C's long to Python's int.
TIOCM_zero_str = struct.pack('I', 0)
-------------

A quick search again with Google using TIOCMSET and TIOCM_CTS and a bunch
of others finally led to this, which might be the best yet, and includes
some constant definitions that might let you get something working, if
this doesn't directly solve your problem:

http://sparc.dnsalias.net/Python_stuff/PosixSerial.py

Good luck!

-Peter
Jul 18 '05 #5
Peter Hansen wrote:

A quick search again with Google using TIOCMSET and TIOCM_CTS and a bunch
of others finally led to this, which might be the best yet, and includes
some constant definitions that might let you get something working, if
this doesn't directly solve your problem:

http://sparc.dnsalias.net/Python_stuff/PosixSerial.py


Look at the main site... you might find something else of interest there. <wink>

-Peter
Jul 18 '05 #6

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

6
by: Bruce Rusk | last post by:
I'm using Stephen Lebans' RTF2 control in a report, and have discovered what may be a slight bug in it. I have a lot of non-Western language (Chinese) text in my RTF field, and such records get...
6
by: martin | last post by:
Hi, I am a web page and a web user control. My web user control is placed in my web page using the following directive <%@ Register TagPrefix="uc1" TagName="Header"...
2
by: John Lau | last post by:
Hi, Is there documentation that talks about the page lifecycle, the lifecycle of controls on the page, and the rendering of inline code, in a single document? Thanks, John
20
by: Guadala Harry | last post by:
In an ASCX, I have a Literal control into which I inject a at runtime. litInjectedContent.Text = dataClass.GetHTMLSnippetFromDB(someID); This works great as long as the contains just...
5
by: serge calderara | last post by:
Dear all, I am new in asp.net and prepare myself for exam I still have dificulties to understand the difference between server control and HTML control. Okey things whcih are clear are the fact...
2
by: Mike | last post by:
Hi, I am strugling with a simple problem which I can't seem to resolve. I have an asp.net page which contains a server-control (flytreeview, which is a kind of a tree to be exact). The tree is...
4
by: gsb58 | last post by:
Hi! On a form I have a calendar. The form is rezised to 1024x768 (Don't worry - this is a training case) when loaded. Now I want to center the calendar on the form so that its edges are...
5
by: paul.hester | last post by:
Hi all, I have a custom control with an overridden Render method. Inside this method I'm rendering each control in its collection using their RenderControl method. However, I'm running into a...
14
by: Rolf Welskes | last post by:
Hello, I have an ObjectDataSource which has as business-object a simple array of strings. No problem. I have an own (custom) control to which I give the DataSourceId and in the custom-control...
15
by: rizwanahmed24 | last post by:
Hello i have made a custom control. i have placed a panel on it. I want this panel to behave just like the normal panel. The problem i was having is that the panel on my custom control doesnt...
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
by: ryjfgjl | last post by:
In our work, we often receive Excel tables with data in the same format. If we want to analyze these data, it can be difficult to analyze them because the data is spread across multiple Excel files...
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
0
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing,...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.