EmbeddedRelated.com
Forums

[OT?] a SIMPLISTIC RS232 data logger using some flash device --- does it exist commercially?

Started by Richard Owlett June 21, 2005
Caution: I explicitly stated "simplistic"  on purpose.
     I did not say simple, elegant, robust or many other adjectives.

The input sequences will be a rs232 level 4800 baud data stream of <=100 
characters terminated by a <CR><LF> pair no more frequently than once 
per second.

I wish this unedited data to be stored on a 'compact flash' device which 
may be read by a USB device having relatively standard interface to a 
WinXP system.

I *explicitly* do not require this flash device to have a file system.
A file system might actually be an impediment.
I envision each <CR><LF> terminated "sentence" being stored in a 
sequential block. [ Reading software responsible for ignoring any thing 
after <CR><LF>. ]

*HOW I ENVISION DEVICE*
One RS232 input
Power switch
Record On/Off switch
RESET switch
receptacal/eject mechanism for flash device

*HOW I ENVISION USING DEVICE*
With power off insert flash device.
Attach RS232 input device.
Turn on power.
If starting new record, press RESET switch
Set RECORD to "on"
   record data
Set RECORD to "off"
EJECT flash device

What I envision:

UART receives data bytes
When byte received it is stuffed in a local RAM at address held in a 
"counter"

This counter is incremented each time UART has received a character
<CR><LF> receipt triggers passing this buffer to 'compact flash' device.
Passing this data triggers another counter so next character stream 
directed to another physical data block.

I have 2 questions.
1. did I make my intent clear?
2. is it workable.


BTW my intended real of application is recording data from a GPS receiver.


I any have a suitable existing device, contact me privately.
rowlett@atlascomm.net is valid



Richard Owlett wrote:
> Caution: I explicitly stated "simplistic" on purpose. > I did not say simple, elegant, robust or many other adjectives. > > The input sequences will be a rs232 level 4800 baud data stream of <=100 > characters terminated by a <CR><LF> pair no more frequently than once > per second. > > I wish this unedited data to be stored on a 'compact flash' device which > may be read by a USB device having relatively standard interface to a > WinXP system. > > I *explicitly* do not require this flash device to have a file system. > A file system might actually be an impediment. > I envision each <CR><LF> terminated "sentence" being stored in a > sequential block. [ Reading software responsible for ignoring any thing > after <CR><LF>. ] > > *HOW I ENVISION DEVICE* > One RS232 input > Power switch > Record On/Off switch > RESET switch > receptacal/eject mechanism for flash device > > *HOW I ENVISION USING DEVICE* > With power off insert flash device. > Attach RS232 input device. > Turn on power. > If starting new record, press RESET switch > Set RECORD to "on" > record data > Set RECORD to "off" > EJECT flash device > > What I envision: > > UART receives data bytes > When byte received it is stuffed in a local RAM at address held in a > "counter" > > This counter is incremented each time UART has received a character > <CR><LF> receipt triggers passing this buffer to 'compact flash' device. > Passing this data triggers another counter so next character stream > directed to another physical data block. > > I have 2 questions. > 1. did I make my intent clear? > 2. is it workable. > > > BTW my intended real of application is recording data from a GPS receiver. > >
yes it's workable with no big problem all you need is a microcontroller with an UART , the RS232 level conveter , the compact flash , and the right firmware , la last thing is the more difficult to obtain ... at 100 bytes for second you will have plenty of time to write to the flash, peraphs you can use a double buffer scheme ( now the micro need to have enough internal ram ! ), if the compact flash is a 3.3 V part ( ( I am not sure about supply voltage of CF ) is best to select a 3.3 V micro. My first choiche for the micro is a pic18f part . an interesting substitute for CF can be an MMC or SD flash memory , small footprint , simpler connector. last thing before start : check if you are able to read from a PC a non file-system flash memory.
On Tuesday, in article <11bgsjo5mf6h3ba@corp.supernews.com>
     rowlett@atlascomm.net "Richard Owlett" wrote:

>Caution: I explicitly stated "simplistic" on purpose. > I did not say simple, elegant, robust or many other adjectives. > >The input sequences will be a rs232 level 4800 baud data stream of <=100 >characters terminated by a <CR><LF> pair no more frequently than once >per second. > >I wish this unedited data to be stored on a 'compact flash' device which >may be read by a USB device having relatively standard interface to a >WinXP system. > >I *explicitly* do not require this flash device to have a file system. >A file system might actually be an impediment.
You want a USB CF card to be WinXP compliant *without* a file system? That is an oxymoron like Military Intelligence... To put it another way you want a Formula 1 racing car, but it must not have wheels of any sort. The file system and removeable media compatability is what makes it easier to use on WankXP. You want to put an impediment in the way because you perceive it as an impediment.
>I envision each <CR><LF> terminated "sentence" being stored in a >sequential block. [ Reading software responsible for ignoring any thing >after <CR><LF>. ] > >*HOW I ENVISION DEVICE* >One RS232 input >Power switch >Record On/Off switch >RESET switch >receptacal/eject mechanism for flash device
Hmm, you missed off Telepathy Interface...
>*HOW I ENVISION USING DEVICE* >With power off insert flash device. >Attach RS232 input device. >Turn on power.
....
>I have 2 questions. >1. did I make my intent clear? >2. is it workable.
NO, not without either writing software for a) the logger to produce a file system (FAT is not that difficult there are many articles on the web about this Circuit Cellar etc.) or b) write a special USB driver for WinXP to support CF WITHOUT a file system. You would be better off having a playback function and using a RS232 to USB adapter to send the data to a file from a serial port (virtual or whatever). The CF card is ONLY written to or read by your device and NOTHING else. -- Paul Carpenter | paul@pcserviceselectronics.co.uk <http://www.pcserviceselectronics.co.uk/> PC Services <http://www.gnuh8.org.uk/> GNU H8 & mailing list info <http://www.badweb.org.uk/> For those web sites you hate
On 2005-06-21, mmm <pippo@pippo.it> wrote:

