tscircuit/ti
ti tscircuit library
- Version
- 1.0.186
- License
- unset
- Stars
- 0
examples/ConsumerWirelessModule.circuit.tsx
import {
BuckConverter_TPS62086_TIDA00399,
InputOutputProtection_TPD2E009_TIDA00399,
InputPowerProtection_TPS25910_TIDA00890,
LogicBuffer_SN74LVC1G34,
LVDSDriver_SN65LVDS31_TIDA060017,
TemperatureSensor_TMP103_TIDA00399,
WirelessConnectivity_CC2540_TIDCCC2540BLEUSB,
} from "@tsci/tscircuit.ti";
import "tscircuit";
/** Consumer wireless module assembled from the seven reusable TI blocks. */
export default () => (
<board width="84mm" height="38mm" routingDisabled>
<schematicsheet
name="input_power_protection"
displayName="Input Power Protection"
sheetIndex={0}
/>
<schematicsheet
name="dc_dc_power_supply"
displayName="DC/DC Power Supply"
sheetIndex={1}
/>
<schematicsheet
name="io_connection"
displayName="Input/Output Connection"
sheetIndex={2}
/>
<schematicsheet
name="wireless_connectivity"
displayName="Wireless Connectivity"
sheetIndex={3}
/>
<schematicsheet
name="io_protection"
displayName="Input/Output Protection"
sheetIndex={4}
/>
<schematicsheet
name="logic_control"
displayName="Logic and Control"
sheetIndex={5}
/>
<schematicsheet name="sensors" displayName="Sensors" sheetIndex={6} />
<net name="VBUS_IN" isPowerNet />
<net name="LOGIC_IN" />
<net name="CONNECTOR_P" />
<net name="CONNECTOR_N" />
<net name="I2C_SCL" />
<net name="I2C_SDA" />
<net name="WIRELESS_USB_P" />
<net name="WIRELESS_USB_N" />
<InputPowerProtection_TPS25910_TIDA00890
name="input_power_protection"
schSheetName="input_power_protection"
pcbX={-33}
pcbY={9}
pcbPositionMode="relative_to_board_anchor"
/>
<BuckConverter_TPS62086_TIDA00399
name="dc_dc_power_supply"
schSheetName="dc_dc_power_supply"
pcbX={-15}
pcbY={9}
pcbPositionMode="relative_to_board_anchor"
/>
<LVDSDriver_SN65LVDS31_TIDA060017
name="io_connection"
schSheetName="io_connection"
pcbX={8}
pcbY={8}
pcbPositionMode="relative_to_board_anchor"
/>
<WirelessConnectivity_CC2540_TIDCCC2540BLEUSB
name="wireless_connectivity"
schSheetName="wireless_connectivity"
pcbX={24}
pcbY={-9.5}
pcbPositionMode="relative_to_board_anchor"
/>
<InputOutputProtection_TPD2E009_TIDA00399
name="io_protection"
schSheetName="io_protection"
pcbX={24}
pcbY={8}
pcbPositionMode="relative_to_board_anchor"
/>
<LogicBuffer_SN74LVC1G34
name="logic_control"
schSheetName="logic_control"
pcbX={-2}
pcbY={-7}
pcbPositionMode="relative_to_board_anchor"
/>
<TemperatureSensor_TMP103_TIDA00399
name="sensors"
schSheetName="sensors"
pcbX={10}
pcbY={-7}
pcbPositionMode="relative_to_board_anchor"
/>
{/* External protected-input source and 5 V rail into the buck stage. */}
<trace from=".input_power_protection > .R25 > .pin1" to="net.VBUS_IN" />
<trace
from=".input_power_protection > .U7 > .IN1"
to=".dc_dc_power_supply > .U3P3 > .VIN"
/>
<trace
from=".input_power_protection > .U7 > .IN1"
to=".dc_dc_power_supply > .U3P3 > .EN"
/>
<trace
from=".input_power_protection > .U7 > .GND1"
to=".dc_dc_power_supply > .U3P3 > .GND"
/>
{/* The 3.3 V buck output powers the sensor, logic and LVDS blocks. */}
<trace
from=".dc_dc_power_supply > .L3P3 > .pin2"
to=".sensors > .UTMP > .V_PLUS"
/>
<trace
from=".dc_dc_power_supply > .U3P3 > .GND"
to=".sensors > .UTMP > .GND"
/>
<trace
from=".dc_dc_power_supply > .L3P3 > .pin2"
to=".logic_control > net.VCC"
/>
<trace
from=".dc_dc_power_supply > .U3P3 > .GND"
to=".logic_control > net.GND"
/>
<trace
from=".dc_dc_power_supply > .L3P3 > .pin2"
to=".io_connection > .U1 > .VCC"
/>
<trace
from=".dc_dc_power_supply > .L3P3 > .pin2"
to=".io_connection > .U1 > .ENABLE"
/>
<trace
from=".dc_dc_power_supply > .U3P3 > .GND"
to=".io_connection > .U1 > .GND"
/>
<trace
from=".dc_dc_power_supply > .U3P3 > .GND"
to=".io_connection > .U1 > .ENABLE_NOT"
/>
<trace
from=".dc_dc_power_supply > .L3P3 > .pin2"
to=".wireless_connectivity > .L1 > .pin2"
/>
<trace
from=".dc_dc_power_supply > .U3P3 > .GND"
to=".wireless_connectivity > .U1 > .GND"
/>
{/* Buffered control feeds one LVDS channel and its protected connector. */}
<trace from=".logic_control > net.MCU_OR_LOGIC_IN" to="net.LOGIC_IN" />
<trace
from=".logic_control > net.MCU_OR_LOGIC_OUT"
to=".io_connection > .U1 > .IN1"
/>
<trace
from=".io_connection > .U1 > .OUT1_P"
to=".io_protection > .UESD > .D1"
/>
<trace
from=".io_connection > .U1 > .OUT1_N"
to=".io_protection > .UESD > .D2"
/>
<trace
from=".io_connection > .U1 > .GND"
to=".io_protection > .UESD > .GND"
/>
<trace from=".io_protection > .UESD > .D1" to="net.CONNECTOR_P" />
<trace from=".io_protection > .UESD > .D2" to="net.CONNECTOR_N" />
{/* External sensor bus and USB radio interface complete the module I/O. */}
<trace from=".sensors > .UTMP > .SCL" to="net.I2C_SCL" />
<trace from=".sensors > .UTMP > .SDA" to="net.I2C_SDA" />
<trace
from=".wireless_connectivity > .U1 > .USB_P"
to="net.WIRELESS_USB_P"
/>
<trace
from=".wireless_connectivity > .U1 > .USB_N"
to="net.WIRELESS_USB_N"
/>
</board>
);