rppal | A Rust library that provides access to the Raspberry Pi's GPIO, I2C, PWM, SPI and UART peripherals

 by   golemparts Rust Version: 0.14.1 License: MIT

kandi X-RAY | rppal Summary

kandi X-RAY | rppal Summary

rppal is a Rust library typically used in Embedded System, Raspberry Pi applications. rppal has no bugs, it has no vulnerabilities, it has a Permissive License and it has medium support. You can download it from GitHub.

RPPAL provides access to the Raspberry Pi's GPIO, I2C, PWM, SPI and UART peripherals through a user-friendly interface. In addition to peripheral access, RPPAL also offers support for USB to serial adapters. The library can be used in conjunction with a variety of platform-agnostic drivers through its embedded-hal trait implementations. Both embedded-hal v0.2.6 and v1.0.0-alpha.5 are supported. RPPAL requires Raspberry Pi OS or any similar, recent, Linux distribution. Both gnu and musl libc targets are supported. RPPAL is compatible with the Raspberry Pi A, A+, B, B+, 2B, 3A+, 3B, 3B+, 4B, CM, CM 3, CM 3+, CM 4, 400, Zero, Zero W and Zero 2 W. Backwards compatibility for minor revisions isn't guaranteed until v1.0.0. This library is under active development on the master branch of the repository on GitHub. If you're looking for the README.md or the examples directory for the latest release or any of the earlier releases, visit crates.io, download an archived release from the GitHub releases page, or clone and checkout the relevant release tag.
Support
    Quality
      Security
        License
          Reuse

            kandi-support Support

              rppal has a medium active ecosystem.
              It has 850 star(s) with 73 fork(s). There are 18 watchers for this library.
              OutlinedDot
              It had no major release in the last 12 months.
              There are 27 open issues and 58 have been closed. On average issues are closed in 101 days. There are 2 open pull requests and 0 closed requests.
              It has a neutral sentiment in the developer community.
              The latest version of rppal is 0.14.1

            kandi-Quality Quality

              rppal has 0 bugs and 0 code smells.

            kandi-Security Security

              rppal has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported.
              rppal code analysis shows 0 unresolved vulnerabilities.
              There are 0 security hotspots that need review.

            kandi-License License

              rppal is licensed under the MIT License. This license is Permissive.
              Permissive licenses have the least restrictions, and you can use them in most projects.

            kandi-Reuse Reuse

              rppal releases are available to install and integrate.
              Installation instructions are not available. Examples and code snippets are available.

            Top functions reviewed by kandi - BETA

            kandi's functional review helps you automatically verify the functionalities of the libraries and avoid rework.
            Currently covering the most popular Java, JavaScript and Python libraries. See a Sample of rppal
            Get all kandi verified functions for this library.

            rppal Key Features

            No Key Features are available at this moment for rppal.

            rppal Examples and Code Snippets

            No Code Snippets are available at this moment for rppal.

            Community Discussions

            QUESTION

            Why does using rppal's Uart to read a software-serial port on the Raspberry Pi not change the buffer?
            Asked 2021-Nov-23 at 17:16

            I am trying to read a sensor off of a software serial port (ttySOFT0) on the Raspberry Pi. I am using soft_uart to get my serial interface.

            The code is:

            ...

            ANSWER

            Answered 2021-Nov-23 at 17:13

            The documentation for Uart::read states (emphasis mine):

            read operates in one of four (non)blocking modes, depending on the settings configured by set_read_mode. By default, read is configured as non-blocking.

            The same applies to Uart::write / set_write_mode.

            Non-blocking means that if there is no data available, the call will return immediately with whatever data is available at that instant. Serial protocols are generally pretty slow compared to the rest of your computer, so this is a common occurrence.

            You will need to adapt your code to handle this. A simple solution is to use set_read_mode / set_write_mode to make the calls blocking.

            Another (better?) solution may involve retrying the read and write calls with delays until the buffer is sufficiently full.

            Source https://stackoverflow.com/questions/70084581

            QUESTION

            How do you read or write to GPIO pins on a Raspberry Pi 4 without using a high-level library?
            Asked 2020-Apr-02 at 00:22

            I'm attempting this Rust, but the code is segfaulting:

            ...

            ANSWER

            Answered 2020-Apr-02 at 00:22

            You're writing directly into the process address space. I think you might have more success writing directly to physical memory. Here is how RPPAL does it:

            Source https://stackoverflow.com/questions/60962110

            Community Discussions, Code Snippets contain sources that include Stack Exchange Network

            Vulnerabilities

            No vulnerabilities reported

            Install rppal

            You can download it from GitHub.
            Rust is installed and managed by the rustup tool. Rust has a 6-week rapid release process and supports a great number of platforms, so there are many builds of Rust available at any time. Please refer rust-lang.org for more information.

            Support

            Online documentation is available for the latest release, older releases, and the version currently in development.
            Find more information at:

            Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items

            Find more libraries
            CLONE
          • HTTPS

            https://github.com/golemparts/rppal.git

          • CLI

            gh repo clone golemparts/rppal

          • sshUrl

            git@github.com:golemparts/rppal.git

          • Stay Updated

            Subscribe to our newsletter for trending solutions and developer bootcamps

            Agree to Sign up and Terms & Conditions

            Share this Page

            share link