{
  "id": "sparkfun_rm2_tight",
  "name": "RM2_Tight (SparkFun)",
  "category": "module",
  "family": "SparkFun RF",
  "manufacturer": "SparkFun Electronics",
  "mpn_pattern": "RM2_Tight",
  "description": "Radio module from Raspberry Pi using the CYW43 supporting WiFi and Bluetooth/BLE Imported from the SparkFun KiCad library (CC-BY-4.0, attribution: SparkFun Electronics); passed PartReel quality gates.",
  "parameters": {
    "contacts": 21,
    "mounting": "SMD"
  },
  "formats": [
    "kicad_mod",
    "kicad_sym",
    "step",
    "glb"
  ],
  "files": {
    "footprint": "https://partreel.com/library/module/sparkfun/sparkfun_rm2_tight/sparkfun_rm2_tight.kicad_mod",
    "symbol": "https://partreel.com/library/module/sparkfun/sparkfun_rm2_tight/sparkfun_rm2_tight.kicad_sym",
    "model_3d": "https://assets.partreel.com/library/module/sparkfun/sparkfun_rm2_tight/sparkfun_rm2_tight.step",
    "preview": "https://assets.partreel.com/library/module/sparkfun/sparkfun_rm2_tight/sparkfun_rm2_tight.glb",
    "footprint_svg": "https://partreel.com/library/module/sparkfun/sparkfun_rm2_tight/sparkfun_rm2_tight.footprint.svg",
    "symbol_svg": "https://partreel.com/library/module/sparkfun/sparkfun_rm2_tight/sparkfun_rm2_tight.symbol.svg"
  },
  "datasheet": "https://github.com/sparkfun/SparkFun-KiCad-Libraries/blob/2423e36aead9/symbols/SparkFun-RF.kicad_sym",
  "license": "CC-BY-4.0",
  "verified": true,
  "tier": null,
  "dimensions_source": "SparkFun-KiCad-Libraries@2423e36aead9 (SparkFun-RF.pretty/RM2_Tight.kicad_mod)",
  "keywords": [
    "sparkfun",
    "SparkFun",
    "Raspberry",
    "Pi",
    "RPi",
    "RM2",
    "WiFi",
    "Bluetooth",
    "BLE"
  ],
  "field_reports": {
    "worked": 0,
    "problem": 0
  },
  "provenance": {
    "dimensions_source": "SparkFun-KiCad-Libraries@2423e36aead9 (SparkFun-RF.pretty/RM2_Tight.kicad_mod)",
    "datasheet": "https://github.com/sparkfun/SparkFun-KiCad-Libraries/blob/2423e36aead9/symbols/SparkFun-RF.kicad_sym",
    "generator_source": "https://github.com/mingyo186/partreel/blob/main/generators/import_sparkfun.py",
    "quality_gates": {
      "gates": [
        "validate_kicad (structure/pads/layers)",
        "KLC drawing rules (silk/fab/courtyard/pin1)",
        "check_overlap (text collisions)",
        "check_render (files/SVG-vs-source/meta completeness)",
        "check_zfight (3D coplanar faces, merged pins)",
        "validate_step (FreeCAD kernel isValid)"
      ],
      "enforcement": "CI runs all gates on every push and blocks deployment on any failure",
      "ci_config": "https://github.com/mingyo186/partreel/blob/main/.github/workflows/deploy.yml"
    },
    "field_reports": {
      "worked": 0,
      "problem": 0
    },
    "origin": "imported",
    "import": {
      "source_repo": "https://github.com/sparkfun/SparkFun-KiCad-Libraries",
      "source_commit": "2423e36aead98c5756ae09366e0388ff21a82808",
      "source_files": {
        "symbol": "symbols/SparkFun-RF.kicad_sym#RM2_Tight",
        "footprint": "footprints/SparkFun-RF.pretty/RM2_Tight.kicad_mod",
        "model": "3dmodels/RF.3dshapes/RM2.step"
      },
      "attribution": "SparkFun Electronics (CC-BY-4.0)",
      "sparkfun_prod_id": "IC-21607",
      "modifications": [
        "extracted single symbol from library",
        "rewrote 3D model path to per-part relative"
      ]
    }
  },
  "page": "https://partreel.com/p/sparkfun_rm2_tight/",
  "api": "https://partreel.com/api/v1/parts/sparkfun_rm2_tight.json"
}