diff --git a/docs/byop/testing/actuator-check/index.md b/docs/byop/testing/actuator-check/index.md index bc7ae154c..79c4ac356 100644 --- a/docs/byop/testing/actuator-check/index.md +++ b/docs/byop/testing/actuator-check/index.md @@ -78,7 +78,7 @@ M3426 G4 C2 I1 A110 ;read vac 2 value ``` !!! danger "In Case Of Error" - These commands are meant for a newer version of Marlin that adds support for multiple ADCs. If you're getting an error in response from Marlin, [update the firmware to the latest version](/guides/update-firmware/). + These commands are meant for a newer version of Marlin that adds support for multiple ADCs. If you're getting an error in response from Marlin, [update the firmware to the latest version](../../../guides/update-firmware/index.md). ## Next steps diff --git a/docs/byop/testing/connect-computer/index.md b/docs/byop/testing/connect-computer/index.md index 2f947b2b1..35134455c 100644 --- a/docs/byop/testing/connect-computer/index.md +++ b/docs/byop/testing/connect-computer/index.md @@ -29,7 +29,7 @@ 1. Restart your computer 2. Check if the LumenPnP shows up in Device Manager (Windows). 3. Try another USB Port - 4. Try [re-flashing firmware](/guides/update-firmware/) + 4. Try [re-flashing firmware](../../../guides/update-firmware/index.md) ## Cameras We also need to check connecting to the cameras. CNCjs has a webcam feature, so we'll use it for this test too. diff --git a/docs/feeders/1-overview/feeder-overview.md b/docs/feeders/1-overview/feeder-overview.md index edb933c3d..0be335945 100644 --- a/docs/feeders/1-overview/feeder-overview.md +++ b/docs/feeders/1-overview/feeder-overview.md @@ -66,4 +66,4 @@ If you find that there's something unclear in this documentation, please [submit ## Next steps -Before using the feeders, you'll [install the slot harness](/feeders/2-install-harness/). If your machine already has slots installed, you can jump ahead to [mounting feeders](/feeders/4-mounting/mounting/). +Before using the feeders, you'll [install the slot harness](../2-install-harness/index.md). If your machine already has slots installed, you can jump ahead to [mounting feeders](../4-mounting/mounting.md). diff --git a/docs/feeders/2-install-harness/feeder-blade/index.md b/docs/feeders/2-install-harness/feeder-blade/index.md index 600150c53..5179cb790 100644 --- a/docs/feeders/2-install-harness/feeder-blade/index.md +++ b/docs/feeders/2-install-harness/feeder-blade/index.md @@ -10,7 +10,7 @@ In this step, you'll install and wire slots onto the front and back rails of you To ensure feeders will mount to your LumenPnP's front rail, we need to ensure that your staging plate is mounted at the correct position. **If you have a v3 LumenPnP, your staging plate is already at the correct distance, and can skip this section.** !!! danger "Warning" - Be aware that moving your primary staging plate will change where your bottom camera and homing fiducial markers are mounted. After moving the staging plate, you will need to review your machine's calibration. Specifically, the [Homing Fiducial](/openpnp/calibration/4-homing-fiducial) and [Bottom Camera Position](/openpnp/calibration/7-bottom-camera-position). + Be aware that moving your primary staging plate will change where your bottom camera and homing fiducial markers are mounted. After moving the staging plate, you will need to review your machine's calibration. Specifically, the [Homing Fiducial](../../../openpnp/calibration/4-homing-fiducial/index.md) and [Bottom Camera Position](../../../openpnp/calibration/7-bottom-camera-position/index.md). 1. Unplug your LumenPnP. @@ -181,10 +181,10 @@ In your Slot Harness Kit, you'll find: If you were directed to this page by LumenPnP wiring instructions return to one of the following pages to finish plugging everything in: -* [v3.0](/semi-assembly/wiring/#finalize-wiring) -* [v3.1 / V3.2](/semi-assembly-3-1/wiring-3-1/#finalize-wiring) +* [v3.0](../../../semi-assembly/wiring/index.md#finalize-wiring) +* [v3.1 / V3.2](../../../semi-assembly-3-1/wiring-3-1/index.md#finalize-wiring) -Otherwise, next is [updating your software.](/feeders/3-software-update) +Otherwise, next is [updating your software.](../../3-software-update/index.md) [clip-url]: https://github.com/opulo-inc/lumenpnp/blob/main/pnp/cad/FDM/extrusion-cable-clip.FCStd [slot-url]: https://github.com/opulo-inc/feeder diff --git a/docs/feeders/2-install-harness/feeder-slot/index.md b/docs/feeders/2-install-harness/feeder-slot/index.md index 7cc54240d..6866cd725 100644 --- a/docs/feeders/2-install-harness/feeder-slot/index.md +++ b/docs/feeders/2-install-harness/feeder-slot/index.md @@ -10,7 +10,7 @@ In this step, you'll install and wire slots onto the front and back rails of you To ensure feeders will mount to your LumenPnP's front rail, we need to ensure that your staging plate is mounted at the correct position. **If you have a v3 LumenPnP, your staging plate is already at the correct distance, and can skip this section.** !!! danger "Warning" - Be aware that moving your primary staging plate will change where your bottom camera and homing fiducial markers are mounted. After moving the staging plate, you will need to review your machine's calibration. Specifically, the [Homing Fiducial](../../openpnp/calibration/4-homing-fiducial/#tuning-the-homing-fiducial) and [Bottom Camera Position](../../openpnp/calibration/7-bottom-camera-position/). + Be aware that moving your primary staging plate will change where your bottom camera and homing fiducial markers are mounted. After moving the staging plate, you will need to review your machine's calibration. Specifically, the [Homing Fiducial](../../../openpnp/calibration/4-homing-fiducial/index.md#tuning-the-homing-fiducial) and [Bottom Camera Position](../../../openpnp/calibration/7-bottom-camera-position/index.md). 1. Unplug your LumenPnP. @@ -165,10 +165,10 @@ In your Slot Harness Kit, you'll find: If you were directed to this page by LumenPnP wiring instructions return to one of the following pages to finish plugging everything in: -* [v3.0](/semi-assembly/wiring/#finalize-wiring) -* [v3.1 / V3.2](/semi-assembly-3-1/wiring-3-1/#finalize-wiring) +* [v3.0](../../../semi-assembly/wiring/index.md#finalize-wiring) +* [v3.1 / V3.2](../../../semi-assembly-3-1/wiring-3-1/index.md#finalize-wiring) -Otherwise, next is [updating your software.](../3-software-update) +Otherwise, next is [updating your software.](../../3-software-update/index.md) [clip-url]: https://github.com/opulo-inc/lumenpnp/blob/main/pnp/cad/FDM/extrusion-cable-clip.FCStd [slot-url]: https://github.com/opulo-inc/feeder diff --git a/docs/feeders/2-install-harness/index.md b/docs/feeders/2-install-harness/index.md index 018f8f9a5..4625a4d42 100644 --- a/docs/feeders/2-install-harness/index.md +++ b/docs/feeders/2-install-harness/index.md @@ -7,11 +7,11 @@ The LumenPnP has two versions of slots. The most recent version has four "blades [![Feeder Slot Blades][1]][2] [1]: img/feeder-blade-set.webp -[2]: feeder-blade/ "Redirect to Feeder Slot Blades" +[2]: feeder-blade/index.md "Redirect to Feeder Slot Blades" # [Individual Feeder Slots](feeder-slot/index.md) [![Individual Feeder Slots][3]][4] [3]: img/IMG_1969.webp -[4]: feeder-slot/ "Redirect to Individual Feeder Slots" +[4]: feeder-slot/index.md "Redirect to Individual Feeder Slots" diff --git a/docs/feeders/3-software-update/index.md b/docs/feeders/3-software-update/index.md index c3e9b35f5..a621c19f4 100644 --- a/docs/feeders/3-software-update/index.md +++ b/docs/feeders/3-software-update/index.md @@ -26,7 +26,7 @@ LumenPnP feeders require a specific version of OpenPnP (the 2023-04-05 release), 1. Download the LumenPnP firmware from the latest release [here](https://github.com/opulo-inc/lumenpnp/releases) that matches your machine's version. Firmware file names start with the machine versions they support. -2. Follow the instructions for [updating your LumenPnP's firmware](/guides/update-firmware). +2. Follow the instructions for [updating your LumenPnP's firmware](../..//guides/update-firmware/index.md). ## Update Feeder Firmware **(Optional)** @@ -103,7 +103,7 @@ LumenPnP feeders require a specific version of OpenPnP (the 2023-04-05 release), ## Checking Current Firmware Version 1. Press and hold both buttons on the feeder. -1. Wait until the light comes on, indicating that you've [switched modes](/feeders/1-overview/feeder-overview/#__tabbed_2_3). +1. Wait until the light comes on, indicating that you've [switched modes](../1-overview/feeder-overview.md#__tabbed_2_3). 1. Keep the buttons held until the light goes off. !!! danger "Firmware versions v1.0.2 and before" diff --git a/docs/feeders/6-loading-tape/loading-tape.md b/docs/feeders/6-loading-tape/loading-tape.md index 0416cc4c3..2488754de 100644 --- a/docs/feeders/6-loading-tape/loading-tape.md +++ b/docs/feeders/6-loading-tape/loading-tape.md @@ -69,4 +69,4 @@ This video shows how tape is loaded into the feeder, and the functionality of th ## Next Steps -Next, you'll [set pick position](/feeders/7-setting-pick-position/setting-pick-position/). +Next, you'll [set pick position](../7-setting-pick-position/setting-pick-position.md). diff --git a/docs/feeders/7-setting-pick-position/setting-pick-position.md b/docs/feeders/7-setting-pick-position/setting-pick-position.md index 18199da5d..23eea1e27 100644 --- a/docs/feeders/7-setting-pick-position/setting-pick-position.md +++ b/docs/feeders/7-setting-pick-position/setting-pick-position.md @@ -71,4 +71,4 @@ Now that you've loaded a component into the feeder, we'll fine-tune the feeder's ## Next Steps -If you came here from the FTP documentation, your next step is [running a test job](/openpnp/ftp/3-test-run/). +If you came here from the FTP documentation, your next step is [running a test job](../../openpnp/ftp/3-test-run/index.md). diff --git a/docs/guides/second-tool/index.md b/docs/guides/second-tool/index.md index 543e2d5b9..cf16de40f 100644 --- a/docs/guides/second-tool/index.md +++ b/docs/guides/second-tool/index.md @@ -207,8 +207,8 @@ With the hardware set up, we need to tell OpenPnP about the newly installed tool ## Fine Tuning 1. Attach a nozzle to your new second tool head -2. Set [your new nozzle's offset](../../../openpnp/calibration/6-nozzle-offset). -3. Try homing your machine again. If you get the `Nozzle tip calibration: not enough results from vision. Check pipeline and threshold` error, you will need to tune your [Bottom Camera Vision Pipeline](/openpnp/vision-pipeline-adjustment/4-nozzle-calibration-pipeline). -4. Test picking components out of your feeders. Follow the instructions in the [FTP](/openpnp/ftp/1-installing-the-feeders/#installing-the-n045-nozzle) guide. Make sure to activate your newly created tool head, and assign a nozzle tip to it. +2. Set [your new nozzle's offset](../../openpnp/calibration/6-nozzle-offset/index.md). +3. Try homing your machine again. If you get the `Nozzle tip calibration: not enough results from vision. Check pipeline and threshold` error, you will need to tune your [Bottom Camera Vision Pipeline](../../openpnp/vision-pipeline-adjustment/4-nozzle-calibration-pipeline.md). +4. Test picking components out of your feeders. Follow the instructions in the [FTP](../../openpnp/ftp/1-board-setup/index.md#installing-the-n045-nozzle) guide. Make sure to activate your newly created tool head, and assign a nozzle tip to it. [step]: https://wiki.fysetc.com/Silent2209/ diff --git a/docs/guides/update-gcode-macros/index.md b/docs/guides/update-gcode-macros/index.md index c99055944..9ced1aad4 100644 --- a/docs/guides/update-gcode-macros/index.md +++ b/docs/guides/update-gcode-macros/index.md @@ -5,10 +5,10 @@ OpenPnP puts general machine configuration in the same file as machine-specific **If you're setting up your machine for the first time, you don't need to do this.** This guide is only for folks that are looking to update their machine config, but set up their machine using an older version of the configuration files. !!! warning "OpenPnP Version" - Be sure that you're using the recommended version of OpenPnP for this guide. You can find installation instructions [here](/openpnp/install). + Be sure that you're using the recommended version of OpenPnP for this guide. You can find installation instructions [here](../../openpnp/install-config/install/index.md). !!! warning "Firmware Version" - These macros require that your firmware is up to date with the latest firmware release for your machine. [Make sure you're up to date](/guides/update-firmware). + These macros require that your firmware is up to date with the latest firmware release for your machine. [Make sure you're up to date](../../guides/update-firmware/index.md). ## v3.1+ Machines diff --git a/docs/misc/versions/index.md b/docs/misc/versions/index.md index 54cb560d9..350723db9 100644 --- a/docs/misc/versions/index.md +++ b/docs/misc/versions/index.md @@ -10,7 +10,7 @@ The LumenPnP is always being upgraded and improved. This page is a reference for ### v2.X.X -![](/byop/hero-alpha-min.webp){: style="width:60%;margin-left:10%;"} +![](../../byop/hero-alpha-min.webp){: style="width:60%;margin-left:10%;"} The v2 of the LumenPnP was a kit. It came as a box of parts and circuit boards, and users would 3D print all the plastic parts themselves. The LumenPnP v2 had: @@ -23,7 +23,7 @@ The v2 of the LumenPnP was a kit. It came as a box of parts and circuit boards, ### v3.0.X -![](/semi-assembly/semi-hero.webp){: style="width:60%;margin-left:10%;"} +![](../../semi-assembly/semi-hero.webp){: style="width:60%;margin-left:10%;"} v3.0 versions of the LumenPnP were the first to come semi-assembled. They arrived with all printed parts included, and bolted together from just a handful of subassemblies. The LumenPnP v3.0 had: @@ -36,7 +36,7 @@ v3.0 versions of the LumenPnP were the first to come semi-assembled. They arrive ### v3.1.X -![](/semi-assembly-3-1/3_1.webp){: style="width:60%;margin-left:10%;"} +![](../../semi-assembly-3-1/3_1.webp){: style="width:60%;margin-left:10%;"} v3.1.X was a significant improvement to the previous version, introducing linear rails and upgrading to cable chain. @@ -49,7 +49,7 @@ v3.1.X was a significant improvement to the previous version, introducing linear ### v3.2.X -![](/semi-assembly-3-1/3_1.webp){: style="width:60%;margin-left:10%;"} +![](../../semi-assembly-3-1/3_1.webp){: style="width:60%;margin-left:10%;"} v3.2.X of the machine is almost identical to v3.1.X, except that the slots (where feeders interface with the machine) are ganged together into "blades" to make them easier to manufacure. @@ -158,11 +158,11 @@ Once you've added the linear rails, you can greatly increase the speed of your m In machines prior to v3.1, there wasn't much strain relief for the L and R motors. -![](/semi-assembly/wiring/images/finished-head.webp){: style="width:60%;margin-left:10%;"} +![](../../semi-assembly/wiring/images/finished-head.webp){: style="width:60%;margin-left:10%;"} Starting in v3.1, the z-gantry print got a location to secure the cable using a zip tie. -![](/semi-assembly-3-1/wiring-3-1/images/zip-lh-4.webp){: style="width:60%;margin-left:10%;"} +![](../../semi-assembly-3-1/wiring-3-1/images/zip-lh-4.webp){: style="width:60%;margin-left:10%;"} Reprinting your z-gantries from the [v3.1 release](https://github.com/opulo-inc/lumenpnp/releases/tag/v3.1.0) and zip tieing the cables to the print will greatly improve the strain relief for your machine's cables. @@ -173,4 +173,4 @@ Reprinting your z-gantries from the [v3.1 release](https://github.com/opulo-inc/ If you're upgrading your machine's hardware, it's very likely you'll need to update how OpenPnP controls it as well. Depending on what you changed, you'll have to splice new Gcode into OpenPnP to support it. In general, speed settings are based on if your machine has linear rails or rollers. -To update your Gcode Macros, visit [our guide for doing so](/guides/update-gcode-macros). +To update your Gcode Macros, visit [our guide for doing so](../../guides/update-gcode-macros/index.md). diff --git a/docs/openpnp/calibration/10-vacuum-sensor/index.md b/docs/openpnp/calibration/10-vacuum-sensor/index.md index 3ea99e92e..eb54f5541 100644 --- a/docs/openpnp/calibration/10-vacuum-sensor/index.md +++ b/docs/openpnp/calibration/10-vacuum-sensor/index.md @@ -32,7 +32,7 @@ While the bottom camera can detect if a part was successfully picked, you can us ## LumenPnP v2 !!! note "v2 Interposers" - If you have a v2 machine, please [check if you have interposer boards installed](/guides/rev3-vac-interposer). + If you have a v2 machine, please [check if you have interposer boards installed](../../../guides/rev3-vac-interposer/index.md). 1. Select your GcodeDriver, then under the Gcode tab, select the `H1 VAC1` actuator, and select the `ACTUATOR_READ_COMMAND` setting. diff --git a/docs/openpnp/calibration/4-homing-fiducial/index.md b/docs/openpnp/calibration/4-homing-fiducial/index.md index 3e6ed52af..6f6b48a71 100644 --- a/docs/openpnp/calibration/4-homing-fiducial/index.md +++ b/docs/openpnp/calibration/4-homing-fiducial/index.md @@ -13,7 +13,7 @@ Now we can set up the datum board. The datum board is a reference point for ever !!! danger "If your machine does not move fully to the front left" If your LumenPnP does not move all the way to the front left of the machine when you click the Home icon, it could mean that your sensorless homing values need to be adjusted. - Instructions for tuning this setting are [here](/guides/tuning-sensorless/). + Instructions for tuning this setting are [here](../../../guides/tuning-sensorless/index.md). ## Setting Homing Fiducial Location diff --git a/docs/openpnp/calibration/5-mm-per-pixel/index.md b/docs/openpnp/calibration/5-mm-per-pixel/index.md index aa94488bc..10c3b8237 100644 --- a/docs/openpnp/calibration/5-mm-per-pixel/index.md +++ b/docs/openpnp/calibration/5-mm-per-pixel/index.md @@ -19,7 +19,7 @@ This next step calibrates the relationship between pixels and millimeters to mak 1. Identify your machine's nozzle tips. They're mounted in the rack on your staging plate. - ![](/semi-assembly-3-1/mounting-staging-plates-3-1/images/nozzle-tip-location.webp) + ![](../../../semi-assembly-3-1/mounting-staging-plates-3-1/images/nozzle-tip-location.webp) 1. Remove the nozzle tips labeled `N045` and `N24` from the rack. diff --git a/docs/openpnp/debugging/feeder-rotation.md b/docs/openpnp/debugging/feeder-rotation.md index 56fd235ca..ad9f94780 100644 --- a/docs/openpnp/debugging/feeder-rotation.md +++ b/docs/openpnp/debugging/feeder-rotation.md @@ -10,4 +10,4 @@ When setting the position of a feeder, the rotation value you enter is equal to ## The part's vision pipeline needs adjustment -If your rotation offset is consistently 90 or 180 degrees this is less likely, but it could still worth [adjusting that part's vision pipeline](/openpnp/vision-pipeline-adjustment/5-part-identification-pipeline/). +If your rotation offset is consistently 90 or 180 degrees this is less likely, but it could still worth [adjusting that part's vision pipeline](../vision-pipeline-adjustment/5-part-identification-pipeline.md). diff --git a/docs/openpnp/debugging/global-offset.md b/docs/openpnp/debugging/global-offset.md index 51be4e53f..a527a1e33 100644 --- a/docs/openpnp/debugging/global-offset.md +++ b/docs/openpnp/debugging/global-offset.md @@ -6,15 +6,15 @@ If parts are universally placed with an offset in the X and/or Y axis, there are ## Bottom camera position needs adjustment -If OpenPnP's understanding of where the bottom camera is located is incorrect, part placements can also be incorrect. Perform a [nozzle offset calibration](/openpnp/calibration/6-nozzle-offset/) on one nozzle, then immediately [set the bottom camera position](/openpnp/calibration/7-bottom-camera-position/) without rotating the nozzle. +If OpenPnP's understanding of where the bottom camera is located is incorrect, part placements can also be incorrect. Perform a [nozzle offset calibration](../calibration/6-nozzle-offset/index.md) on one nozzle, then immediately [set the bottom camera position](../calibration/7-bottom-camera-position/index.md) without rotating the nozzle. ## Fiducial calibration pipeline needs adjustment -If OpenPnP incorrectly detects your fiducials and instead thinks a silkscreen marking or footprint pad is the fiducial, all of the locations on your board will be shifted. [Make sure your fiducial pipeline is correctly identifying your PCB's fiducials.](/openpnp/vision-pipeline-adjustment/3-pcb-fiducial-pipeline/) +If OpenPnP incorrectly detects your fiducials and instead thinks a silkscreen marking or footprint pad is the fiducial, all of the locations on your board will be shifted. [Make sure your fiducial pipeline is correctly identifying your PCB's fiducials.](../vision-pipeline-adjustment/3-pcb-fiducial-pipeline.md) ## Both nozzles need offset calibration adjustment -It's possible that both of your nozzle offsets need adjusting. [Make sure your nozzle offsets are correct.](/openpnp/calibration/6-nozzle-offset/) +It's possible that both of your nozzle offsets need adjusting. [Make sure your nozzle offsets are correct.](../calibration/6-nozzle-offset/index.md) ## The LumenPnP skipped steps during motion diff --git a/docs/openpnp/debugging/index.md b/docs/openpnp/debugging/index.md index 00935aacd..0750ba298 100644 --- a/docs/openpnp/debugging/index.md +++ b/docs/openpnp/debugging/index.md @@ -52,12 +52,12 @@ You might have found an inaccuracy or error when placing parts. This page addres If the nozzle is not picking parts consistently, there are a few potential root causes: -- **The vacuum sensor threshold is too sensitive.** If you notice that your nozzle is attempting to pick a part, but seems to raise up too quickly, the vacuum sensor threshold value is incorrectly telling OpenPnP that it's successfully picked the part. This can be solved by [tuning your vacuum sensor threshold value](/openpnp/calibration/10-vacuum-sensor). -- **The feeder Z position is set too high.** If the machine is told to pick a part slightly too high, the nozzle tip doesn't make a good seal on the part, and fails to pick. This is solved by adjusting the [feeder's height](/feeders/7-setting-pick-position/setting-pick-position/). +- **The vacuum sensor threshold is too sensitive.** If you notice that your nozzle is attempting to pick a part, but seems to raise up too quickly, the vacuum sensor threshold value is incorrectly telling OpenPnP that it's successfully picked the part. This can be solved by [tuning your vacuum sensor threshold value](../calibration/10-vacuum-sensor/index.md). +- **The feeder Z position is set too high.** If the machine is told to pick a part slightly too high, the nozzle tip doesn't make a good seal on the part, and fails to pick. This is solved by adjusting the [feeder's height](../../feeders/7-setting-pick-position/setting-pick-position.md). - **Lack of suction force from the nozzle tip.** Especially for the smallest N045 nozzle tip, some solder paste can get stuck in the tip, reducing suction force. If you cannot see a tiny circle of light shining through the tip when held up to a light, you might need to clean the tip with a thin wire and some isopropyl alcohol. ### "No result found" error -![no parts found error](/openpnp/vision-pipeline-adjustment/images/no-parts-found.webp) +![no parts found error](../vision-pipeline-adjustment/images/no-parts-found.webp) -- If the component was not identified by the bottom camera correctly, you will likely need to adjust its [Part Identification Vision Pipeline](/openpnp/vision-pipeline-adjustment/5-part-identification-pipeline.md). +- If the component was not identified by the bottom camera correctly, you will likely need to adjust its [Part Identification Vision Pipeline](../vision-pipeline-adjustment/5-part-identification-pipeline.md). diff --git a/docs/openpnp/debugging/nozzle-offset.md b/docs/openpnp/debugging/nozzle-offset.md index 5565705a6..d7c3043bd 100644 --- a/docs/openpnp/debugging/nozzle-offset.md +++ b/docs/openpnp/debugging/nozzle-offset.md @@ -6,12 +6,12 @@ If parts placed with a specific nozzle have a consistent offset in the X and/or ## The nozzle offset for that nozzle needs adjustment -If OpenPnP doesn't have an accurate idea of how far away a nozzle is from the top camera, it's going to place them with that inaccuracy. [Adjust that nozzle's offset](/openpnp/calibration/6-nozzle-offset). +If OpenPnP doesn't have an accurate idea of how far away a nozzle is from the top camera, it's going to place them with that inaccuracy. [Adjust that nozzle's offset](../calibration/6-nozzle-offset/index.md). ## The bottom vision pipeline for your parts needs adjustment -OpenPnP decides how to place parts onto your board based on what it sees in the bottom camera view. If a bright light or reflective surface in view of the camera is making OpenPnP think your part is a different size than it is, you'll see a placement offset. [Adjust your part identification pipeline](/openpnp/vision-pipeline-adjustment/5). +OpenPnP decides how to place parts onto your board based on what it sees in the bottom camera view. If a bright light or reflective surface in view of the camera is making OpenPnP think your part is a different size than it is, you'll see a placement offset. [Adjust your part identification pipeline](../vision-pipeline-adjustment/5-part-identification-pipeline.md). ## The nozzle's tip calibration needs adjustment -When OpenPnP performs a nozzle tip calibration, it profiles any runout in the nozzle tip. If this calibration does not correctly identify the nozzle tip, it can cause placement errors. [Adjust your nozzle tip calibration pipeline](/openpnp/vision-pipeline-adjustment/4-nozzle-calibration-pipeline/). +When OpenPnP performs a nozzle tip calibration, it profiles any runout in the nozzle tip. If this calibration does not correctly identify the nozzle tip, it can cause placement errors. [Adjust your nozzle tip calibration pipeline](../vision-pipeline-adjustment/4-nozzle-calibration-pipeline.md). diff --git a/docs/openpnp/debugging/part-offset.md b/docs/openpnp/debugging/part-offset.md index 2b6586795..d9799f369 100644 --- a/docs/openpnp/debugging/part-offset.md +++ b/docs/openpnp/debugging/part-offset.md @@ -7,5 +7,5 @@ If parts are placed offset **relative to the orientation of the footprint**, the ## The vision pipeline is inaccurate When OpenPnP processes the bottom vision image of a component on a nozzle, it's identifying the part's boundaries and uses that information to place it accurately. If OpenPnP incorrectly finds the boundaries of your part, it will place it inaccurately as well. This usually happens because the nozzle tip is visible by the bottom camera, and OpenPnP incorrectly thinks it's part of the component on the tip. To fix this: - - Lower your bottom camera's exposure according to [the instructions for nozzle tip calibration](/openpnp/calibration/8-nozzle-tip-calibration/nozzle-tip-calibration/). - - [Adjust your bottom vision pipeline](/openpnp/vision-pipeline-adjustment/5-part-identification-pipeline/) to make sure OpenPnP is correctly finding your component. + - Lower your bottom camera's exposure according to [the instructions for nozzle tip calibration](../calibration/8-nozzle-tip-calibration/nozzle-tip-calibration.md). + - [Adjust your bottom vision pipeline](../vision-pipeline-adjustment/5-part-identification-pipeline.md) to make sure OpenPnP is correctly finding your component. diff --git a/docs/openpnp/debugging/rotational-offset.md b/docs/openpnp/debugging/rotational-offset.md index 32e04690e..72b5545d9 100644 --- a/docs/openpnp/debugging/rotational-offset.md +++ b/docs/openpnp/debugging/rotational-offset.md @@ -20,4 +20,4 @@ If parts from both nozzles are causing a consistent rotational offset, it could ## The bottom vision pipeline for your parts needs adjustment -OpenPnP decides how to place parts onto your board based on what it sees in the bottom camera view. If a bright light or reflective surface in view of the camera is making OpenPnP think your part is a different size than it is, you'll see a placement error. [Adjust your part identification pipeline](/openpnp/vision-pipeline-adjustment/5). +OpenPnP decides how to place parts onto your board based on what it sees in the bottom camera view. If a bright light or reflective surface in view of the camera is making OpenPnP think your part is a different size than it is, you'll see a placement error. [Adjust your part identification pipeline](../vision-pipeline-adjustment/5-part-identification-pipeline.md). diff --git a/docs/openpnp/ftp/1-board-setup/index.md b/docs/openpnp/ftp/1-board-setup/index.md index 8c5fe0a5e..20351aa14 100644 --- a/docs/openpnp/ftp/1-board-setup/index.md +++ b/docs/openpnp/ftp/1-board-setup/index.md @@ -156,4 +156,4 @@ Disabling parts on a board is a helpful feature in OpenPnP for DNP parts, altern ## Next Step -Next, you'll [set up a feeder](/openpnp/ftp/2-feeder-setup/). +Next, you'll [set up a feeder](../2-feeder-setup/index.md). diff --git a/docs/openpnp/ftp/2-feeder-setup/index.md b/docs/openpnp/ftp/2-feeder-setup/index.md index 9ce79e354..62b785418 100644 --- a/docs/openpnp/ftp/2-feeder-setup/index.md +++ b/docs/openpnp/ftp/2-feeder-setup/index.md @@ -11,7 +11,7 @@ description: > The FTP PCB has two different types of components: resistors and LEDs. We'll just be populating up the resistors to demonstrate disabling placements. !!! Note "Powered Feeders" - If you purchased any [8mm Photon Feeders](https://opulo.io/products/8mm-feeder), we highly recommend using them for populating the FTP board. Follow the instructions for **[setting them up](../../../feeders/1-overview/feeder-overview.md)** now, and then proceed to the [test run](/openpnp/ftp/3-test-run/) once complete. + If you purchased any [8mm Photon Feeders](https://opulo.io/products/8mm-feeder), we highly recommend using them for populating the FTP board. Follow the instructions for **[setting them up](../../../feeders/1-overview/feeder-overview.md)** now, and then proceed to the [test run](../3-test-run/index.md) once complete. ## Mount a Strip Feeder @@ -118,4 +118,4 @@ The FTP PCB has two different types of components: resistors and LEDs. We'll jus ## Next Steps -Next is [running a test job](/openpnp/ftp/3-test-run/). +Next is [running a test job](../3-test-run/index.md). diff --git a/docs/openpnp/ftp/3-test-run/index.md b/docs/openpnp/ftp/3-test-run/index.md index 499ac834e..794e44b8a 100644 --- a/docs/openpnp/ftp/3-test-run/index.md +++ b/docs/openpnp/ftp/3-test-run/index.md @@ -6,13 +6,13 @@ Before running the job, you'll test the bottom vision pipeline that is used to a 1. Pick a part from your feeder by selecting it in the table in the "Feeders" tab, and clicking on the "Feed and pick" button. - ![feed and pick](/feeders/7-setting-pick-position/img/pick-component.webp) + ![feed and pick](../../../feeders/7-setting-pick-position/img/pick-component.webp) 1. In the "Parts" tab, select the part you just picked and click the "Test Alignment" button. ![test bottom vision](images/test-bottom-vision.webp) -1. Watch the bottom camera feed. Look for a red rectangle superimposed on the image. The rectangle should be perfectly hugging the component. If it is not, adjust your [part identification pipeline](/openpnp/vision-pipeline-adjustment/5-part-identification-pipeline/) before proceeding. +1. Watch the bottom camera feed. Look for a red rectangle superimposed on the image. The rectangle should be perfectly hugging the component. If it is not, adjust your [part identification pipeline](../../vision-pipeline-adjustment/5-part-identification-pipeline.md) before proceeding. ![bottom vision output](images/bottom-vision-detection.webp) @@ -26,4 +26,4 @@ Before running the job, you'll test the bottom vision pipeline that is used to a ![Start placing components](images/One-step-placement.webp) -2. After a few parts are populated, move on to [debugging](/openpnp/debugging) to fine tune your calibration. +2. After a few parts are populated, move on to [debugging](../../debugging/index.md) to fine tune your calibration. diff --git a/docs/openpnp/install-config/import-config/index.md b/docs/openpnp/install-config/import-config/index.md index 3707c2187..6e56b25f8 100644 --- a/docs/openpnp/install-config/import-config/index.md +++ b/docs/openpnp/install-config/import-config/index.md @@ -24,7 +24,7 @@ To use OpenPnP with the LumenPnP, you will need to tell the software about your 5. To install these files in OpenPnP, you'll need to find its configuration folder. In the Ubuntu file manager (Nautilus), press `CTRL` + `H` to show hidden files, or go to the `View` menu and check `Show Hidden Files`. 6. Next, navigate to: `/home/[username]/.openpnp2`. - + 7. Double check that OpenPnP is closed. 8. In the `.openpnp2` folder you'll find the currently used configuration files, `machine.xml`, `packages.xml`, `parts.xml`, and `vision-settings.xml`. It is a good idea to copy these somewhere as backup whenever you make changes like this. @@ -46,7 +46,7 @@ To use OpenPnP with the LumenPnP, you will need to tell the software about your 6. Navigate to: - On Windows Vista and newer: `C:\Users\[username]\.openpnp2`. - On Windows XP and older: `C:\Documents and Settings\[username]\.openpnp2`. - + 7. Double-check that OpenPnP is closed. 8. In the `.openpnp2` folder you'll find the currently used configuration files, `machine.xml`, `packages.xml`, `parts.xml`, and `vision-settings.xml`. It is a good idea to copy these somewhere as backup whenever you make changes like this. @@ -66,7 +66,7 @@ To use OpenPnP with the LumenPnP, you will need to tell the software about your 5. To install these files in OpenPnP, you'll need to find its configuration folder. First, follow [these instructions](https://www.macworld.com/article/671158/how-to-show-hidden-files-on-a-mac.html) to show hidden folders in Finder. 6. Next, navigate to: `/Users/[username]/.openpnp2`. - + 7. Double check that OpenPnP is closed. 8. In the `.openpnp2` folder you'll find the currently used configuration files, `machine.xml`, `packages.xml`, `parts.xml`, and `vision-settings.xml`. It is a good idea to copy these somewhere as backup whenever you make changes like this. @@ -75,4 +75,4 @@ To use OpenPnP with the LumenPnP, you will need to tell the software about your ## Next Steps -The next step is [calibration](../../calibration/). +The next step is [calibration](../../calibration/index.md). diff --git a/docs/openpnp/vision-pipeline-adjustment/5-part-identification-pipeline.md b/docs/openpnp/vision-pipeline-adjustment/5-part-identification-pipeline.md index 53bf7ee67..011263000 100644 --- a/docs/openpnp/vision-pipeline-adjustment/5-part-identification-pipeline.md +++ b/docs/openpnp/vision-pipeline-adjustment/5-part-identification-pipeline.md @@ -42,7 +42,7 @@ If you receive an error after picking a component about `No Results Found`, you ## Pick component -To tune a part identification pipeline, you'll need to pick up the component you want to tune. You can [setup a feeder](../ftp/1-installing-the-feeders/index.md) and use the "pick" button. +To tune a part identification pipeline, you'll need to pick up the component you want to tune. You can [setup a feeder](../ftp/2-feeder-setup/index.md) and use the "pick" button. ![Pick Button For Feeder](images/pick-button-feeder.webp) @@ -123,7 +123,7 @@ The `Threshold` stage is the most commonly edited stage. It turns the camera ima * If the image is too bright, raise the `threshold` setting. !!! danger "Exposure settings" - If you're having trouble getting your image to look like the "Good Threshold" image below, it could be that your bottom camera exposure is too high, making it difficult for OpenPnP to distinguish between the part and the nozzle tip. [Adjust your bottom camera's exposure](/openpnp/calibration/8-nozzle-tip-calibration/nozzle-tip-calibration/), then retry tuning your threshold value. + If you're having trouble getting your image to look like the "Good Threshold" image below, it could be that your bottom camera exposure is too high, making it difficult for OpenPnP to distinguish between the part and the nozzle tip. [Adjust your bottom camera's exposure](../calibration/8-nozzle-tip-calibration/nozzle-tip-calibration.md), then retry tuning your threshold value. ![Threshold Comparison](images/part-threshold-comparison.webp) diff --git a/docs/semi-assembly-3-1/wiring-3-1/index.md b/docs/semi-assembly-3-1/wiring-3-1/index.md index 9bc136834..e625a2c55 100644 --- a/docs/semi-assembly-3-1/wiring-3-1/index.md +++ b/docs/semi-assembly-3-1/wiring-3-1/index.md @@ -213,8 +213,8 @@ In this step, you will mount and connect all the wiring and pneumatic tubing. The next step is installing the Feeder Slot Cable Harness. Select the appropriate installation instructions linked below based off your machine version. - * If your machine is a `v3.1`, [install the harness for Individual Feeder Slots](/feeders/2-install-harness/feeder-slot/#install-the-harness). - * If your machine is a `v3.2` or greater, [install the harness for Feeder Slot Blades](/feeders/2-install-harness/feeder-blade/#install-the-harness). + * If your machine is a `v3.1`, [install the harness for Individual Feeder Slots](../../feeders/2-install-harness/feeder-slot/index.md#install-the-harness). + * If your machine is a `v3.2` or greater, [install the harness for Feeder Slot Blades](../../feeders/2-install-harness/feeder-blade/index.md#install-the-harness). After you complete this step return to this page for guidance on plugging in the last few wires in the next section. @@ -241,4 +241,4 @@ You're done with your build! Time to head over to the OpenPnP section of the doc ## Next Steps -!!! success "You're done with your build! Next, you'll set up [OpenPnP](../../openpnp/install/index.md)." +!!! success "You're done with your build! Next, you'll set up [OpenPnP](../../openpnp/install-config/install/index.md)." diff --git a/docs/semi-assembly-4-0/index.md b/docs/semi-assembly-4-0/index.md index fb1842b1a..843476db9 100644 --- a/docs/semi-assembly-4-0/index.md +++ b/docs/semi-assembly-4-0/index.md @@ -9,7 +9,7 @@ These are assembly instructions for the **v4** LumenPnP. The LumenPnP is an open source Pick and Place project led by [Opulo](https://www.opulo.io/). The LumenPnP is designed to be accessible and suited towards [mid-scale manufacturing](http://stephenhawes.com/level-2-manufacturing/) and rapid in-house prototyping. -![hero image of LumenPnP](/semi-assembly-4-0/v4-iso-hero.webp) +![hero image of LumenPnP](v4-iso-hero.webp) The LumenPnP can reliably place components as small as 0402, and supports both passive and powered feeders. The LumenPnP is completely open source and has an active community with ongoing mechanical, electrical, and software improvements. @@ -44,4 +44,4 @@ Expect assembly to take about **50 minutes**. ## Next steps -Let's dive in! The first step is [unboxing your machine](unboxing/). +Let's dive in! The first step is [unboxing your machine](unboxing/index.md). diff --git a/docs/semi-assembly/wiring/index.md b/docs/semi-assembly/wiring/index.md index 4386feb11..7b5d2e314 100644 --- a/docs/semi-assembly/wiring/index.md +++ b/docs/semi-assembly/wiring/index.md @@ -151,13 +151,13 @@ In this step, you will mount and connect all the wiring and pneumatic tubing. ![](images/mount-strain.webp) !!! Note - If you purchased any [8mm Photon Feeders](https://opulo.io/products/8mm-feeder), follow the steps for [installing the Slot Harness](/feeders/2-install-harness/) now, and then come back here to plug in the last few wires below. + If you purchased any [8mm Photon Feeders](https://opulo.io/products/8mm-feeder), follow the steps for [installing the Slot Harness](../../feeders/2-install-harness/index.md) now, and then come back here to plug in the last few wires below. ## Installing Feeder Slots [Optional] If you have Feeder Slots to install, you should do this now. - * Follow the steps for [installing the Slot Harness](/feeders/2-install-harness/) here. + * Follow the steps for [installing the Slot Harness](../../feeders/2-install-harness/index.md) here. * Afterwards, return to this page for guidance on plugging in the last few wires in the section below. ## Finalize Wiring @@ -188,4 +188,4 @@ You're done with your build! Time to head over to the OpenPnP section of the doc ## Next Steps -You're done with your build! Next, you'll set up [OpenPnP.](../../openpnp/install/index.md) +You're done with your build! Next, you'll set up [OpenPnP.](../../openpnp/install-config/install/index.md)