This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

EKK-LM3S3748 RS232 USB

Other Parts Discussed in Thread: EK-LM3S3748, LM3S3748

Hi,

 

I'm looking for an ARM development board that has a couple of RS232 ports.  I found this EKK-LM3S3748 evaluation kit with a few USB ports.  The debug USB port is converted to a com port using the FTDI driver.  Can the other two USB ports be converted to RS232 in the same manner?   Could you suggest other development board with ARM and RS232 ports?

Is Windows 7 FTDI driver available for use with this board?

Thank you.

  • The ek-lm3s3748 board routes the UART0 peripheral to the PC via one of the USB channels provided by the FTDI device. The other USB device connector on the board is not physically connected to another UART on the board but we provide support for USB virtual serial ports via this connection too. The software release for the board includes 2 example applications, usb_dev_serial which offers a single virtual serial port and usb_dev_cserial which offers 2 virtual serial ports via the device USB connector. Note that, although the board has both a device and host USB, there is only a single USB controller on the lm3s3748 part itself and it can operate either as a host or a device (but not both at once).

    Using UART0 via the FTDI USB port and the usb_dev_cserial example software, therefore, via the device USB port, you can have 3 virtual COM ports visible by the host PC.

  • Is there any drivers needed on the PC side to use usb_dev_serial or cserial?   Thank you.

     

  • The FTDI device needs a driver and you can find it on this page (look for "LM FTDI Driver-2.06.00" under "Other Software Tools and Libraries"). The USB serial devices offered by usb_dev_serial and usb_dev_cserial use the standard Windows USB serial port driver but require an INF file to connect the VID/PID to that driver. The INF is in the example application directory (C:\StellarisWare\boards\ek-lm3s3748\usb_dev_serial or usb_dev_cserial) and can also be found in the "Stellaris embedded USB drivers" package also available on the Software Updates page.

  • I finally got the evaluation board and tried out usb_dev_serial and usb_dev_cserial.  The first one worked fine, but I had trouble with the cserial one.  When I installed the Stellaris USB Serial Command Port, I got an error message saying that the device could not start and the error code was 10.  I also had problem with starting the LM Oscilloscope with error indicating that device drivers were not installed.  I have gone through removing drivers with the FTClean util and reinstalled drivers, but the problem was not resolved.  What can I do to fix this problem, please?  Thank you.

     

  • Please make sure you installed the correct drivers. There are 2 driver packages relevant to Stellaris boards. The first package installs the FTDI drivers which support debug and virtual COM port via the "Debug USB" connector. These are drivers which can be uninstalled using the FTClean tool. The second package, contained in the SW-USB-windrivers-xxxx.zip file which you can download from the "Miscellaneous" section here, contains the drivers for our USB examples (the examples which use the USB controller on the Stellaris part itself). These must be installed independently of the FTDI drivers and are not affected by FTClean.

    I can't tell what is wrong based on the information here but I am somewhat suspicious that usb_dev_serial works but usb_dev_cserial doesn't since they both use the same Windows driver under the covers. I would recommend uninstalling the driver for both examples using the Windows Device Manager (right click the device in the list and select "Uninstall". You may find that the device has to be connected to allow you to do this.) then downloading the latest driver package, unplugging the device, plugging it back in and pointing Windows at the latest drivers. If this doesn't work, post your results and I'll see if I can offer any more suggestions.

  • When I installed the driver for cserial on the 2nd port, the installation failed - Windows said the device did not start (code 10).  Why?  Thanks for your help.

     

  • Can I create the virtual ports via the host USB connector instead of the device USB connector?  Could you please give me information on how to do that?  I've never worked with USB before.  Thank you very much.

  • Sorry  - I can't tell why this would occur. Take a look in C:\Windows\setupapi.log and see if there's anything suspicious in there. This log should contain a record of all errors encountered while installing drivers.

  • I'm not sure what you want to do here. Do you want to be able to plug a virtual serial device into the USB host connector? If that's your goal, you would need to write a host class driver for the USB CDC ACM class. The USB library documentation describes the structure of a host class driver and you can download the specification for the USB CDC class from the USB-IF web site here. Note that quite a few (if not most) of the USB serial port devices on the market don't use the standard USB CDC class but use a proprietary (non-public) protocol and this may cause you some problems.

    If you are interested in a good USB tutorial that is a whole lot easier to read than the official specification, I can recommend "USB In A NutShell."

  • The log file showed a code 10 error.

    #-166 Device install function: DIF_INSTALLINTERFACES.
    #-011 Installing section [DriverInstall.NT.Interfaces] from "c:\stellarisware\boards\ek-lm3s3748\usb_dev_cserial\usb_dev_cserial.inf".
    #I054 Interfaces installed.
    #-166 Device install function: DIF_INSTALLDEVICE.
    #I123 Doing full install of "USB\VID_1CBE&PID_0007&MI_02\6&B9401D1&0&0002".
    #E362 An unsigned or incorrectly signed file "c:\stellarisware\boards\ek-lm3s3748\usb_dev_cserial\usb_dev_cserial.inf" for driver "Stellaris USB Serial Command Port" will be installed (Policy=Warn). Error 0xe000022f: The third-party INF does not contain digital signature information.
    #I163 Device not started: Device has problem: 0x0a: CM_PROB_FAILED_START.
    #I121 Device install of "USB\VID_1CBE&PID_0007&MI_02\6&B9401D1&0&0002" finished successfully.

    Is something wrong with the board?

     

  • From the LM3S3748 evaluation board, I need to communicate with a device that uses RS232, and I have an RS232 to USB connector.  So instead of using the device USB port, I need to use the host USB port.  Is there any device USB to RS232 converter?  Any suggestion would be very much appreciated. 

     

  • I think I can help you with this one. You're installing the wrong version of the INF file. This is our problem, though, since I see we have an old version of usb_dev_cserial.inf in the application directory. This is not the latest version and probably won't work on some versions of Windows (I don't remember if you indicated which version you are using but I suspect you would have problems with Windows7 and possibly Vista using that version of the INF). Download the latest SW-USB-windrivers-xxxx.zip package and try installing that version of the INF file (after uninstalling the one you have installed now). This is the one that should work for all flavors of Windows since XP.

    I'll raise a problem and get the INF file removed from the board directory to save this confusion in future.

  • My post 2 back applies in this case. If you want to use a USB serial device, you would need to write a USB host class driver for it. We don't have an example of this.

    If your goal is to use RS232 from the 3748, you may find it easier to use UART1 which is connected to a couple of the headers on the board rather than going through the development effort required to support the USB serial device. As I mentioned, it is likely using a proprietary protocol so writing code to support it would be rather difficult.

  • Thank you very much for all your help.