Using Prolific PL-2303HXA USB to TTL chipset on Windows 8

0.00 avg. rating (0% score) - 0 votes

To avoid using the MAX232 level converter and a USB to serial adapter on my Mac Mini every time I needed to debug the PIC micro-controller via UART, I purchased a few USB to TTL modules from eBay, hoping that the PIC will simply appear as a serial port under Windows ready for use with any terminal program.

The module looks neat with output pins for GND, TX, RX, 3.3.V and 5.0V:

Although Windows 8 automatically installed the driver for the module, the installation was not successful with an error message “A device which does not exist was specified.” shown inside Device Manager. The module works fine on Windows XP or Windows 7 and my other USB to RS232 adapter works fine under Windows 8.

Further research reveals that the module is using the PL-2303HXA chipset, which is not supported under Windows 8, as indicated on the manufacturer’s driver download page:

Windows 8/8.1 are NOT supported in PL-2303HXA and PL-2303X (End-of-Life) chip versions.

What is so special about Windows 8 that prevents the PL-2303HXA/PL-2303X from working, while other variants in the PL2303 family work just fine? For all I know the only major difference is that Windows 8 requires the use of signed drivers, which is irrelevant since the Prolific driver is signed. In any case, the requirements of signed drivers on Windows 8 can be disabled by using the following BCDEDIT commands:

bcdedit.exe -set loadoptions DISABLE_INTEGRITY_CHECKS
bcdedit.exe -set loadoptions TESTSIGNING ON

With some research I found a suggestion here. Apparently it is a driver problem that prevents the PL-2303HXA chipset from working on Windows 8, and not a chipset problem. The solution is to use an older driver file (not the driver installer provided by Prolific) downloadable from here and choose to install the driver manually.  When prompted, click “Browse my computer for driver software”, select the driver’s INF file, choose “Let me pick from a list of device drivers on my computer”, and select the Prolific driver version 3.3.2 which was created in 2008 (not the latest version):

With this manual selection, the driver will be installed properly on Windows 8 and a new COM port will be added under the Ports (COM & LPT) section in Device Manager and can be used from any terminal program.

But the question remains as to what prevents the latest driver of PL-2303HXA from working on Windows 8. My guess is that there are some problems with the latest driver and this particular chipset on Windows 8 and although the problems might be fixable, Prolific has decided to take this opportunity to end-of-life some older PL2303 models and force end users to upgrade to newer models.

0.00 avg. rating (0% score) - 0 votes
ToughDev

ToughDev

A tough developer who likes to work on just about anything, from software development to electronics, and share his knowledge with the rest of the world.

