Hard & Software     Software Downloads

Back to Hard & Software

NEW Updated May 25, 2021The DL24 - an Affordable Active DC Load.  The DL24 is an inexpensive adjustable DC power load (up to 150 Watts/30 Amps) with a voltage range of 2-200 VDC.  It comes as a "bare board" and is of Chinese design and manufacture.  It has a limited feature set that can be enhanced for more professional or advanced hobiest use by employing a more complete PC application with features described here.

Slightlty Older Updated June 6, 2020  The Vici VC8145 Digital Multimeter is a comparatively inexpensive benchtop instrument that offers good performance and accuracy.  It is not a direct competitor to other more expensive Chinese manufactured meters, such as are sold by Siglent or Rigol.  However, the VC8145 is much lower cost point and it offers 80000 count resolution - with some ideosyncracies that are well documented elsewhere.  I am not going to review the instrument here. 

One feature that makes this instrument useful, beyond simple benchtop use, is the RS232 interface that allows data viewing logging from a connected computer.  The RS232 interface is optically isolated internally.  This isolation is a safety feature that is a "must-have" for anything more than casual use.  Modern computers often do not have built-in RS232 serial ports, so one must use a USB to RS232 adapter.  The power to supply the optical isolation circuitry is derived from the RS232 serial port's DTR and RTS control lines.  Not all USB adapters are designed to provide true RS232 singal output levels, so you may need to try several different ones to find one that works!  The one that I use for this purpose was manufactured by Sewel.   Two othe adapters that I tried were not compatible.

When you find a serial adapter that is compatible, you still face a significant challenge.  The VC8145 multimeter is delivered with a completely unusable PC software application.  It works, marginallty, under Window XP only (who uses that?) and is prone to crash unexpectedly. 

I wrote a "work in progress" application to help with this situation.  I wrote it using Microsoft Visual Studio Community Edition software (free download from Microsoft).  I wrote the application using Visual Basic .NET.  Readers of my book, Visual Basic Programmer's Guide to Serial Communication 5, will find the source code for this application on the CDROM download that may be purchased from me (details here).  The source code license is virtually unrestricted, giving others free reign to modify it to meet their personal needs.

The application is designed for Windows 10.  You may download it using the link here.  Unzip and run Setup.exe. 

Contact me with issues or suggestions.

The software automatically identifies a serially connected VC1845 meter. The functions implemented include:

- A simulation of the VC8145 front panel.

- Two "hotspots" are defined. These are the "Range" and "Select" buttons.
Clicking on these buttons in the UI transmits the appropriate command to the meter which should perform
the equivalent operation that would have been achieved using the actual meter buttons.

- Other "hotspots" are defined in the UI, but are not implemented in the software.
The source code provides the foundation for expansion beyond basic functions.
These additions will be limited to the API provided by the manufacturer (which, unfortunately) is not complete.

- A menu is provided to switch the Software Display mode between "Digital" and "Graph".
"Digital" is similar to the meter LCD. "Graph" displays a strip-chart of that shows the main display value.

- Another menu sets the polling interval (update rate for the displays and for logging).
Intervals between 100 mS and 60000 mS (1 minute) are supported.

- Data logging to a Comma Separated Value (CSV) file may be done using the Logging menu.

November 12, 2017  Are you a VBA developer who has been using either NETComm or XMCommCRC ActiveX controls for serial data using either Microsoft Access or Microsoft Excel and now find that you want to use the x64 bit versions of Access or Excel?  Most ActiveX controls are 32-bit only and will not work with the x64 versions of these VBA platforms; this includes NETComm and XMCommCRC.  What can you do?  I have a partial solution that will work in at least 80% of all such applications.  However, it has some limitations that would need to be discussed before you decide to pursue it.  Please contact me by email (see my contact information).


Frequency Counter/Pulse Counter/Interval Timer.  (January7, 2012).  Download EXE and description of a simple application that uses a PC RS-232 serial port to measure these quantities. Square wave Generator.  (January14, 2012).  Download EXE and description of a simple application that uses a PC RS-232 serial port as a square wave generator.


A number of controls and examples on this page use Microsoft MapPoint


I have enhanced the Visual Studio SerialPort object that is furnished with Visual Studio 2008 and Visual Studio 2010.  Click here for a description and to download the associated DLL and example code.  (May 4, 2010).


While not actually a software download, click here for a paper that describes how to add waveform editing and creation for a Berkeley Nucleonics Model 625/625A Arbitrary Waveform Generator.  (NEWApril 5, 2010).



The Visual Studio 2005/2008 GPSControl (July 30, 2009) is is comprehensive serial GPS decoder solution provided free of charge.

Visual Studio 2005 Windows Service incorporating serial communications (source code example).  Use VS2005 to create a GPSLocationService in VB.  This example needs  a GPS receiver to be fully functional.  However, the accompanying description and code should be useful as a template for other Windows services that might be desired. (August 29, 2006)

GPSSerialDecoderAX.  (July 19, 2006) Download this FREE ActiveX control (about 2.8 Mb).  It may be used to receive and decode the NMEA-0183 data stream from most GPS receivers.  It provides Latitude and Longitude properties that are compatible with Microsoft MapPoint Included is a simple VB6 application to illustrate its use.  Source code for this control is included on the CD ROM that accompanies my book, Visual Basic Programmer's Guide to Serial Communications, 4th Edition.

Virtual Null Modem (with Virtual Data Monitor) V2.  Download a demo version of this application to aid in serial communications debugging. (Updated May 14, 2007)  Note, VNM does not work under Vista x64.

XMComm2005.dll.  Add XMODEM error corrected file transfers to your Visual Studio 2005 projects (updated July 18, 2006)


Note for .NET assemblies:  I can provide assemblies with strong names (signed assemblies).  I charge a nominal $5 fee for signing, contact me for information..


Other Downloads:

Visual Studio 2005 Serial Terminal Example (uses the System.IO.Ports namespace).  Download here. (Updated July 31, 2006) -- FREE

XMCommCRCNET dll for Visual Studio 2003.  XMODEM file transfers added to the basic Serial IO functions of DesktopSerialIO. (July 6, 2005) -- FREE

DesktopSerialIO dll Serial IO for Visual Studio 2003. (May 13, 2005) -- FREE  DesktopSerialIO for Visual Studio 2005 (why?).  Download here (November 15, 2006).

DecodeGPS dll for Visual Studio 2003 and Visual Studio 2005 Desktop Framework (May 17, 2005/July 24, 2006) -- FREE

IONET IO control for Visual Studio .NET FREE

DecodeGPS dll for the Visual Studio .NET Compact Framework  FREE

RemoteSerial Communications ActiveX controls & Compact Framework DLL.   NEW Feature June 2005 Virtual Serial Port Support

CFSerialTerminal Example code (use with Visual Studio 2003 for Windows CE/PPC 2000/2002 or Windows Mobile 2003 platforms).  This documents the included CFSerialIO DLL (.NET assembly) that I developed for use with  Pocket PC/Windows CE 4.1 and later systems using the .NET Compact Framework FREE! 

NETComm.ocx (serial communications for .NET and other ActiveX clients) -- FREE!

XMComm/CRC ActiveX™ control  (XMODEM)  New Feature May 2009 --  Serial Port Enumeration and Descriptions

The Software Breakout Box demo.  It can help debug your serial port problems (Demo)

LongTimer ActiveX control -- FREE!

InetStat ActiveX control -- FREE.

IO OCX ActiveX™ control (now includes Windows NT/2K/XP support!!!!!!!!) -- FREE

LED13 ActiveX™ control -- FREE!

CRC and/or mComm  VB6 Class Modules -- FREE