> last thing before start : check if you are able to read from a PC a non > file-system flash memory.
You certainly can under Linux. You can open a flash memory device as if it's a just a single huge file (which I believe is the usage the OP is proposing). Under XP... good luck. -- Grant Edwards grante Yow! Wow! Look!! A stray at meatball!! Let's interview visi.com it!
On Tue, 2005-06-21 at 22:46 +0200, mmm wrote:
> > I wish this unedited data to be stored on a 'compact flash' device which > > may be read by a USB device having relatively standard interface to a > > WinXP system. > > > > I *explicitly* do not require this flash device to have a file system. > > A file system might actually be an impediment. > > I envision each <CR><LF> terminated "sentence" being stored in a > > sequential block. [ Reading software responsible for ignoring any thing > > after <CR><LF>. ]
These two paragraphs seem to contradict each other. In order for the compact flash card to be recognised by WinXP it needs a file system. If it doesn't have one your only option to access the card will be to format it. I suppose you could write a device driver (or find one) to read data off as raw data. That might be possible but I've never done it. My gut feeling is that it would be easier to parse the FAT table from the micro than to have to futz around with WinXP internals. There are lots of code examples around and specs of the FAT file system. Its really not that tricky. I don't know of anything that exists already but I've never looked. Just my $0.02. James.
On 2005-06-21, Paul Carpenter <paul$@pcserviceselectronics.co.uk> wrote:

> You want a USB CF card to be WinXP compliant *without* a file > system? That is an oxymoron like Military Intelligence...
Leave it to MS to make the simplest, most obvious use of a device impossible.
> To put it another way you want a Formula 1 racing car, but it > must not have wheels of any sort.
I suppose judging by the fiasco that was the recent US Grand Prix in Indiannapolis, one might say that MS Windows and F1 racing is a apt comparison. Both are controlled by irrational, egomaniacal dolts out to screw everybody with no regard to their customers. On purely technical gounds, I'd have to give F1 _cars_ the edge over Windows. The two organizations, OTOH, do have similarities. :)
> NO, not without either writing software for > > a) the logger to produce a file system (FAT is not that difficult > there are many articles on the web about this Circuit Cellar etc.) > > or b) write a special USB driver for WinXP to support CF WITHOUT a file > system.
or c) Using a decent OS like Linux that doesn't demand that there be a filesystem on a CF. -- Grant Edwards grante Yow! ... I want FORTY-TWO at TRYNEL FLOATATION SYSTEMS visi.com installed withinSIX AND A HALF HOURS!!!
"Richard Owlett" <rowlett@atlascomm.net> wrote in message
news:11bgsjo5mf6h3ba@corp.supernews.com...
> Caution: I explicitly stated "simplistic" on purpose. > I did not say simple, elegant, robust or many other adjectives. > > The input sequences will be a rs232 level 4800 baud data stream of <=100 > characters terminated by a <CR><LF> pair no more frequently than once > per second.
Can't you just buy a ready made NMEA logger? They are available. Meindert
On Tuesday, in article <11bh0prpo9su93@corp.supernews.com>
     grante@visi.com "Grant Edwards" wrote:

>On 2005-06-21, Paul Carpenter <paul$@pcserviceselectronics.co.uk> wrote: > >> You want a USB CF card to be WinXP compliant *without* a file >> system? That is an oxymoron like Military Intelligence... > >Leave it to MS to make the simplest, most obvious use of a >device impossible.
They will claim this is to make it user friendly (giving error messages with either just numbers or three word statements....).
>> To put it another way you want a Formula 1 racing car, but it >> must not have wheels of any sort. > >I suppose judging by the fiasco that was the recent US Grand >Prix in Indiannapolis, one might say that MS Windows and F1 >racing is a apt comparison. Both are controlled by irrational, >egomaniacal dolts out to screw everybody with no regard to >their customers. On purely technical gounds, I'd have to give >F1 _cars_ the edge over Windows. The two organizations, OTOH, >do have similarities. :)
Having had dealings years ago with several of the F1 teams research bods, I would agree with you about which has the technical edge!
>> NO, not without either writing software for >> >> a) the logger to produce a file system (FAT is not that difficult >> there are many articles on the web about this Circuit Cellar etc.) >> >> or b) write a special USB driver for WinXP to support CF WITHOUT a file >> system. > or > c) Using a decent OS like Linux that doesn't demand that > there be a filesystem on a CF.
or d) Do better search for GPS or RS232 loggers first. -- Paul Carpenter | paul@pcserviceselectronics.co.uk <http://www.pcserviceselectronics.co.uk/> PC Services <http://www.gnuh8.org.uk/> GNU H8 & mailing list info <http://www.badweb.org.uk/> For those web sites you hate
Richard Owlett wrote:
> BTW my intended real of application is recording data from a GPS receiver.
I googled for "NMEA data logger" and got 11700 hits. I googled for "GPS data logger" and got 163000 hits. Kelly
Kelly Hall <khall@acm.org> writes:
> Richard Owlett wrote: > > BTW my intended real of application is recording data from a GPS receiver. > > I googled for "NMEA data logger" and got 11700 hits. > I googled for "GPS data logger" and got 163000 hits.
Now all you have to do is find the time to examine all 175K of them to see if one of them is optimal...