38 thoughts on “Using Prolific PL-2303HXA USB to TTL chipset on Windows 8

  • April 18, 2014 at 7:08 pm
    Permalink

    Thank you for sharing! I've been using a linux install in vmware player to be able to use it, with usb-passthrough from windows.
    If you search ebay/dx/aliexpress etc for pl 2303 you'll mostly find cheap ones with hxa. So either there's a lot of them left, or it's copies. This is why I like open source – the linux driver never stopped working :)

  • April 18, 2014 at 8:52 pm
    Permalink

    Agreed with you totally :) The driver problem on Windows 8 caused me a big headache too – thought I have just wasted $5 buying 10 of them from eBay. Luckily I found this workaround. Not sure why Prolific can't simply just provide an update driver for Windows 8. Wish that all softwares I need could support Linux – then I don't need to tweak with Windows driver signing and those related time-wasting issues.

  • April 19, 2014 at 10:16 pm
    Permalink

    Just as i found this page, my next idea was to use ser2net on my router – that way I could even remote into it from work. Issue was that asuswrt-merlin kept on telling me it was a GSM modem and was treating it as such.

  • April 19, 2014 at 10:19 pm
    Permalink

    Interesting, let me try ser2net on my old Linksys router. It has been a while since I attempt low-level networking stuff :)

  • June 1, 2014 at 10:51 pm
    Permalink

    It works(Windows 2012 R2 x64). Thank you.

  • July 16, 2014 at 9:50 pm
    Permalink

    Thank you.

  • July 31, 2014 at 8:34 am
    Permalink

    Thanks!

  • August 11, 2014 at 2:29 pm
    Permalink

    The old PL2303 driver has BSOD issue, Do you have newest driver?

  • August 11, 2014 at 2:30 pm
    Permalink

    Hi,

    What is your OS and system configuration and what is the exact message in the BSOD? I do not have the newer driver but I have tried using the driver I provided on various systems with no issues.

  • August 27, 2014 at 12:12 am
    Permalink

    this is 64bit driver? is there one for 32bit?

  • August 29, 2014 at 4:25 pm
    Permalink

    It worked in Win8 64bit. Thank you for solving my (3 months) problem :)

  • September 9, 2014 at 9:08 am
    Permalink

    Thanks! Worked a charm.

  • September 9, 2014 at 4:25 pm
    Permalink

    You just saved my thesis problem, aka my future. Thank you.

  • September 27, 2014 at 6:26 pm
    Permalink

    Thanks for putting the file up on dropbox, you Sir are a true gent. Problem solved :)

  • October 1, 2014 at 12:19 am
    Permalink

    Thank you!

  • October 6, 2014 at 6:26 am
    Permalink

    Nice one! Windows 8.1 x64 kept insisting to keep the non-working driver rather than load the older driver until I read your instructions a bit more carefully.

  • October 6, 2014 at 9:29 pm
    Permalink

    There's one trick which brings PL-2303XA/HXA USB-COM dongle to life on WIN 8.1 64Bit:

    Plug in and allow to install with newer driver with error code 10, then
    1) get the lower version of Prolific driver e.g. 3.3.2.1xx (http://www.magicdriver.com/driver158759-ver_3.3.2.102.html)
    2) unpack it.
    3) Edit ser2pl.inf and replace %DeviceDesc% value (USB\VID_067B&PID_2303&REV_0202) with key from device manager/Prolific USB-to-Serial Comm Port …/properties/details / device indentification (e.g. USB\VID_067B&PID_2303&REV_0300 or better USB\VID_067B&PID_2303 ). Do this replace twice for [PRO.NT] and [PRO.NTAMD64] section

    e.g.
    [PRO.NTAMD64]
    %DeviceDesc% = ComPort, USB\VID_067B&PID_2303&VER_0202

    to

    [PRO.NTAMD64]
    %DeviceDesc% = ComPort, USB\VID_067B&PID_2303

    4) verify ClassGuid in inf file with device

    ClassGuid={4D36E978-E325-11CE-BFC1-08002BE10318}

    5) locate driver folder in c:\windows\system32\DriverStore\FileRepository\ser2pl.inf_amd64_xxxxxxx
    6) replace all files in located folder with this lower version drivers
    7) in Device Manager do an update of driver for USB-RS dongle.
    From this moment error not flashes anymore, chip is regonizable and works properly.
    Enjoy! :)

  • October 22, 2014 at 5:33 am
    Permalink

    holy cow! i was losing hope! thank you!

  • October 25, 2014 at 2:28 am
    Permalink

    Thanks for sharing this !! My PL-2303H is working fine now on Win 8.1 32-bit (Asus T100TA)

  • October 27, 2014 at 10:49 pm
    Permalink

    Thanks a lot! Works great!

  • November 18, 2014 at 10:35 pm
    Permalink

    Thank you very much for sharing this! It works!

  • November 21, 2014 at 12:49 am
    Permalink

    Thank you.
    This solution is perfect :-)
    (Win 8.1 x64)

  • November 28, 2014 at 9:23 pm
    Permalink

    this was working for me in win 8.1×64

  • January 9, 2015 at 10:04 pm
    Permalink

    Thanks a million for your wonderfully trick.
    You so cool man!

  • April 10, 2015 at 2:54 am
    Permalink

    Thank you….
    You saved my day.

  • April 15, 2015 at 2:24 am
    Permalink

    Thansk a bunch here too! Saved me a serious headache :-)

  • May 31, 2015 at 12:23 am
    Permalink

    Thank you dude, although I spent a day on it, gettinng no where, youu saved my next day :-)

  • June 28, 2015 at 2:08 am
    Permalink

    Thank’s for driver. Working on win 8.1 x64 bit with usb pl-2303hx.

  • August 6, 2015 at 3:05 am
    Permalink

    Thanks. Works for me on Windows 8.1.
    Windows sucks!

  • August 17, 2015 at 4:48 am
    Permalink

    Thumbs up dude, it worked on my win 8.1

  • September 15, 2015 at 3:36 pm
    Permalink

    Thank you! This solution is perfect :-)

  • September 15, 2015 at 3:37 pm
    Permalink

    win10 working!

  • September 20, 2015 at 11:13 pm
    Permalink

    easy solution:

    install the 2008 driver, by right clicking the inf file then selecting install.
    then in device manager click roll back driver, under properties -> driver -> Roll Back Driver

  • October 11, 2015 at 10:03 am
    Permalink

    Thanks a lot! You saved me a lot of hassle of returning a newly purchased item from eBay! it works fine now!

  • January 8, 2016 at 10:15 pm
    Permalink

    Saved my day as well – thanks for researching out the correct driver and the main issue

  • April 17, 2016 at 2:25 pm
    Permalink

    Man thank you for sharing this info. I was closer to turn mad because of the time I spent trying to fix this problem. I do appreciate your post

  • March 28, 2017 at 2:49 am
    Permalink

    Thanks…it worked

  • July 16, 2017 at 3:30 pm
    Permalink

    I feel that is among the so much important info for me.
    And i’m glad studying your article. However want to observation on few common things,
    The site taste is perfect, the articles is truly excellent :
    D. Good process, cheers

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>