{"id":21300150,"url":"https://github.com/carlosefr/pcd8544","last_synced_at":"2025-08-24T08:12:58.680Z","repository":{"id":16917318,"uuid":"19678629","full_name":"carlosefr/pcd8544","owner":"carlosefr","description":"Minimal footprint library for Philips PCD8544 LCDs on the Arduino.","archived":false,"fork":false,"pushed_at":"2020-09-08T10:50:13.000Z","size":581,"stargazers_count":90,"open_issues_count":0,"forks_count":27,"subscribers_count":12,"default_branch":"master","last_synced_at":"2023-08-07T05:11:05.083Z","etag":null,"topics":["arduino","attiny","driver","lcd","library"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/carlosefr.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2014-05-11T22:04:20.000Z","updated_at":"2023-04-12T04:34:26.000Z","dependencies_parsed_at":"2022-09-14T07:32:20.413Z","dependency_job_id":null,"html_url":"https://github.com/carlosefr/pcd8544","commit_stats":null,"previous_names":[],"tags_count":2,"template":null,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/carlosefr%2Fpcd8544","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/carlosefr%2Fpcd8544/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/carlosefr%2Fpcd8544/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/carlosefr%2Fpcd8544/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/carlosefr","download_url":"https://codeload.github.com/carlosefr/pcd8544/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":225750111,"owners_count":17518315,"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":["arduino","attiny","driver","lcd","library"],"created_at":"2024-11-21T15:07:51.366Z","updated_at":"2024-11-21T15:07:51.932Z","avatar_url":"https://github.com/carlosefr.png","language":"C++","funding_links":[],"categories":["C++"],"sub_categories":[],"readme":"What is it?\n===========\n\n**PCD8544** is a library for the [Arduino](http://arduino.cc/) to interface with LCDs based on the\nPhilips PCD8544 controller ([datasheet](https://github.com/carlosefr/pcd8544/blob/docs/docs/pcd8544.pdf?raw=true))\nor compatibles. These displays are commonly found on older monochrome mobile phones, such as the\n[Nokia 3310](http://en.wikipedia.org/wiki/Nokia_3310) or [5110](http://en.wikipedia.org/wiki/Nokia_5110),\nso if you have one of these stuck in a drawer, take it out and start hacking away! :)\n\nThis library is meant to have a minimal memory footprint, small enough to be usable in an [ATtiny85](https://www.microchip.com/wwwproducts/en/ATtiny85) with enough room left for your code. If you need graphics and other features and can spare the resources, check out the [library](https://github.com/adafruit/Adafruit-PCD8544-Nokia-5110-LCD-library) from Adafruit.\n\n![PCD8544.png](https://raw.githubusercontent.com/carlosefr/pcd8544/gh-pages/PCD8544.jpg)\n\nInstallation\n============\n\nDownload the latest zip file from the [releases](https://github.com/carlosefr/pcd8544/releases) section. Then open it from the `Sketch \u003e Include Library \u003e Add .ZIP Library...` menu inside the Arduino IDE and a new \"PCD8544\" entry should appear in the `Sketch \u003e Include Library` and `File \u003e Examples` menus.\n\n![Arduino IDE](https://raw.githubusercontent.com/carlosefr/pcd8544/gh-pages/screenshot-01.png)\n\nHow it Works\n============\n\nTo use this library, you must first connect your LCD to the proper pins on the Arduino.\nFor a Nokia 3310 display the connections would be the following:\n\nDisplay Pin       | Arduino Pin\n------------------|------------\nPin 1             | +3.3V Pin\nPin 2 (SCLK)      | Digital Pin 3\nPin 3 (SDIN/MOSI) | Digital Pin 4\nPin 4 (D/C)       | Digital Pin 5\nPin 5 (SCE)       | Digital Pin 7\nPin 6             | Ground Pin\nPin 7             | 10uF capacitor to Ground Pin\nPin 8 (RST)       | Digital Pin 6\n\nFor this display model, \"Pin 1\" is the leftmost pin when facing the back of the display with the connector on top.\n\nNokia 5110 displays are slightly different. They have an external oscillator pin between pins 5 and 6 which should\nbe connected to +3.3V. I haven't used one of these myself, so please see the diagrams on\n[this page](http://serdisplib.sourceforge.net/ser/pcd8544.html) for more details.\n\nSince these LCDs are **3.3V** devices, you should add\n[extra components](http://www.sparkfun.com/commerce/tutorial_info.php?tutorials_id=65) to\nconnect it to the digital pins of the Arduino (not necessary if you are using a 3.3V variant\nof the Arduino, such as the [Arduino Pro](http://www.arduino.cc/en/Main/ArduinoBoardPro)). However, the I/O pins\nare supposed to be 5V tolerant, so you can get by with 1K resistors in series with each pin if you like to live\ndangerously.\n\nNow, take a moment and read through the included [`HelloWorld.ino`](examples/HelloWorld/HelloWorld.ino) example.\nIt shows how to use the basic features of the library. There is also another\n[`Thermometer.ino`](examples/Thermometer/Thermometer.ino) example that demonstrates bitmapped graphics and charts.\n\nCustom Symbols\n==============\n\nThe library allows the use of custom bitmap symbols (5x8), defined by an array of five bytes.\nTo make it easy to create custom symbols, there's a graphical glyph editor\n[available online](http://carlosefr.github.io/pcd8544/).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcarlosefr%2Fpcd8544","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcarlosefr%2Fpcd8544","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcarlosefr%2Fpcd8544/lists"}