#  Faz-Wrench - Five Nights at Freddy's

## Overview

https://youtu.be/zr6lKUDzCZM

You can build a prop replica of the Faz Wrench from **Five Nights of Freddy’s Security Breach – Ruin**.

We designed and 3D printed this prop to use the RP2040 PropMaker Feather and CircuitPython.

It's got a working LCD with buttons, LEDs, rotary encoder and a speaker for sound effects.

&nbsp;

![lcds___displays_hero-hold.jpg](https://cdn-learn.adafruit.com/assets/assets/000/125/176/medium640/lcds___displays_hero-hold.jpg?1697426307)

The RP2040 PropMaker Feather is packed with features for making advanced props in CircuitPython or Arduino.

&nbsp;

The Adafruit LCD backpack features Stemma QT, making it easy to plug-in-play with any compatible Feather.

![lcds___displays_hero-boards.jpg](https://cdn-learn.adafruit.com/assets/assets/000/125/177/medium640/lcds___displays_hero-boards.jpg?1697426419)

You can press the red button to display deactivated nodes on screen.

The green button displays unlocked doors and random characters fill the screen while the rotary encoder adjusts the volume.

You can tilt the device to trigger different sound effects as if charging conduits in the game.

A special sound effect plays when the door is unlocked.

We think these features give it a bit more depth than your typical prop project.

Armed with a Faz-Wrench, you can help find Gregory and escape the ruins of Freddy Faz-bear's Mega Pizza-Plex.

![lcds___displays_hero-pov.jpg](https://cdn-learn.adafruit.com/assets/assets/000/125/178/medium640/lcds___displays_hero-pov.jpg?1697426486)

![lcds___displays_hero-faz-wide.jpg](https://cdn-learn.adafruit.com/assets/assets/000/125/228/medium640/lcds___displays_hero-faz-wide.jpg?1697479600)

## Parts
![](https://cdn-learn.adafruit.com/assets/assets/000/125/213/medium800/lcds___displays_parts.jpg?1697475240)

### Adafruit RP2040 Prop-Maker Feather with I2S Audio Amplifier

[Adafruit RP2040 Prop-Maker Feather with I2S Audio Amplifier](https://www.adafruit.com/product/5768)
The Adafruit Feather series gives you lots of options for a small, portable, rechargeable microcontroller board. By picking a feather and stacking on a FeatherWing you can create advanced projects quickly. One popular combo is our [Feather M4](https://www.adafruit.com/product/3857)...

In Stock
[Buy Now](https://www.adafruit.com/product/5768)
[Related Guides to the Product](https://learn.adafruit.com/products/5768/guides)
![Video of a white hand pressing a button to briefly turn an LED strip into white lights. Also wired up to the microcontroller are a servo motor and a speaker.](https://cdn-shop.adafruit.com/product-videos/640x480/5768-09.jpg)

### i2c / SPI character LCD backpack - STEMMA QT / Qwiic

[i2c / SPI character LCD backpack - STEMMA QT / Qwiic](https://www.adafruit.com/product/292)
Character LCDs are a fun and easy way to have your microcontroller project talk back to you. They are also common, and easy to get, available in tons of colors and sizes. [We've written tutorials on using character LCDs with an Arduino](http://learn.adafruit.com/character-lcds)...

In Stock
[Buy Now](https://www.adafruit.com/product/292)
[Related Guides to the Product](https://learn.adafruit.com/products/292/guides)
![Overhead video demo of an LCD backpack wired to a small square microcontroller. Display on LCD reads: "adafruit (heart symbol) 16x2 character LCDs"](https://cdn-shop.adafruit.com/product-videos/640x480/292-04.jpg)

### Standard LCD 16x2 + extras

[Standard LCD 16x2 + extras](https://www.adafruit.com/product/181)
Standard HD44780 LCDs are useful for creating standalone projects.

- 16 characters wide, 2 rows
- White text on blue background
- Connection port is 0.1" pitch, single row for easy breadboarding and wiring
- Pins are documented on the back of the LCD to assist...

In Stock
[Buy Now](https://www.adafruit.com/product/181)
[Related Guides to the Product](https://learn.adafruit.com/products/181/guides)
![Character LCD with 16x2 characters, with header and potentiometer](https://cdn-shop.adafruit.com/640x480/181-06.jpg)

### Adafruit I2C Stemma QT Rotary Encoder Breakout with NeoPixel

[Adafruit I2C Stemma QT Rotary Encoder Breakout with NeoPixel](https://www.adafruit.com/product/4991)
Rotary encoders are soooo much fun! Twist em this way, then twist them that way. Unlike potentiometers, they go all the way around and often have little detents for tactile feedback. But, if you've ever tried to add encoders to your project you know that they're a real challenge to...

In Stock
[Buy Now](https://www.adafruit.com/product/4991)
[Related Guides to the Product](https://learn.adafruit.com/products/4991/guides)
![Top view video of a hand turning the rotary encoder knobs on three PCBs. The NeoPixel LEDs on each PCB change color. The OLED display changes its readout data with each twisty-turn.](https://cdn-shop.adafruit.com/product-videos/640x480/4991-08.jpg)

### Mini Oval Speaker with Short Wires - 8 Ohm 1 Watt

[Mini Oval Speaker with Short Wires - 8 Ohm 1 Watt](https://www.adafruit.com/product/4227)
Hear the good news! This wee speaker&nbsp;is&nbsp;a&nbsp;great addition to any audio project where you need 8 ohm impedance and 1W or less of power. We particularly like this&nbsp;speaker&nbsp;as it is&nbsp;small and comes with nice skinny wires with a connector on the end. It has a handy...

Out of Stock
[Buy Now](https://www.adafruit.com/product/4227)
[Related Guides to the Product](https://learn.adafruit.com/products/4227/guides)
![Mini Oval Speaker with Short Wires ](https://cdn-shop.adafruit.com/640x480/4227-06.jpg)

### 16mm Illuminated Pushbutton - Green Momentary

[16mm Illuminated Pushbutton - Green Momentary](https://www.adafruit.com/product/1440)
A button is a button, and an LED is a LED, but this LED illuminated button is a lovely combination of both! It's a medium sized button, large enough to press easily but not too big that it gets in the way of your project panel. It has a built in LED that can be controlled separately from...

In Stock
[Buy Now](https://www.adafruit.com/product/1440)
[Related Guides to the Product](https://learn.adafruit.com/products/1440/guides)
![Angled shot of a green 16mm illuminated pushbutton. ](https://cdn-shop.adafruit.com/640x480/1440-00.jpg)

### Part: Resistors - 220 ohm 
quantity: 1
Resistors - 220 ohm 
[Resistors - 220 ohm ](https://www.adafruit.com/product/2780)

### Part: NeoPixel LED Side Light Strip - Black 120 LED
quantity: 1
NeoPixel LED Side Light Strip - Black 120 LED
[NeoPixel LED Side Light Strip - Black 120 LED](https://www.adafruit.com/product/3634)

### Part: 4400mAh Lipo
quantity: 1
Lithium Ion Battery Pack - 3.7V 4400mAh
[4400mAh Lipo](https://www.adafruit.com/product/354)

### Part: RP-SMA Jack to SMA Plug RF Adapter
quantity: 2
RP-SMA Jack to SMA Plug RF Adapter
[RP-SMA Jack to SMA Plug RF Adapter](https://www.adafruit.com/product/919)

### Part: Antenna with RP-SMA
quantity: 2
Antenna with RP-SMA
[Antenna with RP-SMA](https://www.adafruit.com/product/944)

### Part: SPDT Slide Switch
quantity: 1
Breadboard-friendly SPDT Slide Switch
[SPDT Slide Switch](https://www.adafruit.com/product/805)

### Part: Rotary Encoder + Extras
quantity: 1
Rotary Encoder + Extras
[Rotary Encoder + Extras](https://www.adafruit.com/product/377)

### Part: Red Momentary
quantity: 1
16mm Red Momentary
[Red Momentary](https://www.adafruit.com/product/1439)

### Part: Molex PicoBlade Cables
quantity: 1
1.25mm Pitch 2-pin Cable Matching Pair - 40cm long - Molex PicoBlade Compatible
[Molex PicoBlade Cables](https://www.adafruit.com/product/4720)

### Part: JST-XH Extension Cable
quantity: 3
JST-XH Extension Cable - 2.5mm Pitch - 500mm long
[JST-XH Extension Cable](https://www.adafruit.com/product/5497)

### Part: STEMMA Cable - 400mm long
quantity: 1
STEMMA QT / Qwiic JST SH 4-Pin Cable - 400mm long
[STEMMA Cable - 400mm long](https://www.adafruit.com/product/5385)

### Part: STEMMA QT - 50mm Long
quantity: 1
STEMMA QT / Qwiic JST SH 4-Pin Cable - 50mm Long
[STEMMA QT - 50mm Long](https://www.adafruit.com/product/4399)

### Part: Premium Plug Socket 'Extension' Jumper Wires
quantity: 1
Premium Plug Socket 'Extension' Jumper Wires - 20 x 3"
[Premium Plug Socket 'Extension' Jumper Wires](https://www.adafruit.com/product/1953)

### Part: M2x6mm Screws
quantity: 2
M2x6mm Screws

### Part: M2.5x6mm
quantity: 18
M2.5x6mm

### Part: M3x8 screws
quantity: 6
M3x8 screws

![](https://cdn-learn.adafruit.com/assets/assets/000/125/179/medium800/lcds___displays_hero-mask.jpg?1697426510)

#  Faz-Wrench - Five Nights at Freddy's

## 3D Printing

## Parts List

STL files for 3D printing are oriented to print "as-is" on FDM style machines. Parts are designed to 3D print without any support material. Original design source may be downloaded using the links below.

![lcds___displays_3d-parts.jpg](https://cdn-learn.adafruit.com/assets/assets/000/125/222/medium640/lcds___displays_3d-parts.jpg?1697480761)

[Edit Design](https://a360.co/46oei3v)
[Download STLs](https://www.thingiverse.com/thing:6268981)
## Slice with Settings for PLA material&nbsp;

The parts were sliced using CURA using the slice settings below.

- PLA filament 200c extruder
- 0.2 layer height
- 10% gyroid infill
- 60mm/s print speed
- 60c heated bed

![lcds___displays_slice.jpg](https://cdn-learn.adafruit.com/assets/assets/000/125/223/medium640/lcds___displays_slice.jpg?1697479655)

## Supports for Top Case

- Support Overhang Angle: 50
- Support Destiny: 6%
- Enable Support Interface
- Enable Support Roof
- Support Z Distance: .21

![lcds___displays_slice-supports.jpg](https://cdn-learn.adafruit.com/assets/assets/000/125/224/medium640/lcds___displays_slice-supports.jpg?1697479422)

## Multi-Color Label

The _Lightning Bolt_ label can be printed in multiple colors using the change filament technique. In CURA slicer, open the **post processing**  **plugin** window by going to the top file menu:

**Extensions \> Post Processing \> Modify GCode**

Click, **Add a script** and choose **Filament Change**.

Enter **3** in the layer input box for the color change.&nbsp;

![lcds___displays_slice-filament-change.jpg](https://cdn-learn.adafruit.com/assets/assets/000/125/225/medium640/lcds___displays_slice-filament-change.jpg?1697479803)

## LEDs and cover

3D printed diffusers and decals are glued on to the top cover.   
  
A separate plate is glued on the inside to isolate the NeoPixel LEDs to shine through the diffusers.

![lcds___displays_3d-parts-details.jpg](https://cdn-learn.adafruit.com/assets/assets/000/125/226/medium640/lcds___displays_3d-parts-details.jpg?1697480065)

![lcds___displays_3d-parts-cover.jpg](https://cdn-learn.adafruit.com/assets/assets/000/125/227/medium640/lcds___displays_3d-parts-cover.jpg?1697480103)

#  Faz-Wrench - Five Nights at Freddy's

## CircuitPython

[CircuitPython](https://github.com/adafruit/circuitpython) is a derivative of [MicroPython](https://micropython.org) designed to simplify experimentation and education on low-cost microcontrollers. It makes it easier than ever to get prototyping by requiring no upfront desktop software downloads. Simply copy and edit files on the **CIRCUITPY** drive to iterate.

## CircuitPython Quickstart

Follow this step-by-step to quickly get CircuitPython running on your board.

[Download the latest version of CircuitPython for this board via circuitpython.org](https://circuitpython.org/board/adafruit_feather_rp2040_prop_maker/)
 **Click the link above to download the latest CircuitPython UF2 file.**

Save it wherever is convenient for you.

![install_circuitpython_on_rp2040_RP2040_UF2_downloaded.jpg](https://cdn-learn.adafruit.com/assets/assets/000/101/655/medium640/install_circuitpython_on_rp2040_RP2040_UF2_downloaded.jpg?1618943202)

![](https://cdn-learn.adafruit.com/assets/assets/000/121/865/medium800/adafruit_products_boot_reset.jpg?1686710555)

To enter the bootloader, hold down the **BOOT/**** BOOTSEL button**(highlighted in red above), and while continuing to hold it (don't let go!), press and release the**reset button**(highlighted in red or blue above).&nbsp;**Continue to hold the BOOT/BOOTSEL button until the RPI-RP2 drive appears!**

If the drive does not appear, release all the buttons, and then repeat the process above.

You can also start with your board unplugged from USB, press and hold the BOOTSEL button (highlighted in red above), continue to hold it while plugging it into USB, and wait for the drive to appear before releasing the button.

A lot of people end up using charge-only USB cables and it is very frustrating! **Make sure you have a USB cable you know is good for data sync.**

You will see a new disk drive appear called **RPI-RP2**.

&nbsp;

Drag the **adafruit\_circuitpython\_etc.uf2** file to **RPI-RP2.**

![install_circuitpython_on_rp2040_RP2040_bootloader_drive.jpg](https://cdn-learn.adafruit.com/assets/assets/000/101/656/medium640/install_circuitpython_on_rp2040_RP2040_bootloader_drive.jpg?1618943666)

![install_circuitpython_on_rp2040_RP2040_drag_UF2.jpg](https://cdn-learn.adafruit.com/assets/assets/000/101/657/medium640/install_circuitpython_on_rp2040_RP2040_drag_UF2.jpg?1618943674)

The **RPI-RP2** drive will disappear and a new disk drive called **CIRCUITPY** will appear.

That's it, you're done! :)

![install_circuitpython_on_rp2040_RP2040_CIRCUITPY.jpg](https://cdn-learn.adafruit.com/assets/assets/000/101/658/medium640/install_circuitpython_on_rp2040_RP2040_CIRCUITPY.jpg?1618943864)

## Safe Mode

You want to edit your **code.py** or modify the files on your **CIRCUITPY** drive, but find that you can't. Perhaps your board has gotten into a state where **CIRCUITPY** is read-only. You may have turned off the **CIRCUITPY** drive altogether. Whatever the reason, safe mode can help.

Safe mode in CircuitPython does not run any user code on startup, and disables auto-reload. This means a few things. First, safe mode _bypasses any code in_ **boot.py** (where you can set **CIRCUITPY** read-only or turn it off completely). Second, _it does not run the code in_ **code.py**. And finally, _it does not automatically soft-reload when data is written to the_ **CIRCUITPY** _drive_.

Therefore, whatever you may have done to put your board in a non-interactive state, safe mode gives you the opportunity to correct it without losing all of the data on the **CIRCUITPY** drive.

### Entering Safe Mode
To enter safe mode when using CircuitPython, plug in your board or hit reset (highlighted in red above). Immediately after the board starts up or resets, it waits 1000ms. On some boards, the onboard status LED (highlighted in green above) will blink yellow during that time. If you press reset during that 1000ms, the board will start up in safe mode. It can be difficult to react to the yellow LED, so you may want to think of it simply as a slow double click of the reset button. (Remember, a fast double click of reset enters the bootloader.)

### In Safe Mode

If you successfully enter safe mode on CircuitPython, the LED will intermittently blink yellow three times.

If you connect to the serial console, you'll find the following message.

```terminal
Auto-reload is off.
Running in safe mode! Not running saved code.

CircuitPython is in safe mode because you pressed the reset button during boot. Press again to exit safe mode.

Press any key to enter the REPL. Use CTRL-D to reload.
```

You can now edit the contents of the **CIRCUITPY** drive. Remember, _your code will not run until you press the reset button, or unplug and plug in your board, to get out of safe mode._

## Flash Resetting UF2

If your board ever gets into a really _weird_ state and CIRCUITPY doesn't show up as a disk drive after installing CircuitPython, try loading this 'nuke' UF2 to RPI-RP2. which will do a 'deep clean' on your Flash Memory. **You will lose all the files on the board** , but at least you'll be able to revive it! After loading this UF2, follow the steps above to re-install CircuitPython.

[Download flash erasing "nuke" UF2](https://cdn-learn.adafruit.com/assets/assets/000/101/659/original/flash_nuke.uf2?1618945856)
#  Faz-Wrench - Five Nights at Freddy's

## Code

Once you've finished setting up your RP2040 Prop-Maker Feather with CircuitPython, you can access the code and necessary libraries by downloading the Project Bundle.

To do this, click on the **Download Project Bundle** button in the window below. It will download to your computer as a zipped folder.

![lcds___displays_cp-code.jpg](https://cdn-learn.adafruit.com/assets/assets/000/125/173/medium640/lcds___displays_cp-code.jpg?1697426085)

https://github.com/adafruit/Adafruit_Learning_System_Guides/blob/main/Faz_Wrench/code.py

## Upload the Code and Libraries to the RP2040 Prop-Maker Feather

After downloading the Project Bundle, plug your RP2040 Prop-Maker Feather into the computer's USB port with a known good USB data+power cable. You should see a new flash drive appear in the computer's File Explorer or Finder (depending on your operating system) called **CIRCUITPY**. Unzip the folder and copy the following items to the RP2040 Prop-Maker Feather's **CIRCUITPY** drive.

- **lib** folder
- **faz\_sounds** folder
- **code.py**

Your RP2040 Prop-Maker Feather **CIRCUITPY** drive should look like this after copying the **lib** folder, **faz\_sounds** folder and the **code.py** file.

![CIRCUITPY](https://adafruit.github.io/Adafruit_Learning_System_Guides/Faz_Wrench.png )

## How the CircuitPython Code Works

The code begins by instantiating the LCD screen, accelerometer, and encoder over I2C. The two buttons are added to a `keypad` object.

```python
# enable external power pin
# provides power to the external components
external_power = DigitalInOut(board.EXTERNAL_POWER)
external_power.direction = Direction.OUTPUT
external_power.value = True

i2c = board.I2C()

int1 = DigitalInOut(board.ACCELEROMETER_INTERRUPT)
lis3dh = adafruit_lis3dh.LIS3DH_I2C(i2c, int1=int1)
lis3dh.range = adafruit_lis3dh.RANGE_2_G

ss_enc0 = Seesaw(i2c, addr=0x36)
enc0 = IncrementalEncoder(ss_enc0)

button = keypad.Keys((board.EXTERNAL_BUTTON, board.D13,), value_when_pressed=False, pull=True)

lcd = character_lcd.Character_LCD_I2C(i2c, lcd_columns, lcd_rows)
lcd.backlight = True
```

## Audio

The sound effects WAV files are imported from the **faz\_sounds** folder. Audio is output to the I2S amp on the Feather thru a Mixer object. The `open_audio()` function is used throughout the loop to open and play the sound effects.

```python
wavs = []
for filename in os.listdir('/faz_sounds'):
    if filename.lower().endswith('.wav') and not filename.startswith('.'):
        wavs.append("/faz_sounds/"+filename)
wavs.sort()
print(wavs)

audio = audiobusio.I2SOut(board.I2S_BIT_CLOCK, board.I2S_WORD_SELECT, board.I2S_DATA)
mixer = audiomixer.Mixer(voice_count=1, sample_rate=22050, channel_count=1,
                         bits_per_sample=16, samples_signed=True, buffer_size=32768)
volume = 0.5
mixer.voice[0].level = volume
audio.play(mixer)
wav_length = len(wavs) - 1

def open_audio(num):
    n = wavs[num]
    f = open(n, "rb")
    w = audiocore.WaveFile(f)
    return w
```

## NeoPixels

The NeoPixels are connected to the `EXTERNAL_NEOPIXELS` pin. The `pulse` animation is used.

```python
PIXEL_PIN = board.EXTERNAL_NEOPIXELS
BRIGHTNESS = 0.3
NUM_PIXELS = 8

PIXELS = neopixel.NeoPixel(PIXEL_PIN, NUM_PIXELS, auto_write=True)
pulse = Pulse(PIXELS, speed=0.001, color=RED, period=3)
```

## Generate a Puzzle

The `puzzle_string()` function generates a random series of letters and numbers to fill the LCD when the Faz Wrench is in puzzle mode.&nbsp;

```python
def puzzle_string(length):
    _string = ""
    for _ in range(length/2):
        b = random.randint(0, 1)
        if b == 0:
            r = chr(random.randint(ord('A'), ord('Z')))
        else:
            r = str(random.randint(0, 9))
        _string += r
    _string += "\n"
    for _ in range(length/2):
        b = random.randint(0, 1)
        if b == 0:
            r = chr(random.randint(ord('A'), ord('Z')))
        else:
            r = str(random.randint(0, 9))
        _string += r
    lcd.message = _string
    return _string
```

## Keypad Events

The loop is checking for two things: a keypad `event` and if `puzzle` mode is active. The keypad events are tied to a `key_number`. If `key_number 0` is pressed, then `puzzle` mode is enacted. If `key_number 1` is pressed, then the value of `node_num` is increased by `1`. This updates text on the LCD.

```python
event = button.events.get()
    if event and event.pressed:
        number = event.key_number
        if number == 0 and not puzzle:
            pulse.fill(GREEN)
            puzzle = True
            lcd.clear()
            lcd.message = puzzle_msgs[2]
            wave = open_audio(1)
            mixer.voice[0].play(wave)
            while mixer.playing:
                pass
            puzzle_clock = ticks_add(ticks_ms(), puzzle_time)
        if number == 1:
            lcd.clear()
            node_num = (node_num + 1) % 5
            print(node_num)
```

## Default Mode

If `puzzle` is `False`, then the Faz Wrench is in its default mode. The LCD displays the text "`DEACTIVATED: 0 OF 4`", with `0` being the value of `node_num`. `node_num` increases with a button press. When `node_num` is greater than `3`, the text "`SECURITY BREACHED`" is displayed. The rotary encoder is used in this mode to control the volume of the sound effects.

```auto
if not puzzle:
        pulse.animate()
        mixer.voice[0].play(wave, loop=True)
        if node_num &gt; 3:
            lcd.message = "SECURITY\nBREACHED"
        else:
            lcd.message = f"DEACTIVATED:\n{node_num} of 4"
        pos0 = -enc0.position
        if pos0 != last_pos0:
            if pos0 &gt; last_pos0:
                volume = volume + 0.1
            else:
                volume = volume - 0.1
            volume = normalize(volume, 0.0, 1.0)
            mixer.voice[0].level = volume
            last_pos0 = pos0
```

## Puzzle Mode

In `puzzle` mode, the sound effect and NeoPixel color changes based on the orientation of the accelerometer. The LCD text displays random letters and numbers that are generated with the `puzzle_string()` function.

```python
if puzzle:
        x, y, z = [
            value / adafruit_lis3dh.STANDARD_GRAVITY for value in lis3dh.acceleration
            ]
        puzzle_string(lcd_columns*lcd_rows)
        if z &gt; 0:
            wave = open_audio(2)
            print("playing up")
            pulse.fill(GREEN)
        else:
            wave = open_audio(3)
            print("playing down")
            pulse.fill(RED)
        mixer.voice[0].play(wave)
        while mixer.playing:
            puzzle_string(lcd_columns*lcd_rows)
            x, y, z = [
            value / adafruit_lis3dh.STANDARD_GRAVITY for value in lis3dh.acceleration
            ]
            if z &gt; 0:
                pulse.fill(GREEN)
            else:
                pulse.fill(RED)
            if ticks_diff(ticks_ms(), puzzle_clock) &gt;= puzzle_time:
                lcd.clear()
                puzzle = False
                lcd.message = puzzle_msgs[1]
                wave = open_audio(4)
                mixer.voice[0].play(wave)
                while mixer.playing:
                    pass
                print("puzzle done")
                wave = open_audio(0)
                lcd.clear()
                pulse.fill(RED)
```

#  Faz-Wrench - Five Nights at Freddy's

## Circuit Diagram

The diagram below provides a general visual reference for wiring of the components once you get to the **Assembly** page. This diagram was created using the software package [Fritzing](http://fritzing.org/download/).

## Adafruit Library for Fritzing

Adafruit uses the Adafruit Fritzing parts library to create circuit diagrams for projects. You can download the library or just grab individual parts. Get the library and parts from [GitHub - Adafruit Fritzing Parts](https://github.com/adafruit/Fritzing-Library/tree/master/parts).

![](https://cdn-learn.adafruit.com/assets/assets/000/125/174/medium800/lcds___displays_Fraz-CircuitDiagram.jpg?1697426203)

## Wired Connections

- The **NeoPixels,** &nbsp; **Speaker, and Green button** are each connected to pins on the screw block terminal
- **Rotary** and **Display** plug into the **STEMMA port**
- Slide Switch connect to the **EN** and **GND Pin** on the **Feather**
- Power for the **Button LEDs** connect to **3V Pin** on the **Feather**
- **Red Button** connects to **D13 Pin**

Use JST and Jumper cables to easily connect components.

## Determine switch pins vs. LED pins button

Solder a 220Ω resistor in-line with the + Pin (3v Power)

![](https://cdn-learn.adafruit.com/assets/assets/000/125/249/medium800/lcds___displays_button-diagram.jpg?1697491437)

![](https://cdn-learn.adafruit.com/assets/assets/000/125/258/medium800/lcds___displays_button-diagram-wired.jpg?1697492807)

#  Faz-Wrench - Five Nights at Freddy's

## Assemble

## Display Assembly

Solder headers to the display.

The display frame is aligned to the cut out on the **top-faz-wrench** part.

The display is securely fastened with M2.5x6mm screws.

&nbsp;

![lcds___displays_display-board.jpg](https://cdn-learn.adafruit.com/assets/assets/000/125/200/medium640/lcds___displays_display-board.jpg?1697474334)

![lcds___displays_display-board-mounted.jpg](https://cdn-learn.adafruit.com/assets/assets/000/125/201/medium640/lcds___displays_display-board-mounted.jpg?1697474366)

## Rotary Assemble&nbsp;

Solder the rotary to the PCB board.

The assembled rotary board is fastened to the **rotary-mount** part with M2.5x6mm screws.

&nbsp;

![lcds___displays_rotary-assemble.jpg](https://cdn-learn.adafruit.com/assets/assets/000/125/180/medium640/lcds___displays_rotary-assemble.jpg?1697466852)

![lcds___displays_rotary-knob.jpg](https://cdn-learn.adafruit.com/assets/assets/000/125/181/medium640/lcds___displays_rotary-knob.jpg?1697466889)

Danger: 

## Determine switch pins vs. LED pins button

Solder a 220Ω resistor in-line with the + Pin (3v Power)

![lcds___displays_button-diagram.jpg](https://cdn-learn.adafruit.com/assets/assets/000/125/252/medium640/lcds___displays_button-diagram.jpg?1697491607)

![lcds___displays_button-diagram-wired.jpg](https://cdn-learn.adafruit.com/assets/assets/000/125/257/medium640/lcds___displays_button-diagram-wired.jpg?1697492795)

## Button Assembly

Reference the circuit diagram to solder the buttons.

Use JST and jumper wires to easily connect to the Feather board.

The buttons press fit through the case and are secured with the included threads.

![lcds___displays_buttons-soldered.jpg](https://cdn-learn.adafruit.com/assets/assets/000/125/183/medium640/lcds___displays_buttons-soldered.jpg?1697467505)

![lcds___displays_buttons-mounted.jpg](https://cdn-learn.adafruit.com/assets/assets/000/125/184/medium640/lcds___displays_buttons-mounted.jpg?1697467583)

## LED assembly

Measure, cut and solder wires to the NeoPixels.

Carefully cut and solder five side light NeoPixels from a strip and create two rows.

The first row has two NeoPixels. Second row has three NeoPixels.

## LED mount

Press fit the NeoPixels between to **led-mounts** part as shown. &nbsp;

&nbsp;

![lcds___displays_led-solder.jpg](https://cdn-learn.adafruit.com/assets/assets/000/125/185/medium640/lcds___displays_led-solder.jpg?1697469538)

![lcds___displays_led-mount.jpg](https://cdn-learn.adafruit.com/assets/assets/000/125/191/medium640/lcds___displays_led-mount.jpg?1697469977)

## Feather connections

Reference the circuit diagram to solder connectors for power, ground and inputs for the buttons, LEDs and On/Off switch.&nbsp;

## Feather mount

Use M2.5x6mm and M2x6mm screws to secure the Feather to the mount part.&nbsp;

## Speaker mount

The speaker press fits to oval section on the Feather mount part.

&nbsp;

![lcds___displays_feather-mount.jpg](https://cdn-learn.adafruit.com/assets/assets/000/125/192/medium640/lcds___displays_feather-mount.jpg?1697470052)

![lcds___displays_feather-led-connected.jpg](https://cdn-learn.adafruit.com/assets/assets/000/125/193/medium640/lcds___displays_feather-led-connected.jpg?1697470095)

## Attach Antenna&nbsp;

A RP-SMA Jack to SMA Plug RF Adapter is used to attach the Antenna parts.

![lcds___displays_antenna-mounted.jpg](https://cdn-learn.adafruit.com/assets/assets/000/125/205/medium640/lcds___displays_antenna-mounted.jpg?1697474579)

## Slide switch mount

Align switch to the cut out on the mount and press fit the slide switch at an angle. Use socket Jumper wires to connect to **EN** and **GND** pins on the Feather. &nbsp;

## Mount slide switch

Use M2.5x6mm screws to mount the slide switch part to the cutout on the case.

![lcds___displays_slide-switch-mount.jpg](https://cdn-learn.adafruit.com/assets/assets/000/125/194/medium640/lcds___displays_slide-switch-mount.jpg?1697470260)

![lcds___displays_slide-switch-mounted.jpg](https://cdn-learn.adafruit.com/assets/assets/000/125/195/medium640/lcds___displays_slide-switch-mounted.jpg?1697470300)

## Battery mount

Slide the 4400mAh lipo battery into the mount.

## Mount battery

Use M2.5x5mm screws to attach the battery mount to the case.

&nbsp;

![lcds___displays_battery-mount.jpg](https://cdn-learn.adafruit.com/assets/assets/000/125/203/medium640/lcds___displays_battery-mount.jpg?1697474447)

![lcds___displays_battery-mounted.jpg](https://cdn-learn.adafruit.com/assets/assets/000/125/204/medium640/lcds___displays_battery-mounted.jpg?1697474506)

## Mount feather, rotary and LEDs

Place and secure component mounts with M2.5x6mm screws to the bottom case part.

**The Feather mount uses M3x6mm screws.**

## Connect buttons, On/Off switch and Stemma cables

Use socket Jumper wires to connect two pins on the **Slide Switch**.

**50mm STEMMA cable** connects the Rotary to the Feather.

The Display plugs into the Rotary board with a **300mm STEMMA cable**.

![lcds___displays_feather-mounted.jpg](https://cdn-learn.adafruit.com/assets/assets/000/125/207/medium640/lcds___displays_feather-mounted.jpg?1697474783)

![lcds___displays_display-connected.jpg](https://cdn-learn.adafruit.com/assets/assets/000/125/209/medium640/lcds___displays_display-connected.jpg?1697474886)

## Cables&nbsp;

Route cables around the LEDs and rotary, to the edge of the case. Carefully check for wire as you join both case sides together.

## Join case

Use M3x8mm screws to join the case.

![lcds___displays_case-wires.jpg](https://cdn-learn.adafruit.com/assets/assets/000/125/210/medium640/lcds___displays_case-wires.jpg?1697475010)

![lcds___displays_case-drill.jpg](https://cdn-learn.adafruit.com/assets/assets/000/125/211/medium640/lcds___displays_case-drill.jpg?1697475048)

## Complete
![](https://cdn-learn.adafruit.com/assets/assets/000/125/212/medium800/lcds___displays_hero-hold.jpg?1697475266)


## Featured Products

### Adafruit RP2040 Prop-Maker Feather with I2S Audio Amplifier

[Adafruit RP2040 Prop-Maker Feather with I2S Audio Amplifier](https://www.adafruit.com/product/5768)
The Adafruit Feather series gives you lots of options for a small, portable, rechargeable microcontroller board. By picking a feather and stacking on a FeatherWing you can create advanced projects quickly. One popular combo is our [Feather M4](https://www.adafruit.com/product/3857)...

In Stock
[Buy Now](https://www.adafruit.com/product/5768)
[Related Guides to the Product](https://learn.adafruit.com/products/5768/guides)
### i2c / SPI character LCD backpack - STEMMA QT / Qwiic

[i2c / SPI character LCD backpack - STEMMA QT / Qwiic](https://www.adafruit.com/product/292)
Character LCDs are a fun and easy way to have your microcontroller project talk back to you. They are also common, and easy to get, available in tons of colors and sizes. [We've written tutorials on using character LCDs with an Arduino](http://learn.adafruit.com/character-lcds)...

In Stock
[Buy Now](https://www.adafruit.com/product/292)
[Related Guides to the Product](https://learn.adafruit.com/products/292/guides)
### Standard LCD 16x2 + extras

[Standard LCD 16x2 + extras](https://www.adafruit.com/product/181)
Standard HD44780 LCDs are useful for creating standalone projects.

- 16 characters wide, 2 rows
- White text on blue background
- Connection port is 0.1" pitch, single row for easy breadboarding and wiring
- Pins are documented on the back of the LCD to assist...

In Stock
[Buy Now](https://www.adafruit.com/product/181)
[Related Guides to the Product](https://learn.adafruit.com/products/181/guides)
### Adafruit I2C Stemma QT Rotary Encoder Breakout with NeoPixel

[Adafruit I2C Stemma QT Rotary Encoder Breakout with NeoPixel](https://www.adafruit.com/product/4991)
Rotary encoders are soooo much fun! Twist em this way, then twist them that way. Unlike potentiometers, they go all the way around and often have little detents for tactile feedback. But, if you've ever tried to add encoders to your project you know that they're a real challenge to...

In Stock
[Buy Now](https://www.adafruit.com/product/4991)
[Related Guides to the Product](https://learn.adafruit.com/products/4991/guides)
### Mini Oval Speaker with Short Wires - 8 Ohm 1 Watt

[Mini Oval Speaker with Short Wires - 8 Ohm 1 Watt](https://www.adafruit.com/product/4227)
Hear the good news! This wee speaker&nbsp;is&nbsp;a&nbsp;great addition to any audio project where you need 8 ohm impedance and 1W or less of power. We particularly like this&nbsp;speaker&nbsp;as it is&nbsp;small and comes with nice skinny wires with a connector on the end. It has a handy...

Out of Stock
[Buy Now](https://www.adafruit.com/product/4227)
[Related Guides to the Product](https://learn.adafruit.com/products/4227/guides)
### Adafruit NeoPixel LED Side Light Strip - Black 120 LED

[Adafruit NeoPixel LED Side Light Strip - Black 120 LED](https://www.adafruit.com/product/3634)
Fancy new _side light_ LED strips are a great alternative for folks who have loved and used Adafruit LED strips for a few years but want gorgeous, glowy&nbsp;light emitting at 90 degrees. They're very skinny so you can run them along a thin edge and curve them around shapes and...

In Stock
[Buy Now](https://www.adafruit.com/product/3634)
[Related Guides to the Product](https://learn.adafruit.com/products/3634/guides)
### 16mm Illuminated Pushbutton - Green Momentary

[16mm Illuminated Pushbutton - Green Momentary](https://www.adafruit.com/product/1440)
A button is a button, and an LED is a LED, but this LED illuminated button is a lovely combination of both! It's a medium sized button, large enough to press easily but not too big that it gets in the way of your project panel. It has a built in LED that can be controlled separately from...

In Stock
[Buy Now](https://www.adafruit.com/product/1440)
[Related Guides to the Product](https://learn.adafruit.com/products/1440/guides)
### Through-Hole Resistors - 220 ohm 5% 1/4W - Pack of 25

[Through-Hole Resistors - 220 ohm 5% 1/4W - Pack of 25](https://www.adafruit.com/product/2780)
ΩMG! You're not going to be able to resist these handy resistor packs!&nbsp;Well, axially, they&nbsp;do all of the resisting for you!

This is a **25 Pack of 220Ω Resistors.** More specifically, they are **carbon film** , through-hole...

In Stock
[Buy Now](https://www.adafruit.com/product/2780)
[Related Guides to the Product](https://learn.adafruit.com/products/2780/guides)

## Related Guides

- [I2C/SPI LCD Backpack](https://learn.adafruit.com/i2c-spi-lcd-backpack.md)
- [Adafruit I2C QT Rotary Encoder](https://learn.adafruit.com/adafruit-i2c-qt-rotary-encoder.md)
- [Adafruit RP2040 Prop-Maker Feather](https://learn.adafruit.com/adafruit-rp2040-prop-maker-feather.md)
- [Halo Energy Sword RP2040](https://learn.adafruit.com/halo-energy-sword-rp2040.md)
- [Color Sensing Music Player](https://learn.adafruit.com/color-sensing-music-player.md)
- [Audio Synthesis with CircuitPython synthio](https://learn.adafruit.com/audio-synthesis-with-circuitpython-synthio.md)
- [Magic Band Reader](https://learn.adafruit.com/magic-band-reader.md)
- [Soundbox RP2040](https://learn.adafruit.com/soundbox-rp2040.md)
- [Gravity Falls Memory Gun](https://learn.adafruit.com/gravity-falls-memory-gun.md)
- [Mario Magic Wand](https://learn.adafruit.com/mario-magic-wand.md)
- [No-Code Indoor Air Quality Monitor with Separate Display](https://learn.adafruit.com/no-code-indoor-air-quality-monitor-with-separate-display.md)
- [Trinket Ultrasonic Rangefinder](https://learn.adafruit.com/trinket-ultrasonic-rangefinder.md)
- [Talking D20 with RP2040 PropMaker Feather](https://learn.adafruit.com/talking-d20-rp2040.md)
- [Adabot Toy Robot Friend](https://learn.adafruit.com/adabot-rp2040.md)
- [USB Rotary Media Dial](https://learn.adafruit.com/usb-rotary-media-dial.md)
- [PropMaker Jack O'Lantern](https://learn.adafruit.com/propmaker-jack-o-lantern.md)
- [Lightsaber Prop-Maker RP2040](https://learn.adafruit.com/lightsaber-rp2040.md)
- [Make a Zelda Master Sword with the RP2040 Prop-Maker Feather](https://learn.adafruit.com/master-sword-rp2040.md)
