{"publisher":"Xirkit — the structured parts marketplace","canonical":"https://www.xirkit.io/products/pololu-romi-encoder-pair-kit-12-cpr-1257","markdown":"https://www.xirkit.io/products/pololu-romi-encoder-pair-kit-12-cpr-1257/data.md","mcp":"https://www.xirkit.io/mcp","note":"Every value is traced to a cited source (see sources and per-value src). Null means unknown, never zero.","record":{"id":"1257fbbc-c494-5302-86aa-4de87c99e3ab","mpn":"3542","name":"Pololu Romi Encoder Pair Kit 12 CPR","manufacturer":"Pololu","family":"encoder","summary":"Pololu #3542 Romi encoder pair kit: two dual-channel Hall sensor boards + two 6-pole magnetic discs for the Romi chassis mini plastic gearmotors, 12 counts per motor-shaft revolution (~1440 per wheel revolution), 3.5–18 V, open-drain A/B outputs (external pull-ups), 20 × 18.7 mm, 0.1″ pads with low-profile headers.","schema_version":"3.0","revision":null,"tags":["encoder","magnetic encoder","incremental encoder","rotary encoder","quadrature encoder","12 cpr","hall effect","pololu","robotics"],"sources":[{"other":{},"id":"datasheet","url":"https://www.pololu.com/file/0J1208/romi-encoder-pair-kit-schematic-diagram.pdf","title":"Pololu Romi Encoder Pair Kit 12 CPR datasheet","publisher":"Pololu","kind":"datasheet","retrieved_at":"2026-09-29T07:49:47+00:00","field_paths":["spec.compliance.certifications","spec.constraints.electrical.supply_voltage_max_v","spec.constraints.electrical.supply_voltage_min_v","spec.geometry.cad.bbox.height_mm","spec.geometry.cad.bbox.length_mm","spec.geometry.cad.bbox.width_mm","spec.geometry.cad.envelope_complete","spec.geometry.cad.mesh_path","spec.geometry.cad.step_path","spec.geometry.cad.verification","spec.geometry.dimensions.height_mm","spec.geometry.dimensions.length_mm","spec.geometry.dimensions.width_mm","spec.geometry.other.weight_g","spec.provides.channels","spec.provides.encoder_type","spec.provides.features","spec.provides.index_channel","spec.provides.interface","spec.provides.mounting","spec.provides.other.magnet_poles","spec.provides.output_type","spec.provides.resolution_cpr","spec.provides.sensing","spec.usage.connectors","spec.usage.pinout","spec.usage.pinout_complete","spec.usage.requirements.other.pull_up"],"notes":"sha256 0d05ba0954c0bda9cc2a4fbec5417718cb138ef89592057ced76779c79a918e2"},{"other":{},"id":"offer0","url":"https://www.pololu.com/product/3542","title":"www.pololu.com listing","publisher":null,"kind":"distributor","retrieved_at":"2026-09-29T07:55:53+00:00","field_paths":["offers"],"notes":null}],"assets":[{"other":{},"kind":"datasheet","url":"https://www.pololu.com/file/0J1208/romi-encoder-pair-kit-schematic-diagram.pdf","label":"Datasheet","verification":"manufacturer","notes":null},{"other":{},"kind":"image","url":"https://a.pololu-files.com/picture/0J9433.1200x627.jpg?0a29372e13e957c9cb3a6c1391fef1f5","label":"Pololu 3542 Romi encoder pair kit — boards, magnetic discs and headers","verification":"manufacturer","notes":"inspected: two black Romi-shaped encoder boards with 6 pads, two black magnetic discs, straight and right-angle 6-pin headers and female sockets"},{"other":{},"kind":"cad","url":"pololu-3542.step","label":"STEP (generated from datasheet drawing)","verification":"generated","notes":"cad_check passed"}],"offers":[{"other":{"sku":"3542","price_breaks":[]},"supplier":"www.pololu.com","url":"https://www.pololu.com/product/3542","currency":"USD","unit_price":9.95,"stock_status":"in_stock","region":"US","minimum_quantity":null,"checked_at":"2026-09-29T07:55:53+00:00","lead_time_days_min":null,"lead_time_days_max":null,"destination":"US","destination_postal_code":null,"notes":null}],"best_for":[{"other":{},"label":"Robotics and motor control","reason":"12 CPR quadrature feedback for closed-loop motor speed and position control, 3.5–18 V supply.","basis":"engineering_inference"},{"other":{},"label":"Mobile robot drive trains","reason":"Solders to the Romi chassis gearmotors and gives about 1440 counts per wheel revolution for wheel odometry and speed control.","basis":"engineering_inference"}],"children":[],"spec":{"other":{},"usage":{"other":{},"pinout":[{"id":"M1","kind":"motor_terminal","label":"M1","notes":"motor terminal pass-through","other":{},"position":"JP1-1","connector":"JP1","functions":["m1"],"electrical":{}},{"id":"M2","kind":"motor_terminal","label":"M2","notes":"motor terminal pass-through","other":{},"position":"JP1-2","connector":"JP1","functions":["m2"],"electrical":{}},{"id":"VCC","kind":"power_in","label":"VCC","notes":"sensor supply 3.5–18 V","other":{},"position":"JP1-3","connector":"JP1","functions":["power_in"],"electrical":{}},{"id":"A","kind":"signal_a","label":"A","notes":"quadrature output A, open-drain — needs an external pull-up (R1 not populated)","other":{},"position":"JP1-4","connector":"JP1","functions":["a"],"electrical":{}},{"id":"B","kind":"signal_b","label":"B","notes":"quadrature output B, open-drain — needs an external pull-up (R2 not populated)","other":{},"position":"JP1-5","connector":"JP1","functions":["b"],"electrical":{}},{"id":"GND","kind":"ground","label":"GND","notes":"ground","other":{},"position":"JP1-6","connector":"JP1","functions":["ground"],"voltage_v":0,"electrical":{}}],"derived":{},"connectors":[{"id":"jp1","kind":"6 through-hole pads, 0.1″ pitch; low-profile male + female headers included","other":{},"pitch_mm":2.54,"pin_count":6}],"pin_mappings":[],"requirements":{"other":{"pull_up":"none on board (R1/R2 not populated) — add external pull-ups"},"data_inputs":[],"power_inputs":[]},"pinout_complete":true},"geometry":{"cad":{"bbox":{"width_mm":18.7,"height_mm":5,"length_mm":20},"features":[],"mesh_path":"pololu-3542.stl","step_path":"pololu-3542.step","assumptions":[],"verification":"generated","envelope_complete":true},"other":{"weight_g":3},"derived":{},"dimensions":{"other":{},"width_mm":18.7,"height_mm":5,"length_mm":20},"feature_boxes":[],"mounting_holes":[]},"provides":{"other":{"magnet_poles":6},"derived":{},"sensing":"magnetic","channels":"A/B quadrature","features":["Kit contents: two encoder boards and two 6-pole magnetic discs, for the Romi chassis mini plastic gearmotors","~1440 counts per revolution of the Romi wheels","Plugs straight into the Romi 32U4 Control Board and the Romi motor driver / power distribution board","Hall effect sensor ICs in SOT-23 (schematic example: AH1751-WG); pull-up resistors R1/R2 not populated"],"mounting":"soldered to the back of a Romi mini plastic gearmotor with extended back shaft; disc pressed on the shaft","interface":"quadrature","output_type":"open-drain digital; pull up externally to your logic voltage","capabilities":[],"encoder_type":"incremental","index_channel":false,"resolution_cpr":12},"compliance":{"other":{},"derived":{},"certifications":["RoHS 3"]},"constraints":{"other":{},"derived":{},"thermal":{"other":{}},"electrical":{"other":{},"supply_voltage_max_v":18,"supply_voltage_min_v":3.5}}},"other":null,"source_type":"pdf","source_ref":"https://www.pololu.com/file/0J1208/romi-encoder-pair-kit-schematic-diagram.pdf","datasheet":{"cad":{"bbox":{"max":[20,18.7,5],"min":[0,0,0],"width_mm":18.7,"height_mm":5,"length_mm":20},"check":{"failed":[],"passed":true},"expected":[{"x":20,"y":18.7,"name":"envelope","what":"box_xy"},{"what":"envelope_z","value":5}],"archetype":"envelope_box","mesh_path":"/Users/sumeet/Documents/Xirkit Parent/XirkitOnboard/work/pololu-3542/07_cad/part.stl","step_path":"/Users/sumeet/Documents/Xirkit Parent/XirkitOnboard/work/pololu-3542/07_cad/part.step","views_png":"/Users/sumeet/Documents/Xirkit Parent/XirkitOnboard/work/pololu-3542/07_cad/views.png","export_stl":"pololu-3542.stl","assumptions":[],"export_step":"pololu-3542.step","envelope_complete":true},"chips":[],"fields":{"weight":{"src":{"page":18,"quote":"| Weight: | 3.0 g 2 |","method":"table"},"unit":"g","value":3},"pull_up":{"src":{"page":5,"quote":"need to be pulled up to the appropriate logic voltage of your system","method":"text"},"unit":null,"value":"none on board (R1/R2 not populated) — add external pull-ups"},"sensing":{"src":{"page":4,"quote":"This kit includes two dual-channel Hall effect sensor boards","method":"text"},"unit":null,"value":"magnetic"},"channels":{"src":{"page":5,"quote":"the quadrature outputs A and B are open-drain digital signals","method":"text"},"unit":null,"value":"A/B quadrature"},"mounting":{"src":{"page":5,"quote":"designed to be soldered directly to the back of the motor","method":"text"},"unit":null,"value":"soldered to the back of a Romi mini plastic gearmotor with extended back shaft; disc pressed on the shaft"},"connector":{"src":{"page":19,"quote":"| Connector: | none (0.1″-pitch through-holes) |","method":"table"},"unit":null,"value":"6 pads, 0.1″ pitch, low-profile headers included"},"interface":{"src":{"page":5,"quote":"the quadrature outputs A and B are open-drain digital signals","method":"text"},"unit":null,"value":"quadrature"},"output_type":{"src":{"page":5,"quote":"open-drain digital signals that need to be pulled up to the appropriate logic voltage","method":"text"},"unit":null,"value":"open-drain digital; pull up externally to your logic voltage"},"encoder_type":{"src":{"page":4,"quote":"add quadrature encoding","method":"text"},"unit":null,"value":"incremental"},"magnet_poles":{"src":{"page":4,"quote":"6-pole magnetic discs","method":"text"},"unit":null,"value":6},"index_channel":{"src":{"page":1,"quote":"A B","figure":"Schematic","method":"drawing"},"unit":null,"value":false},"resolution_cpr":{"src":{"page":4,"quote":"provides a resolution of 12 counts per revolution","method":"text"},"unit":null,"value":12},"supply_voltage":{"src":{"page":5,"quote":"VCC can be 3.5 V to 18 V","method":"text"},"unit":"V","value":[3.5,18]}},"groups":{"all":["M1","M2","VCC","A","B","GND"]},"source":{"url":"https://www.pololu.com/file/0J1208/romi-encoder-pair-kit-schematic-diagram.pdf","pages":29,"sha256":"0d05ba0954c0bda9cc2a4fbec5417718cb138ef89592057ced76779c79a918e2","onboarded_at":"2026-09-29T08:01:52+00:00"},"coverage":{"pct":100,"score":"27/27","passed":true,"explained_nulls":["resolution_ppr","max_speed","supply_current","shaft_diameter","operating_temperature","thickness"]},"entities":[{"id":"M1","attrs":{"kind":"motor_terminal","label":"M1","position":"JP1-1","connector":"JP1","designator":"M1","description":"motor terminal pass-through"},"sources":[{"page":1,"quote":"1 M1","figure":"Schematic, 6-pin header","method":"drawing","fragment":"entities_pads.json"}],"attr_src":{"kind":{"page":1,"quote":"1 M1","figure":"Schematic, 6-pin header","method":"drawing","fragment":"entities_pads.json"},"label":{"page":1,"quote":"1 M1","figure":"Schematic, 6-pin header","method":"drawing","fragment":"entities_pads.json"},"position":{"page":1,"quote":"1 M1","figure":"Schematic, 6-pin header","method":"drawing","fragment":"entities_pads.json"},"connector":{"page":1,"quote":"1 M1","figure":"Schematic, 6-pin header","method":"drawing","fragment":"entities_pads.json"},"designator":{"page":1,"quote":"1 M1","figure":"Schematic, 6-pin header","method":"drawing","fragment":"entities_pads.json"},"description":{"page":1,"quote":"1 M1","figure":"Schematic, 6-pin header","method":"drawing","fragment":"entities_pads.json"}},"functions":[],"electrical":{},"entity_type":"pin"},{"id":"M2","attrs":{"kind":"motor_terminal","label":"M2","position":"JP1-2","connector":"JP1","designator":"M2","description":"motor terminal pass-through"},"sources":[{"page":1,"quote":"2 M2","figure":"Schematic, 6-pin header","method":"drawing","fragment":"entities_pads.json"}],"attr_src":{"kind":{"page":1,"quote":"2 M2","figure":"Schematic, 6-pin header","method":"drawing","fragment":"entities_pads.json"},"label":{"page":1,"quote":"2 M2","figure":"Schematic, 6-pin header","method":"drawing","fragment":"entities_pads.json"},"position":{"page":1,"quote":"2 M2","figure":"Schematic, 6-pin header","method":"drawing","fragment":"entities_pads.json"},"connector":{"page":1,"quote":"2 M2","figure":"Schematic, 6-pin header","method":"drawing","fragment":"entities_pads.json"},"designator":{"page":1,"quote":"2 M2","figure":"Schematic, 6-pin header","method":"drawing","fragment":"entities_pads.json"},"description":{"page":1,"quote":"2 M2","figure":"Schematic, 6-pin header","method":"drawing","fragment":"entities_pads.json"}},"functions":[],"electrical":{},"entity_type":"pin"},{"id":"VCC","attrs":{"kind":"power_in","label":"VCC","position":"JP1-3","connector":"JP1","designator":"VCC","description":"sensor supply 3.5–18 V"},"sources":[{"page":1,"quote":"3 VCC","figure":"Schematic, 6-pin header","method":"drawing","fragment":"entities_pads.json"}],"attr_src":{"kind":{"page":1,"quote":"3 VCC","figure":"Schematic, 6-pin header","method":"drawing","fragment":"entities_pads.json"},"label":{"page":1,"quote":"3 VCC","figure":"Schematic, 6-pin header","method":"drawing","fragment":"entities_pads.json"},"position":{"page":1,"quote":"3 VCC","figure":"Schematic, 6-pin header","method":"drawing","fragment":"entities_pads.json"},"connector":{"page":1,"quote":"3 VCC","figure":"Schematic, 6-pin header","method":"drawing","fragment":"entities_pads.json"},"designator":{"page":1,"quote":"3 VCC","figure":"Schematic, 6-pin header","method":"drawing","fragment":"entities_pads.json"},"description":{"page":1,"quote":"3 VCC","figure":"Schematic, 6-pin header","method":"drawing","fragment":"entities_pads.json"}},"functions":[],"electrical":{},"entity_type":"pin"},{"id":"A","attrs":{"kind":"signal_a","label":"A","position":"JP1-4","connector":"JP1","designator":"A","description":"quadrature output A, open-drain — needs an external pull-up (R1 not populated)"},"sources":[{"page":1,"quote":"4 A","figure":"Schematic, 6-pin header","method":"drawing","fragment":"entities_pads.json"}],"attr_src":{"kind":{"page":1,"quote":"4 A","figure":"Schematic, 6-pin header","method":"drawing","fragment":"entities_pads.json"},"label":{"page":1,"quote":"4 A","figure":"Schematic, 6-pin header","method":"drawing","fragment":"entities_pads.json"},"position":{"page":1,"quote":"4 A","figure":"Schematic, 6-pin header","method":"drawing","fragment":"entities_pads.json"},"connector":{"page":1,"quote":"4 A","figure":"Schematic, 6-pin header","method":"drawing","fragment":"entities_pads.json"},"designator":{"page":1,"quote":"4 A","figure":"Schematic, 6-pin header","method":"drawing","fragment":"entities_pads.json"},"description":{"page":1,"quote":"4 A","figure":"Schematic, 6-pin header","method":"drawing","fragment":"entities_pads.json"}},"functions":[],"electrical":{},"entity_type":"pin"},{"id":"B","attrs":{"kind":"signal_b","label":"B","position":"JP1-5","connector":"JP1","designator":"B","description":"quadrature output B, open-drain — needs an external pull-up (R2 not populated)"},"sources":[{"page":1,"quote":"5 B","figure":"Schematic, 6-pin header","method":"drawing","fragment":"entities_pads.json"}],"attr_src":{"kind":{"page":1,"quote":"5 B","figure":"Schematic, 6-pin header","method":"drawing","fragment":"entities_pads.json"},"label":{"page":1,"quote":"5 B","figure":"Schematic, 6-pin header","method":"drawing","fragment":"entities_pads.json"},"position":{"page":1,"quote":"5 B","figure":"Schematic, 6-pin header","method":"drawing","fragment":"entities_pads.json"},"connector":{"page":1,"quote":"5 B","figure":"Schematic, 6-pin header","method":"drawing","fragment":"entities_pads.json"},"designator":{"page":1,"quote":"5 B","figure":"Schematic, 6-pin header","method":"drawing","fragment":"entities_pads.json"},"description":{"page":1,"quote":"5 B","figure":"Schematic, 6-pin header","method":"drawing","fragment":"entities_pads.json"}},"functions":[],"electrical":{},"entity_type":"pin"},{"id":"GND","attrs":{"kind":"ground","label":"GND","position":"JP1-6","connector":"JP1","designator":"GND","description":"ground"},"sources":[{"page":1,"quote":"6 GND","figure":"Schematic, 6-pin header","method":"drawing","fragment":"entities_pads.json"}],"attr_src":{"kind":{"page":1,"quote":"6 GND","figure":"Schematic, 6-pin header","method":"drawing","fragment":"entities_pads.json"},"label":{"page":1,"quote":"6 GND","figure":"Schematic, 6-pin header","method":"drawing","fragment":"entities_pads.json"},"position":{"page":1,"quote":"6 GND","figure":"Schematic, 6-pin header","method":"drawing","fragment":"entities_pads.json"},"connector":{"page":1,"quote":"6 GND","figure":"Schematic, 6-pin header","method":"drawing","fragment":"entities_pads.json"},"designator":{"page":1,"quote":"6 GND","figure":"Schematic, 6-pin header","method":"drawing","fragment":"entities_pads.json"},"description":{"page":1,"quote":"6 GND","figure":"Schematic, 6-pin header","method":"drawing","fragment":"entities_pads.json"}},"functions":[],"electrical":{},"entity_type":"pin"}],"taxonomy":{"dimensions":{"role":"mechanical_dimensions","definition":"Dimension drawing or text giving board / housing size, hole, bore or envelope beyond the motor"},"site_chrome":{"role":"other","definition":"Website navigation, related products and categories, distributor lists, footers"},"installation":{"role":"software_usage","definition":"Mounting and installation instructions, alignment, magnet disc placement, compatible motors"},"pinout_wiring":{"role":"pins_or_terminals","definition":"Pinout / wiring text or schematic naming each pad, pin or wire (VCC, GND, A, B, Z, motor terminals) and what it does"},"output_signals":{"role":"performance","definition":"Output waveform / quadrature timing, pull-ups, hysteresis, counting method"},"specifications":{"role":"electrical_ratings","definition":"Specification list or table: size, weight, supply voltage range, resolution (CPR/PPR), connector, output type, speed, temperature"},"pricing_ordering":{"role":"ordering_commercial","definition":"Price breaks, item number, status, brand, stock"},"product_overview":{"role":"identity_overview","definition":"Overview of the encoder or kit: sensing principle, what it mounts on, resolution statement, what is included"}},"variants":{},"commercial":{"other":{},"lifecycle":"active","checked_at":"2026-09-29T07:55:53+00:00","compliance":["RoHS 3"],"ordering_codes":[{"code":"3542","description":"Pololu item number (pair kit: 2 boards + 2 discs)"}]},"mechanical":{"dims":{"width":{"src":{"page":18,"quote":"| Size: | 20 mm × 18.7 mm 1 |","method":"table"},"unit":"mm","value":18.7},"height":{"src":{"page":21,"quote":"The assembled encoder will extend 5 mm beyond the back of the motor (it fits entirely within the length of the extended motor shaft).","method":"text"},"unit":"mm","value":5},"length":{"src":{"page":18,"quote":"| Size: | 20 mm × 18.7 mm 1 |","method":"table"},"unit":"mm","value":20}},"kind":"mechanical","holes":[],"units":"mm","origin":"assembled encoder envelope behind the motor, from (0,0,0)","features":[],"archetype":"envelope_box","assumptions":{}},"page_index":[{"page":1,"tags":["pinout_wiring"],"primary":"pinout_wiring"},{"page":2,"tags":["site_chrome"],"primary":"site_chrome"},{"page":3,"tags":["product_overview","pricing_ordering","site_chrome"],"primary":"pricing_ordering"},{"page":4,"tags":["product_overview","dimensions"],"primary":"product_overview"},{"page":5,"tags":["pinout_wiring","installation"],"primary":"installation"},{"page":6,"tags":["pinout_wiring"],"primary":"pinout_wiring"},{"page":7,"tags":["product_overview"],"primary":"product_overview"},{"page":8,"tags":["site_chrome"],"primary":"site_chrome"},{"page":9,"tags":["site_chrome"],"primary":"site_chrome"},{"page":10,"tags":["site_chrome"],"primary":"site_chrome"},{"page":11,"tags":["site_chrome"],"primary":"site_chrome"},{"page":12,"tags":[],"primary":"none_of_these"},{"page":13,"tags":[],"primary":"none_of_these"},{"page":14,"tags":["site_chrome"],"primary":"site_chrome"},{"page":15,"tags":["site_chrome"],"primary":"site_chrome"},{"page":16,"tags":["site_chrome"],"primary":"site_chrome"},{"page":17,"tags":["product_overview","pricing_ordering","site_chrome"],"primary":"pricing_ordering"},{"page":18,"tags":["dimensions"],"primary":"dimensions"},{"page":19,"tags":["specifications"],"primary":"specifications"},{"page":20,"tags":[],"primary":"none_of_these"},{"page":21,"tags":["dimensions"],"primary":"dimensions"},{"page":22,"tags":["site_chrome"],"primary":"site_chrome"},{"page":23,"tags":["site_chrome"],"primary":"site_chrome"},{"page":24,"tags":["site_chrome"],"primary":"site_chrome"},{"page":25,"tags":["site_chrome"],"primary":"site_chrome"},{"page":26,"tags":[],"primary":"none_of_these"},{"page":27,"tags":[],"primary":"none_of_these"},{"page":28,"tags":["site_chrome"],"primary":"site_chrome"},{"page":29,"tags":["site_chrome"],"primary":"site_chrome"}],"performance":[],"schema_name":"datasheet-1","part_ratings":{}},"use_cases":["robot-motor-control","mobile-robot-drive"],"commercial":{"other":{},"lifecycle":"active","checked_at":"2026-09-29T07:55:53+00:00","compliance":["RoHS 3"],"ordering_codes":[{"code":"3542","description":"Pololu item number (pair kit: 2 boards + 2 discs)"}]},"assembly_label":"Module","assembly_level":2,"search_aliases":["3542","12 CPR magnetic encoder"],"design":{"assets":[{"other":{},"kind":"datasheet","url":"https://www.pololu.com/file/0J1208/romi-encoder-pair-kit-schematic-diagram.pdf","label":"Datasheet","verification":"manufacturer","notes":null,"resolved_url":"https://www.pololu.com/file/0J1208/romi-encoder-pair-kit-schematic-diagram.pdf"},{"other":{},"kind":"image","url":"https://a.pololu-files.com/picture/0J9433.1200x627.jpg?0a29372e13e957c9cb3a6c1391fef1f5","label":"Pololu 3542 Romi encoder pair kit — boards, magnetic discs and headers","verification":"manufacturer","notes":"inspected: two black Romi-shaped encoder boards with 6 pads, two black magnetic discs, straight and right-angle 6-pin headers and female sockets","resolved_url":"https://a.pololu-files.com/picture/0J9433.1200x627.jpg?0a29372e13e957c9cb3a6c1391fef1f5"},{"other":{},"kind":"cad","url":"pololu-3542.step","label":"STEP (generated from datasheet drawing)","verification":"generated","notes":"cad_check passed","resolved_url":"https://wlrumvsjnliyuuvzwnrt.supabase.co/storage/v1/object/public/geometry/pololu-3542.step"}],"cad":{"verification":"generated","envelope_complete":true,"assumptions":[],"step_path":"pololu-3542.step","mesh_path":"pololu-3542.stl","footprint_svg_path":null,"bbox":{"length_mm":20,"width_mm":18.7,"height_mm":5},"features":[],"step_url":"https://wlrumvsjnliyuuvzwnrt.supabase.co/storage/v1/object/public/geometry/pololu-3542.step","mesh_url":"https://wlrumvsjnliyuuvzwnrt.supabase.co/storage/v1/object/public/geometry/pololu-3542.stl","footprint_svg_url":null},"limitations":["Generated geometry is an approximate mechanical envelope; inspect original manufacturer CAD when available.","Generated footprint_svg_path is an outline, not a verified electrical land pattern.","Xirkit does not run fit checks; download step_url and test fit against your own enclosure."]}}}