Project_runner - Unable to create drivers PiWS281X Requires the rpi_ws281x C extension

I’m having some problems with bibliopixel finding the rpi_ws281x C extension?

I have it installed on my RPi and have built and installed the rpi_ws281x.py python wrapper. I’ve tested the wrapper running strandtest.py and that works fine with my ws2811 LED lighting fine.

However if I run any bibliopixel code or use the bp project runner I get:

Not able to initialize the driver. Error
PiWS281X Requires the rpi_ws281x C extension.

Install rpi_ws281x with the following shell commands:

    git clone https://github.com/jgarff/rpi_ws281x.git
    cd rpi_ws281x... etc.

How do I make bibliopixel pick this up? I’m not a python expert?

It’s likely it got installed to Python2 but bp runs in python 3
The key part of those instructions is this:

# If using default system python3
sudo python3 setup.py build install
# If using virtualenv, enter env then run
python setup.py build install

My guess is you used the second one without actually having a virtualenv which means it was installed into python 2 not 3.

At your console, run pip3 freeze and make sure it shows rpi_ws281x
If not, just repeat those instructions but make sure you use python3 not python

Thanks for getting back, I just ran pip3 freeze and rpi_ws281x is showing up OK - see below:

pi@raspberrypi:~ $ pip3 freeze
Adafruit-Blinka==5.0.1
Adafruit-BluefruitLE==0.9.10
adafruit-circuitpython-neopixel==6.0.0
adafruit-circuitpython-pypixelbuf==2.0.0
Adafruit-PlatformDetect==2.13.3
Adafruit-PureIO==1.1.5
aiosqlite==0.10.0
appdirs==1.4.3
asn1crypto==0.24.0
astroid==2.2.5
asttokens==1.1.13
automationhat==0.2.0
beautifulsoup4==4.7.1
BiblioPixel==3.4.44
BiblioPixelAnimations==3.20190410.153508
BiblioPixelTriggers==1.0.2
blinker==1.4
blinkt==0.1.2
buttonshim==0.0.2
Cap1xxx==0.1.3
certifi==2019.3.9
chardet==3.0.4
Click==7.0
colorama==0.3.7
colorzero==1.1
cookies==2.2.1
croniter==0.3.30
cryptography==2.6.1
cycler==0.10.0
decorator==4.3.0
docutils==0.14
drumhat==0.1.0
entrypoints==0.3
envirophat==1.0.0
ExplorerHAT==0.4.2
Flask==1.0.2
fourletterphat==0.1.0
future==0.18.2
gitdb==4.0.5
gitdb2==2.0.5
GitPython==2.1.11
gpiozero==1.5.1
guizero==0.6.0
html5lib==1.0.1
idna==2.8
ipykernel==4.9.0
ipython==5.8.0
ipython-genutils==0.2.0
isort==4.3.17
itsdangerous==1.1.0
jedi==0.13.2
Jinja2==2.10.1
jupyter-client==5.2.3
jupyter-core==4.4.0
keyring==17.1.1
keyrings.alt==3.1.1
kiwisolver==1.0.1
lazy-object-proxy==1.3.1
loady==1.8.10
logilab-common==1.4.2
lxml==4.3.2
MarkupSafe==1.1.1
matplotlib==3.0.2
mccabe==0.6.1
microdotphat==0.2.1
mote==0.0.4
motephat==0.0.3
mypy==0.670
mypy-extensions==0.4.1
natsort==7.0.1
nudatus==0.0.4
numpy==1.16.3
oauthlib==2.1.0
olefile==0.46
pantilthat==0.0.7
parso==0.3.1
pexpect==4.6.0
pgzero==1.2
phatbeat==0.1.1
pianohat==0.1.0
picamera==1.13
pickleshare==0.7.5
picraft==1.0
piglow==1.2.5
pigpio==1.44
Pillow==6.0.0
prompt-toolkit==1.0.15
psutil==5.5.1
pycairo==1.16.2
pycodestyle==2.4.0
pycrypto==2.6.1
pyflakes==2.0.0
pyftdi==0.51.2
pygame==1.9.4.post1
Pygments==2.3.1
PyGObject==3.30.4
pyinotify==0.9.6
PyJWT==1.7.0
pylint==2.3.1
pyOpenSSL==19.0.0
pyparsing==2.2.0
pyserial==3.4
python-apt==1.8.4.1
python-dateutil==2.8.0
pyusb==1.0.2
pyxdg==0.25
PyYAML==5.1
pyzmq==17.1.2
qtconsole==4.3.1
rainbowhat==0.1.0
requests==2.21.0
requests-oauthlib==1.0.0
responses==0.9.0
roman==2.0.0
rpi-ws281x==4.2.4
RPi.GPIO==0.7.0
RTIMULib==7.2.1
scrollphat==0.0.7
scrollphathd==1.2.1
SecretStorage==2.3.1
semver==2.0.1
Send2Trash==1.5.0
sense-emu==1.1
sense-hat==2.2.0
simplegeneric==0.8.1
simplejson==3.16.0
six==1.12.0
skywriter==0.0.7
smmap==3.0.4
smmap2==2.0.5
sn3218==1.2.7
soupsieve==1.9.1
spidev==3.4
ssh-import-id==5.7
sysv-ipc==1.0.1
thonny==3.2.6
tornado==5.1.1
touchphat==0.0.1
traitlets==4.3.2
twython==3.7.0
typed-ast==1.3.1
uflash==1.2.4
unicornhathd==0.0.4
urllib3==1.24.3
wcwidth==0.1.7
webencodings==0.5.1
websockets==7.0
Werkzeug==0.15.2
wrapt==1.11.1
pi@raspberrypi:~ $

Are you running bibliopixel with sudo?
That driver requires sudo - if you are and it’s still not working, you may need to run sudo pip3 freeze and make sure it still shows up there as well - or are you using a virtualenv?
Also, run python manually - simply just type sudo python and hit enter.
Then try running import neopixel and copy back here what the output is please.

Hi,
Thanks for the help though I still have the same problem. I’ve run sudo pip3 and I see the rpi_ws281x component. strandtest.py still works OK and if I run sudo python3 then import neopixel I get:

>>> import neopixel
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ModuleNotFoundError: No module named 'neopixel'
>>>

Try just sudo pip3 install rpi_ws281x

Still doesn’t work. So I’ve poked around a bit and without knowing Python very well I’m wondering if there has been a namespace change from neopixel to rpi_ws281x ??
I can do the following in the python3 console without error:
from rpi_ws281x import Adafruit_NeoPixel
but the following gives a not found error:
from neopixel import Adafruit_NeoPixel

ahhhhhh… yeah, you might be right.
I’ll see if I can push an update

I made a fix and sent through a pull request. Tested and working OK my RPi Zero W.