arduino / arduino/ArduinoCore-API
SPI library does not have functions for sending or receiving data blocks
- Dominant language
- C++
- Stars
- 306
- Forks
- 150
- PR merge metrics
- No merged PRs in 30d
Description
SPI library does not have functions for sending or receiving data blocks.
SPI.transfer has disadvantages.
1. If I need to read from SPI a large block of data I often need to fill an array with a constant, f.e. 0xff
2. If I need to send data block to SPI several times I must fill this array again after each sending because it is filled with data read (that I don't need anyway)
I suggest to add functions like
SPI.send(void* data, size_t len, unsigned char outbyte = 0xff)
and
SPI.receive(void* data, size_t len)
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by examining the existing SPI.transfer entry point and the ArduinoCore-API SPI interface. Determine how block send and receive operations should handle the proposed data, length, and 0xff arguments, including repeated sends without rebuilding the buffer. Done means the API provides both operations and their behavior is covered for large reads and repeated writes.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- arduino, cpp
- Domain
- api, embedded-iot
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100