Giter VIP home page Giter VIP logo

esp32-rmt-uart's Introduction

ESP32 RMT UART

Component for Espressif ESP32 ESP-IDF framework.

This components uses ESP32's RMT peripheral as an UART port. It can send and receive UART frames as well.

Supported versions of frameworks and devices

Chip Framework Versions Number of UART
ESP32-S2 ESP-IDF v4.3 and above 2
ESP32-C3 ESP-IDF v4.3 and above 2
ESP32-S3 ESP-IDF v4.3 and above 4

How to Use

Clone this repository to your project components directory.

Configuration

typedef struct {
    int baud_rate;                        /*!< UART baud rate*/
    rmt_uart_mode_t mode;                 /*!< UART mode*/  
    rmt_uart_word_length_t data_bits;     /*!< UART byte size*/
    rmt_uart_parity_t parity;             /*!< UART parity mode*/
    rmt_uart_stop_bits_t stop_bits;       /*!< UART stop bits*/
    gpio_num_t tx_io_num;                 /*!< UART TX GPIO num*/
    gpio_num_t rx_io_num;                 /*!< UART RX GPIO num*/
    size_t buffer_size;                   /*!< UART buffer size/*>
} rmt_uart_config_t;

Mode can be TX only, RX only or both TX and RX.
Buffer size must be 20 times of the length of transmit/receive data. If you want to send 10 bytes maximum then buffer_size = 200.

Restrictions

Due to hardware limitations ESP32-S2 can only receive 12 bytes at once. In RX only mode this limit is 24 bytes. Transmit has no restriction.

esp32-rmt-uart's People

Contributors

naffej avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

esp32-rmt-uart's Issues

9 bit operation?

Hi
I'm trying to use the library to read a uart stream with 9 data bits. But does it support this at all - and if so could you give a couple of hints on setup?
Thanks!

Support for Even parity

Hi,

I want to use this library to read a power sensor. Its configuration is 4800 Baud and even bit. Is there a way to use this library with even parity?

Thanks

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.