Anshgrover23/rfm69-breakout

The RFM69HCW module is a 16-pin radio transceiver with SPI and GPIO interfaces, featuring antennas, reset, and data I/O pins.

Usage: To import and use the RFM69HCW component: 1. Import the component: ```tsx import { RFM69HCW } from "@tsci/Anshgrover23.rfm69-breakout" ``` 2. Use in a circuit: ```tsx <board> <RFM69HCW name="RF1" /> </board> ``` The component includes 16 pins with predefined labels like GND, MISO, MOSI, SCK, NSS, RESET, and various DIO pins. You can place it on a board and connect traces to its specific pins using the `sel` selector.

Version
1.0.0
License
unset
Stars
1

dist/index.js

PCBPCB preview for dist/index.js
SchematicSchematic preview for dist/index.js
import { sel } from '@tscircuit/core';

function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
const pinLabels = {
  pin1: "GND",
  pin2: "MISO",
  pin3: "MOSI",
  pin4: "SCK",
  pin5: "NSS",
  pin6: "RESET",
  pin7: "DIO5",
  pin8: "GND",
  pin9: "ANT",
  pin10: "GND",
  pin11: "DIO3",
  pin12: "DIO4",
  pin13: "3.3V",
  pin14: "DIO0",
  pin15: "DIO1",
  pin16: "DIO2"
};
const RFM69HCW = props => /*#__PURE__*/React.createElement("chip", _extends({
  manufacturerPartNumber: "RFM69HCW"
}, props, {
  pinLabels: pinLabels,
  schPinArrangement: {
    leftSide: {
      direction: "top-to-bottom",
      pins: ["3.3V", "MISO", "MOSI", "SCK", "NSS", "RESET"]
    },
    rightSide: {
      direction: "top-to-bottom",
      pins: ["DIO0", "DIO1", "DIO2", "DIO3", "DIO4", "DIO5", "pin8", "ANT", "pin1"]
    }
  },
  schPinStyle: {
    RESET: {
      marginTop: "0.4"
    },
    MISO: {
      marginTop: "0.4"
    },
    pin8: {
      marginTop: "0.3"
    }
  }
}));

