{"id":19856575,"url":"https://github.com/gavinlyonsrepo/displaylib_16bit_PICO","last_synced_at":"2025-05-02T01:31:37.798Z","repository":{"id":98597015,"uuid":"562270265","full_name":"gavinlyonsrepo/displaylib_16bit_PICO","owner":"gavinlyonsrepo","description":"Display Library for 16-bit color graphic displays for Raspberry PI PICO. C++ SDK, supports ssd1331, st7735, ili9341 and st7789","archived":false,"fork":false,"pushed_at":"2025-04-19T11:22:01.000Z","size":1101,"stargazers_count":32,"open_issues_count":0,"forks_count":12,"subscribers_count":7,"default_branch":"main","last_synced_at":"2025-04-19T16:49:57.123Z","etag":null,"topics":["display","display-library","ili9341","lcd-display","library","pico","raspberry-pi","raspberry-pi-pico","raspberrypi","raspberrypipico","rp2040","rpi","rpi-pico","rpipico","sdk-cpp","spi","ssd1331","st7735","st7789","tft-lcd"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/gavinlyonsrepo.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-11-05T20:20:56.000Z","updated_at":"2025-04-19T15:12:23.000Z","dependencies_parsed_at":"2025-04-08T05:32:31.959Z","dependency_job_id":null,"html_url":"https://github.com/gavinlyonsrepo/displaylib_16bit_PICO","commit_stats":null,"previous_names":["gavinlyonsrepo/displaylib_16bit_pico","gavinlyonsrepo/st7735_tft_pico"],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gavinlyonsrepo%2Fdisplaylib_16bit_PICO","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gavinlyonsrepo%2Fdisplaylib_16bit_PICO/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gavinlyonsrepo%2Fdisplaylib_16bit_PICO/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gavinlyonsrepo%2Fdisplaylib_16bit_PICO/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gavinlyonsrepo","download_url":"https://codeload.github.com/gavinlyonsrepo/displaylib_16bit_PICO/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251969432,"owners_count":21673203,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["display","display-library","ili9341","lcd-display","library","pico","raspberry-pi","raspberry-pi-pico","raspberrypi","raspberrypipico","rp2040","rpi","rpi-pico","rpipico","sdk-cpp","spi","ssd1331","st7735","st7789","tft-lcd"],"created_at":"2024-11-12T14:16:01.561Z","updated_at":"2025-05-02T01:31:37.791Z","avatar_url":"https://github.com/gavinlyonsrepo.png","language":"C++","funding_links":["https://www.paypal.com/paypalme/whitelight976"],"categories":["C++"],"sub_categories":[],"readme":"\n[![Website](https://img.shields.io/badge/Website-Link-blue.svg)](https://gavinlyonsrepo.github.io/)  [![Rss](https://img.shields.io/badge/Subscribe-RSS-yellow.svg)](https://gavinlyonsrepo.github.io//feed.xml)  [![Donate](https://img.shields.io/badge/Donate-PayPal-green.svg)](https://www.paypal.com/paypalme/whitelight976)\n\n# Display Library for 16-bit color graphic displays for Raspberry PI PICO\n\n## Table of contents\n\n  * [Overview](#overview)\n  * [Documentation](#documentation)\n    * [Supported devices](#supported-devices)\n    * [API documentation](#api-documentation)\n    * [Fonts](#fonts)\n  * [Software](#software)\n    * [Advanced Graphics](#advanced-graphics)\n    * [Advanced buffer mode](#Advanced-buffer-mode)\n    * [Test](#test)\n    * [Print](#print)\n    * [File-system](#file-system)\n    * [Error Codes](#error-codes)\n  * [Notes](#notes)\n    * [Projects using library](#projects-using-library)\n    * [Older versions](#older-versions)\n\n## Overview\n\n* Name : displaylib_16bit_PICO\n* Description :\n\n0. C++ Library to support 16-bit color graphic displays\n\tfor the Raspberry PI PICO.\n1. Graphics class included.\n2. Bitmaps supported.\n3. Polymorphic print class included to print many data types.\n4. Multiple displays supported, see supported-devices, new components can be easily added.\n5. 16 fonts included. \n6. [URL project github link](https://github.com/gavinlyonsrepo/displaylib_16bit_PICO)\n\n* Author: Gavin Lyons\n\n* Developed on Toolchain:\n\t1. Raspberry pi PICO RP2040\n\t2. SDK(1.4.0) C++20\n\t3. compiler G++ for arm-none-eabi((15:10.3-2021.07-4) \n\t4. CMAKE(VERSION 3.18) , VScode(1.84.2)\n\t5. Linux Mint 22.1\n\n## Documentation\n\n### Supported devices\n\n| Component name | Type | Interface | Readme URL link |\n| -------- | ---------- | --------- | ---------- |\n| ST7789 |16 bit Colour Graphic TFT LCD|SPI HW \u0026 SW| [Readme](extra/doc/st7789/README.md)|\n| ST7735 |16 bit Colour Graphic TFT LCD|SPI HW \u0026 SW| [Readme](extra/doc/st7735/README.md)|\n| SSD1331|16 bit Colour Graphic OLED |SPI HW \u0026 SW  | [Readme](extra/doc/ssd1331/README.md)|\n| ILI9341 |16 bit Colour Graphic TFT LCD |SPI HW \u0026 SW  | [Readme](extra/doc/ili9341/README.md)|\n\n### API Documentation\n\nThe application programming interface html [documentation is at link](https://gavinlyonsrepo.github.io/misc/software_docs/displaylib_16bit_PICO/index.html) \n hosted on github pages and generated by Doxygen. Detailed project overview images are available there.\n\n### Fonts\n\nThe font system readme is in the 'doc' folder [at link.](extra/doc/fonts/README.md)\n\n## Software\n\n### Advanced Graphics\n\nThere is an advanced graphics modes in library.\nStandard graphics supports drawing lines, pixels  \nrectangles, triangles, circles and rounded rectangles.\nAdvanced graphics supports drawing polygons, dot grid, quadrilaterals, \narcs, ellipses and lines at an angle. \nIt is ON by default.\nIf you don't want these 'advanced' functions and want to save memory space: Simply \ncomment out line 19 #define ADVANCED_GRAPHICS_ENABLE in displaylib_16_graphics.hpp. \nThis will disable advanced graphics mode. If this is disabled some examples and demos \nmay not work fully or even compile. \n\n### Advanced buffer mode\n\nAdvanced buffer mode. There is advanded buffer mode where the code writes to a global screen buffer instead of the VRAM of display. It is off by default more details at readme, \nwhich is in the 'doc' folder [at link.](extra/doc/buffer_mode/README.md)\n\n### Test\n\nThere are multiple examples for each device,\nUser picks the one they want by editing the:\nCMakeLists.txt :: add_executable(${PROJECT_NAME} section. \nComment in one path and one path ONLY. See displays readme's for more details.\n\n### Print\n\nThe print class can print integers, floats, characters, character arrays\nand C++ std::strings. It can also format floating point numbers to a number of \ndecimal places. and format integers in different base number systems.\nSupport for other data types can be added. \n\n### File system\n\nClass Hierarchy:\n\n![image link](https://github.com/gavinlyonsrepo/displaylib_16bit_PICO/blob/main/extra/image/filesystem.png)\n\n### Error Codes \n\nMost functions that return a value, return a enum. \nZero for success and a positive number for an error code. \nError messages are outputted to console at 38400 baud.\n\n## Notes\n\n### Projects using library\n\n* [**Super-Mario-Pico**](https://github.com/tansiret/Super-Mario-Pico):  \n\tA Super Mario Bros demo game for the Raspberry Pi Pico that uses this library to drive a 16-bit TFT display.\n\n### Older versions\n\n* This repository before version 2.0.0 was originally \n\tcalled ST7735_TFT_PICO and just supported st7735. This older version\n\tis available in releases as 1.7.2.\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgavinlyonsrepo%2Fdisplaylib_16bit_PICO","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgavinlyonsrepo%2Fdisplaylib_16bit_PICO","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgavinlyonsrepo%2Fdisplaylib_16bit_PICO/lists"}