Questions regarding programming and blinkstick pro

What if I try to connect more than 64 LEDs to a channel?

I need more than 64 in a row to do this: https://youtu.be/0RRzh6UREKg?t=41

Also for some reason, the visualizer doesn’t work well on lower volume. Is there a way to fix that?

Here are the codes related to the visualizer:

Video to problem: 20170724_201719.mp4 - Google Drive

I start at 12% volume then I go up to 100% then back to 12% and repeat. When the volume is low it doesn’t seem like it’s doing anything.

Hey Azpen,

first of all: You cannot connect more than 64 LEDs to one channel. Use a second channel for the additional LEDs you need.

Regarding to @Diff s visualizer: Hope he will see this. But without testing it by myself I would recommend to play with the sensitivity value.

Actually now that I’ve seen your video, that visualizer doesn’t look like it’s behaving itself at all. Way too blue. I’d almost guarantee you that it’s recording your microphone instead of the speaker output, you could confirm that by clapping or making some other noise in front of it and seeing if it responds to that.

The original project by Will Yager came with a script that could come in handy here, his find_input_devices.py script. Run that, it should give you a list of audio devices that PyAudio can see. Find one that says something along the lines of “Stereo Monitor” or “Speaker Output” or something like that, and follow the instructions towards the top of blinkpulse.py:

# Uncomment and set this using find_input_devices.py
# if default input device is not correct
#input_device_index=2, \

Just remove the # from the beginning of the input_device_index line and swap out the number 2 for whatever number you found using that script. On macOS, download and install Soundflower since macOS doesn’t (or didn’t the last time I checked) support this kind of thing. On Linux, open the PulseAudio Volume Control panel and in the Recording tab make sure that it’s recording “Monitor of <your speakers>”

The microphone isn’t connected and shouldn’t be hearing anything. I originally tried the script to find the device and change it to my headset, but it gave a invalid channel error or something.

Here is the error:

Traceback (most recent call last):
  File "D:\Desktop\Blink\blinkpulse.py", line 26, in <module>
    frames_per_buffer=1024)
  File "D:\Python27\lib\site-packages\pyaudio.py", line 750, in open
    stream = Stream(self, *args, **kwargs)
  File "D:\Python27\lib\site-packages\pyaudio.py", line 441, in __init__
    self._stream = pa.open(**arguments)
IOError: [Errno -9998] Invalid number of channels

And these are the devices:

Device 0: Microsoft Sound Mapper - Input
Device 1: Headset Microphone (HyperX 7.1 
Device 2: Microsoft Sound Mapper - Output
Device 3: Headset Earphone (HyperX 7.1 Au

This is the snippet if the code:

# Uncomment and set this using find_input_devices.py
# if default input device is not correct
input_device_index=3, \

I tested all of the devices and it seems that it defaults to Device 0.
Device 1 (My microphone also works and it’s also pretty cool :D)
Device 2 and 3 give the same invalid number of channels error.

Here is the Headset Earphone:

Go for the sound mapper output I like the sound of that

It didn’t work. It seems that only input streams work, which would be the soundmapper input and my microphone. You can’t use pyaudio to listen to outputs, but there seems to be a fork of pyaudio that can. I haven’t taken a close look at it yet, but it should allow output streams to be used.