component
LTC2945CMS#PBF - Wide Range I2C Power Monitor
Public Made by Adomby adom
Analog Devices (Linear Technology) LTC2945CMS#PBF: wide range I2C power monitor, 0 V to 80 V current and voltage sensing, 12-bit ADC, 24-bit power, min/max and alerts, split SDA for opto-isolation, 0 C to 70 C, MSOP-12. KiCad, Fusion and Altium libraries, 3D model and datasheet.
main
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212
{
"schema": "adom/symbol-provenance@1",
"mpn": "LTC2945CMS#PBF",
"date": "2026-10-21",
"tool": "adom-symbol 1.2.6 create (provenance/tools/symbol-create.json), chip outline baked from artwork/LTC2945CMS-PBF-3d-outline-dark-named.svg (adom-aiflow-etch outline of the etched model)",
"grid_fix": {
"problem": "adom-symbol 1.2.6 put the first pin of each column at y = -2.00 and spaced groups 8.35 mm apart, so 10 of the 12 pin ends were off the 2.54 mm grid (known bug)",
"fix": "provenance/tools/snap_symbol_groups.py: per column, first pin at -2.54, 2.54 within a group, 7.62 between groups; captions moved with their first pin; body bottom and the field column moved by the same amount; Value set to the MPN, Footprint to ltc2945cms-pbf:ltc2945cms-pbf (1.2.6 wrote the package text there)",
"original_pins": [
"(at -22.86 -2.00 0) (length 2.54) (name \"SCL\") (number \"7\")",
"(at -22.86 -4.54 0) (length 2.54) (name \"SDAI\") (number \"8\")",
"(at -22.86 -7.08 0) (length 2.54) (name \"SDAO\") (number \"9\")",
"(at -22.86 -9.62 0) (length 2.54) (name \"ALERT\") (number \"10\")",
"(at -22.86 -17.97 0) (length 2.54) (name \"ADR1\") (number \"3\")",
"(at -22.86 -20.51 0) (length 2.54) (name \"ADR0\") (number \"4\")",
"(at 22.86 -2.00 180) (length 2.54) (name \"VDD\") (number \"1\")",
"(at 22.86 -4.54 180) (length 2.54) (name \"INTVCC\") (number \"2\")",
"(at 22.86 -12.89 180) (length 2.54) (name \"GND\") (number \"6\")",
"(at 22.86 -21.24 180) (length 2.54) (name \"SENSE+\") (number \"12\")",
"(at 22.86 -23.78 180) (length 2.54) (name \"SENSE-\") (number \"11\")",
"(at 22.86 -32.13 180) (length 2.54) (name \"ADIN\") (number \"5\")"
]
},
"groups": {
"left": [
"I2C: SCL 7, SDAI 8, SDAO 9, ALERT 10",
"Address: ADR1 3, ADR0 4"
],
"right": [
"Power: VDD 1, INTVCC 2",
"Ground: GND 6",
"Current sense: SENSE+ 12, SENSE- 11",
"ADC input: ADIN 5"
]
},
"types": "input: SCL, SDAI, ADR0, ADR1, SENSE+, SENSE-, ADIN; open_collector: SDAO, ALERT (open drain, p.9); power_in: VDD, INTVCC, GND. INTVCC is typed power_in although it can also be the 5 V regulator output (p.9): add a PWR_FLAG or retype in the schematic when it supplies other parts.",
"unconnected_pins": "none: all 12 MS12 pins have functions (p.9), so no pin is typed unconnected",
"fusion_lbr": {
"file": "ltc2945cms-pbf.lbr",
"sha256": "954c71719da1fd6d0fd23b2b87ac9f2e61ce3d6c6504eadc734a6e2ce4781be6",
"tool": "adom-lbr 2.47.5 generate --part-metadata page.json",
"check": "12 pins; directions in (7), oc (2: SDAO, ALERT), pwr (3); no pin carries a visible= attribute, so EAGLE's default 'both' shows pin names and pad numbers; connects pin n to pad n; lint PASS. The adom-lbr 2.47.5 nc-typed-as-io and hidden-name bugs were checked for and not triggered (this part has no NC pins); no hand fix was needed."
},
"altium": {
"schlib": "altium/LTC2945CMS-PBF.SchLib",
"schlib_sha256": "425a88a14b8c6298fc66080c9a3542f1937d43adc5cfd838e62e7ab24fdc90a7",
"pcblib": "altium/LTC2945CMS-PBF.PcbLib",
"pcblib_sha256": "5d482c07809527d393e7674afcf039433e3db353bab94123201ee13df9f558fc",
"tool": "adom-lbr 2.47.5 import-kicad + assemble-altium --no-dedupe, with the etched STEP embedded in the PcbLib (models.embedded 1)",
"check": "pin records read straight from the SchLib binary by provenance/tools/schlib_pins.py (independent of adom-lbr's reader): 12 pins, electrical types input/open_collector/power as in the KiCad symbol, name and designator visible on every pin (conglomerate 0x38 / 0x3a), none hidden; no hand fix was needed",
"pins": {
"LTC2945CMS#PBF": [
{
"designator": "7",
"name": "SCL",
"electrical": "input",
"electrical_code": 0,
"hidden": false,
"name_visible": true,
"designator_visible": true,
"conglomerate": 58,
"length": 10,
"x": -80,
"y": 50
},
{
"designator": "8",
"name": "SDAI",
"electrical": "input",
"electrical_code": 0,
"hidden": false,
"name_visible": true,
"designator_visible": true,
"conglomerate": 58,
"length": 10,
"x": -80,
"y": 40
},
{
"designator": "9",
"name": "SDAO",
"electrical": "open_collector",
"electrical_code": 3,
"hidden": false,
"name_visible": true,
"designator_visible": true,
"conglomerate": 58,
"length": 10,
"x": -80,
"y": 30
},
{
"designator": "10",
"name": "ALERT",
"electrical": "open_collector",
"electrical_code": 3,
"hidden": false,
"name_visible": true,
"designator_visible": true,
"conglomerate": 58,
"length": 10,
"x": -80,
"y": 20
},
{
"designator": "3",
"name": "ADR1",
"electrical": "input",
"electrical_code": 0,
"hidden": false,
"name_visible": true,
"designator_visible": true,
"conglomerate": 58,
"length": 10,
"x": -80,
"y": -10
},
{
"designator": "4",
"name": "ADR0",
"electrical": "input",
"electrical_code": 0,
"hidden": false,
"name_visible": true,
"designator_visible": true,
"conglomerate": 58,
"length": 10,
"x": -80,
"y": -20
},
{
"designator": "1",
"name": "VDD",
"electrical": "power",
"electrical_code": 7,
"hidden": false,
"name_visible": true,
"designator_visible": true,
"conglomerate": 56,
"length": 10,
"x": 80,
"y": 50
},
{
"designator": "2",
"name": "INTVCC",
"electrical": "power",
"electrical_code": 7,
"hidden": false,
"name_visible": true,
"designator_visible": true,
"conglomerate": 56,
"length": 10,
"x": 80,
"y": 40
},
{
"designator": "6",
"name": "GND",
"electrical": "power",
"electrical_code": 7,
"hidden": false,
"name_visible": true,
"designator_visible": true,
"conglomerate": 56,
"length": 10,
"x": 80,
"y": 10
},
{
"designator": "12",
"name": "SENSE+",
"electrical": "input",
"electrical_code": 0,
"hidden": false,
"name_visible": true,
"designator_visible": true,
"conglomerate": 56,
"length": 10,
"x": 80,
"y": -20
},
{
"designator": "11",
"name": "SENSE-",
"electrical": "input",
"electrical_code": 0,
"hidden": false,
"name_visible": true,
"designator_visible": true,
"conglomerate": 56,
"length": 10,
"x": 80,
"y": -30
},
{
"designator": "5",
"name": "ADIN",
"electrical": "input",
"electrical_code": 0,
"hidden": false,
"name_visible": true,
"designator_visible": true,
"conglomerate": 56,
"length": 10,
"x": 80,
"y": -60
}
]
}
}
}