Comments (4)
The problem is you are calling open from within SPI_sendPackets and not closing it. Doing this many times over and over gives you the error message you are seeing, "Too many open files."
You shouldn't be opening and closing spidev for every transfer. Just create a spi object somewhere toward the beginning of your code and only call open on it once. Then just pass the spi object to SPI_sendPackets and you should be fine.
It looks like you have one other error in your code. bytes[:4096] will give you bytes 0-4095 (the first 4096 bytes), but bytes[4097:] will skip byte 4096 and give you bytes 4097 to the end of the list. I'm not sure you meant to skip that byte.
from py-spidev.
Hello,
Thank you for your fast response and assistance. I am embarrassed I made such an amateur mistake!
Have a great day.
Cheers,
Cody
////////////////////////////////////////////
Cody L. Allen
Purdue University
College of Engineering
ECESS Vice President
Mobile: 765.299.2447
////////////////////////////////////////////
Sent from my iPhone
On Oct 6, 2015, at 4:42 PM, doceme [email protected] wrote:
The problem is you are calling open from within SPI_sendPackets and not closing it. Doing this many times over and over gives you the error message you are seeing, "Too many open files."
You shouldn't be opening and closing spidev for every transfer. Just create a spi object somewhere toward the beginning of your code and only call open on it once. Then just pass the spi object to SPI_sendPackets and you should be fine.
It looks like you have one other error in your code. bytes[:4096] will give you bytes 0-4095 (the first 4096 bytes), but bytes[4097:] will skip byte 4096 and give you bytes 4097 to the end of the list. I'm not sure you meant to skip that byte.
—
Reply to this email directly or view it on GitHub.
from py-spidev.
No problem. Happy to help. I'm sure I've done worse many times. That's why I love open source.
from py-spidev.
The problem is you are calling open from within SPI_sendPackets and not closing it. Doing this many times over and over gives you the error message you are seeing, "Too many open files."
You shouldn't be opening and closing spidev for every transfer. Just create a spi object somewhere toward the beginning of your code and only call open on it once. Then just pass the spi object to SPI_sendPackets and you should be fine.
It looks like you have one other error in your code. bytes[:4096] will give you bytes 0-4095 (the first 4096 bytes), but bytes[4097:] will skip byte 4096 and give you bytes 4097 to the end of the list. I'm not sure you meant to skip that byte.
Sir, I am Getting Same Issue But With MFRC522 Library Which Uses Spidev. And I am Not been able to solve This.
from py-spidev.
Related Issues (20)
- Reading from SPI 0.0 is always zero HOT 3
- CS line double pulsing HOT 3
- spurious low pulse on CS0 HOT 28
- SPI CE0 bounce problem HOT 1
- after close and recreate got Bad file decriptor HOT 1
- The CS_HIGH handling code triggers a lockup on Raspberry Pi in 5.10 HOT 3
- [RPi 4] Spurious CS pulse after transfer HOT 3
- Type interface to writebytes not clear HOT 1
- RX buffer overwrites the TX buffer in 'xfer2' HOT 2
- "xfer2"/"xfer" command erases slave data / slave is unable to respond HOT 6
- support for python 3.9.4 HOT 1
- Please tag 3.5 version
- Unexpected SCK behavior
- Installation Python Spidev fails on Alpine Linux aarch64 HOT 3
- How to define a GPIO pin of Raspberry Pi while I'm using spidev lib? HOT 1
- Install failing on macos [missing linux/spi/spidev.h] HOT 1
- Supporting with-statements
- The open() method is not well suited to hot-plugged SPI device controllers (e.g. USB, Thunderbolt, PCIe and similar situations). HOT 2
- Could not build wheels for spidev HOT 2
- Quad and Dual format support for Synopsys Enhanced SPI controllers
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from py-spidev.