From ca5cffb14efce4f1460549afa58154821f16aa12 Mon Sep 17 00:00:00 2001 From: Martin Krischik Date: Tue, 14 Apr 2026 15:34:23 +0200 Subject: [PATCH] pico_ada_c03_led_bar 1.3.1 (via `alr publish`) (#1849) --- .../pico_ada_c03_led_bar-1.3.1.toml | 77 +++++++++++++++++++ 1 file changed, 77 insertions(+) create mode 100644 index/pi/pico_ada_c03_led_bar/pico_ada_c03_led_bar-1.3.1.toml diff --git a/index/pi/pico_ada_c03_led_bar/pico_ada_c03_led_bar-1.3.1.toml b/index/pi/pico_ada_c03_led_bar/pico_ada_c03_led_bar-1.3.1.toml new file mode 100644 index 00000000..f18fd844 --- /dev/null +++ b/index/pi/pico_ada_c03_led_bar/pico_ada_c03_led_bar-1.3.1.toml @@ -0,0 +1,77 @@ +name = "pico_ada_c03_led_bar" +description = "Chapter 3 - Cylon LED Bar: flowing light upgraded to a menacing scanner" +long-description = """Building a smooth flowing LED bar on the Raspberry Pi +Pico with Ada - from a simple chasing light to a proper menacing Cylon scanner +effect using real-time delays. + +In this chapter we turn ten LEDs into a flowing light bar. We start with the +basic Freenove example using an array of RP.GPIO.GPIO_Point (aliased limited +tagged types). We then improve it with a pre-calculated sine-harmonic timing +table to create a realistic Cylon scanner - all done with Ada.Real_Time and +zero floating-point at runtime for perfect jitter-free movement. + +The two programs included are: + +1. Sketch_03_1_Flowing_Light - straight port of the classic flowing light +2. Cylon_Light - the final dramatic Cylon scanner with organic easing +3. Cylon_Light_Float - Floating point version of Cylon_Light + +Read the full tutorial (with photos, explanations and GNATdoc) at: +https://pi-ada-tutorial.sourceforge.io/pico_ada_c03_led_bar/ + +GNATdoc documentation: +https://pi-ada-tutorial.sourceforge.io/gnatdoc/pico_ada_c03_led_bar/ + +SourceForge repository: +https://sourceforge.net/projects/pi-ada-tutorial/ + +(The Cylons did nothing wrong. Humans created the perfect companion species and +then completely messed it up.) +""" +version = "1.3.1" +licenses = "GPL-3.0-or-later" +authors = ["Martin Krischik "] +maintainers = ["Martin Krischik "] +maintainers-logins = ["krischik"] +website = "https://pi-ada-tutorial.sourceforge.io/pico_ada_c03_led_bar" +tags = ["raspberry", "pi", "pico", "rp2040", "tasking", "light-tasking", "ada2022", "embedded"] +executables = [ + "sketch_03_1_flowing_light", + "cylon_light_float", + "cylon_light" +] + +[build-switches] +"*".ada_version = ["-gnat2022"] +development.compile_checks = "Warnings" +development.contracts = "Yes" +development.runtime_checks = "Overflow" +release.compile_checks = "Warnings" +release.contracts = "No" +release.runtime_checks = "Default" +validation.compile_checks = "Warnings" +validation.contracts = "Yes" +validation.runtime_checks = "Everything" + +[[depends-on]] +rp2040_hal = "^2.7.1" +pico_bsp = "^2.2" +light_tasking_rp2040 = "^15.2" + +[configuration.values] +rp2040_hal.Use_Startup = false +rp2040_hal.Interrupts = "bb_runtimes" +light_tasking_rp2040.Max_CPUs = 2 +light_tasking_rp2040.Board = "rpi_pico" + +# vim: set textwidth=0 nowrap tabstop=8 shiftwidth=4 softtabstop=4 expandtab : +# vim: set filetype=toml fileencoding=utf-8 fileformat=unix foldmethod=diff : +# vim: set spell spelllang=en_gb : + +[origin] +hashes = [ +"sha256:3236d25e45e0b5940a1f513b124458e83821421c016f565802b1445730c1f21d", +"sha512:72b9f88c71da9b0e6972b325402d8255d61fd32235929c47ed397c0b1fff04e22a334717914714ff8f9c778d779b40984391bdd383b3fabdd2a5fae04a6902fe", +] +url = "https://sourceforge.net/projects/pi-ada-tutorial/files/Alire/pico_ada_c03_led_bar-1.3.1.tgz" +