Linux Firmware Keyspan USB to Serial


Just wanted to share the difficult to find firmware that works between Linux and the awesome Keyspan USB to Serial devices.  I love these old Keyspan devices!  Anyways, here is the ‘dmesg’ signature for your perusal.

New USB device found, idVendor=06cd, idProduct=012a
New USB device strings: Mfr=1, Product=2, SerialNumber=0
Product: Keyspan USA-49WLC
Manufacturer: Keyspan, a division of InnoSys Inc.

On Debian 6, “squeeze”, and on Ubuntu images I simply copy the “keyspan.zip” file to the /lib/firmware/ folder, uncompress it and plug back in the device.  Everything works like a champ from that point on.

Firmware included for:

keyspan/mpr.fw
keyspan/usa18x.fw
keyspan/usa19.fw
keyspan/usa19qi.fw
keyspan/usa19qw.fw
keyspan/usa19w.fw
keyspan/usa28.fw
keyspan/usa28xa.fw
keyspan/usa28xb.fw
keyspan/usa28x.fw
keyspan/usa49w.fw
keyspan/usa49wlc.fw

Happy coding!

keyspan.zip

  1. #1 by david on January 13th, 2013

    thanks for this. any idea if/how i can get my keyspan to work on an android phone?

  2. #2 by dave on January 27th, 2013

    Thanks a million!! I have been trying to add a serial port to my raspberry pi without success , then i found some old keyspan dongles (usa-19). Doing what you say above I now see ttyUSB0 and the RPI now can talk to my radio

    Thanks again

    Dave

  3. #3 by Chris Danielson on January 27th, 2013

    No problem! Glad it worked Dave. Cheers!

  4. #4 by Mon Jervios apartment on February 3rd, 2013

    I do not know if it’s just me or if everyone else encountering problems with your blog. It appears as if some of the text on your content are running off the screen. Can somebody else please comment and let me know if this is happening to them too? This may be a issue with my internet browser because I’ve had this happen previously.
    Appreciate it

  5. #5 by Guy on December 24th, 2013

    Hey there. Thanks for this, I have downloaded it unzipped it into the firmware library for my raspberry pi and still my keyspan 19hs does not work.

    I found a link to a driver that goes along with the firmware, but I don’t know how to compile it or how to or where to put it. Any help would be appriciated.

    Thanks,
    Guy
    🙂

  6. #6 by Guy on July 21st, 2014

    The keyspan and any that I can find usb to serial port only seems to run on one of the two usb ports on the raspberry pi itself. This works great, if you have the usb > serial converter plugged into one of those two ports.

    I can’t figure out how to get the usb to serial to work on a hub with the raspberry pi no matter what I do. Anyone got any ideas?

    Thanks,
    Guy

  7. #7 by Thomas on March 19th, 2015

    Thanks! Saved me a lot of time to remember how this worked 🙂

  8. #8 by Larry on October 3rd, 2015

    Worked for me too on a Raspberry Pi model B using a powered hub. I didn’t try without a hub since the pi is so sensitive to current load on the USB. Thanks!

  9. #9 by c3dub on February 28th, 2017

    Thanks for this. Today I was able to get an old Keyspan USA-19 recognized by a RPi2 under the latest raspian OS.

  10. #10 by Rob Kouwenberg on April 22nd, 2017

    Excellent, thank you! works like a charm.
    Before:
    [29391234.425270] usb 3-1: new full-speed USB device number 24 using ohci-platform
    [29391234.650413] usb 3-1: New USB device found, idVendor=06cd, idProduct=0109
    [29391234.661852] usb 3-1: New USB device strings: Mfr=0, Product=0, SerialNumber=0
    [29391234.679723] keyspan 3-1:1.0: Keyspan – (without firmware) converter detected
    [29391234.691985] usb 3-1: Direct firmware load for keyspan/usa49w.fw failed with error -2
    [29391234.708720] usb 3-1: Falling back to user helper
    [29391234.722630] usb 3-1: ezusb_ihex_firmware_download – request “keyspan/usa49w.fw” failed
    [29391234.739528] usb 3-1: failed to load firmware “keyspan/usa49w.fw”
    [29391234.750498] keyspan: probe of 3-1:1.0 failed with error -5
    Now:
    [29391360.144114] usb 3-1: new full-speed USB device number 26 using ohci-platform
    [29391360.387175] usb 3-1: New USB device found, idVendor=06cd, idProduct=010a
    [29391360.400547] usb 3-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
    [29391360.419730] usb 3-1: Product: USB 4-port Serial Adapter
    [29391360.431162] usb 3-1: Manufacturer: Keyspan, a division of InnoSys Inc.
    [29391360.446674] keyspan 3-1:1.0: Keyspan 4 port adapter converter detected
    [29391360.460222] usb 3-1: Keyspan 4 port adapter converter now attached to ttyUSB0
    [29391360.480564] usb 3-1: Keyspan 4 port adapter converter now attached to ttyUSB1
    [29391360.500500] usb 3-1: Keyspan 4 port adapter converter now attached to ttyUSB2
    [29391360.520583] usb 3-1: Keyspan 4 port adapter converter now attached to ttyUSB3

  11. #11 by gmichaela on November 14th, 2017

    worked great on my raspberry pi, thx!

    http://www.linuxha.com/bottlerocket/ X10 Keyspan UPR-112 Serial to USB

    [24041.976874] usb 1-1.2.3: Product: Keyspan UPSH112-Serial
    [24041.976885] usb 1-1.2.3: Manufacturer: Keyspan
    [24041.979183] keyspan 1-1.2.3:1.0: Keyspan 1 port adapter converter detected
    [24041.980281] usb 1-1.2.3: Keyspan 1 port adapter converter now attached to tty USB0

    pi@pi ~/Documents/x10 $ sudo br –port=/dev/ttyUSB0 –ON
    pi@pi ~/Documents/x10 $ sudo br –port=/dev/ttyUSB0 –OFF

  12. #12 by DAve Molinelli on October 21st, 2019

    Trying to get a USA-19hs to work with a Raspberry pi. I unzipped the file, and put the drivers in the lib/firmware directory. reboot still will not give me a usb tty entry.

  13. #13 by Josh on January 11th, 2021

    Thanks for posting. I plugged my Keyspan USA-19HS into my Ubuntu 20.10 Lenovo X1 laptop, and I don’t see any firmware message in my console log. Perhaps as a result, attempts to set parity or stop bits via pyserial or stty seem ineffective. All I get in the logs when plugging in the Keyspan is:

    Jan 11 16:40:20 X1-6th kernel: [ 8099.025705] usbcore: registered new interface driver keyspan
    Jan 11 16:40:20 X1-6th kernel: [ 8099.025717] usbserial: USB Serial support registered for Keyspan – (without firmware)
    Jan 11 16:40:20 X1-6th kernel: [ 8099.025724] usbserial: USB Serial support registered for Keyspan 1 port adapter
    Jan 11 16:40:20 X1-6th kernel: [ 8099.025730] usbserial: USB Serial support registered for Keyspan 2 port adapter
    Jan 11 16:40:20 X1-6th kernel: [ 8099.025736] usbserial: USB Serial support registered for Keyspan 4 port adapter
    Jan 11 16:40:26 X1-6th kernel: [ 8105.207664] usb 1-2: new full-speed USB device number 9 using xhci_hcd
    Jan 11 16:40:26 X1-6th kernel: [ 8105.376377] usb 1-2: New USB device found, idVendor=06cd, idProduct=0121, bcdDevice= 1.00
    Jan 11 16:40:26 X1-6th kernel: [ 8105.376386] usb 1-2: New USB device strings: Mfr=1, Product=2, SerialNumber=0
    Jan 11 16:40:26 X1-6th kernel: [ 8105.376390] usb 1-2: Product: Keyspan USA-19H
    Jan 11 16:40:26 X1-6th kernel: [ 8105.376394] usb 1-2: Manufacturer: Keyspan, a division of InnoSys Inc.
    Jan 11 16:40:26 X1-6th kernel: [ 8105.381746] keyspan 1-2:1.0: Keyspan 1 port adapter converter detected
    Jan 11 16:40:26 X1-6th kernel: [ 8105.381952] usb 1-2: Keyspan 1 port adapter converter now attached to ttyUSB0

    Anyone have any ideas why the firmware might not be loading?

(will not be published)