{
  "canonical_url": "https://crates.flyology.org/community/",
  "catalog": {
    "name": "community",
    "repository_url": "https://github.com/alire-project/alire-index",
    "revision": "cd12c6aa35b7d6483841517305d57ba167ec78d0"
  },
  "generated_at": "2026-08-23T04:55:42Z",
  "index": {
    "version": "1.4.0"
  },
  "package": {
    "catalog": "community",
    "description": "Chapter 6: Controlling 8 NeoPixel RGB LED",
    "development_only": false,
    "latest_version": "1.8.0",
    "name": "pico_ada_c06_neopixel",
    "selected_version": "1.8.0",
    "versions": [
      {
        "dependants": [],
        "dependencies": [
          {
            "catalog": "community",
            "condition": null,
            "name": "rp2040_hal",
            "package": "rp2040_hal",
            "provided_version": "2.7.1",
            "requirement": "^2.7.1",
            "resolved": true,
            "version": "2.7.1"
          },
          {
            "catalog": "community",
            "condition": null,
            "name": "pico_bsp",
            "package": "pico_bsp",
            "provided_version": "2.2.0",
            "requirement": "^2.2",
            "resolved": true,
            "version": "2.2.0"
          },
          {
            "catalog": "community",
            "condition": null,
            "name": "pico_xbsp",
            "package": "pico_xbsp",
            "provided_version": "1.8.0",
            "requirement": "^1.8",
            "resolved": true,
            "version": "1.8.0"
          },
          {
            "catalog": "community",
            "condition": null,
            "name": "light_tasking_rp2040",
            "package": "light_tasking_rp2040",
            "provided_version": "15.4.0",
            "requirement": "^15.4",
            "resolved": true,
            "version": "15.4.0"
          }
        ],
        "development": false,
        "external": false,
        "manifest": {
          "authors": [
            "Martin Krischik <krischik@users.sourceforge.net>"
          ],
          "build-switches": {
            "*": {
              "ada_version": [
                "-gnat2022"
              ]
            },
            "development": {
              "compile_checks": "Warnings",
              "contracts": "Yes",
              "runtime_checks": "Overflow"
            },
            "release": {
              "compile_checks": "Warnings",
              "contracts": "No",
              "runtime_checks": "Default"
            },
            "validation": {
              "compile_checks": "Warnings",
              "contracts": "Yes",
              "runtime_checks": "Everything"
            }
          },
          "configuration": {
            "values": {
              "light_tasking_rp2040": {
                "Board": "rpi_pico",
                "Max_CPUs": 2
              },
              "pico_xbsp": {
                "Variant": "tasking"
              },
              "rp2040_hal": {
                "Interrupts": "bb_runtimes",
                "Use_Startup": false
              }
            }
          },
          "depends-on": [
            {
              "light_tasking_rp2040": "^15.4",
              "pico_bsp": "^2.2",
              "pico_xbsp": "^1.8",
              "rp2040_hal": "^2.7.1"
            }
          ],
          "description": "Chapter 6: Controlling 8 NeoPixel RGB LED",
          "executables": [
            "square_wave-main",
            "ws2812_demo",
            "sketch_06_1_led_pixel",
            "sketch_06_2_rainbow_light"
          ],
          "licenses": "GPL-3.0-or-later",
          "long-description": "Learn how to drive WS2812 (NeoPixel) LEDs on the Raspberry Pi Pico using the RP2040\nPIO in Ada. Includes a square-wave diagnostic, fixes for the official ws2812_demo, and two complete animation sketches.\n\nFrom understanding the WS2812 protocol to writing our own PIO code and creating colourful animations - everything you\nneed to make NeoPixels dance with Ada on the Pico.\n\nContained in Chapter 06 are:\n\n1. square_wave-main.adb\t\t - Simple Square Wave test using PIO (for timing reference)\n1. ws2812_demo.adb\t\t - Jeremy Grosser's WS2812 demo adapted for the RP2040 and Ada 2022\n2. sketch_06_1_led_pixel.adb\t - Chapter 6.1 NeoPixel LED Pixel\n3. sketch_06_2_rainbow_light.adb - Chapter 6.2 NeoPixel Rainbow Light\n\nRead the full tutorial at [Chapter 6: Controlling an NeoPixel LED with\nPWM](https://pi-ada-tutorial.sourceforge.io/pico_ada_c06_neopixel), [GNATdoc\ndocumentation](https://pi-ada-tutorial.sourceforge.io/gnatdoc/pico_doc/), [SourceForge\nrepository](https://sourceforge.net/p/pi-ada-tutorial/code/ci/master/tree/pico_ada_c06_neopixel/)\n",
          "maintainers": [
            "Martin Krischik <krischik@users.sourceforge.net>"
          ],
          "maintainers-logins": [
            "krischik"
          ],
          "name": "pico_ada_c06_neopixel",
          "origin": {
            "hashes": [
              "sha256:a366fe30b23bfc67dcf10629f032cb28593cdadda0fef7465f0599a135157f66",
              "sha512:8fa1997c7bdf3906f4b8ad6a8653bd4f2f281b107d56307dbd3a11d0895bf6d674eb3dbdb8159d053ddbcb69bfbf2e261ace0ac84081546d5276556cadaa1690"
            ],
            "url": "https://sourceforge.net/projects/pi-ada-tutorial/files/Alire/pico_ada_c06_neopixel-1.8.0.tgz"
          },
          "tags": [
            "raspberry",
            "pi",
            "pico",
            "rp2040",
            "tasking",
            "light-tasking",
            "ada2022",
            "embedded"
          ],
          "version": "1.8.0",
          "website": "https://pi-ada-tutorial.sourceforge.io/pico_ada_c06_neopixel"
        },
        "path": "index/pi/pico_ada_c06_neopixel/pico_ada_c06_neopixel-1.8.0.toml",
        "version": "1.8.0"
      },
      {
        "dependants": [],
        "dependencies": [
          {
            "catalog": "community",
            "condition": null,
            "name": "rp2040_hal",
            "package": "rp2040_hal",
            "provided_version": "2.7.1",
            "requirement": "^2.7.1",
            "resolved": true,
            "version": "2.7.1"
          },
          {
            "catalog": "community",
            "condition": null,
            "name": "pico_bsp",
            "package": "pico_bsp",
            "provided_version": "2.2.0",
            "requirement": "^2.2",
            "resolved": true,
            "version": "2.2.0"
          },
          {
            "catalog": "community",
            "condition": null,
            "name": "pico_xbsp",
            "package": "pico_xbsp",
            "provided_version": "1.8.0",
            "requirement": "^1.7",
            "resolved": true,
            "version": "1.8.0"
          },
          {
            "catalog": "community",
            "condition": null,
            "name": "light_tasking_rp2040",
            "package": "light_tasking_rp2040",
            "provided_version": "15.4.0",
            "requirement": "^15.4",
            "resolved": true,
            "version": "15.4.0"
          }
        ],
        "development": false,
        "external": false,
        "manifest": {
          "authors": [
            "Martin Krischik <krischik@users.sourceforge.net>"
          ],
          "build-switches": {
            "*": {
              "ada_version": [
                "-gnat2022"
              ]
            },
            "development": {
              "compile_checks": "Warnings",
              "contracts": "Yes",
              "runtime_checks": "Overflow"
            },
            "release": {
              "compile_checks": "Warnings",
              "contracts": "No",
              "runtime_checks": "Default"
            },
            "validation": {
              "compile_checks": "Warnings",
              "contracts": "Yes",
              "runtime_checks": "Everything"
            }
          },
          "configuration": {
            "values": {
              "light_tasking_rp2040": {
                "Board": "rpi_pico",
                "Max_CPUs": 2
              },
              "rp2040_hal": {
                "Interrupts": "bb_runtimes",
                "Use_Startup": false
              }
            }
          },
          "depends-on": [
            {
              "light_tasking_rp2040": "^15.4",
              "pico_bsp": "^2.2",
              "pico_xbsp": "^1.7",
              "rp2040_hal": "^2.7.1"
            }
          ],
          "description": "Chapter 6: Controlling 8 NeoPixel RGB LED",
          "executables": [
            "square_wave-main",
            "ws2812_demo",
            "sketch_06_1_led_pixel",
            "sketch_06_2_rainbow_light"
          ],
          "licenses": "GPL-3.0-or-later",
          "long-description": "Learn how to drive WS2812 (NeoPixel) LEDs on the Raspberry Pi Pico using the RP2040\nPIO in Ada. Includes a square-wave diagnostic, fixes for the official ws2812_demo, and two complete animation sketches.\n\nFrom understanding the WS2812 protocol to writing our own PIO code and creating colourful animations - everything you\nneed to make NeoPixels dance with Ada on the Pico.\n\nContained in Chapter 06 are:\n\n1. square_wave-main.adb\t\t - Simple Square Wave test using PIO (for timing reference)\n1. ws2812_demo.adb\t\t - Jeremy Grosser's WS2812 demo adapted for the RP2040 and Ada 2022\n2. sketch_06_1_led_pixel.adb\t - Chapter 6.1 NeoPixel LED Pixel\n3. sketch_06_2_rainbow_light.adb - Chapter 6.2 NeoPixel Rainbow Light\n\nRead the full tutorial at [Chapter 6: Controlling an NeoPixel LED with\nPWM](https://pi-ada-tutorial.sourceforge.io/pico_ada_c06_neopixel), [GNATdoc\ndocumentation](https://pi-ada-tutorial.sourceforge.io/gnatdoc/pico_ada_c06_neopixel/), [SourceForge\nrepository](https://sourceforge.net/p/pi-ada-tutorial/code/ci/master/tree/pico_ada_c06_neopixel/)\n",
          "maintainers": [
            "Martin Krischik <krischik@users.sourceforge.net>"
          ],
          "maintainers-logins": [
            "krischik"
          ],
          "name": "pico_ada_c06_neopixel",
          "origin": {
            "hashes": [
              "sha256:83d4b03e345701b39fcfc45971908a6c49ddc44f588419d9ac122d568dbde959",
              "sha512:b4136660eb70df3856a8783ebc041278412534c57ba2b3e3bca116af3168fbbade6a5777380e7dbde05f68b1c0e24d89e35fe69546896b10c491971809d3c141"
            ],
            "url": "https://sourceforge.net/projects/pi-ada-tutorial/files/Alire/pico_ada_c06_neopixel-1.7.0.tgz"
          },
          "tags": [
            "raspberry",
            "pi",
            "pico",
            "rp2040",
            "tasking",
            "light-tasking",
            "ada2022",
            "embedded"
          ],
          "version": "1.7.0",
          "website": "https://pi-ada-tutorial.sourceforge.io/pico_ada_c06_neopixel"
        },
        "path": "index/pi/pico_ada_c06_neopixel/pico_ada_c06_neopixel-1.7.0.toml",
        "version": "1.7.0"
      },
      {
        "dependants": [],
        "dependencies": [
          {
            "catalog": "community",
            "condition": null,
            "name": "rp2040_hal",
            "package": "rp2040_hal",
            "provided_version": "2.7.1",
            "requirement": "^2.7.1",
            "resolved": true,
            "version": "2.7.1"
          },
          {
            "catalog": "community",
            "condition": null,
            "name": "pico_bsp",
            "package": "pico_bsp",
            "provided_version": "2.2.0",
            "requirement": "^2.2",
            "resolved": true,
            "version": "2.2.0"
          },
          {
            "catalog": "community",
            "condition": null,
            "name": "pico_xbsp",
            "package": "pico_xbsp",
            "provided_version": "1.8.0",
            "requirement": "^1.5",
            "resolved": true,
            "version": "1.8.0"
          },
          {
            "catalog": "community",
            "condition": null,
            "name": "embedded_rp2040",
            "package": "embedded_rp2040",
            "provided_version": "15.4.0",
            "requirement": "^15.3",
            "resolved": true,
            "version": "15.4.0"
          }
        ],
        "development": false,
        "external": false,
        "manifest": {
          "authors": [
            "Martin Krischik <krischik@users.sourceforge.net>"
          ],
          "build-switches": {
            "*": {
              "ada_version": [
                "-gnat2022"
              ]
            },
            "development": {
              "compile_checks": "Warnings",
              "contracts": "Yes",
              "runtime_checks": "Overflow"
            },
            "release": {
              "compile_checks": "Warnings",
              "contracts": "No",
              "runtime_checks": "Default"
            },
            "validation": {
              "compile_checks": "Warnings",
              "contracts": "Yes",
              "runtime_checks": "Everything"
            }
          },
          "configuration": {
            "values": {
              "embedded_rp2040": {
                "Board": "rpi_pico",
                "Max_CPUs": 2
              },
              "rp2040_hal": {
                "Interrupts": "bb_runtimes",
                "Use_Startup": false
              }
            }
          },
          "depends-on": [
            {
              "embedded_rp2040": "^15.3",
              "pico_bsp": "^2.2",
              "pico_xbsp": "^1.5",
              "rp2040_hal": "^2.7.1"
            }
          ],
          "description": "Chapter 6: Controlling 8 NeoPixel RGB LED",
          "executables": [
            "square_wave-main",
            "ws2812_demo",
            "sketch_06_1_led_pixel",
            "sketch_06_2_rainbow_light"
          ],
          "licenses": "GPL-3.0-or-later",
          "long-description": "Learn how to drive WS2812 (NeoPixel) LEDs on the Raspberry Pi Pico using the RP2040\nPIO in Ada. Includes a square-wave diagnostic, fixes for the official ws2812_demo, and two complete animation sketches.\n\nFrom understanding the WS2812 protocol to writing our own PIO code and creating colourful animations - everything you\nneed to make NeoPixels dance with Ada on the Pico.\n\nContained in Chapter 06 are:\n\n1. square_wave-main.adb\t\t - Simple Square Wave test using PIO (for timing reference)\n1. ws2812_demo.adb\t\t - Jeremy Grosser's WS2812 demo adapted for the RP2040 and Ada 2022\n2. sketch_06_1_led_pixel.adb\t - Chapter 6.1 NeoPixel LED Pixel\n3. sketch_06_2_rainbow_light.adb - Chapter 6.2 NeoPixel Rainbow Light\n\nRead the full tutorial at [Chapter 6: Controlling an NeoPixel LED with\nPWM](https://pi-ada-tutorial.sourceforge.io/pico_ada_c06_neopixel), [GNATdoc\ndocumentation](https://pi-ada-tutorial.sourceforge.io/gnatdoc/pico_ada_c06_neopixel/), [SourceForge\nrepository](https://sourceforge.net/p/pi-ada-tutorial/code/ci/master/tree/pico_ada_c06_neopixel/)\n",
          "maintainers": [
            "Martin Krischik <krischik@users.sourceforge.net>"
          ],
          "maintainers-logins": [
            "krischik"
          ],
          "name": "pico_ada_c06_neopixel",
          "origin": {
            "hashes": [
              "sha256:4c1826d6d613db3faffd74ae139761b9314b8a916d48ddb9c95d589be90bbd5f",
              "sha512:f89c66511209761e68ce5761f066ad4cb8e457e47b0ef6bf9f169e151b25266165861a101af255e356439316441ecfe1f3b1aee5e5f9e62c23b35c2d0a737dfb"
            ],
            "url": "https://sourceforge.net/projects/pi-ada-tutorial/files/Alire/pico_ada_c06_neopixel-1.6.0.tgz"
          },
          "tags": [
            "raspberry",
            "pi",
            "pico",
            "rp2040",
            "tasking",
            "light-tasking",
            "ada2022",
            "embedded"
          ],
          "version": "1.6.0",
          "website": "https://pi-ada-tutorial.sourceforge.io/pico_ada_c06_neopixel"
        },
        "path": "index/pi/pico_ada_c06_neopixel/pico_ada_c06_neopixel-1.6.0.toml",
        "version": "1.6.0"
      }
    ]
  },
  "schema_version": 4
}
