Using the scanner and this program, you will get a file with lots of lines like this:
13:33:29.758: 206 39F100That's the time, followed by a colon, the CAN ID, and the data. In this case, the CAN ID 206 is used by the Volt to indicate the SOC (State of Charge) of the battery. It's 39F1 (hex), which is 14833 (decimal). That value is in 1/4wH increments, so you can find the wH of charge by dividing by 4, getting 3,708wH, or 3.7kWh.
If you aren't excited by that, don't worry -- with this program, you can start logging data that you can later use with a separate program (e.g. to create webpages with a map of the trip, calculate how fast the car goes from 0 to 60MPH, etc.).
Next, you need a laptop/netbook/whatever that runs Windows.
And of course, you need a Volt (or another car you want to see if it works with!).
Next, start the program however you like (if you are familiar with a command prompt, that is probably the most efficient way).
The program then creates a unique file (based on the date and a 3-digit extension, e.g. 20120529001.txt for the first file for May 29, 2012), and then saves whatever it reads until the program is ended (e.g. with CTRL-C). Sleep mode may cause it to hang; if that happens, a reboot may be necessary to run the program again.
To end the program, you can type CTRL-C (or end like other programs, such as using the "X" button). I normally just keep it running unless I expect to be away from the car long enough that the netbook would go to sleep.
There is an incredible amount of data (speed, battery SOC, latitude/longitude, driver/passenger seatbelts fastened, shifter position (PRNDL), accelerator/brake position, etc.). To get an idea of what can be done if you start recording data, you can look here.
One important step with the ELM327 is setting the speed to 500kbps; otherwise, it will drop most of the data with its default settings. This program automatically changes the speed.
The program is "dumb", in that it simply saves all data and does not attempt to interpret it (so everything will be recorded, regardless of whether or not it is known what the data does). That way, you can take advantage of any data that is send on the bus, rather than just the known data.
The program expects only one COM port, and will use the first it finds (waiting if necessary for a COM port to become available).
The program uses the CAN "Monitor All" mode, which simply listens to every CAN message that is sent. This in unlike typical OBD2 applications, which only make requests for specific data.