COM Ports and USB Serial devices

We have some STARCOM USB Serial dongles ( They use the Prolific chipset )and discovered some issues when using them with the RS232 output of Datawell RX-D receivers.

We setup one dongle and got data coming in fine, to Datawell’s RFBuoy application but on connecting the second device we would get a message from RFBuoy saying the second wfd ( Reciever setup file ) was invalid or both RFBuoy apps would hang. The strange thing was if you connected Teraterm to the dongle com port you could see the Hex data being transmitted on both.

After spending some time diagnosing this problem it became clear it was worth assigning specific COM Ports to the dongles and choosing low ones, I selected 4,5,6 as they are low but above the usual standard serial ports of 1,2 and 3 which is usually assigned to a modem if one is present. I also disabled any existing devices in device manager than might attempt to use those ports ( bluetooth devices are an example ).

After assigning the com ports I found restarting the machine was necessary to get RFBuoy to recognise all wfd as valid, it is sometimes necessary to write the com port manually in the wfd as the RFBuoy setup doesn’t always see the correct ports.

It is also handy to label the dongles, to aid testing, I labelled each dongle with the com port I had assigned it and the last three digits of its Device Instance ID or Device Instance Path in Windows 7. So you know which dongle is which COM Port.

After assigning the com ports each dongle appeared to reliably retain its own com port on XP, Vista and 7. If a dongle was removed and reinserted, the corresponding RFBuoy app would need to be closed and reopened to resume data reception.

If you have many phantom COM Ports in use, it is worth getting rid of them to have a blank slate to work from, There are details below on removing these, mostly changes to the registry, worth a restart afterwards and uninstalling your dongles from device manager if they already been given high com ports.


Logical Volume Management (LVM2) and VirtualBox

In the recent past I have been doing more with virtual machines. I had setup a VM of Fedora for a colleague and had set the disk size of this at about 13GB, time passes and this doesn’t satisfy a new set of applications.

To expand the disks I thought it would be a simple case of creating a new blank larger disk through the VirtualBox application, as you are making a new machine but not installing anything to it.  I created a disk of about 38GB and attached this disk to the existing Fedora VM and booted it with the Clonezilla iso in the virtual optical disk drive, I could then use device to device in Clonezilla to copy the Fedora VM leaving about 25GB unallocated at the end of the disk. ( Instead of Clonezilla you can also use the command line VBoxManage with the clonehd option to achieve the same ).

I thought the next step would be to use gparted to expand the root partition on the new disk, so I attempted to use a Gparted live disk but when you see the root and swap partition of the Fedora VM it is an LVM2 filesystem which can’t be resized or moved by gparted. I began to do a bit of research and got quite confused regarding physical and logical volumes and the various command line tools. The solution I used in the end was to attach the expanded Fedora VM disk to an existing Ubuntu VM and booting into Ubuntu create an extended partition using gparted for the unallocated 25GB, then load the Logical Volume Management ( system-config-lvm easily available through the Ubuntu Software Center ) tool, this allows that extended partition to be initialised and then added to the volume group that the root partition is on and then you can migrate the root partition to the 25GB volume.  You then have to run lvextend giving the number of extents free on that partition and after that run e2fsck and resize2fs, so the filesystem is aware of the extension. It’s not too tricky once you work how the tools can be used together, but it is hard to get my head around after being used to ordinary ext2 filesystems.

Briefer description using a Fedora live CD,  lvm tools didn’t come with my Fedora 15 live CD and I have issues installing software with the livecd running behind a proxy hence the Ubuntu VM install.

Editing mobile phone video and rotating

The Nokia N95 is a respectable video recorder ( 640*480 resolution ). The default orientation of recording with it is holding it horizontally, as opposed to vertically with the N70. Rotating videos is a bit more challenging than videos, for one thing many video application won’t accept imports of .mp4 files, so you have to convert it to something like mpeg 2.

I tried using ffmpeg and mencoder on Ubuntu to convert it, but never managed to get it working, eventually I came across Super by eRightSoft which has an extrememly dodgy looking site, but is a free frontend to the same codec tools.

I then used VirtualDubMod where you can add a variety of filters including rotate and save to xvid.

Picasa web albums not support video uploads as well, you can do a right click on a video thumbnail in Picasa and upload to web album, which is quite neat. I think the video elements still need a bit of work ( they distort the aspect ratio on the vertically shot footage ) but its nice to see the direction they are heading in.

Video Editing – Ubuntu vs OS X/Windows

I’ve been playing about with video from DVD for work and have realised that Ubuntu is far superior compared to either Windows or Mac for built in software or free to download.

iMovie and Windows Movie Maker just chokes on VOB files and have no built in conversion software and Movie Maker only outputs WMV

Compare this with the powerful ffmpeg on the command line with Ubuntu and Kino for editing.

I would like it if ffmpeg had more output options but I suspect that is because I don’t know how to add codecs?

Any of the video I exported and tried to play with Quicktime in OS X – it complained of errors. So I installed VLC on OS X which plays it straight off.