adafruit / adafruit/Adafruit_CircuitPython_NeoPixel_SPI

NeoPixel library not working on the Jetson Nano 4gb

Open
#38 8 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
30
Forks
11
PR merge metrics
No merged PRs in 30d

Description

Followed this guide for installing blinka

https://learn.adafruit.com/circuitpython-libraries-on-linux-and-the-nvidia-jetson-nano/initial-setup

and this guide for the neopixel

https://learn.adafruit.com/circuitpython-libraries-on-linux-and-the-nvidia-jetson-nano/neopixels-with-spi

Ran the blinka test with no errors or warning

```
import board
import digitalio
import busio

print("Hello blinka!")

# Try to great a Digital input
pin = digitalio.DigitalInOut(board.D4)
print("Digital IO ok!")

# Try to create an I2C device
i2c = busio.I2C(board.SCL, board.SDA)
print("I2C 1 ok!")
i2c = busio.I2C(board.SCL_1, board.SDA_1)
print("I2C 2 ok!")

print("done!")
```

```
jetson@jetson-desktop:~/MasterAPP$ python3.7 Blinkatest.py
Hello blinka!
Digital IO ok!
I2C 1 ok!
I2C 2 ok!
done!
Exiting...
Cleaning up pins
jetson@jetson-desktop:~/MasterAPP$
```

And running the example code again for the strips

```
import time
import board
import neopixel_spi as neopixel

NUM_PIXELS = 12
PIXEL_ORDER = neopixel.GRB
COLORS = (0xFF0000, 0x00FF00, 0x0000FF)
DELAY = 0.1

spi = board.SPI()

pixels = neopixel.NeoPixel_SPI(
spi, NUM_PIXELS, pixel_order=PIXEL_ORDER, auto_write=False
)

while True:
for color in COLORS:
for i in range(NUM_PIXELS):
pixels[i] = color
pixels.show()
time.sleep(DELAY)
pixels.fill(0)
```
Again no errors thrown by the program. The error below is when i did the cancaled the program with ctrl + c.

```
jetson@jetson-desktop:~/MasterAPP$ python3.7 Backlight.py
^CTraceback (most recent call last):
File "/home/jetson/MasterAPP/Backlight.py", line 55, in
time.sleep(DELAY)
KeyboardInterrupt
Exiting...
Cleaning up pins
```

Data pin is on pin 19 of the carrier board. Can confirm 5v power on the actual leg of the SK6812. I probed pin 19 with an oscilloscope and no signal was present. confirmed that spi/dev is also present

```
jetson@jetson-desktop:~/MasterAPP$ ls /dev/i2c* /dev/spi*
/dev/i2c-0 /dev/i2c-1 /dev/i2c-2 /dev/i2c-3 /dev/i2c-4 /dev/i2c-5 /dev/i2c-6 /dev/spidev0.0 /dev/spidev0.1 /dev/spidev1.0 /dev/spidev1.1
jetson@jetson-desktop:~/MasterAPP$
```

Nvidia Jetson nano 4GB, Ubuntu 18.04, Jetpack 4.6.4

I can confirm that the strips are working fine becuase when i used an RPi Pico with the adafruit neopixel library, it had no problem lighting up all the colors

Am i doing something wrong here? I looked at previous issues and one was similar but #31 but it was closed without any other comments on how it was fixed.

Any ideas what might have gone wrong?

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with the supplied NeoPixel example and the board.SPI() setup, then inspect the Jetson Nano's pin 19 and the listed /dev/spidev devices while running it. Done means the example produces SPI activity on pin 19 and the SK6812 strip displays the requested colors without errors.

Written by the indexing model from the issue text.

Assessment

Tech stack
python, ubuntu
Domain
embedded-iot
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.