Creating Virtual Port

Can someone please guide me on how to create a virtual serial port in QNX?

What I want is to create a virtual port, and all reads and writes to that
port pass through my application.

Thanks in advanse,
Joseph

Joseph wrote:

What I want is to create a virtual port, and all reads and writes to that
port pass through my application.

Are you hoping to sniff what is being transmitted and received on a
serial port? Or are you looking to have a way of communicating with
your application in a similar fashion to a serial port (ie, read and
write from /dev/serX)? In the latter case, would a named pipe do (see
mkfifo)?


Ryan J. Allen
ryallen@qnx.com

It sounds like you want to write a resource manager. It would publish a
name in the QNX namespace. Then your application would open() that name.
From then on any reads and or writes, etc. would go through your resource
manager.


“Joseph” <jmails@gmail.com> wrote in message
news:e8dkhd$7e4$1@inn.qnx.com

Can someone please guide me on how to create a virtual serial port in QNX?

What I want is to create a virtual port, and all reads and writes to that
port pass through my application.

Thanks in advanse,
Joseph

I am not sure to which category my requirment belongs to…

Basically what I want is to create a virtual port when there is SPP
connection to my bluetooth stack running on the QNX. So that means other
programs can write to this virtual port, which will come to my SPP Bluetooth
layer and will get transmitted over bluetooth to the other end.

Thanks again

Joseph

“Ryan J. Allen” <ryallen@qnx.com> wrote in message
news:e8dlhc$86i$1@inn.qnx.com

Joseph wrote:

What I want is to create a virtual port, and all reads and writes to that
port pass through my application.

Are you hoping to sniff what is being transmitted and received on a serial
port? Or are you looking to have a way of communicating with your
application in a similar fashion to a serial port (ie, read and write from
/dev/serX)? In the latter case, would a named pipe do (see mkfifo)?


Ryan J. Allen
ryallen@qnx.com

Joseph wrote:

Basically what I want is to create a virtual port when there is SPP
connection to my bluetooth stack running on the QNX. So that means other
programs can write to this virtual port, which will come to my SPP Bluetooth
layer and will get transmitted over bluetooth to the other end.

As Bill suggested, you probably want a resource manager (
http://www.qnx.com/developers/docs/6.3.0SP2/neutrino/prog/resmgr.html ).
If the bluetooth controller can be setup in such a way that it will
emulate an 8250-compatible UART on a certain port/interrupt you could
just use devc-ser8250 (
http://www.qnx.com/developers/docs/6.3.0SP2/neutrino/prog/resmgr.html )
after the bluetooth controller was configured in this way.


Ryan J. Allen
ryallen@qnx.com

Ryan J. Allen wrote:

If the bluetooth controller can be setup in such a way that it will
emulate an 8250-compatible UART on a certain port/interrupt you could
just use devc-ser8250 (
http://www.qnx.com/developers/docs/6.3.0SP2/neutrino/prog/resmgr.html > )
after the bluetooth controller was configured in this way.

Sorry, my second link should have been to here:

http://www.qnx.com/developers/docs/6.3.0SP2/neutrino/utilities/d/devc-ser8250.html


Ryan J. Allen
ryallen@qnx.com

Joseph <jmails@gmail.com> wrote:

Can someone please guide me on how to create a virtual serial port in QNX?

What I want is to create a virtual port, and all reads and writes to that
port pass through my application.

Others have suggested writing a resource manager – it is one way to go.
If you want to have it really look like a serial port (client side) with
the least amount of work on your side, I’d suggest, instead, using the
Character DDK. This provides the io-char library source, and source to
the devc-ser8250 driver. You should be able to find it downloadable from
qnx.com as a free with a development-seat add-on.

-David

David Gibbs
QNX Training Services
dagibbs@qnx.com