BD-Width Filament Sensor, a Technical Buyer's Guide
A CCD linear imaging sensor that measures filament diameter and motion in real time, paired with Klipper flow compensation. Verified facts, peer-reviewed evidence, and a fair 2026-04-19 competitive landscape.
Last verified 2026-04-19The BD-Width is a small in-line accessory that sits between the spool and the extruder of a material-extrusion printer and reports two quantities in real time, the instantaneous filament diameter and the length of filament that has actually moved through its bore. It was designed by Mark Yu, who distributes it through his own store Pandapi3D and, as a secondary channel, through Tindie, with an open-hardware repository on GitHub under the handle markniu. MABS 3D imports the sensor into the European Union and re-sells it at EUR 39, verified on 2026-04-19, as part of its FDM shop.
The relevance of a diameter and motion sensor to fused filament fabrication is well documented in the peer-reviewed literature. Dimensional accuracy in material extrusion is a compound function of thermal shrinkage, extrusion-head geometry, and the upstream consistency of the filament feed itself. A closed-loop study by Moretti and co-authors showed that active filament-feed control can reduce relative transport error from up to nine percent to below a quarter of one percent, and void fraction from 7.64 percent to 0.137 percent. The BD-Width targets the specific subset of that problem that a purely kinematic encoder cannot address, the actual cross-sectional diameter of the filament leaving the spool.
Five Ways Diameter Variability Degrades Prints
Before describing the sensor itself, it is worth stating plainly what a fluctuating filament diameter does to a print. The grid below isolates five distinct failure modes and grounds each of them in a specific peer-reviewed source.
| Failure mode | Mechanism | Measurable effect | Citation |
|---|---|---|---|
| guideBdWidthSensor.failure.voids.title | guideBdWidthSensor.failure.voids.mechanism | Void fraction rose to 7.64 percent open-loop and fell to 0.137 percent closed-loop in the Moretti 2023 study | [8] |
| guideBdWidthSensor.failure.surface.title | guideBdWidthSensor.failure.surface.mechanism | Documented voids, inter-road gaps and surface undulations as direct consequences of inconsistent extrusion (Agarwala 1996) | [2] |
| guideBdWidthSensor.failure.jams.title | guideBdWidthSensor.failure.jams.mechanism | Irregular diameter causes poor surface quality, extruder jams, irregular gaps between extrusions and excessive overlap (Cardona 2016) | [5] |
| guideBdWidthSensor.failure.slippage.title | guideBdWidthSensor.failure.slippage.mechanism | Slippage rises with decreasing nozzle temperature and with feed rate; static compensation insufficient (Greeff 2017) | [6] |
| guideBdWidthSensor.failure.dev.title | guideBdWidthSensor.failure.dev.mechanism | Width deviations 0.17 to 4.10 percent, thickness deviations 2.32 to 12.19 percent across PLA colours and layer heights (Frunzaverde 2023) | [16] |
Empirical Vendor Variability Reality
Peer-reviewed work suggests that dimensional accuracy at the print level is modest, with 100 mm NIST artifacts averaging 99.77 mm with a standard deviation of 0.31 mm across sixteen instances, and that commercial PLA stock typically sits within plus or minus 0.05 mm of its nominal value. That headline number, however, hides a wide dispersion across brands, colours and single-spool behaviour. Community measurements confirm that some well-regarded brands stay under plus or minus 0.02 mm while others oscillate on a periodic cycle within a single spool.
| Brand and product | Nominal | Observed behaviour | Source |
|---|---|---|---|
| Prusament Mystic Green PLA 1.75 mm | 1.75 mm | mean 1.750 mm, range 1.75 to 1.75 mm, single spool continuous log | Mustrum Ridcully 2019-02-25 |
| Prusa (pre-Prusament) Clear PLA 1.75 mm | 1.75 mm | range 1.65 to 1.85 mm, single spool | Haku3D 2019-02-25 |
| YS Filament Green PLA 1.75 mm | 1.75 mm | range 1.70 to 1.90 mm, single spool | Haku3D 2019-02-25 |
| eSun ABS+ Black new batch 1.75 mm | 1.75 mm | range 1.70 to 1.80 mm, stdev 0.050 mm, continuous log, one spool, plus or minus 0.05 mm every 10 cm | Deutherius 2022-08-01 |
| Prusament Galaxy Black ASA 1.75 mm | 1.75 mm | single spool, tight within spec, small improvement from compensation | Deutherius 2022-08-01 |
| Hatchbox True Black PLA 1.75 mm | 1.75 mm | mean 1.745 mm, range 1.73 to 1.76 mm, 10-point calliper test | NozzleNerd 2026-04-19 |
| Hatchbox PLA 1.75 mm general | 1.75 mm | range 1.73 to 1.77 mm, multiple spools | All3DP 2026-04-19 |
| Hatchbox PLA 1.75 mm bad spool | 1.75 mm | mean 1.690 mm, single bad spool, outside spec | 3DPUT aggregator 2026-04-19 |
| MakerGeeks PLA 1.75 mm | 1.75 mm | range 1.65 to 1.88 mm, 3 rolls | Printermaterials 2026-04-19 |
| Eryone PLA 1.75 mm | 1.75 mm | mean 1.750 mm, range 1.74 to 1.76 mm, review spool | The 3D Printer Bee 2026-04-19 |
| Eryone PLA 1.75 mm, ten-point test | 1.75 mm | 9 of 10 within plus or minus 0.03 mm | AVK3D 2026-04-19 |
| ColorFabb PLA/PHA 1.75 mm | 1.75 mm | range 1.68 to 1.75 mm, up to 0.07 mm under nominal | NozzleHub 2026-04-19 |
| Polymaker PolyLite PLA 2.85 mm | 2.85 mm | range 2.80 to 2.90 mm, vendor data sheet | Polymaker 2026-04-19 |
| Polymaker PolyLite/PolyTerra 1.75 mm aggregate | 1.75 mm | 70 percent within plus or minus 0.01 mm, 97 percent within plus or minus 0.02 mm | 3DPUT aggregator 2026-04-19 |
| Overture PLA 1.75 mm | 1.75 mm | range 1.73 to 1.77 mm, within plus or minus 0.02 mm | 3D Printerly 2026-04-19 |
The underlying message is that no single specification line on a filament data sheet substitutes for a measurement of the spool you are actually printing with, and, as Greeff and Schilling argue, even a perfect static characterisation would not capture dynamic slippage at the feeder. That is the gap an in-line width and motion sensor is designed to close.
Sensing Principles Compared
Filament monitors deployed on desktop FDM printers fall into a handful of families. The grid below frames each family by resolution, whether it needs calibration, and whether it senses diameter as opposed to only motion or only runout. Numbers are taken from primary vendor documentation and Klipper source, not from any third-party benchmark.
| Principle | Resolution | Calibration | Diameter | Motion | Example product | Citation |
|---|---|---|---|---|---|---|
| CCD linear imaging with light-diffraction shadow compensation plus laser optical tracking | 0.005 pixel pitch, plus or minus 0.015 vendor accuracy | No | Yes | Yes | BD-Width | [26] |
| Hall-effect lever pressing filament against a sprung pin | firmware-defined, two-point calibration at two known diameters | Yes | Yes | No | Klipper hall_filament_width_sensor boards | [38] |
| Linear CCD TSL1401CL shadow cast by filament | pixel-pitch limited | No | Yes | No | Klipper tsl1401cl_filament_width_sensor | [39] |
| Magnetic rotary encoder turned by filament passage | angle-based counts, vendor notes extremely accurate without numeric bound | Yes | No | Yes | Duet3D Rotating Magnet Filament Monitor | [40] |
| Mechanical microswitch on a lever or steel ball | binary present or absent | No | No | No | Prusa IR, Creality runout switch, LDO, Stealthburner microswitch designs | [41] |
| Optical IR gate combined with mechanical lever | binary present or absent plus filament tip detection | No | No | No | Prusa IR Filament Sensor MK2.5S, MK3S, MK3.5 | [41] |
BD-Width Technical Deep Dive
CCD pixel pitch
0.005 mmManufacturer-stated, primary source
Width accuracy (vendor)
plus or minus 0.015 mmGitHub README; Pandapi3D page lists plus or minus 0.01 mm, discrepancy flagged
Measurement range
1 to 2 mmDefault nominal 1.75 mm
Power
0.245 W5 V at 49 mA via USB
Interfaces
USB or I2CUSB (CH340 serial); software I2C on two GPIO
Host firmware
Klipper onlyKlipper (out-of-tree module)
Sampling
0.3 s minimumHost polling; default 2 s
Case bore
4 mmThrough-hole for 1.75 mm filament
EU price
EUR 39MABS 3D, verified 2026-04-19
The BD-Width pairs a linear CCD image sensor with a laser optical tracking chip of the kind used in optical mice, and wraps both in an STM32 microcontroller that exposes a USB CDC serial port over a CH340 interface and a software-bit-banged I2C bus on two general-purpose pins. The case is a printable 3D model, bore diameter 4 mm, published alongside a schematic PDF and STL and STEP files, although no KiCad source, no bill of materials and no LICENSE file are present in the repository. Firmware is released as dated hex files, with visible releases dated 2025-07-08, 2025-09-03, 2025-11-06, 2026-01-18, 2026-02-21 and 2026-03-13; there are no Git tags and no changelog.[26]
The first load-bearing design choice is the CCD linear array with a light-diffraction compensation algorithm. The author describes it as a unique algorithm that uses light diffraction to automatically compensate for filament shadows on the CCD sensor, even when the filament moves at different distances and angles. In practice this means that the pixel-level shadow thrown by the filament onto the CCD line is not simply thresholded; the algorithm reconstructs the implied edge location after the diffraction envelope, which is what permits a 0.005 mm pixel pitch to translate into a meaningful reading on a 1.75 mm target.[26]
The second load-bearing design choice is the FIFO delay buffer on the host side. Because the sensor measures the filament where it enters the case, and the extruder actually melts the filament several hundreds of millimetres downstream, any diameter reading has to wait for the measured piece of filament to reach the hot end before its value is applied to the flow. The BD-Width driver implements this as a length-indexed FIFO keyed on the Klipper parameter sensor_to_nozzle_length, default 750 mm, and it also exposes a runout_delay_length of 8 mm and a flowrate_adjust_length of 5 mm so that the compensation fires at a finer granularity than a full FIFO flush. This mirrors the architecture that Klipper's upstream hall_filament_width_sensor uses with its measurement_delay field, and that Marlin exposes under MEASUREMENT_DELAY_CM, documented at 14 cm by default in Configuration_adv.h.[26][38][42]
Measured Impact (Before and After)
Third-party before-and-after data on the BD-Width is still thin. The sensor was first released in January 2025, and most quantitative evidence available on 2026-04-19 comes from the developer's own logs or from editors at Tindie Blog and Hackster.io. We include developer self-reports and issue-tracker interactions honestly labelled as such, together with one framing-reference case from Deutherius using a Hall-effect width sensor (not BD-Width) that illustrates what width compensation as a class can deliver.
| Handle | Context | Before | After | Delta | Source |
|---|---|---|---|---|---|
| markniu | Developer-tester, unnamed 1 kg 1.75 mm spool, Klipper | Spool appeared nominal | BD-Width logged a live 1.9 mm excursion | Live detection of a half-millimetre-plus defect | 2025-01-01 |
| markniu | Back-to-back A/B prints 30 minutes apart | Sensor-off print with visible surface defects | Sensor-on print qualitatively smoother in photographs | Qualitative surface-finish improvement | 2025-01-01 |
| Tindie Blog editor | Own test rig | No compensation | Live on-device width screen and automatic flow adjustment in Klipper | Reports vendor-stated plus or minus 0.015 mm at 0.005 mm resolution | 2025-01-01 |
| Hackster.io editor | n.r. rig | Baseline print | Sensor-feedback print | Qualitative improves print quality finding | 2025-01-01 |
| xboxhacker | GitHub issue 11 | Extreme-reading spikes at startup | Issue raised for threshold-tuning interface | No resolved delta at retrieval | 2025-09-29 |
| CBoismenu | GitHub issue 12 | ENABLE fires at macro level | Request for per-sensor ENABLE granularity | No resolved delta at retrieval | 2025-10-30 |
| Nathan22211 | GitHub issue 9 | Kailco-based machine compatibility unclear | Compatibility dialogue opened | Integration guidance for non-standard setups | 2025-07-09 |
| Deutherius | Voron 2.4 with hall-effect width sensor, not BD-Width; framing reference | Visible Z-banding on eSun ABS+ attributable to width oscillation | Z-banding eliminated by width-compensated print path | Framing reference for width compensation as a class | 2022-08-01 |
Firmware and Slicer Integration
The BD-Width ships with an out-of-tree Klipper module that is installed by git clone plus install.sh, and is not merged upstream into Klipper3d/klipper. For context, the upstream Klipper tree already supports two filament width sensors, the Hall-effect design and the TSL1401CL linear CCD, and the grid below compares the three firmware environments most likely to appear on European desktop FDM printers. Marlin and RepRapFirmware do not support BD-Width directly; they are included to frame what equivalent width sensing looks like on those platforms.
| Feature | Klipper | Marlin | RepRapFirmware | Citation |
|---|---|---|---|---|
| Config key | hall_filament_width_sensor or tsl1401cl_filament_width_sensor in printer.cfg; BD-Width uses out-of-tree bdwidth module | #define FILAMENT_WIDTH_SENSOR in Configuration_adv.h, FILAMENT_SENSOR_EXTRUDER_NUM | M591 with P parameter selecting monitor type, D for drive, C for pin, S for enable | [38] |
| G-code | QUERY_FILAMENT_WIDTH, RESET_FILAMENT_WIDTH_SENSOR, ENABLE_FILAMENT_WIDTH_SENSOR [FLOW_COMPENSATION=0|1], DISABLE_FILAMENT_WIDTH_SENSOR, ENABLE_FILAMENT_WIDTH_LOG, DISABLE_FILAMENT_WIDTH_LOG | M404 W<linear>, M405 D<cm>, M406, M407 | M591 Dnn Pn Snn Raa:bb Lnn Enn An | [51] |
| Smoothing | Exponential (5*prev + new)/6; percentage = 100 * nominal_dia^2 / filament_width^2; M221 S<pct> | Ring buffer, MAX_MEASUREMENT_DELAY 20 bytes at one byte per cm | Tolerance window Raa:bb, typical 70 to 130 percent | [44] |
| Measurement-delay mechanism | measurement_delay in mm between sensor and extruder, default 750 mm on BD-Width | MEASUREMENT_DELAY_CM default 14 cm | Enn fault window in mm, default 3 mm; not a per-move flow compensator | [42] |
| Documentation URL | https://www.klipper3d.org/G-Codes.html | https://marlinfw.org/docs/gcode/M404.html | https://docs.duet3d.com/en/User_manual/Reference/Gcodes | [57] |
Klipper converts width readings into a flow multiplier via an inverse-square area formula, percentage = round(nominal_filament_dia squared divided by filament_width squared times 100), which it then injects as an M221 S command. Readings are exponentially smoothed with the running update d = (5 times previous_d plus new_d) divided by 6, and fall back to M221 S100 whenever the reading exits the nominal plus or minus max_difference band. ADC samples are taken at roughly 0.5 second intervals, fifteen samples per report.[44]
Competitive Landscape
The table below lists the desktop-class filament sensors that a European buyer is most likely to encounter in April 2026, with principle, sensing capabilities, firmware support, and primary source. Accuracy claims are reproduced verbatim where published; many vendors do not publish a numeric figure, and those cases are marked explicitly. Comparative statements elsewhere in this article are bounded to this set and dated 2026-04-19, consistent with EU Directive 2006/114/EC Article 4 on comparative advertising.
| Product | Vendor | Principle | Diameter | Motion | Runout | Firmware | Source URL |
|---|---|---|---|---|---|---|---|
| BD-Width (bdwidth) | Mark Yu, Pandapi3D and Tindie | Optical CCD with diffraction compensation plus laser optical tracking | Yes | Yes | Yes | Klipper (out-of-tree) | link |
| Prusa IR Filament Sensor for MK2.5S, MK3S, MK3.5 | Prusa Research | Optical IR gate plus mechanical lever | No | No | Yes | Prusa Buddy and MK3 | link |
| Nextruder filament sensor for MK4, MK3.9, CORE One, XL | Prusa Research | Hall effect plus spring, magnet and ball | No | No | Yes | Prusa Buddy | link |
| AMS filament sensing on X1, P1, AMS and AMS 2 Pro | Bambu Lab | Hall sensors plus magnetic rotary encoder plus buffer-slide Hall | Not publicly documented | Yes | Yes | Bambu Lab firmware | link |
| Filament Runout Sensor for Ender 3 V3 SE, Sermoon D3, K1 | Creality | Mechanical microswitch plus LED | No | No | Yes | Creality stock, Klipper-compatible on K1 | link |
| LDO Voron kit filament sensor | LDO Motors | Mechanical microswitch | No | No | Yes | Klipper | link |
| Stealthburner CW2 filament sensor | VORON Design community | Mechanical steel ball plus Omron D2F microswitch | No | No | Yes | Klipper | link |
| Duet3D Rotating Magnet Filament Monitor | Duet3D | Magnetic rotary plus Hall | No | Yes | Yes | RepRapFirmware M591 P3 | link |
Within the set listed above, and on the vendor-documentation evidence captured on 2026-04-19, the BD-Width is the only unit in the comparison whose vendor documentation states it measures both filament diameter in millimetres and filament motion in millimetres per second in the same device. The Bambu Lab AMS does not publish a diameter-measurement claim, the Duet3D Rotating Magnet monitor senses motion only, and the Prusa, Creality, LDO, Stealthburner and Orbiter devices are runout or presence detectors. Those are different problem scopes, and each has a legitimate use case; the table is a scope map, not a ranking.[26][60][40][41][61][62][63][59]
Limitations and Edge Cases
Four limitations should be stated plainly before any purchase. First, the BD-Width cannot read the width of fully transparent filaments; motion and runout detection continue to work, but flow compensation is disabled for those materials, per the author's product page. Second, the sensor reports a projected width, not a cross-sectional shape; an oval filament of the same projected width reads the same as a perfectly circular one, a point flagged by Tindie Blog in their 2025 coverage. Third, no independent third-party test of the published width accuracy has been located as of 2026-04-19; all numeric accuracy figures are vendor-stated and the author himself publishes two different values, plus or minus 0.015 mm on the GitHub README and plus or minus 0.01 mm on the Pandapi3D product page.[43][47][26]
Fourth, the software stack is bound to a single author and a single host firmware. The Klipper integration is not merged upstream, the repository has no LICENSE file and therefore defaults to all-rights-reserved under Berne Convention rules, there is no CHANGELOG and no Git tags. Firmware releases ship as dated hex files only, and the only supported update path is STM32CubeProgrammer over UART. Buyers who rely on long-term code availability, auditable release notes, or permissive licensing should weigh these points honestly against the sensor's hardware advantages.[26]
The MABS 3D Perspective
MABS 3D is a Brescia-based 3D printing service and reseller. We import the BD-Width and make it available in our FDM shop at EUR 39, verified on 2026-04-19, with EU-side stocking that removes the 8 to 15 day direct-from-China shipping window. We will re-verify every comparative claim in this article on a quarterly cadence, with the next scheduled review on 2026-07-19, and will update the competitive landscape table as competitor documentation changes.
Frequently Asked Questions
| Question | Answer |
|---|---|
| guideBdWidthSensor.faq.install.q | guideBdWidthSensor.faq.install.a |
| guideBdWidthSensor.faq.compat.q | guideBdWidthSensor.faq.compat.a |
| guideBdWidthSensor.faq.materials.q | guideBdWidthSensor.faq.materials.a |
| guideBdWidthSensor.faq.pressure.q | guideBdWidthSensor.faq.pressure.a |
| guideBdWidthSensor.faq.warranty.q | guideBdWidthSensor.faq.warranty.a |
| guideBdWidthSensor.faq.transparent.q | guideBdWidthSensor.faq.transparent.a |
Methodology and References
All claims in this article were cross-checked against primary sources on 2026-04-19. Peer-reviewed literature was located through Google Scholar, NIST publications, ScienceDirect, MDPI and the ISO/ASTM catalogue. Primary vendor documentation was retrieved from github.com/markniu/bdwidth, pandapi3d.com, klipper3d.org, marlinfw.org, docs.duet3d.com, help.prusa3d.com, wiki.bambulab.com, docs.ldomotors.com and the Orbiter Projects website. Community empirical measurements come from named forum posts, blog reviews and GitHub repositories. Where vendor documentation conflicted, the more conservative number is reported and the discrepancy is flagged in context. The competitive landscape table will be reverified quarterly; the next scheduled update is 2026-07-19.
References
| # | Authors | Year | Title | Venue | Source URL |
|---|---|---|---|---|---|
| 1 | Turner, B.N.; Gold, S.A. | 2015 | A review of melt extrusion additive manufacturing processes: II. Materials, dimensional accuracy, and surface roughness | Rapid Prototyping Journal 21(3), 250-261 | link |
| 2 | Agarwala, M.K.; Jamalabad, V.R.; Langrana, N.A.; Safari, A.; Whalen, P.J.; Danforth, S.C. | 1996 | Structural quality of parts processed by fused deposition | Rapid Prototyping Journal 2(4), 4-19 | link |
| 3 | Moylan, S.; Slotwinski, J.; Cooke, A.; Jurrens, K.; Donmez, M.A. | 2014 | An Additive Manufacturing Test Artifact | Journal of Research of NIST 119, 429-459 | link |
| 4 | Mac, G.; Pearce, H.; Karri, R.; Gupta, N. | 2021 | Uncertainty quantification in dimensions dataset of additive manufactured NIST standard test artifact | Data in Brief 38, 107286 | link |
| 5 | Cardona, C.; Curdes, A.H.; Isaacs, A.J. | 2016 | Effects of Filament Diameter Tolerances in Fused Filament Fabrication | IU Journal of Undergraduate Research 2(1) | link |
| 6 | Greeff, G.P.; Schilling, M. | 2017 | Closed loop control of slippage during filament transport in molten material extrusion | Additive Manufacturing 14, 31-38 | link |
| 7 | Greeff, G.P.; Schilling, M. | 2018 | Single print optimisation of fused filament fabrication parameters | International Journal of Advanced Manufacturing Technology 99, 845-858 | link |
| 8 | Moretti, M.; Rossi, A.; Senin, N. | 2023 | Closed-Loop Filament Feed Control in Fused Filament Fabrication | 3D Printing and Additive Manufacturing 10(3), 500-513 | link |
| 9 | Moretti, M.; Bianchi, F.; Senin, N. | 2020 | Towards the development of a smart fused filament fabrication system using multi-sensor data fusion for in-process monitoring | Rapid Prototyping Journal 26(7), 1249-1261 | link |
| 10 | Anderegg, D.A.; Bryant, H.A.; Ruffin, D.C.; Skrip, S.M.; Fallon, J.J.; Gilmer, E.L.; Bortner, M.J. | 2019 | In-situ monitoring of polymer flow temperature and pressure in extrusion based additive manufacturing | Additive Manufacturing 26, 76-83 | link |
| 11 | Li, Y.; Zhao, W.; Li, Q.; Wang, T.; Wang, G. | 2019 | In-Situ Monitoring and Diagnosing for Fused Filament Fabrication Process Based on Vibration Sensors | Sensors 19(11), 2589 | link |
| 12 | Tronvoll, S.A.; Popp, S.; Elverum, C.W.; Welo, T. | 2019 | Investigating pressure advance algorithms for filament-based melt extrusion additive manufacturing | Rapid Prototyping Journal 25(5), 830-839 | link |
| 13 | Tronvoll, S.A.; Elverum, C.W.; Welo, T. | 2018 | Dimensional accuracy of threads manufactured by fused deposition modeling | Procedia Manufacturing 26, 763-773 | link |
| 14 | Czyzewski, P.; Marciniak, D.; Nowinka, B.; Borowiak, M.; Bielinski, M. | 2022 | Influence of extruder's nozzle diameter on the improvement of functional properties of 3D-printed PLA products | Polymers 14(2), 356 | link |
| 15 | Yan, J.; Demirci, E.; Ganesan, A.; Gleadall, A. | 2022 | Extrusion width critically affects fibre orientation in short fibre reinforced material extrusion additive manufacturing | Additive Manufacturing 49, 102496 | link |
| 16 | Frunzaverde, D.; Cojocaru, V.; Bacescu, N.; Ciubotariu, C.R.; Miclosina, C.O.; Turiac, R.R.; Marginean, G. | 2023 | The Influence of the Layer Height and the Filament Color on the Dimensional Accuracy and the Tensile Strength of FDM-Printed PLA Specimens | Polymers 15(10), 2377 | link |
| 17 | Lieneke, T.; Denzer, V.; Adam, G.A.O.; Zimmer, D. | 2016 | Dimensional tolerances for additive manufacturing: Experimental investigation for fused deposition modeling | Procedia CIRP 43, 286-291 | link |
| 18 | Equbal, A.; Murmu, R.; Kumar, V.; Equbal, M.A. | 2024 | A recent review on advancements in dimensional accuracy in fused deposition modeling 3D printing | AIMS Materials Science 11(5), 950-990 | link |
| 19 | ISO/ASTM | 2021 | ISO/ASTM 52900:2021 Additive manufacturing, general principles, fundamentals and vocabulary | ISO/ASTM International Standard | link |
| 20 | ASTM International, F42 committee | 2021 | ASTM F3529-21 Guide for additive manufacturing, design, material extrusion of polymers | ASTM International Standard | link |
| 21 | Mahmood, S.; Qureshi, A.J.; Talamona, D. | 2018 | Taguchi based process optimization for dimension and tolerance control for fused deposition modelling | Additive Manufacturing 21, 183-190 | link |
| 22 | Wittbrodt, B.; Pearce, J.M. | 2015 | The effects of PLA color on material properties of 3-D printed components | Additive Manufacturing 8, 110-116 | link |
| 23 | Coogan, T.J.; Kazmer, D.O. | 2019 | In-line rheological monitoring of fused deposition modeling | Journal of Rheology 63(1), 141-155 | link |
| 24 | Joosten, T.J.F.; van Meer, B.J.; et al. | 2024 | FFF print defect characterization through in-situ electrical resistance monitoring | Scientific Reports 14, 11906 | link |
| 25 | Ciobota, N.D.; Zlatanov, Z.V.; Mariti, G.; Titei, D.; Angelescu, D. | 2023 | Accuracy of FDM PLA polymer 3D printing technology based on tolerance fields | Processes 11(10), 2810 | link |
| 26 | Yu, M. (markniu) | 2024 | bdwidth filament width and motion sensor, source repository | GitHub | link |
| 27 | Mustrum Ridcully; Haku3D (forum contributors) | 2019 | Interesting discovery re filament thickness tolerance, Prusa forum thread | forum.prusa3d.com | link |
| 28 | Deutherius | 2022 | Filament-Width-Comp-Experiments, dataset and report | GitHub | link |
| 29 | NozzleNerd | n.d. | Hatchbox vs Overture PLA filament honest review and comparison | nozzlenerd.com | link |
| 30 | All3DP editorial | n.d. | Hatchbox PLA filament review | all3dp.com | link |
| 31 | 3D PUT aggregator | 2026 | Complete filament brand comparison 2026, tolerance, quality and value ratings | 3dput.com | link |
| 32 | Printermaterials editorial | n.d. | MakerGeeks filament review | printermaterials.com | link |
| 33 | The 3D Printer Bee | n.d. | Eryone PLA review | the3dprinterbee.com | link |
| 34 | AVK3D | n.d. | Is Eryone for everyone, ten-point diameter test | avk3d.ca | link |
| 35 | NozzleHub | n.d. | ColorFabb PLA economy review | nozzlehub.com | link |
| 36 | Polymaker | n.d. | PolyLite PLA Pro technical data sheet | wiki.polymaker.com | link |
| 37 | 3D Printerly editorial | n.d. | Overture PLA filament review | 3dprinterly.com | link |
| 38 | Klipper project | n.d. | Config_Reference.md, hall_filament_width_sensor section | github.com/Klipper3d/klipper | link |
| 39 | Klipper project | n.d. | Config_Reference.md, tsl1401cl_filament_width_sensor section | github.com/Klipper3d/klipper | link |
| 40 | Duet3D | n.d. | Rotating Magnet Filament Monitor documentation and Gcodes reference for M591 | docs.duet3d.com | link |
| 41 | Prusa Research | n.d. | IR Filament Sensor for MK2.5S, MK3S and MK3.5 documentation | help.prusa3d.com | link |
| 42 | Marlin project | n.d. | Configuration_adv.h reference for FILAMENT_WIDTH_SENSOR, MEASUREMENT_DELAY_CM and MAX_MEASUREMENT_DELAY | github.com/MarlinFirmware/Marlin | link |
| 43 | Pandapi3D | 2024 | bdwidth sensor product page | pandapi3d.com | link |
| 44 | Klipper project | n.d. | hall_filament_width_sensor.py source | github.com/Klipper3d/klipper | link |
| 45 | Pandapi3D | 2025 | How about your 3D filament, blog post | pandapi3d.com | link |
| 46 | Yu, M. (markniu) | 2025 | Width and motion sensor, project page | hackaday.io | link |
| 47 | Tindie Blog | 2025 | bdwidth, a 3D filament width and motion sensor | blog.tindie.com | link |
| 48 | Hackster.io | 2025 | This high resolution non-contact filament sensor improves print quality | hackster.io | link |
| 49 | xboxhacker | 2025 | Issue 11, extreme readings at startup | github.com/markniu/bdwidth | link |
| 50 | CBoismenu | 2025 | Issue 12, per-sensor ENABLE granularity | github.com/markniu/bdwidth | link |
| 51 | Klipper project | n.d. | G-Codes reference, QUERY_FILAMENT_WIDTH and related commands | klipper3d.org | link |
| 52 | PrusaSlicer project | n.d. | PrintConfig.cpp, filament_diameter and extrusion_multiplier | github.com/prusa3d/PrusaSlicer | link |
| 53 | Marlin project | n.d. | M404 set nominal filament width | marlinfw.org | link |
| 54 | Marlin project | n.d. | M405 enable filament width sensor | marlinfw.org | link |
| 55 | Marlin project | n.d. | M406 disable filament width sensor | marlinfw.org | link |
| 56 | Marlin project | n.d. | M407 read filament width | marlinfw.org | link |
| 57 | Duet3D | n.d. | Gcodes reference, M591 filament monitor | docs.duet3d.com | link |
| 58 | Slic3r project | n.d. | Flow math reference, advanced manual | manual.slic3r.org | link |
| 59 | Prusa Research | n.d. | Nextruder filament sensor documentation for CORE One, MK4, MK3.9, XL | help.prusa3d.com | link |
| 60 | Bambu Lab | n.d. | AMS function introduction | wiki.bambulab.com | link |
| 61 | Creality | n.d. | Filament runout sensor product page for Ender 3 V3 SE | store.creality.com | link |
| 62 | LDO Motors | n.d. | Voron 0.2 wiring guide rev A, filament sensor section | docs.ldomotors.com | link |
| 63 | VORON Design community | n.d. | Improved Voron Stealthburner filament runout sensor | printables.com | link |
| 64 | Nathan22211 | 2025 | Issue 9, Kailco machine compatibility | github.com/markniu/bdwidth | link |
Buy the BD-Width filament sensor
Stocked in Brescia at EUR 39, shipped across the EU. Includes the CCD width and motion module, USB cable, and short setup guide for Klipper.
Buy the BD-Width filament sensor