{"product_id":"adafruit-neopxl8-friend-8-x-strands-neopixel-level-shifter","title":"Adafruit NeoPXL8 Friend - 8 x Strands NeoPixel Level Shifter","description":"\u003cp\u003eSince we first started carrying NeoPixels back in 2012, the chainable RGB LEDs have taken over the world. And a big part of that success is due to the simplicity of their wiring - just one data wire, no matter how many pixels you've got. So no surprise they're \u003cem\u003eeverywhere\u003c\/em\u003e, blinking away in art exhibits, maker faire demos, DJ booths, decorations and costumes.\u003c\/p\u003e\u003cp\u003eBut, at some point, every NeoPixel'er bumps into the constraints of that single-data-wire: the timing is very picky and often time your code has to stop completely so that it can burst out the data without any interruptions. This requirement makes it tough to create fast-update lighting effects, and limits the number of pixels you can drive before other hardware peripherals get attention.\u003c\/p\u003e\u003cp\u003eResident pixel-pro Paint Your Dragon (who coined the name NeoPixel dont-cha-know!) took on this challenge and has succeeded gloriously. By carefully examining the ATSAMD21 and ATSAMD51 datasheet he noticed you could use the Timer 0 in 'waveform' mode, and create 8 unique waveforms over DMA that would handle all the pixel-pushing for you.\u003c\/p\u003e\u003cp\u003eThus is born the \u003cstrong\u003eNeoPXL8 Arduino library\u003c\/strong\u003e and \u003cstrong\u003eNeoPXL8 Friend!\u003c\/strong\u003e The library runs on any of our ATSAMD21 (M0) and ATSAMD51 (M4) board and handles all the NeoPixeling for you, up to \u003cstrong\u003e8 strands of concurrent DMA output\u003c\/strong\u003e each one can be 250 pixels long for a total of 8 x 250 = 2000 pixels. That leaves you some RAM for your code to run in as well - the theoretical max is 340 pixels per strand but you'd be using all the RAM on the M0 chip.\u003c\/p\u003e\u003cp\u003eTo make connection easy, this Friend does the level-shifting and logic bootingfor you. All 8 strands have a level shifter that converts the 3.3V logic level to 5V logic, there's even a little switch-cap converter that generates the clean 5V power supply for you. Then a 100 ohm resistor in line after the buffer reduces ringing on long wiring runs.\u003c\/p\u003e\u003cp\u003eThe breadboard friendly design plugs into your perf board or breadboard, wire up the 8 data lines, ground line and a 3-5V power supply for the level shifter boost (10mA max draw). Out comes beautiful 5V logic for any NeoPixel compatibles.\u003c\/p\u003e\u003cp\u003eYou get two options for connecting NeoPixels:\u003c\/p\u003e\u003cul\u003e\n\u003cli\u003e2 x 8 Header with ground and 5V-logic signal, in pairs\u003c\/li\u003e\n\u003cli\u003e2 x RJ-45 'Ethernet' Jacks, with ground and 5V-logic signal per twisted pair. This matches the same wiring as the OctWS2811\n\u003c\/li\u003e\n\u003c\/ul\u003e\u003cp\u003eThe Friend comes as a kit, so you can solder in the headers or jacks however you like. You can even just solder both edges to plug into a breadboard on both sides. Then, of course, you'll also need to provide lots of 5V power to the NeoPixels. Since you'll need many Amps of current, we don't manage that through the Friend - the PCB copper would be too limiting. We recommend using terminal blocks or bus bars to connect all the ground\/5V power wires together and powering them from their own chunky 5V supply.\u003c\/p\u003e\u003cp\u003eSince we are using TCC0 (Timer 0), we are limited in what pins can be used for NeoPixel output. We recommend using with Arduino Zero or Metro M0 Express, with pins 0-7, that's what our library works best with. On M4 you can use pins 2-7, 10 and 11. You can also use with ItsyBitsy M0 or M4. Check the library example for other pin configurations you can use. If you're using a Feather M0 or M4, we recommend our NeoPXL8 FeatherWing which is more compact and Feather-shaped.\u003c\/p\u003e\u003cp\u003eWhile we designed this specifically for use with our SAMD21 and SAMD51 boards and library, you \u003cem\u003ecould\u003c\/em\u003e use it with other boards like ESP32, Teensy or STM32, for the level shifting capabilities. You'll just have to figure out what NeoPixel driver firmware you can use and what pins are available.\u003c\/p\u003e\u003cp\u003eIf that all sounds groovy to you, pick up one of these friends and \u003cstrong\u003echeck out the NeoPXL8 Arduino library\u003c\/strong\u003e examples and the NeoPXL8 guide to get your massive LED project going!\u003c\/p\u003e\u003cp\u003e\u003c\/p\u003e\u003ch2\u003eTechnical Details\u003c\/h2\u003e\u003cdiv id=\"tab-technical-details-content\" class=\"panel-collapse collapse in\"\u003e \u003cdiv class=\"row\"\u003e \u003cdiv class=\"col-lg-12 col-md-12 col-sm-12 col-xs-12\"\u003e\n\u003cp\u003eProduct Dimensions: 32.3mm x 28.5mm x 2.5mm \/ 1.3\" x 1.1\" x 0.1\" \u003c\/p\u003e\n\u003cp\u003eProduct Weight: 3.0g \/ 0.1oz \u003c\/p\u003e\n\u003c\/div\u003e \u003c\/div\u003e\n\u003cul id=\"product-files\"\u003e \u003c\/ul\u003e \u003cdiv class=\"row\"\u003e\n\u003cdiv class=\"col-lg-2 col-md-3 col-sm-3 col-xs-4\"\u003e\u003c\/div\u003e\n\u003cdiv class=\"col-lg-2 col-md-3 col-sm-3 col-xs-4\"\u003e\u003c\/div\u003e\n\u003c\/div\u003e \u003c\/div\u003e","brand":"Adafruit","offers":[{"title":"Default Title","offer_id":48623813427418,"sku":"giv1789679313154","price":4.85,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0824\/8318\/3834\/files\/adafruit-neopxl8-friend---8-x-strands-neopixel-level-shifter_1.jpg?v=1789679318","url":"https:\/\/memoryfoamwear.shop\/products\/adafruit-neopxl8-friend-8-x-strands-neopixel-level-shifter","provider":"My Store","version":"1.0","type":"link"}