Crawler Superstructure Assembly

The autonomy package, removed from Balto immediately prior to shipping.

The autonomy package, removed from Balto immediately prior to shipping.

Summary:

The compute housing holds the NUC, Velodyne box, TX2, router and Ethernet switch. This is the first integrated version of the housing where all of the components are in one enclosure. It is designed to be dust and splash resistant with interchangeable laser cut panels for easy access to the internals. This is the housing that we used on Balto when it ran in the tunnels circuit.

The housing itself is composed of three printed parts, and three laser cut panels. The printed parts should be printed with thick walls, and take a combined 40 hours on a crafbot plus at medium printing speeds. The three laser cut panels are designed to 3D printable if need be, though using a laser does allow for nice graphics.

This version of the electronics housing was completed in just over a week and, although I like it on the whole, there are still a lot of modifications I want to make. In particular to do with weight distribution and water resistance. With that in mind, I have chosen to include a slideshow of assembly photos rather than a full build log. If you are building up this version (and to be clear I do like it rather a lot) definitely feel free to reach out and I can provide you with more detailed instructions.

Favorite Elements:

This design had a few elements that I felt worked particularly well.

  • NUC Switch - From a purely aesthetic standpoint, the NUC’s power switch is definitely my favorite part of the housing. It’s got a green led ring very reminiscent of a lightsaber, and mounts nearly flush to the outer panel. On a practical note it is both easier and more water resistant than just having a hole to use the built in one.

  • Acrylic panels - Using acrylic wall panels let us iterate the mounting design much faster than if we had been using printed panels. They are also clear which is nice for checking that all’s well. The panels are still designed so they can be printed if the laser ever goes down.

  • Velcro - Our original design had everything mounted with screws. Using velcro for some of the lighter weight parts made it much easier to assemble and disassemble things during the debug phase.

  • Waterproof wire outlet - Using a compressed foam sandwich to pass cabling into and out of the box worked perfectly. It’s easy to install and remove, but also virtually splash proof.

  • Aluminum reinforcement - Using aluminum reinforcement rods to help prevent de-lamination seems to have worked. Although we haven’t yet had any highly energetic crashes.

Areas for improvement:

This version of the housing worked well, but it was designed in a short period of time and there is certainly room for improvement. A few particularly notable shortfalls can be found below:

  • Weight - The NUC, Velodyne, and Velodyne converter are all above the flying bridge. This results in a dangerously high center of mass. Addressing this will likely require a full redesign, but remains a top priority.

  • Dust - The lack of filters means dust can build up in the system over time. Was not an issue for short-term operations, but could become an issue over multiple days or weeks of testing.

  • Access - The system currently requires removing about 8 screws to address any wiring problems. Not bad, but certainly less convenient than say snaps or clamps. The top is 1/4-20 while the sides are 4-40 which I also do not love.

  • Screws - We currently use both 3/8 and 1/4 length 4-40 socket head cap screws. Switching to just the 3/8 would require minimal modifications and would improve the assembly process.

  • Heat - Under certain operating conditions it might be possible for the TX2 or NUC to overheat when running full out. We did not experience this at competition, but better thermal management remains a priority.

  • Power - A more considered plan for power distribution and regulation would improve reliability and reduce the risk of accidental damage during assembly.

Build Photos:

The housing base and lid. The two pieces interface securely with a 45 degree chamfer and are held together by the 4 1/4-20 screws. This setup worked well and was very robust in practice, I would use it again.

The housing base and lid. The two pieces interface securely with a 45 degree chamfer and are held together by the 4 1/4-20 screws. This setup worked well and was very robust in practice, I would use it again.

The upper us hub was held into a 3D printed mount using Velcro.

The upper us hub was held into a 3D printed mount using Velcro.

The aluminum rods were cut to length and then installed with a drill to help ream out the hole. CA glue, or epoxy should be added to fight laminant failures. If spinning the rods proves insufficient then grinding a separate rod with a d-bit tip will…

The aluminum rods were cut to length and then installed with a drill to help ream out the hole. CA glue, or epoxy should be added to fight laminant failures. If spinning the rods proves insufficient then grinding a separate rod with a d-bit tip will help.