var index = () => /*#__PURE__*/React.createElement("board", {
  width: "27.94",
  height: "20.32"
}, /*#__PURE__*/React.createElement(RFM69HCW, {
  name: "U1",
  footprint: "stampboard_left8_right8_bottom0_top0_w18mm_p2.0mm_pw1.2mm_pl3.0mm_padshape=rect",
  pcbY: "1.27mm"
}), /*#__PURE__*/React.createElement("pinheader", {
  name: "JP1",
  pinCount: 2,
  schRotation: 180,
  footprint: "pinrow2_p2.54_id1.016_od1.88_pinlabeltextalignleft_pinlabelorthogonal_nosquareplating",
  schFacingDirection: "right",
  schX: -3,
  schY: 1.4,
  pcbRotation: 90,
  pcbX: -12.7,
  pcbY: -7.62,
  showSilkscreenPinLabels: true,
  pinLabels: ["3.3V", "GND"],
  connections: {
    pin1: "U1.pin13"
  }
}), /*#__PURE__*/React.createElement("netlabel", {
  schX: -1.7,
  schY: 1.2,
  anchorSide: "top",
  net: "GND",
  connection: "JP1.GND"
}), /*#__PURE__*/React.createElement("netlabel", {
  schX: -1.7,
  schY: 1.8,
  net: "V3_3",
  connection: "JP1.pin1",
  anchorSide: "bottom"
}), /*#__PURE__*/React.createElement("pinheader", {
  name: "JP2",
  pinCount: 5,
  schRotation: 0,
  footprint: "pinrow5_p2.54_id1.016_od1.88_pinlabeltextalignleft_pinlabelorthogonal_nosquareplating",
  schFacingDirection: "right",
  schX: -3,
  schY: -0.1,
  pcbRotation: 90,
  pcbX: -12.7,
  pcbY: 3.81,
  connections: {
    pin1: sel.U1.pin2,
    pin2: sel.U1.pin3,
    pin3: sel.U1.pin4,
    pin4: sel.U1.pin5,
    pin5: sel.U1.pin6
  },
  showSilkscreenPinLabels: true,
  pinLabels: ["MISO", "MOSI", "SCK", "NSS", "RESET"]
}), /*#__PURE__*/React.createElement("pinheader", {
  name: "JP3",
  pinCount: 1,
  schRotation: 180,
  footprint: "pinrow1_p2.54_id1.016_od1.88_pinlabeltextalignleft_pinlabelorthogonal_nosquareplating",
  facingDirection: "left",
  schX: 3,
  schY: 1.5,
  pcbRotation: 90,
  pcbX: -12.7,
  pcbY: -3.81,
  connections: {
    pin1: sel.U1.pin14
  },
  showSilkscreenPinLabels: true,
  pinLabels: ["DIO0"],
  schWidth: 0.5
}), /*#__PURE__*/React.createElement("pinheader", {
  name: "JP4",
  pinCount: 5,
  schRotation: 0,
  footprint: "pinrow5_p2.54_id1.016_od1.88_pinlabeltextalignright_pinlabelorthogonal_nosquareplating",
  facingDirection: "left",
  schX: 3,
  schY: 0.34,
  pcbRotation: 90,
  pcbX: 12.7,
  pcbY: 3.81,
  connections: {
    pin1: sel.U1.pin15,
    pin2: sel.U1.pin16,
    pin3: sel.U1.pin11,
    pin4: sel.U1.pin12,
    pin5: sel.U1.pin7
  },
  showSilkscreenPinLabels: true,
  pinLabels: ["DIO0", "DIO1", "DIO2", "DIO3", "DIO4"]
}), /*#__PURE__*/React.createElement("pinheader", {
  name: "JP5",
  pinCount: 3,
  schRotation: 180,
  footprint: "pinrow3_p2.54_id1.016_od1.88_pinlabeltextalignright_pinlabelorthogonal_nosquareplating",
  facingDirection: "left",
  schX: 3,
  schY: -1,
  pcbRotation: 90,
  pcbX: 12.7,
  pcbY: -6.35,
  connections: {
    pin1: sel.U1.pin8,
    pin2: sel.U1.pin9,
    pin3: sel.U1.pin1
  },
  showSilkscreenPinLabels: true,
  pinLabels: ["GND", "ANT", "GND"]
}), /*#__PURE__*/React.createElement("netlabel", {
  schX: 1.6,
  schY: -1.3,
  anchorSide: "top",
  net: "GND",
  connectsTo: ["U1.pin8"]
}), /*#__PURE__*/React.createElement("capacitor", {
  name: "C2",
  capacitance: "0.1uF",
  footprint: "0603",
  schRotation: 90,
  schX: -4.7,
  pcbY: -8.89,
  pcbX: -2.54,
  pcbRotation: 180,
  connections: {
    pin1: "net.GND",
    pin2: "net.V3_3"
  }
}), /*#__PURE__*/React.createElement("capacitor", {
  name: "C1",
  capacitance: "10uF",
  footprint: "1210",
  schRotation: 90,
  schX: -5.7,
  pcbY: -8.57,
  pcbX: 3.81,
  connections: {
    pin1: "net.GND",
    pin2: "net.V3_3"
  }
}), /*#__PURE__*/React.createElement("net", {
  name: "GND"
}), /*#__PURE__*/React.createElement("net", {
  name: "V3_3"
}), /*#__PURE__*/React.createElement("schematictext", {
  text: "Antenna length (1/4 wave)",
  schX: 4,
  schY: -1,
  fontSize: 0.2,
  anchor: "center_left",
  color: "brown"
}), /*#__PURE__*/React.createElement("schematictext", {
  text: "915MHz: 3.07\" = 78mm",
  schX: 4,
  schY: -1.3,
  fontSize: 0.2,
  anchor: "center_left",
  color: "brown"
}), /*#__PURE__*/React.createElement("schematictext", {
  text: "434MHz: 6.47\" = 164mm",
  schX: 4,
  schY: -1.5,
  fontSize: 0.2,
  anchor: "center_left",
  color: "brown"
}));

export { index as default };