2

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.

user1937525
  • 61
  • 1
  • 1
  • 6
  • 1
    I 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
  • 1
    Define "resource hungry". How much memory is available? – Mark Adler Aug 06 '13 at 01:25

1 Answers1

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

Community
  • 1
  • 1
fvu
  • 32,488
  • 6
  • 61
  • 79