USB stand for Universal Serial Bus not Port. The term 'serial port' simply means that the data is transferred one bit at a time over a single signal path - in that sense even Ethernet is serial in nature. The word serial in both terms implies no relationship other the width of the data path. I read that openHUB does not supporto modbus RTU over TCP but there is a workaround using virtual serial port, so I tried to start with this solution: OpenHUB v2 installed on a Windows machine Virtual Serial Port installed on Window.
I originally started developing with the LPC2368 beta unit on a Windows XP machine. All was working fine with the Windows serial port driver. When the new (current) driver was released, I started using that and it wored fine. I then added a Vista machine to my office. I then loaded the new drivers onto the Vista machine and all worked fine. Recently, I received my LPC1768 mbed.
I tried it on my Vista machine, and had to re-install the Windows serial port driver but all is working well on it. Now, either board works fine on this machine.
I then tried to run the LPC1768 on my XP machine, and again found I had to re-load the Windows Serial Port Driver. When I did, Windows reported that there was a problem and could not start the serial port driver. I tried re-installing it several times, both from the website as well as from a local drive copy. Finally, I went back to my LPC2368 mbed. Re-installed drivers, and everything works fine. Going back to the LPC1768, it fails.
It always says the driver could not start. I have uninstalled, re-installed, etc., but to no avail. Again, everything works fine on my Vista machine, just not on my XP machine, and only with the LPC1768 board.the LPC2368 works fine. Any clues as to what might be the issue? Hi Jim, wrote: Recently, I received my LPC1768 mbed. I tried it on my Vista machine, and had to re-install the Windows serial port driver but all is working well on it. Now, either board works fine on this machine.
Glad this is working at least. To clarify, this behaviour is expected. Windows registers each different mbed as a separate device, hence the need to install again. Wrote: I then tried to run the LPC1768 on my XP machine, and again found I had to re-load the Windows Serial Port Driver. When I did, Windows reported that there was a problem and could not start the serial port driver.
I wonder if this is some hangover from the old driver getting picked up when you put in a new device. However, we tested this all very thoroughly, including re-installing and upgrading, so it feels like a strange interaction/history thing. I'll have a chat with Phil (our USB guru) tomorrow, and see what he recommends. But in the mean time you could look at the following: (Note, I don't have an XP machine with me so can't guide exactly - based on Vista). First off, can you confirm the Firmware on the LPC1768 and LPC2368 mbed's are up to date (see ). Then, if you go to Device Manager, what is the version of the driver at:.
Ports (COM & LPT) mbed Serial Port - right-click Properties, Driver tab. Universal Serial Bus controllers mbed Composite Device - right-click Properties, Driver tab I'd expect 2.0.2.0 and 1.0.0.0. If all looks in order, I'd then try un-installing both of these drivers (serial/composite), selecting to remove the software. But then also check if you disconnect/reconnect, that an old serial driver is not recognised. If it is, remove that too using the same process.
Do this for both boards and you'll be basically back to scratch. Probably worth a reboot to ensure windows is not holding anything, then try re-installing. Please note down every step you do if possible. We haven't seen a problem yet (apart from a problem downloading the driver mentioned in ), so capturing the process may help if anyone else gets a similar result.
This may come to nothing, but it'd be good to discount it. Please report back how you get on. Well, I tried all of the above. 1) I Plugged in my LPC1768. Hi Jim, Phil suggested it could be that windows is trying to allocate it to a COM port that is already in use. That would cause it to fail with Code 10.
It seems sometimes Windows gets an inconsistency in it's registration of what has already been allocated. To see if this is the problem (and hopefully fix it), try changing the assigned COM port. Go to Device Manager Ports (COM & LPT) mbed Serial Port, then right-click and select 'properties'. Choose 'Port Settings' Tab, and click 'Advanced'.
Under 'COM Port Number', try selecting a different COM port Note that windows marks some as (in use), but don't count this as exhaustive for the same reason as this problem may exist! Try changing it to a few different unused COM ports and see if this has an impact. If not, we'll dive deeper to see what windows is reporting.
Simon, I had already done the un-lug/re-plug thing. It always assigned the mbed to COM3.which I have confirmed is not used by anything else. I just went in and manually changed it to COM16, and it seems to have fixed the Windows error. I then tried to run a program that writes out to the port.
This program works on the Vista machine (with either the LPC1768 or the LPC2368, as well as on the XP machine (but only with the LPC2368). SO, while I don't get the Windows error, the serial coms doesn't work on the XP machine with the LPC1768. By the way.if change the port back to COM3.Windows gives me the error again.
Ok.just did a couple of more things. I tried my LPC2368 mbed. It came up as COM3 (now that the LPC1768 has moved to COM2). It works fine.
I then changed over to the LPC1768, which came up as COM2.still no serial data being shown. So.in review.same PC, running XP, same terminal program, same code (compiled for the appropriate mbed board). LPC2368 works fine.LPC1768 does not. Quite curious. Beginning to think I am having problems on the PC with XP. Next thing to try is maybe another USB port.
I realize COM port number will change. I'll let you know. Hi Jim, Sounds like the LPC1768 on XP is still coming in on some low numbered port, and I'm worried there may be a clash still if windows is confused. With the LPC1768 plugged in to XP, try changing the COM port to e.g. COM25 or some other higher one. Then unplug-replug and check it comes in OK (i.e.
On COM25, and not code 10). Then (re)start teraterm and see if you get life! If not, this is very strange. Can you list the exact hardware, OS specs? Maybe you can find another XP machine to try just to really narrow it down to that machine? For sanity, it might also be worth ensuring the program on the mbed really is running - e.g. Flashing an LED at the same time. This would confirm e.g.
The wrong image hadn't ended up on the wrong board!?! But as you have had the board working with Vista, it is unlikely to be this. And checking teraterm is restarted. Has anyone else seen this problem?
It is the first we've seen where it was not easily resolved. Thanks Simon. Actually, I did have other code running to flash some LEDs. It would not be the first time I had the wrong compiler selected.the compiler comes up to the LPC2368 as default. The good news is.I have it working.
I had moved the port to many places, but had to keep it between COM1 and COM16, as Terraterm only goes up to port 16. I finally chose COM9, and it works fine now. I am not sure why.
The LPC2368 works fine on COM3, but when the LPC1768 was on that one, it didn't. At this point, I am not sure where the problem lies, but I am suspecting it might have to do with the PC I am running on. I would not worry about it being any other issue. Thanks to you and all who tried to help. I am really quite impressed with the quick reponses and good information here. Hi Jim, wrote: The good news is.I have it working.
That is great news! So I think the summary of the problem is:. Windows sometimes incorrectly and repeatably allocates mbed to a COM port which is in use/not suitable which it thinks is free. The result is the error 'The device cannot start (code 10)'. = no serial:( The solution is:. Go to Device Manager Ports (COM & LPT) mbed Serial Port, then right-click and select 'properties'. Choose 'Port Settings' Tab, and click 'Advanced'.
Under 'COM Port Number', try selecting a different COM port. Unplug and replug the mbed to reload the driver - if the problem persists, try another COM port Windows is generally very repeatable; once it has allocated a port, it tends to stick to it. Wrote: I had moved the port to many places, but had to keep it between COM1 and COM16, as Terraterm only goes up to port 16. It may be worth seeing if you are on the newest version of Teraterm. It has much better support for serial ports, including listing only active ports and naming the device in the serial port list: The link for the latest version is on Glad we got it working in the end. Thank you for your persistence; I'm sure it will help any other unlucky Windows users solve their problem much more quickly.
I have a problem with Windows not recognizing one of my 3 mbed units as a serial device. It works okay otherwise (CAN functions, SPI functions, analog in functions, pwmout functions, lED's flash.). Tried all the changing of ports, swapping over of usb leads, rebooting of machine, running just one mbed, or two (my normal configuration as I'm working on CAN bus controlled lighttubes for an art installation) or three even, but one of them (always the same one) just is never recognized - is there anything more I can try (other than what's on this page) or do I have a faulty unit? Hi Dave, wrote: I have a problem with Windows not recognizing one of my 3 mbed units as a serial device.
One of them (always the same one) just is never recognized - is there anything more I can try (other than what's on this page) or do I have a faulty unit? To help diagnose this, can we run through a few things. Plug in the mis-behaving mbed with Device manager open; can you confirm it comes up as a USB mass storage device, but not an mbed Composite device or mbed Serial device. Run the serial installer; does it go through and install correctly (or rather, doesn't say otherwise).
What mbed related things now appear in device manager? Note: the installer needs to be run for each mbed, as windows registers the drivers based on the serial number.
Virtual Serial Port Driver is a by Eltima Software. The software provides emulation of virtual serial ports and pairs the available serial ports through a virtual null-modem cable. Two applications paired with this software are enabled to exchange data. Every data on each ports appears for convenient viewing in computer’s device manager, at the same time the COM ports emulating their intended settings and running processes. Users are able to create virtual ports without worrying about shortage of serial ports and physical hardware crowding. The software’s next advantage is its capability to be integrated with technologies like ActiveX, DDL and Core level utility.
Embed this Program Add this Program to your website by copying the code below. Preview Preview. Virtual Serial Port Driver is a by Eltima Software. The software provides emulation of virtual serial ports and pairs the available serial ports through a virtual null-modem cable. Two applications paired with this software are enabled to exchange data.
Every data on each ports appears for convenient viewing in computer’s device manager, at the same time the COM ports emulating their intended settings and running processes. Users are able to create virtual ports without worrying about shortage of serial ports and physical hardware crowding. The software’s next advantage is its capability to be integrated with technologies like ActiveX, DDL and Core level utility. Author's review.
![Miracle Miracle](https://images.filehippo.net/img/ex/4932__virtual_serial_port_driver_2_30_6_15.png)
Virtual Serial Port Driver is a virtual serial port kit that creates pairs of virtual COM ports at the PC. Using these ports various serial applications can connect with each other and transfer data via virtual null-modem cable. The data written to one virtual COM port can be instantly read from the other.The pairs of virtual serial ports created in VSPD by Eltima behave as they were real ones. The main goal of Virtual Serial Port Driver by Eltima Software is creating virtual COM port pairs.
Virtual serial ports created in VSPD behave as if they were real ports and are taken for the real ones with the serial applications. Via these ports serial applications can communicate with each other and transfer data via virtual null-modem cable. The data written to one virtual serial port can be instantly read from the other. Virtual serial ports created in VSPD support all serial port settings, strict baudrate emulation, HandFlow control and signal lines. After virtual COM port pair was created, one can see these ports in Device manager, moreover these ports are available automatically at system startup, even prior to logon. Virtual Serial Port Driver is available in a GUI version as well as a driver version with API for those who are going to use it in their own product.