PL2303 driver guide ?

I am writting a firmware to connect an embedded USB host with the Prolifi PL2303 USB-RS232 chip. The PL2303 chip is used to get data from som RS232-enabled devices and then transfer these data to the USB host. Now need detailed information about PL2303's specification and operation, t develope the appropriate driver for it. I have been searching for some PL2303 driver or programming guides bu haven't found any of them yet.

Has anybody worked with PL2303 ? Please give me some help !

Thanks, N.L.Trung

Reply to
trungnl
Loading thread data ...

If you are lucky, you *could* get the API from Prolific. FTDI offers a similar service under NDA.

Meindert

Reply to
Meindert Sprang

Thanks Meindert, May be that API is the exact thing I need now. Can you tell me how to get the PL2303's API ?

Thank you very much, N.L.Trung

Reply to
trungnl

When I wrote a driver for this chip, I gleaned the apparently reverse-engineered interface information from the appropriate Linux device driver.

-- Michael N. Moran (h) 770 516 7918

5009 Old Field Ct. (c) 678 521 5460 Kennesaw, GA, USA 30144
formatting link

"So often times it happens, that we live our lives in chains and we never even know we have the key." The Eagles, "Already Gone"

The Beatles were wrong: 1 & 1 & 1 is 1

Reply to
Michael N. Moran

Well, here's what I wrote earlier:

So, contact Prolific...

Meindert

Reply to
Meindert Sprang

Hi Michael,

Actually I am writting the PL2303 driver base on some reverse-engineere information retrieved by monitoring the data transfer process between PL2303-based USB-RS232 cable and PC. Now I can enumerate the PL2303, se the COM settings like baudrate, stop bits, parity... I can send as man data as I like from the embedded USB host to PL2303 as well. But there i still a big problem because the host cannot get data from PL2303. Now I need some more information on:

  1. How to be notified when there's some data in the Receive buffer o PL2303.
  2. How to know the amount of data in the Receive buffer of PL2303.

Best, N.L.Trung

Reply to
trungnl

You have to poll the PL2303 for that. Remember, USB is a master/slave system where a slave NEVER starts transmitting by itself. Transmission of a slave is always a response to a request from the master.

Meindert

Reply to
Meindert Sprang

"trungnl" ...

You did read the datasheet and manuals at this site?

formatting link

Arie de Muynck

Reply to
Arie de Muynck

Yes I did read all the docs at Prolific Website, but they lack all th information needed to develop PL2303's driver. I think FTDI has a bette product, the FT232BM, but PL2303 is much cheaper so I must choos Prolific's product to reduce overall cost.

Reply to
trungnl

Thanks Meindert,

I have implemented a polling mechanism to get data from PL2303 to th embedded host. But there is another problem

According to PL2303's spec, the chip has an 256-byte-buffer for each T and Rx operation. But when I transfer a large amount of data (about 3KB to the RS232 interface of PL2303, the USB host can only read a few byte from the USB interface. It seems that the data in PL2303's buffer has los so I cannot read all the data transfered to RS232 interface.

Reply to
trungnl

Without knowing all the details, I'd say: poll more often. You have to at least poll often enough not to let your 256 buffer fill up.

Meindert

Reply to
Meindert Sprang

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.