I am looking for a way to compress txt/csv file on a Cortex M3 FreeRTOS embedded system. The compressed files then will be uploaded by a Linux machine that will inflate and use them. Is there a SW package that is compatible with FreeRTOS and not resource hungry, alternatively, Is there any small footprint SW package that it will be easy to migrate into FreeRTOS.
Asked
Active
Viewed 2,042 times
2
-
1I think you can forget about zip, but look at http://stackoverflow.com/questions/3203321/lzw-compression-decompression-under-low-memory-conditions and http://stackoverflow.com/questions/3767640/compact-decompression-library-for-embedded-use for some pointers regarding low mem compression. – fvu Aug 06 '13 at 01:07
-
1Define "resource hungry". How much memory is available? – Mark Adler Aug 06 '13 at 01:25
1 Answers
1
LZO could be a solution, it includes miniLZO which is described as
miniLZO implements the LZO1X-1 compressor and both the standard and safe LZO1X decompressor. Apart from fast compression it also useful for situations where you want to use pre-compressed data files (which must have been compressed with LZO1X-999).
miniLZO consists of one C source file and three header files. It compiles to less than 5 kB (on an i386), and the sources are about 30 kB when packed - so there's no more excuse that your application doesn't support data compression :-)
Looks simple and compact enough even for an M3. One caveat: it's either GPL licensed or commercial