# IoT Filament Sensor

## Overview

https://youtu.be/tlKvEJ8serE

You can build an IoT sensor for your 3D printer so you can be alerted if you’re out of filament. We think this is a great proof-of-concept that can help prevent failed prints. **&nbsp;**

This project uses an IR Optical Sensor that can detect whenever an object passes by the sensor. The breakout is mounted to a 3D printed bracket right above the 3D printer.&nbsp;

![3d_printing_demo-loop.gif](https://cdn-learn.adafruit.com/assets/assets/000/130/981/medium640thumb/3d_printing_demo-loop.jpg?1719946788)

If nothing is detected, an LED buzzer alarm will be triggered letting you know your printer is out of filament.

An Adafruit QT Py ESP32-S2 reads the IR optical sensor and sends data to Adafruit IO whenever it detects missing filament.

The LED buzzer alarm is wired up to a Feather ESP32-S2 so it’s a separate device that can be in another room or workspace that’s away from the 3D printer.

![3d_printing_qtpy-mount.jpg](https://cdn-learn.adafruit.com/assets/assets/000/130/982/medium640/3d_printing_qtpy-mount.jpg?1719946860)

This is great for CNC workshops and 3D printer farms that are in separate rooms away from operators.

This project uses Adafruit’s WipperSnapper, so there’s no code necessary -- making this really easy to set up and get going.

Just install the WipperSnapper firmware onto the Adafruit ESP32 dev board and add the Optical sensor from the Adafruit IO device page.

![3d_printing_Hero-BG-loop.gif](https://cdn-learn.adafruit.com/assets/assets/000/130/983/medium640thumb/3d_printing_Hero-BG-loop.jpg?1719947008)

![3d_printing_wipper-blockly.jpg](https://cdn-learn.adafruit.com/assets/assets/000/130/984/medium640/3d_printing_wipper-blockly.jpg?1719947058)

## Parts
![](https://cdn-learn.adafruit.com/assets/assets/000/130/985/medium800/3d_printing_parts.jpg?1719947191)

### Adafruit STEMMA Reflective Photo Interrupt Sensor - TCRT1000

[Adafruit STEMMA Reflective Photo Interrupt Sensor - TCRT1000](https://www.adafruit.com/product/5913)
An optical reflective sensor&nbsp;is a composite&nbsp;electronic device with two elements - an IR LED and an IR photo-transistor. The IR LED blasts light, and when something bounces the light back to the photo-transistor, the transistor turns on and the amount of current flowing through it...

In Stock
[Buy Now](https://www.adafruit.com/product/5913)
[Related Guides to the Product](https://learn.adafruit.com/products/5913/guides)
![Close-up video of white finger triggering an optical reflective sensor breakout.](https://cdn-shop.adafruit.com/product-videos/640x480/5913-06.jpg)

### Adafruit QT Py ESP32-S2 WiFi Dev Board with STEMMA QT

[Adafruit QT Py ESP32-S2 WiFi Dev Board with STEMMA QT](https://www.adafruit.com/product/5325)
What has your favorite Espressif WiFi microcontroller, comes with&nbsp;[our favorite connector - the STEMMA QT](http://adafruit.com/stemma), a chainable I2C port, and has lots of Flash and RAM memory for your next IoT project? What will make your next IoT project flyyyyy? What a...

In Stock
[Buy Now](https://www.adafruit.com/product/5325)
[Related Guides to the Product](https://learn.adafruit.com/products/5325/guides)
![Angled shot of small square purple dev board.](https://cdn-shop.adafruit.com/640x480/5325-12.jpg)

### Rotating LED Warning Light with Adjustable Volume Buzzer Alarm

[Rotating LED Warning Light with Adjustable Volume Buzzer Alarm](https://www.adafruit.com/product/5134)
THE REACTOR'S MELTING DOWN! GRAB THE FUEL CORE, JENNA, AND EVACUATE THE COMMAND CENTER! With this **Rotating LED Warning Light with Adjustable Volume Buzzer Alarm,** you can monitor and easily alert humanoids as to the status of a project, machine, or even if the bathroom is...

In Stock
[Buy Now](https://www.adafruit.com/product/5134)
[Related Guides to the Product](https://learn.adafruit.com/products/5134/guides)
![Video of warning light glowing swirling LEDs.](https://cdn-shop.adafruit.com/product-videos/640x480/5134-02.jpg)

### Adafruit ESP32-S2 Feather - 4 MB Flash + 2 MB PSRAM

[Adafruit ESP32-S2 Feather - 4 MB Flash + 2 MB PSRAM](https://www.adafruit.com/product/5000)
What's Feather-shaped and has an ESP32-S2 WiFi module? What has a STEMMA QT connector for I2C devices? What has your favorite Espressif WiFi microcontroller and lots of Flash and RAM memory for your next IoT project? What will make your next IoT project flyyyyy?

That's right -...

In Stock
[Buy Now](https://www.adafruit.com/product/5000)
[Related Guides to the Product](https://learn.adafruit.com/products/5000/guides)
![Angled shot of rectangular microcontroller.](https://cdn-shop.adafruit.com/640x480/5000-12.jpg)

### FeatherWing Proto - Prototyping Add-on For All Feather Boards

[FeatherWing Proto - Prototyping Add-on For All Feather Boards](https://www.adafruit.com/product/2884)
A Feather board without ambition is a Feather board without FeatherWings!

This is the **FeatherWing Proto** - a prototyping add-on for all Feather boards. Using our [Feather Stacking Headers](https://www.adafruit.com/products/2830) or <a...></a...>

In Stock
[Buy Now](https://www.adafruit.com/product/2884)
[Related Guides to the Product](https://learn.adafruit.com/products/2884/guides)
![Angled Shot of the FeatherWing Proto - Prototyping Add-on For All Feather Boards.](https://cdn-shop.adafruit.com/640x480/2884-13.jpg)

### TIP120 Power Darlington Transistors - 3 pack

[TIP120 Power Darlington Transistors - 3 pack](https://www.adafruit.com/product/976)
Transistors are powerful little electronic switches, and when our little NPN transistors aren't power enough for your project, we have been known to use these beefy TIP120 Darlington transistors. Great for whenever you need to control medium to high-power electronics such as motors,...

In Stock
[Buy Now](https://www.adafruit.com/product/976)
[Related Guides to the Product](https://learn.adafruit.com/products/976/guides)
![3 pack TIP120 Power Darlington Transistors](https://cdn-shop.adafruit.com/640x480/976-01.jpg)

### 2.54mm/0.1" Pitch Terminal Block - 2-pin

[2.54mm/0.1" Pitch Terminal Block - 2-pin](https://www.adafruit.com/product/2138)
After a long day out harvesting in the terminal block fields, we've returned with a veritable bounty of these very nice and compact 2.54mm/0.1" terminal blocks in a variety of sizes.

Our harvest of terminal blocks is great news&nbsp;since nothing makes a project harder to...

In Stock
[Buy Now](https://www.adafruit.com/product/2138)
[Related Guides to the Product](https://learn.adafruit.com/products/2138/guides)
![Angled shot of black 2-pin 2.54mm terminal block.](https://cdn-shop.adafruit.com/640x480/2138-04.jpg)

### Through-Hole Resistors - 2.2K ohm 5% 1/4W - Pack of 25

[Through-Hole Resistors - 2.2K ohm 5% 1/4W - Pack of 25](https://www.adafruit.com/product/2782)
Ω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 2.2K Ω Resistors.** More specifically, they are **carbon film** , through-hole...

In Stock
[Buy Now](https://www.adafruit.com/product/2782)
[Related Guides to the Product](https://learn.adafruit.com/products/2782/guides)
![Angled shot of 25 Through-Hole Resistors - 2.2K ohm 5% 1/4W.](https://cdn-shop.adafruit.com/640x480/2782-00.jpg)

### Header Kit for Feather - 12-pin and 16-pin Female Header Set

[Header Kit for Feather - 12-pin and 16-pin Female Header Set](https://www.adafruit.com/product/2886)
These two&nbsp; **Female&nbsp;Headers** &nbsp;alone are, well, lonely. But pair them with any of our&nbsp;[Feather](https://www.adafruit.com/categories/777)&nbsp;boards and you're in business!

What do they do? They get soldered on either side of the Feather...

In Stock
[Buy Now](https://www.adafruit.com/product/2886)
[Related Guides to the Product](https://learn.adafruit.com/products/2886/guides)
![Angled shot of a Header Kit for Feather - 12-pin and 16-pin Female Header Set. ](https://cdn-shop.adafruit.com/640x480/2886-00.jpg)

### STEMMA JST PH 2mm 3-Pin to Male Header Cable - 200mm

[STEMMA JST PH 2mm 3-Pin to Male Header Cable - 200mm](https://www.adafruit.com/product/3893)
This cable will let you turn a JST PH 3-pin cable port into 3 individual wires with high-quality 0.1" male header plugs on the end. We're carrying these to match up with our Hallowing, for extending and connecting sensors or LEDs - and the wires are even color coded!

<a...></a...>

In Stock
[Buy Now](https://www.adafruit.com/product/3893)
[Related Guides to the Product](https://learn.adafruit.com/products/3893/guides)
![Angled shot of STEMMA JST PH 3-Pin to Male Header Cable - 200mm.](https://cdn-shop.adafruit.com/640x480/3893-03.jpg)

### USB C to USB C Cable - USB 3.1 Gen 4 with E-Mark - 1 meter long

[USB C to USB C Cable - USB 3.1 Gen 4 with E-Mark - 1 meter long](https://www.adafruit.com/product/4199)
As technology changes and adapts, so does Adafruit! Rather than the regular USB A, this cable has&nbsp; **USB C to USB C** &nbsp;plugs!

USB C is the latest industry-standard connector for transmitting data&nbsp;_and_&nbsp;power. Like Lightning and MagSafe cables, USB C...

Out of Stock
[Buy Now](https://www.adafruit.com/product/4199)
[Related Guides to the Product](https://learn.adafruit.com/products/4199/guides)
![USB C to USB C cable. USB 3.1 gen 4 with E-Mark. 1 meter long](https://cdn-shop.adafruit.com/640x480/4199-01.jpg)

### Part: M2x8mm Screws
quantity: 2
Filament Guide bar
[M2x8mm Screws](https://amzn.to/3K0Ag36)

### Part: M2.5x5mm
quantity: 3
TCRT (2) + FeatherWing Proto (1)
[M2.5x5mm](https://amzn.to/3XKJc4v)

### Part: M2x5mm
quantity: 3
FeatherWing Proto (2) + Holder Mount (1) 
[M2x5mm](https://amzn.to/3W88k40)

### Part: M2x12mm
quantity: 2
2020 Bar screws
[M2x12mm](https://amzn.to/4btBxuN)

# IoT Filament Sensor

## 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's 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/131/013/medium800/3d_printing_warning-light-circuit.jpg?1719956476)

The diagram for the driver circuit is shown above on a FeatherWing Proto board.   
The red LED is a stand-in for the alarm.

The circuit uses pin **D10** of the Feather through a resistor to the left leg of the transistor ( **base** ) in order to toggle when the transistor opens or closes the middle leg ( **collector** ), which allows the alarm circuit to go to ground via the right leg ( **emitter** ).

The middle leg connects to the any **Ground** pin.

The right leg connects to the **USB** pin.

## FeatherWing Proto Socket headers

Solder Socket Headers on the FeatherWing Proto.

## Feather Header Kit&nbsp;

The Feather stacks on top of the FeatherWing Proto board with Pin Headers.

![3d_printing_feather-proto-txt.jpg](https://cdn-learn.adafruit.com/assets/assets/000/131/017/medium640/3d_printing_feather-proto-txt.jpg?1719957936)

# IoT Filament Sensor

## WipperSnapper Overview

![](https://cdn-learn.adafruit.com/assets/assets/000/104/839/medium800/sensors_device.jpg?1632501715)

Ok - you've connected your board to WipperSnapper. _Now what?_

This page will give you a quick tour of Adafruit IO WipperSnapper and its core features.

## WipperSnapper Device List
![](https://cdn-learn.adafruit.com/assets/assets/000/103/179/medium800thumb/adafruit_products_Kapture_2021-06-28_at_15.14.52.jpg?1624907789)

The Device List page provides a list of the devices you've connected to Adafruit IO WipperSnapper along with their connection status.

Think of it as a virtual inventory for your boards!&nbsp;

You can visit this page at any time by navigating to [https://io.adafruit.com/wippersnapper](https://io.adafruit.com/wippersnapper).

## Wippersnapper Device Page
![](https://cdn-learn.adafruit.com/assets/assets/000/103/075/medium800/adafruit_products_devicepage.png?1624636103)

Clicking on a device from the Devices List page will bring you to its device page. This page is an interface to configure and interact with anything physically connected to your device.

You may think of it as the state of your device at any given time.&nbsp;

When you register a device for the first time, this page will be empty, it's a clean slate!

## WipperSnapper Components&nbsp;
![](https://cdn-learn.adafruit.com/assets/assets/000/103/180/medium800thumb/adafruit_products_Kapture_2021-06-28_at_15.17.58.jpg?1624907893)

A "_component_" in WipperSnapper denotes anything which is physically connected to your hardware.

This can include sensors, buttons, LEDs, NeoPixels, displays, and more!

When you click **New Component,** your hardware will _automatically_ connect to and configure the component using the settings you specified. No coding required!&nbsp;

Additionally, **a component also sets up a unique [Adafruit IO feed](https://learn.adafruit.com/adafruit-io-basics-feeds) to store the component's data stream on the web.**

![](https://cdn-learn.adafruit.com/assets/assets/000/103/168/medium800thumb/adafruit_products_Kapture_2021-06-28_at_12.01.13.jpg?1624896488)

### 

 **Nope!** WipperSnapper remembers each component's configuration for each of your boards. The "state" of your board's configuration is saved to its device page.

When you re-connect a board to WipperSnapper, it will automatically re-configure every component listed on the Device Page. The most recent value stored on each component's feed will be sent to the device.

## I do not see my the component I want to use listed in the component picker pop-up

We're actively working towards adding more components and component types to Adafruit Wippersnapper.

We also gladly take community contributions to Adafruit IO - [You can add your own component by following this guide.](https://learn.adafruit.com/how-to-add-a-new-component-to-adafruit-io-wippersnapper)

# IoT Filament Sensor

## WipperSnapper Setup

Warning: 

## What is WipperSnapper

WipperSnapper is a firmware designed to turn any WiFi-capable board into an Internet-of-Things device without programming a single line of code. WipperSnapper connects to [Adafruit IO](https://io.adafruit.com/), a web&nbsp;platform designed ([by Adafruit!](https://www.adafruit.com/about)) to&nbsp;_display_,&nbsp;_respond_, and&nbsp;_interact_&nbsp;with your project's data.

Simply load the WipperSnapper firmware onto your board, add credentials, and plug it into power. Your board will automatically register itself with your Adafruit IO account.

From there, you can add&nbsp;_components_&nbsp;to your board such as buttons, switches, potentiometers, sensors, and more! Components are&nbsp;_dynamically&nbsp;_added to hardware, so you can&nbsp;immediately start interacting, logging, and streaming the data your projects produce without writing code.

## Sign up for Adafruit.io

You will need an Adafruit IO account to use WipperSnapper on your board. If you do not already have one, head over to [io.adafruit.com](https://io.adafruit.com/) to create a&nbsp;_free_ account.

## Install USB Driver

### Install CP2104 / CP2102N USB Driver

Many ESP32 boards have a USB-to-Serial converter that talks to the chip itself, and will need a driver on your computer's operating system. The driver is available for Mac, Windows, and Linux.

[Click here to download the CP2104/CP2102N driver](http://www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers)
### Install CH9102 / CH34X USB Driver

Newer ESP32 boards have a different USB-to-serial converter that talks to the chip itself, and will need a driver on your computer's operating system. The driver is available for Mac and Windows. It is already built into Linux.

If you would like more detail, check out&nbsp;[the guide on installing these drivers](https://learn.adafruit.com/how-to-install-drivers-for-wch-usb-to-serial-chips).

[Click here to download the Windows driver](http://www.wch-ic.com/downloads/CH341SER_ZIP.html)
[Click here to download the Mac driver](http://www.wch-ic.com/downloads/CH34XSER_MAC_ZIP.html)
## Add a New Device to Adafruit IO

Log into your [Adafruit IO](https://io.adafruit.com/) account. Click the _New Device_ button at the top of the page.

![](https://cdn-learn.adafruit.com/assets/assets/000/112/548/medium800/wippersnapper_setup__board_selector__web__new_device_1.png?1655919766)

After clicking New Device, you should be on the _board selector_ page. This page displays every board that is compatible with the WipperSnapper firmware.

![](https://cdn-learn.adafruit.com/assets/assets/000/112/550/medium800/wippersnapper_setup__board_selector__web__selector_maion.png?1655920178)

In the board selector page's search bar, search for the _QT Py ESP32 Pico__.&nbsp;_Once you've located the board you'd like to install WipperSnapper on,_&nbsp;_click the&nbsp;_Choose Board_&nbsp;button to bring you to the self-guided installation wizard.

![](https://cdn-learn.adafruit.com/assets/assets/000/113/136/medium800/adafruit_products_qtpy_32_pico.png?1657648825)

Follow the step-by-step instructions on the page to install Wippersnapper on your device and connect it to Adafruit IO.

![](https://cdn-learn.adafruit.com/assets/assets/000/120/541/medium800/adafruit_products_qtpy_esp32_ss.png?1682710491)

If the installation was successful, a popover should appear displaying that your board has successfully been detected by Adafruit IO.

Give your board a name and click "Continue to Device Page".

![](https://cdn-learn.adafruit.com/assets/assets/000/113/138/medium800/adafruit_products_qtpy_pico.png?1657648851)

You should be brought to your board's device page.

![](https://cdn-learn.adafruit.com/assets/assets/000/113/139/medium800/adafruit_products_qtpy_32_pico_device_page.png?1657648859)

## Feedback

Adafruit.io WipperSnapper is in **beta** and you can help improve it!

If you have&nbsp; suggestions or general feedback about the installation process - visit [https://io.adafruit.com/support](https://io.adafruit.com/support), click _"Contact Adafruit IO Support"_ and select _"I have feedback or suggestions for the WipperSnapper Beta"._

## Troubleshooting

If you encountered an issue during installation, please try the steps below first.

If you're still unable to resolve the issue, or if your issue is not listed below, get in touch with us directly at [https://io.adafruit.com/support](https://io.adafruit.com/support "https://io.adafruit.com/support"). Make sure to click&nbsp; _"Contact Adafruit IO Support"_ and select "_There is an issue with WipperSnapper. Something is broken!"_

### 

First, make sure that you selected the correct board on the board selector.

Next, please make sure that you entered your WiFi credentials properly, there are no spaces/special characters in either your network name (SSID) or password, and that you are connected to a 2.4GHz wireless network.

If you're still unable to connect your board to WiFi, please [make a new post on the WipperSnapper technical support forum with the error you're experiencing, the LED colors which are blinking, and the board you're using.](https://forums.adafruit.com/viewforum.php?f=66)

### 

Try hard-resetting your board by unplugging it from USB power and plugging it back in.

If the error is still occurring, please&nbsp;[make a new post on the WipperSnapper technical support forum with information about what you're experiencing, the LED colors which are blinking (if applicable), and the board you're using.](https://forums.adafruit.com/viewforum.php?f=66)

## "Uninstalling" WipperSnapper&nbsp;

WipperSnapper firmware is an application that is loaded onto your board. There is nothing to "uninstall". However, you may want to "move" your board from running WipperSnapper to running Arduino or CircuitPython. You also may need to restore your board to the state it was shipped to you from the Adafruit factory.&nbsp;

### Moving from WipperSnapper to CircuitPython

Follow the steps on the [Installing CircuitPython page](https://learn.adafruit.com/welcome-to-circuitpython/installing-circuitpython) to install CircuitPython on your board running WipperSnapper.

- If you are unable to double-tap the RST button to enter the UF2 bootloader, follow the _"Factory Resetting a WipperSnapper Board"_ instructions below.

Uploading this sketch will overwrite WipperSnapper. If you want to re-install WipperSnapper, follow the instructions at the top of this page.

### Moving from WipperSnapper to Arduino

If you want to use your board with Arduino, you will use the Arduino IDE to load&nbsp;_any_ sketch onto your board.

First, follow the page below to set up your Arduino IDE environment for use with your board.

[Arduino IDE Setup](https://learn.adafruit.com/adafruit-qt-py-esp32-pico/arduino-ide-setup)
Then, follow the page below to upload the "Arduino Blink" sketch to your board.

[Upload Arduino "Blink" Sketch](https://learn.adafruit.com/adafruit-qt-py-esp32-pico/blink)
Uploading this sketch will overwrite WipperSnapper. If you want to re-install WipperSnapper, follow the instructions at the top of this page.

### Factory Resetting a WipperSnapper Board

Sometimes, hardware gets into a state that requires it to be "restored" to the original state it shipped in. If you'd like to get your board back to its original factory state, follow the guide below.

[Factory Reset Adafruit QT Py ESP32 Pico](https://learn.adafruit.com/adafruit-qt-py-esp32-pico/factory-reset)
# IoT Filament Sensor

## Action Setup

## Add Components
## QT Py TCRT100 Component&nbsp;

In the QT Py Device Click on the big **+** icon to add the **TCTR100** component.

In the drop down set the Breakout Pin to **A1.**

Set the **Return Interval** to **On Change.**

![3d_printing_TCRT_Comp.jpg](https://cdn-learn.adafruit.com/assets/assets/000/131/009/medium640/3d_printing_TCRT_Comp.jpg?1719955389)

## Feather Warning Light Component&nbsp;

In the Feather Device Click on the big **+** icon to add the **Buzz 5v** component.

In the drop down set the Buzzer 5V Pin to **D10**

![3d_printing_Light_Comp.jpg](https://cdn-learn.adafruit.com/assets/assets/000/131/010/medium640/3d_printing_Light_Comp.jpg?1719955641)

## Create New Action

Build the Actions to trigger the Warning Light

- Go to [https://io.adafruit.com](https://io.adafruit.com)and click on **Actions**
- Click the **New Actions** button.
- Enter a&nbsp; **Name** and&nbsp; **Description** , then click&nbsp; **Create**

![](https://cdn-learn.adafruit.com/assets/assets/000/137/099/medium640/sensors_Screenshot_2025-05-23_182522.png?1748021139)

## Filament Detected Action
## Reactive Trigger Setup

- Click on the **Triggers** block
- Drag the **Reactive** block and snap it to the **Trigger** section in the **Action&nbsp;** block
- In the **Feed** block select the **TCRT1000** feed from the dropdown menu
- Under the **Operator** section, select " **\<**" from the dropdown menu.
- In&nbsp; **Values** menu type 0  

## &nbsp;

## Action Setup

- In the **Values** menu type 1
- In the **to** section **&nbsp;** select Feather Buzzer 5V&nbsp;

![3d_printing_blockly-filament.jpg](https://cdn-learn.adafruit.com/assets/assets/000/131/006/medium640/3d_printing_blockly-filament.jpg?1719954276)

## No Filament Detected Action
## Create New Action

Build the Actions to trigger the Warning Light

- Click the **New Actions** button.
- Choose **Yes, use Blockly!**

![3d_printing_blockly-window.jpg](https://cdn-learn.adafruit.com/assets/assets/000/131/011/medium640/3d_printing_blockly-window.jpg?1719955774)

## Reactive Trigger Setup

- Click on the **Triggers** block
- Drag the **Reactive** block and snap it to the **Trigger** section in the **Action&nbsp;** block
- In the **Feed** block select the **TCRT1000** feed from the dropdown menu
- Under the **Operator** section, select " **\>**" from the dropdown menu.
- In&nbsp; **Values** menu type 1

## Action Setup

- In the **Values** menu type 0
- In the **to** section **&nbsp;** select Feather Buzzer 5V&nbsp;

![3d_printing_blockly-no-filament.jpg](https://cdn-learn.adafruit.com/assets/assets/000/131/007/medium640/3d_printing_blockly-no-filament.jpg?1719954950)

# IoT Filament Sensor

## 3D Printing

## 3D Printed Parts

STL files for 3D printing will need to be oriented for print using either FDM or SLS machines.

Parts were tested using with PLA filament.

Original design source files may be downloaded using the links below

![3d_printing_parts-3d.jpg](https://cdn-learn.adafruit.com/assets/assets/000/131/001/medium640/3d_printing_parts-3d.jpg?1719952899)

![3d_printing_parts-light.jpg](https://cdn-learn.adafruit.com/assets/assets/000/131/002/medium640/3d_printing_parts-light.jpg?1719952933)

[Edit TCRT1000 Design](https://a360.co/4cqKIgT)
[IOT Filament STEPs.zip](https://cdn-learn.adafruit.com/assets/assets/000/131/071/original/IOT-Filament-STEPs.zip?1719975365)
[Edit Warning Light Stand](https://a360.co/45TLCQn)
[Download STLs](https://www.thingiverse.com/thing:6683037)
## Slice with Settings for PLA material&nbsp;

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

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

![3d_printing_slice.jpg](https://cdn-learn.adafruit.com/assets/assets/000/131/004/medium640/3d_printing_slice.jpg?1719953399)

# IoT Filament Sensor

## Assemble

## Solder QT Py

Use a STEMMA JST PH wire to the QT Py.

Solder the red wire to the **5v** pin to the QT Py.  
Solder the black wire to the **gnd** pin.  
Solder the white wire to the **A1** pin.

Plug the cable into the port on the **TCRT1000** STEMMA.

![3d_printing_qtpy-solder.jpg](https://cdn-learn.adafruit.com/assets/assets/000/130/986/medium640/3d_printing_qtpy-solder.jpg?1719948261)

## Mount QT Py

Pass the QT Py through the printed holder, with the USB port close to the edge. Insert at an angle with the STEMMA port first, then apply slight pressure to the USB port to press fit into place.

## Mount TCRT

Pass the TCRT board through the printed holder and align the screw holes to the QT Py holder.

![3d_printing_clip-qtpy.jpg](https://cdn-learn.adafruit.com/assets/assets/000/130/987/medium640/3d_printing_clip-qtpy.jpg?1719948511)

![3d_printing_clip-tcr.jpg](https://cdn-learn.adafruit.com/assets/assets/000/130/988/medium640/3d_printing_clip-tcr.jpg?1719948584)

## Fasten TCRT

Use two **M2.5x5mm** screws to mount the TCRT board to the holder.

Fasten one **M2x5mm** screw to join both printed holders together.

## &nbsp;

## 2020 Mount

Use two **M2x12** mm screws to attach the 2020 mount.

![3d_printing_clip-screws.jpg](https://cdn-learn.adafruit.com/assets/assets/000/130/989/medium640/3d_printing_clip-screws.jpg?1719948684)

![3d_printing_clip-2020.jpg](https://cdn-learn.adafruit.com/assets/assets/000/130/990/medium640/3d_printing_clip-2020.jpg?1719948764)

## Filament Guide

Use two **M2x8mm** screws to attach the filament guide.

![3d_printing_clip-guide.jpg](https://cdn-learn.adafruit.com/assets/assets/000/130/991/medium640/3d_printing_clip-guide.jpg?1719949044)

![3d_printing_clip-guide-mounted.jpg](https://cdn-learn.adafruit.com/assets/assets/000/130/992/medium640/3d_printing_clip-guide-mounted.jpg?1719949218)

## USB power

Plug a USB cable to power, most printers have a USB port on the side. You can use a right angle adapter to connect.

## Mount to 2020 frame

The bar part mounts to a 2020 extrusion frame. Place the filament over the grooves on the guide part to install.&nbsp;

![3d_printing_2020-mount-usb.jpg](https://cdn-learn.adafruit.com/assets/assets/000/130/993/medium640/3d_printing_2020-mount-usb.jpg?1719949269)

![3d_printing_2020-mounted.jpg](https://cdn-learn.adafruit.com/assets/assets/000/130/994/medium640/3d_printing_2020-mounted.jpg?1719949323)

## Build Warning Light Circuit

Follow the wiring on the Circuit Diagram page to build the driver for the warning light on a FeatherWing Proto board with socket Headers.

## Mount to Warning Stand

Use **M2x5mm** screws to mount the FeatherWing Proto board to the standoffs on the stand part.

![3d_printing_feather-proto-txt.jpg](https://cdn-learn.adafruit.com/assets/assets/000/130/996/medium640/3d_printing_feather-proto-txt.jpg?1719952176)

![3d_printing_feather-proto-mount.jpg](https://cdn-learn.adafruit.com/assets/assets/000/130/997/medium640/3d_printing_feather-proto-mount.jpg?1719952245)

## Mount Warning Light

Pass the wires on the warning light through the cutout on the stand print. Connect the Warning Light wires to the 2 pin terminal on the FeatherWing Proto board.

Align the screws on the warning light to the screw holes on the stand print. Use the included nuts to fasten the light to the stand.

## Stack Feather to Proto board

Align and press the headers on the Feather to the FeatherWing Proto board. Use a USB C cable to power the Feather.

![3d_printing_light-mount.jpg](https://cdn-learn.adafruit.com/assets/assets/000/130/998/medium640/3d_printing_light-mount.jpg?1719952508)

![3d_printing_light-conect.jpg](https://cdn-learn.adafruit.com/assets/assets/000/130/999/medium640/3d_printing_light-conect.jpg?1719952555)

![](https://cdn-learn.adafruit.com/assets/assets/000/131/000/medium800thumb/3d_printing_demo-wide-loop.jpg?1719968633)


## Featured Products

### Adafruit STEMMA Reflective Photo Interrupt Sensor - TCRT1000

[Adafruit STEMMA Reflective Photo Interrupt Sensor - TCRT1000](https://www.adafruit.com/product/5913)
An optical reflective sensor&nbsp;is a composite&nbsp;electronic device with two elements - an IR LED and an IR photo-transistor. The IR LED blasts light, and when something bounces the light back to the photo-transistor, the transistor turns on and the amount of current flowing through it...

In Stock
[Buy Now](https://www.adafruit.com/product/5913)
[Related Guides to the Product](https://learn.adafruit.com/products/5913/guides)
### Adafruit QT Py ESP32-S2 WiFi Dev Board with STEMMA QT

[Adafruit QT Py ESP32-S2 WiFi Dev Board with STEMMA QT](https://www.adafruit.com/product/5325)
What has your favorite Espressif WiFi microcontroller, comes with&nbsp;[our favorite connector - the STEMMA QT](http://adafruit.com/stemma), a chainable I2C port, and has lots of Flash and RAM memory for your next IoT project? What will make your next IoT project flyyyyy? What a...

In Stock
[Buy Now](https://www.adafruit.com/product/5325)
[Related Guides to the Product](https://learn.adafruit.com/products/5325/guides)
### Rotating LED Warning Light with Adjustable Volume Buzzer Alarm

[Rotating LED Warning Light with Adjustable Volume Buzzer Alarm](https://www.adafruit.com/product/5134)
THE REACTOR'S MELTING DOWN! GRAB THE FUEL CORE, JENNA, AND EVACUATE THE COMMAND CENTER! With this **Rotating LED Warning Light with Adjustable Volume Buzzer Alarm,** you can monitor and easily alert humanoids as to the status of a project, machine, or even if the bathroom is...

In Stock
[Buy Now](https://www.adafruit.com/product/5134)
[Related Guides to the Product](https://learn.adafruit.com/products/5134/guides)
### Adafruit ESP32-S2 Feather - 4 MB Flash + 2 MB PSRAM

[Adafruit ESP32-S2 Feather - 4 MB Flash + 2 MB PSRAM](https://www.adafruit.com/product/5000)
What's Feather-shaped and has an ESP32-S2 WiFi module? What has a STEMMA QT connector for I2C devices? What has your favorite Espressif WiFi microcontroller and lots of Flash and RAM memory for your next IoT project? What will make your next IoT project flyyyyy?

That's right -...

In Stock
[Buy Now](https://www.adafruit.com/product/5000)
[Related Guides to the Product](https://learn.adafruit.com/products/5000/guides)
### FeatherWing Proto - Prototyping Add-on For All Feather Boards

[FeatherWing Proto - Prototyping Add-on For All Feather Boards](https://www.adafruit.com/product/2884)
A Feather board without ambition is a Feather board without FeatherWings!

This is the **FeatherWing Proto** - a prototyping add-on for all Feather boards. Using our [Feather Stacking Headers](https://www.adafruit.com/products/2830) or <a...></a...>

In Stock
[Buy Now](https://www.adafruit.com/product/2884)
[Related Guides to the Product](https://learn.adafruit.com/products/2884/guides)
### TIP120 Power Darlington Transistors - 3 pack

[TIP120 Power Darlington Transistors - 3 pack](https://www.adafruit.com/product/976)
Transistors are powerful little electronic switches, and when our little NPN transistors aren't power enough for your project, we have been known to use these beefy TIP120 Darlington transistors. Great for whenever you need to control medium to high-power electronics such as motors,...

In Stock
[Buy Now](https://www.adafruit.com/product/976)
[Related Guides to the Product](https://learn.adafruit.com/products/976/guides)
### 2.54mm/0.1" Pitch Terminal Block - 2-pin

[2.54mm/0.1" Pitch Terminal Block - 2-pin](https://www.adafruit.com/product/2138)
After a long day out harvesting in the terminal block fields, we've returned with a veritable bounty of these very nice and compact 2.54mm/0.1" terminal blocks in a variety of sizes.

Our harvest of terminal blocks is great news&nbsp;since nothing makes a project harder to...

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

[Through-Hole Resistors - 2.2K ohm 5% 1/4W - Pack of 25](https://www.adafruit.com/product/2782)
Ω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 2.2K Ω Resistors.** More specifically, they are **carbon film** , through-hole...

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

## Related Guides

- [Adafruit ESP32-S2 Feather](https://learn.adafruit.com/adafruit-esp32-s2-feather.md)
- [Adafruit QT Py ESP32-S2 and QT Py ESP32-S2 with uFL Antenna](https://learn.adafruit.com/adafruit-qt-py-esp32-s2.md)
- [Adafruit STEMMA Reflective Photo Interrupt Sensor](https://learn.adafruit.com/adafruit-stemma-reflective-photo-interrupt-sensor.md)
- [Dotstar + CircuitPython Digital Sand](https://learn.adafruit.com/digital-sand-dotstar-circuitpython-edition.md)
- [No-Code IoT Humidity and Temperature Sensor with Adafruit IO WipperSnapper](https://learn.adafruit.com/no-code-humidity-and-temp-tracker.md)
- [Blinka LED Sign](https://learn.adafruit.com/blinka-led-sign.md)
- [QT Py S2 Round Display Compass](https://learn.adafruit.com/qt-py-s2-round-display-compass.md)
- [IoT Moon Phase Guide](https://learn.adafruit.com/moon-phase.md)
- [No-Code IoT Soil Sensor](https://learn.adafruit.com/soil-node.md)
- [Adafruit USB Host FeatherWing with MAX3421E](https://learn.adafruit.com/adafruit-usb-host-featherwing-with-max3421e.md)
- [Feather + Raspberry Pi Weather Monitoring Network with LoRa or LoRaWAN](https://learn.adafruit.com/multi-device-lora-temperature-network.md)
- [No-Code Snowfall Tracker with WipperSnapper and Adafruit IO](https://learn.adafruit.com/no-code-snow-tracker-with-wippersnapper-and-adafruit-io.md)
- [Wireless ESP32-S2 Touch Screen Controller for Pure Data](https://learn.adafruit.com/wireless-esp32-s2-controller-for-pure-data.md)
- [FeatherWing Proto, Doubler  and Tripler](https://learn.adafruit.com/featherwing-proto-and-doubler.md)
- [NAU7802 Pet Food Scale](https://learn.adafruit.com/nau7802-pet-food-scale.md)
- [Holiday IoT Switch](https://learn.adafruit.com/holiday-iot-switch.md)
- [Traffic Light Conference Badge](https://learn.adafruit.com/traffic-light-conference-badge.md)
- [Feather RP2040 DVI Video Synth](https://learn.adafruit.com/feather-rp2040-dvi-video-synth.md)
