Storing gps packets in flash


#1

hi to all,
i am using Q24 extended,i need to store gps packets to flash memory when signal is not available.each packet length is 180 bytes.
say for example if signal is not available for 1 hour i have to store around 150 packets. object maximum size is 30kb(mentioned in document).i am using only one object to store many packets.i am unable to store more than one packet [whenever i am using adl_flhWrite() function it is getting overwriiten]. in document it is clearly mentioned that if object exist then adl_flhwrite= adl_flhdelete + adl_flhwrite. i want to store around 150 packets in the single object. somebody tell me how to proceed.

Thanks in advance
karthikeyan


#2

Try A&D Storage instead of Flash…


#3

We use multiple objects for gps data.
For example we use 340 flash objects with 8 gps points in each. With gps point size of 40 bytes we get 108Kb of used FLASH. Total amount of FLASH available is 128Kb so we cannot store more points without using A&D storage (we haven’t tried to use this storage for GPS data - I guess it is pretty tricky).
You can count that 340*8 = 2720 points and with 10 sec between points interval we can proceed 7.5 hours without signal.

With you 180 bytes per point you can store only 620 points and you can stay about 4 hours without signal (given your 150 packets per hour).


#4

hi
thanks for ur Response
now i am using 500 objects and storing the one gps packet in one object. so totally i am able to store 500 objects and its size is around 90kb.
still i can use 20kb. my questions are

  1. how many objects i can use per handle?
  1. R u writting 8 gps points in the single object at the same instant?

by
karthikeyan


#5

I’m not sure but we fixed this value to 512.

Yes. It is a kind of casheing to avoid exessive flash usage. I save up to 8 points in RAM and than I dump them into flash.