{
    "ok": true,
    "data": {
        "title": "S-0018",
        "rev_id": 14589,
        "updated_at": "2024-04-10T02:55:56+00:00",
        "chunk_count": 25,
        "chunks": [
            {
                "title": "S-0018",
                "rev_id": 14589,
                "heading_path": "",
                "chunk_index": 0,
                "content": "# S-0018",
                "char_count": 8,
                "token_estimate": 2
            },
            {
                "title": "S-0018",
                "rev_id": 14589,
                "heading_path": "Double Color 0.96 Inch OLED Display",
                "chunk_index": 1,
                "content": "<figure>\n<img src=\"S001801.jpg\" title=\"S001801.jpg\" width=\"320\" alt=\"S001801.jpg\" \/>\n<figcaption aria-hidden=\"true\">S001801.jpg<\/figcaption>\n<\/figure>\n\n-   Purchase URL \\[ <https:\/\/52pi.com\/products\/52pi-oled-display-module-i2c-iic-128x64-pixel-0-96-inch-display-module-yellow-blue-two-color-display-compatible-with-raspberry-pi-arduino-51-series-mcu-stm32-r3-and-mega> \\]",
                "char_count": 372,
                "token_estimate": 93
            },
            {
                "title": "S-0018",
                "rev_id": 14589,
                "heading_path": "Descriptions",
                "chunk_index": 2,
                "content": "This OLED display module is small, only 0.96\" diagonal, it is made of 128x64 individual yellow and blue OLED pixels, each one is turn on or off by the controller chip.\n\nIt works without backlight, that is, in a dark environment OLED display is higher compared to that of LCD display you will like the miniature for its crispness.\n\nThat is, except the VCC and GND, 2 wires would be needed when using 4-wires I2C mode. Embedded Driver IC: SSD1306. Communication: I2C\/IIC Interface, only need two I\/O ports.\n\nIt compatibles with R3 board and Mega, Raspberry Pi, 51 Series MCU, STM32 etc.\n\nNo backlight is required, and the display unit can be self-luminous. It has ultra-high contrast, bright and clear dots, and it is easy to read even small fonts.\n\nThere are no fonts embedded in the OLED controller, users can create fonts through font generation software.",
                "char_count": 856,
                "token_estimate": 214
            },
            {
                "title": "S-0018",
                "rev_id": 14589,
                "heading_path": "Features",
                "chunk_index": 3,
                "content": "-   Fully compatible with for Arduino, 51 series, MSP430 Series, STM32\/2, CSR IC, etc.\n-   Ultra-low power comsumption: full screen lit 0.08W\n-   Super high brightness and contrast are adjustable\n-   With embedded driver\/controller\n-   Interface type is IIC (I2C)\n-   Pin Definitions: GND, VCC, SCL, SDA\n-   Pins: 4 pins\n-   Voltage: 3.3V DC\n-   Working Temperature: -30°\\~ 70°\n-   Drive Duty: 1\/64 Duty\n-   High resoluton: 128\\*32 pixels(approx)\n-   Driver IC:　SSD1306\n-   Display : Yello\/Blue",
                "char_count": 494,
                "token_estimate": 124
            },
            {
                "title": "S-0018",
                "rev_id": 14589,
                "heading_path": "Features > Basic Specifications",
                "chunk_index": 4,
                "content": "#### Mechanical Specifications\n\n-   1\\) Outline Drawing: According to the annexed outline drawing\n-   2\\) Number of Pixels: 128x64\n-   3\\) Panel Size: 27.50x27.80x3.0 (mm)\n-   4\\) Active Area: 21.744x10.864 (mm)\n-   5\\) Pixel Pitch: 0.17x0.17 (mm)\n-   6\\) Pixel Size: 0.154x0.154 (mm)\n-   7\\) Weight: 6(g)\n\n<img src=\"I2c20220714121611.png\" title=\"I2c20220714121611.png\" width=\"500\" alt=\"I2c20220714121611.png\" \/>",
                "char_count": 412,
                "token_estimate": 103
            },
            {
                "title": "S-0018",
                "rev_id": 14589,
                "heading_path": "Development Documentation",
                "chunk_index": 5,
                "content": "-   SSD1306 Datasheet: <File:Drive-1306.pdf>",
                "char_count": 44,
                "token_estimate": 11
            },
            {
                "title": "S-0018",
                "rev_id": 14589,
                "heading_path": "Gallery",
                "chunk_index": 6,
                "content": "-   Product details\n\n<img src=\"S001801.jpg\" title=\"S001801.jpg\" width=\"800\" alt=\"S001801.jpg\" \/>\n\\* How to wire it <img src=\"S001804.jpg\" title=\"S001804.jpg\" width=\"800\" alt=\"S001804.jpg\" \/>",
                "char_count": 190,
                "token_estimate": 48
            },
            {
                "title": "S-0018",
                "rev_id": 14589,
                "heading_path": "How to program it > Raspberry Pi",
                "chunk_index": 7,
                "content": "-   Connect OLED display to Raspberry Pi GPIO as following Chart:\n\n| OLED | Raspberry Pi GPIO |\n|------|-------------------|\n| GND  | GND               |\n| VCC  | 3.3V              |\n| SCL  | GPIO 3 (I2C1 SCL) |\n| SDA  | GPIO 2 (I2C1 SDA) |\n\n-   Full GPIO position\n\n![800](OLED_connection.png \"800\")\n\nNOTE: We assume you are using the official operating system provided by the Raspberry Pi.\n\n-   Enable I2C function, open a terminal and typing:\n\n<!-- -->\n\nsudo raspi-config\n\n-   Navigate to interface options and i2c item, enable it.\n\n<img src=\"I2c-enable1.png\" title=\"I2c-enable1.png\" width=\"500\" alt=\"I2c-enable1.png\" \/>\n<img src=\"I2c-enable2.png\" title=\"I2c-enable2.png\" width=\"500\" alt=\"I2c-enable2.png\" \/>\n<img src=\"I2c-enable3.png\" title=\"I2c-enable3.png\" width=\"500\" alt=\"I2c-enable3.png\" \/>\n<img src=\"I2c-enable4.png\" title=\"I2c-enable4.png\" width=\"500\" alt=\"I2c-enable4.png\" \/>\n\\* Check if the OLED screen has been recognized.\n\ni2cdetect -y 1\n\n<img src=\"I2cdetect01.png\" title=\"I2cdetect01.png\" width=\"500\" alt=\"I2cdetect01.png\" \/>\n\\* Install dependencies libraries:",
                "char_count": 1075,
                "token_estimate": 269
            },
            {
                "title": "S-0018",
                "rev_id": 14589,
                "heading_path": "How to program it > Raspberry Pi",
                "chunk_index": 8,
                "content": "sudo apt -y install python3 python3-pip python3-pil libjpeg-dev zlib1g-dev libfreetype6-dev liblcms2-dev libopenjp2-7 libtiff5\n\n-   Grant privilleges to user \\`pi\\`\n\n<!-- -->\n\nsudo usermod -a -G gpio,i2c pi\n\n-   Download sample code from this repo:\n\n<!-- -->\n\ngit clone https:\/\/github.com\/rm-hull\/luma.examples.git\n    cd luma.examples\/\n\n-   Install the dependencies\n\n<!-- -->\n\nsudo -H pip3 install -e .\n\n-   Entering into example folder and test it.\n\n<!-- -->\n\ncd examples\/\n    vim mydemo.py\n\n-   Paste following code.\n\n<!-- -->\n\n#!\/usr\/bin\/python3\n\nimport os\n    import sys\n    import time\n    from demo_opts import get_device\n    from luma.core.render import canvas\n    from PIL import ImageFont\n    import psutil\n    import subprocess as sp\n\ndef greetings():\n        return \"GeeekPi HI-Tech\"\n\ndef get_temp():\n        temp = sp.getoutput(\"vcgencmd measure_temp\")\n        return \"CPU Temp:%s\" % temp\n\ndef get_cpu_percent():\n        cpu_percent = psutil.cpu_percent(interval=2)\n        return \"CPU Percent: %.1f\" % (cpu_percent)\n\ndef get_cpu_count():\n        cpu_count = psutil.cpu_count()\n        return \"CPU Count: %s\" % (cpu_count)",
                "char_count": 1135,
                "token_estimate": 284
            },
            {
                "title": "S-0018",
                "rev_id": 14589,
                "heading_path": "How to program it > Raspberry Pi",
                "chunk_index": 9,
                "content": "def get_ip():\n        ip = sp.getoutput(\"hostname -I\")\n        return \"IP: %s\" % ip\n\ndef stats(device):\n        # use system font\n\nfont_path = '\/usr\/share\/fonts\/truetype\/dejavu\/DejaVuSansMono.ttf'\n        font_size = ImageFont.truetype(font_path, 13)\n\nwith canvas(device) as draw:\n            draw.text((0, 0), greetings(), font=font_size, fill=\"white\")\n            if device.height >= 32:\n                draw.text((0, 15), get_cpu_percent(), font=font_size, fill=\"white\")\n\nif device.height >= 64:\n                draw.text((0, 30), get_temp(), font=font_size, fill=\"white\")\n                try:\n                    draw.text((0, 45), get_ip(), font=font_size, fill=\"white\")\n\nexcept KeyboardInterrupt:\n                    pass\n\ndevice = get_device()\n\nwhile True:\n        stats(device)\n        time.sleep(2)\n\n-   Save it and Execute it:\n\n<!-- -->\n\nsudo python3 mydemo.py &\n\n-   You should seen this screen on OLED\n\n<img src=\"Oleddemo01.jpg\" title=\"Oleddemo01.jpg\" width=\"800\" alt=\"Oleddemo01.jpg\" \/>",
                "char_count": 999,
                "token_estimate": 250
            },
            {
                "title": "S-0018",
                "rev_id": 14589,
                "heading_path": "How to program it > Raspberry Pi Pico",
                "chunk_index": 10,
                "content": "MicroPython is a full implementation of the Python 3 programming language that runs directly on embedded hardware like Raspberry Pi Pico. You get an interactive prompt (the REPL) to execute commands immediately via USB Serial, and a built-in filesystem. The Pico port of MicroPython includes modules for accessing low-level chip-specific hardware.\n\n-   Download and Install Thonny IDLE: <https:\/\/thonny.org\/>\n-   Download and Install MicroPython Firmware: <https:\/\/www.raspberrypi.com\/documentation\/microcontrollers\/micropython.html>\n\n<img src=\"MicroPython-640x360-v2.gif\" title=\"MicroPython-640x360-v2.gif\" width=\"800\" alt=\"MicroPython-640x360-v2.gif\" \/>\n\\* Raspberry Pi Pico Pinout <img src=\"Picopinout.png\" title=\"Picopinout.png\" width=\"800\" alt=\"Picopinout.png\" \/>\n\\* Build circuit\n\n| Raspberry Pi Pico | OLED display |\n|-------------------|--------------|\n| 3.3V(OUT)         | VCC          |\n| GND               | GND          |\n| GP0               | SDA          |\n| GP1               | SCL          |\n\n-   Install ssd1306.py library.",
                "char_count": 1041,
                "token_estimate": 261
            },
            {
                "title": "S-0018",
                "rev_id": 14589,
                "heading_path": "How to program it > Raspberry Pi Pico",
                "chunk_index": 11,
                "content": "1\\. Connect Raspberry Pi Pico to PC via USB cable. 2. Open Thonny IDLE and select interpreter. <img src=\"Thonny-selectinterpreter2.png\" title=\"Thonny-selectinterpreter2.png\" width=\"800\" alt=\"Thonny-selectinterpreter2.png\" \/>\n2. Open Thonny IDLE and create a new file, named ssd1306.py and paste following code:\n\n# MicroPython SSD1306 OLED driver, I2C and SPI interfaces\n\nfrom micropython import const\n    import framebuf\n\n# register definitions\n\nSET_CONTRAST = const(0x81)\n    SET_ENTIRE_ON = const(0xA4)\n    SET_NORM_INV = const(0xA6)\n    SET_DISP = const(0xAE)\n    SET_MEM_ADDR = const(0x20)\n    SET_COL_ADDR = const(0x21)\n    SET_PAGE_ADDR = const(0x22)\n    SET_DISP_START_LINE = const(0x40)\n    SET_SEG_REMAP = const(0xA0)\n    SET_MUX_RATIO = const(0xA8)\n    SET_COM_OUT_DIR = const(0xC0)\n    SET_DISP_OFFSET = const(0xD3)\n    SET_COM_PIN_CFG = const(0xDA)\n    SET_DISP_CLK_DIV = const(0xD5)\n    SET_PRECHARGE = const(0xD9)\n    SET_VCOM_DESEL = const(0xDB)\n    SET_CHARGE_PUMP = const(0x8D)\n\n# Subclassing FrameBuffer provides support for graphics primitives\n\n# http:\/\/docs.micropython.org\/en\/latest\/pyboard\/library\/framebuf.html",
                "char_count": 1133,
                "token_estimate": 284
            },
            {
                "title": "S-0018",
                "rev_id": 14589,
                "heading_path": "How to program it > Raspberry Pi Pico",
                "chunk_index": 12,
                "content": "class SSD1306(framebuf.FrameBuffer):\n        def (self, width, height, external_vcc):\n            self.width = width\n            self.height = height\n            self.external_vcc = external_vcc\n            self.pages = self.height \/\/ 8\n            self.buffer = bytearray(self.pages * self.width)\n            super().(self.buffer, self.width, self.height, framebuf.MONO_VLSB)\n            self.init_display()\n\ndef init_display(self):\n            for cmd in (\n                SET_DISP | 0x00,  # off\n\n# address setting\n\nSET_MEM_ADDR,\n                0x00,  # horizontal\n\n# resolution and layout\n\nSET_DISP_START_LINE | 0x00,\n                SET_SEG_REMAP | 0x01,  # column addr 127 mapped to SEG0\n\nSET_MUX_RATIO,\n                self.height - 1,\n                SET_COM_OUT_DIR | 0x08,  # scan from COM[N] to COM0\n\nSET_DISP_OFFSET,\n                0x00,\n                SET_COM_PIN_CFG,\n                0x02 if self.width > 2 * self.height else 0x12,\n                # timing and driving scheme\n\nSET_DISP_CLK_DIV,\n                0x80,\n                SET_PRECHARGE,\n                0x22 if self.external_vcc else 0xF1,\n                SET_VCOM_DESEL,\n                0x30,  # 0.83*Vcc\n\n# display",
                "char_count": 1194,
                "token_estimate": 299
            },
            {
                "title": "S-0018",
                "rev_id": 14589,
                "heading_path": "How to program it > Raspberry Pi Pico",
                "chunk_index": 13,
                "content": "SET_CONTRAST,\n                0xFF,  # maximum\n\nSET_ENTIRE_ON,  # output follows RAM contents\n\nSET_NORM_INV,  # not inverted\n\n# charge pump\n\nSET_CHARGE_PUMP,\n                0x10 if self.external_vcc else 0x14,\n                SET_DISP | 0x01,\n            ):  # on\n\nself.write_cmd(cmd)\n            self.fill(0)\n            self.show()\n\ndef poweroff(self):\n            self.write_cmd(SET_DISP | 0x00)\n\ndef poweron(self):\n            self.write_cmd(SET_DISP | 0x01)\n\ndef contrast(self, contrast):\n            self.write_cmd(SET_CONTRAST)\n            self.write_cmd(contrast)\n\ndef invert(self, invert):\n            self.write_cmd(SET_NORM_INV | (invert & 1))\n\ndef show(self):\n            x0 = 0\n            x1 = self.width - 1\n            if self.width == 64:\n                # displays with width of 64 pixels are shifted by 32\n\nx0 += 32\n                x1 += 32\n            self.write_cmd(SET_COL_ADDR)\n            self.write_cmd(x0)\n            self.write_cmd(x1)\n            self.write_cmd(SET_PAGE_ADDR)\n            self.write_cmd(0)\n            self.write_cmd(self.pages - 1)\n            self.write_data(self.buffer)",
                "char_count": 1119,
                "token_estimate": 280
            },
            {
                "title": "S-0018",
                "rev_id": 14589,
                "heading_path": "How to program it > Raspberry Pi Pico",
                "chunk_index": 14,
                "content": "class SSD1306_I2C(SSD1306):\n        def (self, width, height, i2c, addr=0x3C, external_vcc=False):\n            self.i2c = i2c\n            self.addr = addr\n            self.temp = bytearray(2)\n            self.write_list = [b\"\\x40\", None]  # Co=0, D\/C#=1\n\nsuper().(width, height, external_vcc)\n\ndef write_cmd(self, cmd):\n            self.temp[0] = 0x80  # Co=1, D\/C#=0\n\nself.temp[1] = cmd\n            self.i2c.writeto(self.addr, self.temp)\n\ndef write_data(self, buf):\n            self.write_list[1] = buf\n            self.i2c.writevto(self.addr, self.write_list)\n\nclass SSD1306_SPI(SSD1306):\n        def (self, width, height, spi, dc, res, cs, external_vcc=False):\n            self.rate = 10 * 1024 * 1024\n            dc.init(dc.OUT, value=0)\n            res.init(res.OUT, value=0)\n            cs.init(cs.OUT, value=1)\n            self.spi = spi\n            self.dc = dc\n            self.res = res\n            self.cs = cs\n            import time\n\nself.res(1)\n            time.sleep_ms(1)\n            self.res(0)\n            time.sleep_ms(10)\n            self.res(1)\n            super().(width, height, external_vcc)",
                "char_count": 1115,
                "token_estimate": 279
            },
            {
                "title": "S-0018",
                "rev_id": 14589,
                "heading_path": "How to program it > Raspberry Pi Pico",
                "chunk_index": 15,
                "content": "def write_cmd(self, cmd):\n            self.spi.init(baudrate=self.rate, polarity=0, phase=0)\n            self.cs(1)\n            self.dc(0)\n            self.cs(0)\n            self.spi.write(bytearray([cmd]))\n            self.cs(1)\n\ndef write_data(self, buf):\n            self.spi.init(baudrate=self.rate, polarity=0, phase=0)\n            self.cs(1)\n            self.dc(1)\n            self.cs(0)\n            self.spi.write(buf)\n            self.cs(1)\n\nSave it to pico's lib folder( you can create by right click the blank area) <img src=\"Savelibtopico.png\" title=\"Savelibtopico.png\" width=\"800\" alt=\"Savelibtopico.png\" \/>\n\nplease make sure the library's name is ssd1306.py\n\n<img src=\"Savelib.png\" title=\"Savelib.png\" width=\"800\" alt=\"Savelib.png\" \/>\n\\* Create a new file and named it main.py, and copy following code and paste it into it.\n\nfrom machine import Pin, I2C, ADC\n    from ssd1306 import SSD1306_I2C\n    import framebuf\n    import time\n\nWIDTH = 128\n    HEIGHT = 64\n\ni2c = I2C(0, scl=Pin(1), sda=Pin(0),freq=200000)\n    print(i2c)\n\noled = SSD1306_I2C(WIDTH, HEIGHT, i2c)\n\n# clear screen\n\noled.poweroff()\n    oled.poweron()\n\noled.fill(0)\n\n# draw pixel\n\n# oled.pixel(30, 33, 1)\n\n# draw rectangle",
                "char_count": 1200,
                "token_estimate": 300
            },
            {
                "title": "S-0018",
                "rev_id": 14589,
                "heading_path": "How to program it > Raspberry Pi Pico",
                "chunk_index": 16,
                "content": "for i in range(1, 100):\n        oled.fill_rect(20, 25, 25, 25, 1)\n        oled.fill_rect(70, 25, 25, 25, 1)\n        oled.show()\n        time.sleep(0.2)\n        oled.fill(0)\n        oled.fill_rect(25, 25, 25, 25, 1)\n        oled.fill_rect(75, 25, 25, 25, 1)\n        oled.show()\n        time.sleep(0.2)\n        oled.fill(0)\n\n# draw line\n\n#oled.line(35, 0, 64, 57, 1)\n\n# invert screen 0\/1\n\n#oled.invert(0)\n\n# Put text on screen\n\n#oled.text(\"Hello World\", 0, 0)\n    oled.text(\"Hello Pico\", 0, 57)\n\n# Display\n\noled.show()\n\nSave it to main.py and click play button on Thonny IDLE. ![\\|left\\|800px](Savetheapp.png \"|left|800px\")\n\\* OLED effect: <img src=\"Oled_effect.gif\" title=\"Oled_effect.gif\" width=\"800\" alt=\"Oled_effect.gif\" \/>",
                "char_count": 725,
                "token_estimate": 182
            },
            {
                "title": "S-0018",
                "rev_id": 14589,
                "heading_path": "How to program it > Arduino",
                "chunk_index": 17,
                "content": "-   To program for Arduino, we need:\n-   Arduino IDE: \\[ <https:\/\/www.arduino.cc\/en\/software> \\], Please download and install it.",
                "char_count": 129,
                "token_estimate": 33
            },
            {
                "title": "S-0018",
                "rev_id": 14589,
                "heading_path": "How to program it > Hardware Required:",
                "chunk_index": 18,
                "content": "-   1 x Arduino UNO or Arduino Mega 2560 or Arduino Other type.\n-   1 x USB 2.0 Cable type A\/B\n-   1 x 0.96 inch OLED display\n-   4 x Jumper wires (male to male)\n-   1 x Breadboard\n\n#### I2C 0.96 inch OLED display Pinout\n\n-   GND Pin: should be connected to the ground of Arduino.\n-   VCC Pin: is the power supply for the display which we connect the 5 volts or 3.3 volts pin on the Arduino.(Recommend connect to 3.3V)\n-   SCL Pin: serial clock pin for I2C interface.\n-   SDA Pin: serial data pin for I2C interface.\n\n<img src=\"Connnecttion_arduino.png\" title=\"Connnecttion_arduino.png\" width=\"800\" alt=\"Connnecttion_arduino.png\" \/>",
                "char_count": 631,
                "token_estimate": 158
            },
            {
                "title": "S-0018",
                "rev_id": 14589,
                "heading_path": "How to program it > How to use OLED with Arduino",
                "chunk_index": 19,
                "content": "-   On Arduino IDE, Go to Tools \\>\\> Manage Libraries and search SSD1306 or just download the latest zip file from <https:\/\/www.arduino.cc\/reference\/en\/libraries\/ssd1306\/>, or just download from: <File:Ssd1306-1.8.3.zip>\n\n<img src=\"Arduinoide01.png\" title=\"Arduinoide01.png\" width=\"800\" alt=\"Arduinoide01.png\" \/>\n<img src=\"Arduinoide02.png\" title=\"Arduinoide02.png\" width=\"800\" alt=\"Arduinoide02.png\" \/>\n\\* If you download zip file from libraries URL, please install it before you use it. Install it as following steps:\n<img src=\"Arduino03.png\" title=\"Arduino03.png\" width=\"800\" alt=\"Arduino03.png\" \/>\n<img src=\"Arduino04.png\" title=\"Arduino04.png\" width=\"800\" alt=\"Arduino04.png\" \/>\n\nwhen you coding, you can find it from sketch>> include libraries>> ssd1306",
                "char_count": 759,
                "token_estimate": 190
            },
            {
                "title": "S-0018",
                "rev_id": 14589,
                "heading_path": "How to program it > How to use OLED with Arduino",
                "chunk_index": 20,
                "content": "<img src=\"Arduino05.png\" title=\"Arduino05.png\" width=\"800\" alt=\"Arduino05.png\" \/>\n\\* Demo code: <File:Clock.zip> Download this demo code and unzip it to desktop, and connect your Arduino to your laptop or PC, select the serial port to upload code. For example: <img src=\"Arduino06.png\" title=\"Arduino06.png\" width=\"800\" alt=\"Arduino06.png\" \/>\nPress CTRL+ R to verify or compile code, and press CTRL+U to upload code to your Arduino board. <img src=\"Arduinoclock.jpg\" title=\"Arduinoclock.jpg\" width=\"800\" alt=\"Arduinoclock.jpg\" \/>",
                "char_count": 529,
                "token_estimate": 133
            },
            {
                "title": "S-0018",
                "rev_id": 14589,
                "heading_path": "How to program it > STM32",
                "chunk_index": 21,
                "content": "-   Project Package Download: [File:0.96OLED STM32F103ZET6 IIC V1.0.zip](File:0.96OLED_STM32F103ZET6_IIC_V1.0.zip \"wikilink\")",
                "char_count": 125,
                "token_estimate": 32
            },
            {
                "title": "S-0018",
                "rev_id": 14589,
                "heading_path": "How to program it > 51 Series",
                "chunk_index": 22,
                "content": "-   STC89C51 Series Demo Package: [File:0.96OLED STC89C51 series I2C.zip](File:0.96OLED_STC89C51_series_I2C.zip \"wikilink\")\n-   Circuit connection diagram\n\n| OLED Display | C51 Series MCU |\n|--------------|----------------|\n| GND          | GND            |\n| VCC          | 3.3V           |\n| D0(SCL)      | P1^0           |\n| D1(SDA)      | P1^1           |\n| RST(RES)     | 3.3            |\n| DC(DC)       | GND            |\n| CS           | GND            |",
                "char_count": 461,
                "token_estimate": 116
            },
            {
                "title": "S-0018",
                "rev_id": 14589,
                "heading_path": "Package Includes",
                "chunk_index": 23,
                "content": "-   1 x 0.96 inch OLED Display kit",
                "char_count": 34,
                "token_estimate": 9
            },
            {
                "title": "S-0018",
                "rev_id": 14589,
                "heading_path": "Keywords",
                "chunk_index": 24,
                "content": "-   0.96 inch OLED display, double color 0.96 inch OLED display",
                "char_count": 63,
                "token_estimate": 16
            }
        ]
    }
}