Usb rs232 converter without drivers

I got this usb rs232 converter and I was wondering if somebody knows if it is possible to use this (or any other usb rs232 converter) without using the drivers. The converter I got has a FTDI chip and it does have drivers included, but I want to use it without the drivers because I plan to connect it to an Arduino and a serial printer, and not a computer, so there is no operating system for the drivers.

Any help or suggestions are much appreciated.

Hi,

I cannot give you too much guidance on what you are doing but, you might want to consider using a MAX232 chip or a serial adapter like our Pololu 23201a Serial Adapter. Using a device with a USB connection seems like it would be very complex and probably not the way to go.

-Derrill

Thanks for the suggestion Derrill, I know it is kind of a strange setup Im working on, …mainly experimentation only :smiley:
I might actually be able to use the board you mention, or possibly the usb serial adapter board I just saw you have. I will look into that.

After a lot of research and experimenting I can now answer my own question :slight_smile: Apparently it is impossible to use a USB serial adapter without having an operating system at the USB end where the drivers can be installed. In other words, a USB serial adapter cannot convert data without drivers. Correct me if I am wrong, but this is what I have concluded so far. I actually find it strange that no converter exists where the full conversion is made inside the converter, without the need for an operating system.

Hello. What would “full conversion” be? You need a driver of some kind to talk to any USB device, or else the USB host will not know the meaning of the endpoints and interfaces provided by the device. An endpoint is a stream of data packets with an ID number and some properties. For a USB-to-serial driver, the driver needs to figure out which endpoints to use for sending and receiving the serial data, and actually use them. That is basically all the driver needs to do; the driver does not need any low-level knowledge of how bytes are encoded on a serial line. The driver could be a general-purpose one like Microsoft’s usbser.sys, or it could be a simple, custom thing running on an embedded microcontroller with USB host capabilities.

–David

Thanks for the information DavidEGrayson. Lets say I have a USB device, for example a scale with a USB port, and I want to connect it to a computer’s serial port. As far as I have been able to find out this is not possible, since the USB end need drivers (the scale has no operating system or drivers), is that correct? So what I don’t understand is why the data sent from the scale’s USB port can’t simply be converted in the USB/serial converter and sent out on the serial end of the converter and into the computer’s serial port.
Im an electronics beginner so forgive me if this is a silly question.

Ah, thanks for the clarification. USB ports are a lot more common than serial ports these days, so when people talk about a USB-to-serial adapter they are usually in the opposite situation from what you describe: they have a serial device and they want to plug it into a computer’s USB port. Because USB is an asymmetric protocol, that is a very different problem than the one you describe with the scale.

Someone could probably build the device you are describing, but it would be pretty complicated to design and use. The USB protocol is a lot more complicated than plain old serial and there is no obvious mapping of a USB device’s protocol into a serial protocol. The device you are describing would have to receive and act on various serial commands that affect the state of the USB end, such as a command to send a reset signal on the port, a command to tell the USB device to go into a particular configuration, or a command to read or write data from a particular endpoint. Defining the serial command set and defining the errors and status information that get reported back to the computer over serial would be a lot of work. It would also be difficult to educate the users on the serial command set and how to use it.

–David

Thanks a lot for the explanation David. Now I better understand why there are no such converters existing. I thought that USB data could be converted to serial data and vice versa as a simple “1 to 1” conversion but I can see now that there are many more factors involved.

In fact, the USB-enabled “scale” that you are using as an example DOES have drivers and an operating system of sorts, which are designed to interact with a host computer via the host computer operating system and drivers. The “scale” has an internal microprocessor that is USB-enabled by software and possibly also specialized hardware internal to the chip.

You may be surprised by the amount of code involved. For examples of what is required on the device end (source code included), there are two open source projects for AVR processors that I know of. One is the software-only V-USB project fourwalledcubicle.com/LUFA.php

The two libraries that allow a Wixel to appear to the computer as a USB virtual COM port have a total of 1173 lines of code, which you can see in usb.c and usb_cdc_acm.c.

–David

Wow…interesting, …but definitely not a project for a beginner like me :slight_smile: