# pic2lcd **Repository Path**: codcat/pic2lcd ## Basic Information - **Project Name**: pic2lcd - **Description**: Convert images to data that can be displayed on monochrome LCD panels like those driven by SSD1306 and ST7567. - **Primary Language**: C++ - **License**: Unlicense - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-08-21 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # pic2lcd A small utility that converts images to data that can be displayed on monochrome OLED / LCD panels like those driven by SSD1306, SH1106 and ST7567. ## Features - Performs dithering on the image. The default algorithm is Floyd-Steinberg, with a number of other options. - Can output either hex values or decimal values. Python users that read the output with the *csv* library might find the decimal format easier to work with. - Customisable value delimiter. The default is a comma plus a space, which produces `0x95, 0x40, ...`. You can change this with the `--delimiter` option to produce `0x95,0x40,...`, `0x95 0x40 ...` etc. ## Compiling 1. Install the *tclap* library headers. On Arch Linux use `sudo pacman -S tclap`. For other distributions search for the corresponding package and install. 2. Clone this repo. 3. `cd pic2lcd` 4. `c++ pic2lcd.cpp EasyBMP/EasyBMP.cpp -o pic2lcd` (sorry no Makefile yet, will add in the future) ## Options | Option | Description | | -------------------------------------------- | ------------------------------------------------------------ | | `-o , --byte-orientation ` | Whether bytes are v (vertical) or h (horizontal) in the display's RAM. Default is vertical, which works for SSD1306 and SH1106. ST7920 needs to use horizontal. | | `-b <10/16>, --base <10/16>` | Which numerical base to use in the output. Can be 10 (decimal) or 16 (hex). Default is hex. | | `-d , --delimiter ` | What goes between values in the output. Default: ', ', which outputs '0x55, 0xAA, ...'. | | `-a , --dither-alg ` | Select the dithering algorithm to dither the image with. Default: `floyd_steinberg`. Available: `jjn`, `floyd_steinberg`, `stucki`, `atikinson`, `burkes`, `sierra`, `sierra_2_row`, `sierra_lite`. |