Driverless data logging dongle...

vttom

Senior Member
I'm wondering if anyone on this forum has come up with a way to log data with a PICAXE, and then transfer that data to a PC (on-demand) using a hardware platform that doesn't require the user to install any drivers on the PC (or uses a common enough hardware that the driver is built into Windows or auto-installs via Plug-and-play).

The reason I ask is that, up to now, I've always used a Serial<->USB device to get data from my PICAXE to a PC. However, I find I ALWAYS have to install a driver specific to the adapter before I can use it.

There must be some way of storing data to a piece of hardware, and then be able to plug that hardware into a modem PC (which will likely be lacking serial or parallel ports) and be able to transfer said data without have to install a driver specific to the device.
 

nick12ab

Senior Member
If COM ports appear even without any USB adaptors plugged in then look on your motherboard for a connector like this



(ignore the yellow USB ones) and this should be a serial port - often the socket is provided as an optional extra for those who really want it.
 

Haku

Senior Member
Here's an off-the-wall idea: Get the Picaxe to type it in using the circuitboard or IC from a USB keyboard.

The procedure for saving data would be something along the lines of

1. open up Notepad
2. plug in Picaxe data logging module
3. wait while the Picaxe 'types in' the data
4. save the resulting text file

Programming the Picaxe to output using a comma deliminated data structure you could then put the text file straight into a spreadsheet.
 

jtcurneal

Senior Member
I have used this device in several projects where I want to log a LOT of data.

http://www.sparkfun.com/products/9530

It uses a micro SD card to save the data.
You send data to the device in serial format. ( 9600 baud default, but the baud rate can be changed )
Take out the SD card and stick it into a card reader.
read it as you would read any text file or import the data into Excel or a database.

Works like a charm for me.

Joel
 

vttom

Senior Member
Thanks for the excellent suggestions! I'll check them all out.

Also, I was wondering if there's anything out there to transfer data using a computer's microphone jack? Audio in/out is pretty ubiquitous. I've seen some commercial products which work that way (eg. data watches). I'd think someone has been working on a generic implementation of some sort.
 

John West

Senior Member
That's a pretty good idea, vtom, especially for low data rate transfers. There are a lot of ways to get data into a PC, but most all them seem to have one type of problem or another, depending on the PC, no serial port, missing drivers, the need for an expensive USB adapter, etc. All PC's these days have audio in (and out) that should work conveniently enough.

I like Haku's idea very much as well.

Why spend $20 or $30 to send data to a PC? And why should any manual interaction be necessary? Haven't we gotten past the "sneaker network" yet, where we transferred data from one computer to another by running back and forth with floppy disks? Have we merely switched the media type to memory sticks?

Make it all as simple as a cable and a connector that will plug into any PC, and into a port that will always work no matter the PC or the installed support drivers. Keep it cheap, simple, and appropriate for the job at hand.

The PICAXE has been designed with such capability in mind. We should use it. Why buy a $2 microcontroller and a $25 interface cable?
 
Last edited:

John West

Senior Member
Nick, awhile back I spent an entire afternoon attempting to bring an unused motherboard serial port connector to life for PICAXE use. I failed. Don't know if it was defective, or I failed to load the proper driver, or what, but it was a very frustrating experience. Give me a simple RF spur or random oscillation problem to solve. These unknowns in black boxes with a lack of documentation are just too frustrating.
 

vttom

Senior Member
I wonder, are most PC microphone inputs monaural or stereo? I've used a few of those free sound card oscilloscope programs on a number of PCs, and so far they have all seemed to have stereo microphones. The reason I ask is this... rather than FSK, which is a popular means of transmitting data over audio channels, what about using some kind of amplitude delta between the Left and Right channels? Eg. if ((L > some threshold) AND (R > some threshold) AND (L > R)) then data bit is 0; if ((L > some threshold) AND (R > some threshold) AND (L < R)) then data bit is 1. Seems to me that would be pretty easy to implement in software in real time as it monitors the L & R channels of the microphone input.
 

vttom

Senior Member
I've done some more digging, and came across this example:

http://www.techmind.org/wave/

So it looks like it's fairly straight-forward to setup a buffer and capture a pretty good-sized stream of data from the microphone.

Once you have the raw data in a buffer, you can just walk through time and interpret what you have captured. I'll bet one could even simply send RS232-style data into the microphone jack and post-process the waveform to pluck out the data by detecting the waveform's edges and measuring how much time has passed between each one. I've literally done this manually by staring at traces produced by sound card oscilloscope programs.
 

Jamster

Senior Member
If you use a sound recording program and save it to .WAV (or similar file type) then you could setup a program to read through that and decode it.
 

nick12ab

Senior Member
Nick, awhile back I spent an entire afternoon attempting to bring an unused motherboard serial port connector to life for PICAXE use. I failed. Don't know if it was defective, or I failed to load the proper driver, or what, but it was a very frustrating experience.
Mine worked straight away after buying a serial socket attached to a back plate and plugged the wire into the port on the back and COM 1 was present in Programming Editor before that installation. No driver installation as (i assume) the serial port function is provided by the chipset on the motherboard but so rarely used now that the header is provided for those who really need it on recent motherboards. It does look similar to USB and front panel headphone socket connections so be sure you're using the correct header.
 

Attachments

Haku

Senior Member
They tried that method of transferring data through an audio port back in the 80s...



:D


I like the keyboard input approach also, the difficult part is interfacing it with a Picaxe as you have to first find out the matrix and then connect them, probably best done with a couple of shift registers to save on Picaxe pin usage. But it makes it extremely easy for the end user, they just have to load up the right program (or if your custom program is running, put it into data receive mode), plug in the USB module and wait for the data to transfer.
You might only need to 'press' 0-9 (& A-F for hex data transfer) and a control character or two.

Wireless solutions, bluetooth transceivers are now very cheap and easy to interface to a microcontroller but configuring BT on the PC side isn't always straightforward, but the upshot can be reduced data transfer times.
 

hippy

Ex-Staff (retired)
The problem with audio is that it needs PC-side software to convert that into data and save it as a disk file and that defeats the true plug-and-play, 'no action necessary', concept if that's what's desired; users may not have to install drivers but will have to install the audio reading application. You'll need a version of that application for every platform you want to support.

The USB-Serial interface Haku links to likewise doesn't need drivers but will require similar software, as would any serial reading application.

A better option may be the USB-FileSys device from the same company. That's truly driverless, doesn't require any additional application software, and should be compatible with anything that supports USB mass storage devices; simply insert then drag or copy the file to wherever it's wanted using File Manager or Explorer. It's a more expensive solution than an audio link but is a 'zero effort' winner from a user's perspective.

http://www.hexwax.com/Products/USB-FileSys
 
Top