We were unable to get the correct size of header shipped in time, so we soldered our switch extender directly onto the NUC. (You can see the hole we used to use for poking the onboard button.

We were unable to get the correct size of header shipped in time, so we soldered our switch extender directly onto the NUC. (You can see the hole we used to use for poking the onboard button.

The button side of the connector. It is connected white to white and black to black so that the button and LED go to the correct parts of the header.

The button side of the connector. It is connected white to white and black to black so that the button and LED go to the correct parts of the header.

Velcro was used for holding down the D-Link, TX2, and lower USB switch.

Velcro was used for holding down the D-Link, TX2, and lower USB switch.

The lower USB switch and D-Link were Vecro’d together, and then Velcro’d to the floor of the housing.

The lower USB switch and D-Link were Vecro’d together, and then Velcro’d to the floor of the housing.

The TX2 was first mounted on a 3D printed plate with standoffs.

The TX2 was first mounted on a 3D printed plate with standoffs.

All of the various components fit with a bit of room to spare (though not much).

All of the various components fit with a bit of room to spare (though not much).

Crawler ODrive housing

Summary:

Our first Odrive housing, installed on the underside of the flying bridge without the venting flue.O

Our first Odrive housing, installed on the underside of the flying bridge without the venting flue.O

The ODrive housing, is mounted on the underside of the flying bridge, and holds the Odrive and its attendant power resistor. This housing was developed in it’s current form for our tests at Eagle Mine, and is intended to be dust and splash resistant, and features panel mount connectors for everything except the auxiliary power output (which is run out the air vent if needed).

With both fans running, we found the maximum sustainable current to be somewhere on the order of 70amps. During autonomy testing we were able to set our current limit to 85a peak, with an ambient temperature of 105f and experienced no issues while testing.

ODrive:

Review:

The ODrive is a two-channel brushless servo controller, with built in FOC. The peak current is around 100a and the sustained current capacity is on the order of 70, depending on cooling. The unit comes in either a 24v, or a 56v configuration, and can communicate over serial, USB, CAN, or PPM. Although it should be noted that USB is the only option that is fully fleshed out. The price at time of writing is around 120$ for the low voltage variant, and 150$ for the high voltage variant.

In practice, we found that the ODrive worked okay, but had lots of fairly fiddly configuration that needed to be worked out. Not all of which was documented on the Odrive website. I would certainly re-use the ODrive for a budget-constrained vehicle project in the future, and would have no qualms about using it as a position controller (which is what it is really designed for), but would be hesitant to install it in a high-reliability application where the occasional re-start is unacceptable. The learning curve is fairly steep if you have no prior experience with FOC or servo controllers, so expect to allocate around 2 weeks to getting comfortable and then around 1 week to actual setup and testing.

Integration:

The original encoder setup. The new one keeps a similar structure, but switches to an in-line no contact magnetic encoder. With this configuration we periodically lost ticks and would eventually see the FOC fail when it lost track of the rotor posit…

The original encoder setup. The new one keeps a similar structure, but switches to an in-line no contact magnetic encoder. With this configuration we periodically lost ticks and would eventually see the FOC fail when it lost track of the rotor position.

Once connectorized, the ODrive had no issues with driving Balto’s main drive motor. We used an AS5047p magnetic encoder, mounted in-line with the motor, with the magnet directly mounted to the motor shaft, to provide ABI feedback. We did find that the index pulse is a non-optional part of the setup, as it allows ODrive to prevent the accumulation of missed encoder pulses (which did occur). The encoder is mounted to a vertical plate, which is in turn mounted to a small 3D printed breadboard that exactly fits into the chassis, and is then glued in place. For competition, we have short motor and encoder cables, but have not had any problem using longer cables (order of 2 feet) during testing. It should noted that although the system is wired for SPI communication, that is not currently supported by the ODrive, so only relative position is used.

Configuration Settings:

By far the most important part of using an ODrive (as with any motor controller really) is getting it configured correctly. Rather than storing our configuration settings on the motor driver, we choose to re-upload our non-standard configuration settings each time the Odrive is reset. This worked well, and helps us keep our ODrives interchangeable for other projects as needed. We also fully redo the calibration process each time the ODrive is initiated. This introduces terrain dependent variability though, so I would be cautious about taking the same approach.

We still have a few issues with our performance, and of course our settings are specific to the motor and power train we were using, but on the whole they did work well so I have included them below for reference. Note that if your hardware is different you will need different values.

  • axis1.motor.config.current_lim = 80

  • axis1.controller.config.vel_limit = 233333 + 50000

  • axis1.motor.config.calibration_current = 40

  • config.brake_resistance = 0.8

  • axis1.motor.config.pole_pairs = 2

  • axis1.encoder.config.cpr = 400

  • axis1.motor.config.requested_current_range = 60

  • axis1.controller.config.control_mode = 2

  • axis1.encoder.config.use_index = True

  • axis1.controller.config.vel_limit_tolerance = 0

Splash Proofing:

The housing fully assembled in it’s “splash proof” configuration. The lack of sealing around the edges is a little worrying, but did not prove an issue in practice. For future builds laser cut gaskets could be used.

The housing fully assembled in it’s “splash proof” configuration. The lack of sealing around the edges is a little worrying, but did not prove an issue in practice. For future builds laser cut gaskets could be used.

One of the key requirements for this motor housing was that it be as splash proof as possible. This was accomplished by adding a cover plate to the air inlets, and a circuitous path to the air outlet. As designed, there is no way for water to directly splash onto the PCB without taking at least two 90 degree turns. The panel mount connectors were sealed with CA glue (if permanent) or glue-gun glue (if temporary). During testing at the Eagle Mine, we created puddles and ran Balto through them without any issues. The system also held up fine at the actual competition which featured puddles on the order of a few inches deep. Although not as secure as full waterproofing, I do like this design and plan to re-use it for other protects.

Build Log:

Before beginning the build, it is important to source all of the required parts. This means printing the base and flue, along with the upper and lower Odrive covers. We choose to laser cut the covers for aesthetic reasons, but all parts can be printed on a Craftbot+ if need be. A soldering iron, Locktite 222, CA glue, heat shrink, 14 gauge wire, ribbon cable, and pliers will also come in handy. All of the mechanical hardware can be purchased from Micmaster, and the electrical hardware (excepting the Odrive itself) can be purchased from Digikey. Please see the list below for an approximate list of the require parts. The various wires, cables, and pin headers are also required along with lock washers or Locktite.

Purchased Components:

Most of the required parts laid out prior to assembly

Most of the required parts laid out prior to assembly

  • (12x) 1/2in 4-40 standoffs.

  • (10x) 4-40 x 1/4 cap screws.

  • (8x) 4-40 x 3/8 cap screws.

  • (8x) 1/4-20 heatset inserts.

  • (22x) 4-40 heatset inserts.

  • (2x) 40mm 12v fan.

  • (2x) male XT60

  • (1x) female XT60

  • (1x) female XT90

  • (3x) 6mm female bullet

  • (1x) Odrive, no headers.

  • (1x) D-SUB, 9 pin, female —> ribbon.

Assembly Steps:

68966651_726986087749181_3651018592998129664_n.jpg
69069669_2362534380654852_2825536581765431296_n.jpg
  1. Insert the heat-set inserts into the 3D printed and laser cut parts. Note that the outer four holes, and middle two holes on the lower lid are clearance holes. Likewise, the four holes on the upper lid are all clearance holes and do not need heat-set inserts. For the 1/4-20 heat-set inserts, only the four outer holes in each six hole pattern are used. The middle two can be left empty.

  2. Install the Odrive, Odrive resistor, fans, and upper and lower lid plates. Once the heat-set insert angles have been confirmed as adequate, remove the two lid plates, leaving the Odrive board and Odrive resistor installed.

  3. Solder together XT90 input cable, resistor lines, and female 6mm bullet connector cables, using the housing and installed Odrive to get the correct lengths. Take care to leave several inches of extra length for connecting each wire to the Odrive. All of these connections should be made with high current (14 gauge or larger) wire. Heat shrink should be used to insulate all connections, and should extend fully over the bullet connectors.

  4. Next assemble the female D-SUB panel mount connector. If using multi-colored wire place the black strand such that it runs to the first position on the connector. Measure the ribbon cable to the 1st encoder input on the Odrive and cut it with about 1.5 inches of margin. Once cut to length, connect the 5 position crimp-on connector with male pins using the following mapping. The D-SUB pin numbering follows the standard convention for this project.

    1. 1st D-SUB (MISO) —> NC.

    2. 2nd D-SUB (GND) —> 5th crimp position.

    3. 3rd D-SUB (MOSI) —> NC.

    4. 4th D-SUB (B) —> 3rd crimp position.

    5. 5th D-SUB (CLK) —> NC.

    6. 6th D-SUB (A) —> 2nd crimp position.

    7. 7th D-SUB (CS) —> NC.

    8. 8th D-SUB (5v) —> 1st crimp position.

    9. 9th D-SUB(INDEX) —> 4th crimp position.

  5. Test fit all panel mount connectors, including the usb panel mount, and check all of the required lengths. If viable solder the wires in place as appropriate and use CA glue to secure the XT90 connector, and bullet connectors in place. Otherwise, revise any incorrect lengths. The USB mount, and D-SUB can be secured with screws, (though the D-SUB should snap in place).

  6. Using medium (larger than 19 gauge) wire, solder the two auxiliary power taps onto the Odrive itself. One should extend into the housing for use powering the fans, and the other should extend out of the housing through the air vent for use powering the steering system if needed.

  7. At this point the housing should be fully assembled in an electrical sense. It may make sense to test that it works now, before progressing on to the cooling fans and lids.

  8. Thread the fan wires through the small holes in the larger of the two lid plates. Be sure to include some heat-shrink or other tubing to provide strain and abrasion relief. The fan wires can now be soldered together to an XT60 connector.

  9. The entire housing can now be assembled. Use ether lock washers, or low strength Locktite to secure all of the screws, and be sure to thread the external power tap out through the vent if in use.

Crawler E-stop

The e-stop installed on Balto, with our test transponder in palace of DARPA's.

The e-stop installed on Balto, with our test transponder in palace of DARPA's.

Overview:

One of the key requirements for any large (we count) robot competing in the DARPA challenge is a functioning estop system. When our original solution couldn’t be delivered on time, we decided to build our own. This is one of the rougher systems on the robot, mostly because it was built in so little time, but it works well, and is definitely nice to have. I plan to use a similar architecture (dropping Tier 2) on future robots even when it is not required.

Requirements:

For SUBT, DARPA requires that teams implement a 3-tiered E-stop system as follows. They also require that the robot give some indication that it is in an e-stopped state for tier 2 triggers. DARPA does not require that teams implement hardware E-Stops. However, for tier 3 that does seem prudent.

  • Tier 1: A wireless E-Stop controlled from the team’s base station.

  • Tier 2: A wireless E-Stop controlled by an XBee transponder mounted to the robot and controlled by DARPA.

  • Tier 3: A physical latching E-Stop (big red button).

For the first and second tiers, we will use a piece of code that inserts zero-motion commands to the twist mux node at a higher priority than ether the joystick or move-base. A Teensy (running similar firmware to steering) will be used to monitor the transponder for shutdown requests.

The system block diagram for Balto’s e-stop. The pullups are nice to have, but can mostly be ignored.

The system block diagram for Balto’s e-stop. The pullups are nice to have, but can mostly be ignored.

Balto with a tier 2 e-stop enabled. Note the Blue indicator led is lid.

Balto with a tier 2 e-stop enabled. Note the Blue indicator led is lid.

documentation:

(versions as of 8/5/2019)

Assembly:

This part of the project was completed on a very short time scale after our original solution fell through. It is a pretty rough build, and so I have left these notes pretty bare bones on the theory that (hopefully) I will be the only person needing to follow them. If that is not the case, and you are confused definitely feel free to reach out and I’d be more than happy to walk you through the process.

One item of particular note is the pin numbers. I frequently refer to pins according to a numbering scheme which is specific to the crawler project. It runs as follows: For all D-SUB connectors, pins are numbered such that looking at a female connector, with the short side facing up the first pin is in the lower left corner, and the second pin is in the upper left corner. For through-hole headers, the pins are numbered such that with the shroud gap facing down pin 1 is in the lower left hand corner of the header, and pin 2 is in the upper left hand corner of the header. I picked this numbering scheme because it means that adjacent wires in a ribbon cable increase and decrease by 1 relative to their neighbors. By convention, I have oriented the ribbon cable such that black is always pin 1 and red is always pin 9, the 10th pin on the rectangular headers is never used.

The CADs, firmware, and control software can all be found on the github. In addition to the 3d printed parts, the following components were used (along with ribbon cable and heavier gauge wire for power transmission.

Perf Board:

The first step in building the e-stop is to build up the perfboard with the Teensy and two optocouplers. The perfboard is by far the most fiddly part of the build, and I plan to replace it with a PCB when time exists. In the mean time, I have included fabircation suggestions and wiring notes below.

Begin by drilling and cutting a piece of perfboard to match the schematic in figure A. Once that is done, solder the Teensy headers (or Teensy itself, though I would advise against it), optocouplers, and shrouded headers, roughly as shown in figure C. Next, both optocoupler’s input cathode’s to Teensy ground, and the input anode’s to D16 and D23 (for led control and main power control respectively). Now, verify that the connections work by writing a test script to the Teensy (really, you want to catch these issues now before the rest of the wires go on), then connect the two shrouded headers according to the following tables.

Header 2:

This header connects the teensy to the D-Sub panel mount connector by way of a ribbon cable.

Pin 1 - Optocoupler High Side (D23 controlled)

Pin 2 - Optocoupler low side (D23 controlled)

Pin 3 - Optocoupler high side (D16 controlled)

Pin 4 - Optocoupler low side (D16 controlled)

Pin 5 - Short to pins 6 and 8

Pin 6 - Short to pins 5 and 8

Pin 7 - Short to pin 3

Pin 8 -Short to pins 6 and 5

Header 1:

This header connects the teensy to the D-Sub panel mount connector by way of a ribbon cable.

Pin 1 - Teensy Ground

Pin 2 - Teensy 5v

Pin 3 - Teensy D8

Pin 7 - Teensy D10

Pin 8 - Teensy D9

Figure A: Cut down the perf board to match these dimensions and holes. When in doubt it is better to be slightly too small than too large, as you won’t be lacking for board space.

Figure A: Cut down the perf board to match these dimensions and holes. When in doubt it is better to be slightly too small than too large, as you won’t be lacking for board space.

Figure C: The pulldown resistors in this photo are optional, and I would suggest leaving them off.

Figure C: The pulldown resistors in this photo are optional, and I would suggest leaving them off.

Figure B: The underside of the board, presented here with some horror. Note that the high-side input for the main power optocoupler is provided by a resistor. (In my defense, we were very short on time and I did clean it up more before install)

Figure B: The underside of the board, presented here with some horror. Note that the high-side input for the main power optocoupler is provided by a resistor. (In my defense, we were very short on time and I did clean it up more before install)

Figure D: Place the reference corner of the board in the forward/top corner of the housing wall.

Figure D: Place the reference corner of the board in the forward/top corner of the housing wall.

Wiring:

Figure E: Power wiring harness, the ground wire should be sized to fit across the estop housing. The vcc wires should start out around 6in in length and can be cut down to ease assembly once the other wiring is completed.

Figure E: Power wiring harness, the ground wire should be sized to fit across the estop housing. The vcc wires should start out around 6in in length and can be cut down to ease assembly once the other wiring is completed.

Once the perfboard is completed, begin the wiring process. First, create the power wiring harness as shown in Figure E (Note that it is easier to make the VCC wires shorter than longer), and test that it fits across the housing. You will want to use no less than 14 gauge wiring, and 12 would be better if available. Note the secondary wires, which will be used to run power to the switching system and indicator led.

With the power harness completed, the next step is to begin routing each component. The list below outlines how each component is connected to the others. Unless otherwise noted, all connections can be made with 26 gauge wire. For connections running to crimp terminals use solder balls or crimp-on ring terminals. For connections running to the perf board use single location femail pin headers.

All of the components connect to the second pin header except the ribbon cable.

Connections by component:

Estop switch block - One terminal connects to VCC IN, the other connects to the perf board (pin 2).

Estop led block - One terminal connects to perfboard pin 7, the other connects to perfboard pin 8.

Indicator led - One pin connects to perfboard pin 4, the other connects to perfboard pin 8.

VCC IN - Connects to the SSR high side (12 gauge wire), Estop switch block.

VCC OUT - Connects to the SSR low side (12 gauge wire), perfboard pin 3.

SSR - Switch H: pin 1, Switch L: battery ground, Controlled H: VCC IN, Controlled L: VCC OUT.

A not-quite-final test fitup of the wiring. I strongly recommend making the leads as long as possible even if it makes assembly slightly trickier.

A not-quite-final test fitup of the wiring. I strongly recommend making the leads as long as possible even if it makes assembly slightly trickier.

Connections by pin (header 2):

Pin 1 - SSR control high side.

Pin 2 - Estop switch terminal block.

Pin 3 - VCC OUT (XT90 output).

Pin 4 - Indicator led(either lead).

Pin 5 - Battery GND.

Pin 6 - Indicator led(either lead).

Pin 7 - Estop led terminal block (either terminal).

Pin 8 - Estop led terminal block (either terminal).

The panel mount connector should be outfitted with a ribbon cable long enough to reach the perfboard, connected such that pin 1 on header 1 connects to pin 1 of the D-Sub connector. With the wiring complete you can now install the SSR onto the bottom plate, and the E-stop, indicator led, perf board, and panel mount connectors into the housing.

Transponder:

After you have assembled the e-stop housing, and tested that all of the components work, the final step is to wire up the transponder carrier board. Connect a male D-Sub connector to a length of ribbon cable, and then solder the ribbon cable in place according to the following table. Note that pins are given according to their female counterpart (and incidentally their corresponding perfboard pin). Once you have installed the transponder and verified that it works, consider using epoxy or CA glue to strain-relieve the solder joints.

Pin 1 - GND

Pin 2 - 5V

Pin 3 - DIO1

Pin 7 - DIN

Pin 8 - DOUT

Crawler Steering

Page Overview:

The completed inside of the steering module. I don’t love the force being exerted on the usb connector, but at least this way there’s minimal cycling.

The completed inside of the steering module. I don’t love the force being exerted on the usb connector, but at least this way there’s minimal cycling.

This page documents the assembly process for version 1.2 of the Crawler’s steering module. This version is backwards compatible with V1.1, but now features panel mount IO ports to bring it in-line with the current generation of the O-Drive housing. We are considering this steering module to be “mud resistant” but it is in no way waterproof.

Note: For now I am not going to be posting code, or cads, for this project. With that said, if you are looking to make something similar please do message me and we can work something out (there’s a contact form on the “about” page).

Project Overview:

This post is part of my ongoing efforts to develop a new ground robot for Caltech’s/JPL’s DARPA challenge team. This year’s competition is to create a team of robots to explore an underground environment and report back a map, along with the location of specific objects inside the cave network.

Competition web-page: https://www.subtchallenge.com/

My specific project is to convert a Traxxas X-MAXX to be fully autonomous. It is hoped that the X-MAXX platform will be both faster, and more versatile, than the husky we use now (not to mention cheaper).

Build Process:

Notable Parts:

  • 4-40 heat set inserts (8)

  • 4-40x3/8 socket head cap screws (8)

  • Female nine pin D-Sub, panel mount, PN: A-DFF 09LPIII/Z

  • Female 10 pin ribbon cable header, PN: 61201023021

  • Male 10 pin header with shroud, PN: 61201021621

  • nine strand ribbon cable.

  • usb panel mount from Adafruit.

Assembly Steps:

  1. Print the housing, lid, and drill jig. It is recommended that the wall and top/bottom thickness exceed 1.6mm. Infill should be set at greater than 15%.

  2. Cut the proto-board to:

  3. Place the proto-board beneath the drill jig. Use the jig to drill the 4 mounting holes, then cut the proto-board to size (being sure to leave at least 4 full rows to each side of the Teensy).

  4. Install the heat-set inserts in the housing using a soldering iron.

  5. Solder the pin-header in place with the notch facing the Teensy and then solder each pin as follows:

    1. NC

    2. NC

    3. Connect to pin 6.

    4. Connect to Teensy ground.

    5. Connect to Teensy ground.

    6. Connect to pin 3.

    7. Connect to Teensy pin D5.

    8. NC

    9. NC

  6. Assemble the D-Sub cable such that pin one of the D-Sub and pin one of the female pin header are connected. The pin header has a small triangle to mark pin one.

  7. Install the D-Sub connector and panel mount usb. Coil and secure the USB cable as needed.

  8. Test and Install!

V1.1 for comparison.

V1.1 for comparison.

V1.2 of the steering module installed on our first robot.

V1.2 of the steering module installed on our first robot.

Chassis Side:

In the robot chassis place a BEC (connected to the ODrive auxiliary power tap) and distribution board connected as follows.

The wiring from the 6 pin header to the two 3 pin headers.

The wiring from the 6 pin header to the two 3 pin headers.

I would strongly encourage closing the lid prior to testing…

I would strongly encourage closing the lid prior to testing…