Skip to content

X13 Quad ESC Controller

Grant Geyer edited this page Aug 24, 2021 · 2 revisions

IMAGE OF PCB, potentially including its place on the relevant ROV

PCB Summary
Vehicle X13, ROV Triton
Contributors Rachel Livesay
Predecessors X12 Quad ESC
Success? Yes, with minor finals

Architecture Link
SID Link
REPO Link

What purpose does this board serve?

The Quad ESC controller board serves as a communicator between the backplane, the raspberry pi, and the Lumenier ESCs located on the adapter board. CAN signals from the Pi, as well as programming signals and ESC IDs from the backplane are routed to the STM microcontroller on the board. From this micro, PWM control, Telemetry, and ADC are routed to the Lumenier ESC on the ESC adapter board.

To what boards (or enclosures etc) does it connect?

The backplane connects to this board via a 12 Pin Samtec MMS Connector on the back of the board. The connector has 4 pin outs for 3.3V, 1 grounded pin, 2 for high and low CAN signals, 1 ESC_ID pin, 3 programming pins (NRST, SWDIO, SWCLK), and an empty pin for future expansion). This then connects to the Lumenier ESC through an 8 pin JST connector, which has 4 pins for motor PWM from the STM, 1 for Telemetry, and 1 for ADC output from the ESC. The LIPO_GND pin is, in fact, grounded, while the LIPO_IN pin is not connected to anything else on the board. The ESC is powered by 12V rather than the 3.3V on this board, making the connection unnecessary. The adapter board is situated below the backplane, so the wire that bridges the two boards slips through a cut-out in the backplane board.

What priorities did you have in your design? What design considerations did you have? What methodologies did you follow? (routing a differential pair, keeping something separate for isolation, etc)

The CAN H/L traces as well as the CAN TX/RX and the OSC IN/OUT also need to be trace-matched when routing (the traces in those pairs need to be the same length within 0.1 or so).

What changes were made to your board from the previous year(s)?

This board is a completely new addition from last year, as the switch from four separate ESCs on the X12 board to the Lumenier 4-in-1 made it hell to route on one board and the backplane made it necessary to split the board into two. The board outline is relatively small since the components don't require much space, and the only real limiting aspect is the width of the board since three copies need to fit side by side on the backplane.

Another small change is the routing of the five programming headers on the top of the board through the connector to the backplane. This not only allows access for reprogramming through the headers, but also allows for potential reprogramming while the controller is still connected to the backplane without needing to open up X13. There's also the addition of an ID Resistor, which makes the boards swappable from ESC to ESC, so there's no need to have any certain ordering in the connection of the copies of the boards to the backplane.

Why did you pick certain components for your board? (If you don't know the answer/were told, now is a great time to ask)

Component choice is virtually unchanged from last year, aside from the removal of a SN74CBTLV3257PWR Multiplexer, which was used to mux the programming signals and deemed unnecessary for this year. The STM micro is the main component that everything else connects to, and this choice is unchanged from the X12. Programming of the ESC is mostly done by the embedded team, but inputs should either be on an analog or digital pin and the oscillator in/out are labeled already and pretty difficult to mess up. NRST links to a reset switch on the board that's really fun to click. :)

What factors affected your board outline?

What reference materials did you use for circuits? (Provide links to these)

What is the throughput of your board (power, data/speeds, etc)?

What issues did you have with your board (in both design and assembly)

How did you go about integrating with mechanical? What changes did you make?

Other notes: what else about your board should be mentioned?

What errors/mistakes were made?

If you had to do it over again, what might you change?

If this board were to be redone, I would have shrunk the width by a tad. The ESC board was split into two rather last minute, and the spacing on the left side of the micro looks rather sloppy (purely for aesthetics, it still works without issue thankfully). There is a resistor between the TLM trace on the lower left side of the board and the 3.3V trace that needed to be flywired after the boards were ordered which should have been integrated into the schematic beforehand. (It's integrated now, so no worries. We just didn't know to add it before ordering.) However, the pullup resistor is actually not needed for the 4in1 ESC. It was also found on a scope that the logic low didn't always reach 0V, so a op amp as a comparator was added to the schematic, though UART data was read fine without it.

In the future, a 12V to 3.3V converter could be added so as to not need two separate power supplies to power the controller and the ESC in isolation. The 12V would most likely be filtered down through a Murata 3 pin DC-DC converter (which is already in the X13 Parts Library repository).

The solder mask was accidentally extended over the pins on the connector, which made it a little tricky to solder over, but that has been fixed at a part-level and shouldn't be an issue for the next iteration.

Bracing underneath the left side of the board is most likely not necessary due to the small size and weight of the board, but for security it may be beneficial to add bracing to decrease stress and possible breakage. Soldering components went smoothly for the most part (but my god,,,,,, remember to check the orientation of the micro before soldering. Also don't take soldering tips from Erin for chips but please don't tell them I said that.)

Speaking of bracing, the outline of the JST connector is slightly off. There needs to be two small pads on both of the smaller sides to secure the connector to the board. We forgot about those and just used super glue that I may have glued my fingers together with, but extra pads would be ideal.

Calculations

No major calculations for this board since the amperage from the 3.3V isn't too much of an issue with the components we have. The only real calculation-type decisions that were made were the choice in pinout to the backplane (4 pins of 3.3V so as to not overload one pin and add redundancy just in case of pin failure). More pins could have been added to balance out the 3.3V pins.

Links

Any addition links if relevant

Side Notes

  • Any fun side details

Keywords

Search keywords.

Tech Report Paragraph

The Quad ESC controller board connects the backplane to the new Lumenier Quad ESC on the adapter board, which has been split from the controller board to add modularity. The STM microcontroller controls the PWM sent to the ESC, and communicates with the Lumenier via the telemetry pin. Changes from last year include new programming connections that allow for reprogramming ESCs without needing to desolder the PWM wires from the board or dismantle the ROV and dynamic IDs that make the boards hot-swappable.

Pictures

Clone this wiki locally