Compare commits
2 Commits
d688a8497d
...
codex/anal
| Author | SHA1 | Date | |
|---|---|---|---|
| e61e244c39 | |||
| 2c90404637 |
1
.agent/skills/heroui-react
Symbolic link
1
.agent/skills/heroui-react
Symbolic link
@@ -0,0 +1 @@
|
||||
../../.agents/skills/heroui-react
|
||||
3
.vscode/settings.json
vendored
3
.vscode/settings.json
vendored
@@ -10,6 +10,5 @@
|
||||
},
|
||||
"[json]": {
|
||||
"editor.defaultFormatter": "oxc.oxc-vscode"
|
||||
},
|
||||
"cmake.ignoreCMakeListsMissing": true
|
||||
}
|
||||
}
|
||||
@@ -130,17 +130,6 @@ async function updateTransportState(
|
||||
.where(eq(chargePoint.chargePointIdentifier, chargePointIdentifier))
|
||||
}
|
||||
|
||||
async function getRegistrationStatus(chargePointIdentifier: string) {
|
||||
const db = useDrizzle()
|
||||
const [cp] = await db
|
||||
.select({ registrationStatus: chargePoint.registrationStatus })
|
||||
.from(chargePoint)
|
||||
.where(eq(chargePoint.chargePointIdentifier, chargePointIdentifier))
|
||||
.limit(1)
|
||||
|
||||
return cp?.registrationStatus ?? null
|
||||
}
|
||||
|
||||
function getCommandChannelStatus(chargePointIdentifier: string): CommandChannelStatus {
|
||||
return ocppConnections.has(chargePointIdentifier) ? 'online' : 'unavailable'
|
||||
}
|
||||
@@ -222,19 +211,6 @@ export function createOcppHandler(chargePointIdentifier: string, remoteAddr?: st
|
||||
ws.close(1002, 'Unsupported subprotocol')
|
||||
return
|
||||
}
|
||||
|
||||
const registrationStatus = await getRegistrationStatus(chargePointIdentifier)
|
||||
ctx.isRegistered = registrationStatus === 'Accepted'
|
||||
|
||||
const previous = ocppConnections.get(chargePointIdentifier)
|
||||
if (previous && previous.sessionId !== sessionId) {
|
||||
try {
|
||||
previous.ws.close(1012, 'Replaced by newer connection')
|
||||
} catch {
|
||||
// Ignore close race when the old socket is already gone.
|
||||
}
|
||||
}
|
||||
|
||||
ocppConnections.set(chargePointIdentifier, {
|
||||
ws,
|
||||
sessionId,
|
||||
@@ -250,24 +226,15 @@ export function createOcppHandler(chargePointIdentifier: string, remoteAddr?: st
|
||||
`[OCPP] ${chargePointIdentifier} connected` +
|
||||
(remoteAddr ? ` from ${remoteAddr}` : ''),
|
||||
)
|
||||
if (previous && previous.sessionId !== sessionId) {
|
||||
console.log(`[OCPP] ${chargePointIdentifier} replaced previous connection`)
|
||||
}
|
||||
},
|
||||
|
||||
async onMessage(evt: MessageEvent, ws: WSContext) {
|
||||
let uniqueId = '(unknown)'
|
||||
try {
|
||||
const current = ocppConnections.get(chargePointIdentifier)
|
||||
if (!current || current.sessionId !== sessionId) {
|
||||
try {
|
||||
ws.close(1008, 'Stale connection')
|
||||
} catch {
|
||||
// Ignore close errors on stale sockets.
|
||||
}
|
||||
return
|
||||
if (current) {
|
||||
current.lastMessageAt = new Date()
|
||||
}
|
||||
current.lastMessageAt = new Date()
|
||||
|
||||
const raw = evt.data
|
||||
if (typeof raw !== 'string') return
|
||||
|
||||
@@ -1,9 +1,8 @@
|
||||
import { Hono } from "hono";
|
||||
import { desc, eq, sql } from "drizzle-orm";
|
||||
import { desc, eq, sql, inArray } from "drizzle-orm";
|
||||
import dayjs from "dayjs";
|
||||
import { useDrizzle } from "@/lib/db.js";
|
||||
import { chargePoint, connector, meterValue } from "@/db/schema.js";
|
||||
import type { SampledValue } from "@/db/schema.js";
|
||||
import { chargePoint, connector } from "@/db/schema.js";
|
||||
import { ocppConnections } from "@/ocpp/handler.js";
|
||||
import { generateOcppPassword, hashOcppPassword } from "@/lib/ocpp-auth.js";
|
||||
import type { HonoEnv } from "@/types/hono.ts";
|
||||
@@ -82,12 +81,12 @@ app.post("/", async (c) => {
|
||||
if (body.feePerKwh !== undefined && (!Number.isInteger(body.feePerKwh) || body.feePerKwh < 0)) {
|
||||
return c.json({ error: "feePerKwh must be a non-negative integer" }, 400);
|
||||
}
|
||||
if (body.pricingMode !== undefined && !["fixed", "tou"].includes(body.pricingMode)) {
|
||||
if (body.pricingMode !== undefined && !['fixed', 'tou'].includes(body.pricingMode)) {
|
||||
return c.json({ error: "pricingMode must be 'fixed' or 'tou'" }, 400);
|
||||
}
|
||||
|
||||
const plainPassword = generateOcppPassword();
|
||||
const passwordHash = await hashOcppPassword(plainPassword);
|
||||
const plainPassword = generateOcppPassword()
|
||||
const passwordHash = await hashOcppPassword(plainPassword)
|
||||
|
||||
const [created] = await db
|
||||
.insert(chargePoint)
|
||||
@@ -123,7 +122,6 @@ app.get("/connections", (c) => {
|
||||
app.get("/:id", async (c) => {
|
||||
const db = useDrizzle();
|
||||
const id = c.req.param("id");
|
||||
const isAdmin = c.get("user")?.role === "admin";
|
||||
|
||||
const [cp] = await db.select().from(chargePoint).where(eq(chargePoint.id, id)).limit(1);
|
||||
|
||||
@@ -132,39 +130,12 @@ app.get("/:id", async (c) => {
|
||||
const allConnectors = await db.select().from(connector).where(eq(connector.chargePointId, id));
|
||||
const cpStatus = allConnectors.find((conn) => conn.connectorId === 0);
|
||||
const displayConnectors = allConnectors.filter((conn) => conn.connectorId > 0);
|
||||
const [latestMeter] = await db
|
||||
.select({
|
||||
timestamp: meterValue.timestamp,
|
||||
sampledValues: meterValue.sampledValues,
|
||||
})
|
||||
.from(meterValue)
|
||||
.where(eq(meterValue.chargePointId, id))
|
||||
.orderBy(desc(meterValue.timestamp), desc(meterValue.receivedAt))
|
||||
.limit(1);
|
||||
|
||||
const meterHistory = isAdmin
|
||||
? (
|
||||
await db
|
||||
.select({
|
||||
connectorNumber: meterValue.connectorNumber,
|
||||
timestamp: meterValue.timestamp,
|
||||
sampledValues: meterValue.sampledValues,
|
||||
})
|
||||
.from(meterValue)
|
||||
.where(eq(meterValue.chargePointId, id))
|
||||
.orderBy(desc(meterValue.timestamp), desc(meterValue.receivedAt))
|
||||
.limit(24)
|
||||
).reverse()
|
||||
: [];
|
||||
|
||||
return c.json({
|
||||
...cp,
|
||||
connectors: displayConnectors,
|
||||
chargePointStatus: cpStatus?.status ?? null,
|
||||
chargePointErrorCode: cpStatus?.errorCode ?? null,
|
||||
latestMeterTimestamp: latestMeter?.timestamp ?? null,
|
||||
latestMeterValues: ((latestMeter?.sampledValues as SampledValue[] | undefined) ?? []),
|
||||
meterHistory,
|
||||
});
|
||||
});
|
||||
|
||||
@@ -204,19 +175,21 @@ app.patch("/:id", async (c) => {
|
||||
}
|
||||
set.registrationStatus = body.registrationStatus as "Accepted" | "Pending" | "Rejected";
|
||||
}
|
||||
if (body.chargePointVendor !== undefined)
|
||||
set.chargePointVendor = body.chargePointVendor.trim() || "Unknown";
|
||||
if (body.chargePointModel !== undefined)
|
||||
set.chargePointModel = body.chargePointModel.trim() || "Unknown";
|
||||
if (body.chargePointVendor !== undefined) set.chargePointVendor = body.chargePointVendor.trim() || "Unknown";
|
||||
if (body.chargePointModel !== undefined) set.chargePointModel = body.chargePointModel.trim() || "Unknown";
|
||||
if ("deviceName" in body) set.deviceName = body.deviceName?.trim() || null;
|
||||
if (body.pricingMode !== undefined) {
|
||||
if (!["fixed", "tou"].includes(body.pricingMode)) {
|
||||
if (!['fixed', 'tou'].includes(body.pricingMode)) {
|
||||
return c.json({ error: "pricingMode must be 'fixed' or 'tou'" }, 400);
|
||||
}
|
||||
set.pricingMode = body.pricingMode;
|
||||
}
|
||||
|
||||
const [updated] = await db.update(chargePoint).set(set).where(eq(chargePoint.id, id)).returning();
|
||||
const [updated] = await db
|
||||
.update(chargePoint)
|
||||
.set(set)
|
||||
.where(eq(chargePoint.id, id))
|
||||
.returning();
|
||||
|
||||
if (!updated) return c.json({ error: "Not found" }, 404);
|
||||
|
||||
|
||||
@@ -3,6 +3,7 @@ import { desc, eq } from "drizzle-orm";
|
||||
import dayjs from "dayjs";
|
||||
import { useDrizzle } from "@/lib/db.js";
|
||||
import { idTag } from "@/db/schema.js";
|
||||
import { zValidator } from "@hono/zod-validator";
|
||||
import { z } from "zod";
|
||||
import type { HonoEnv } from "@/types/hono.ts";
|
||||
|
||||
|
||||
0
apps/csms/src/types/db.ts
Normal file
0
apps/csms/src/types/db.ts
Normal file
@@ -18,12 +18,7 @@ import {
|
||||
Tooltip,
|
||||
} from "@heroui/react";
|
||||
import { ArrowLeft, Pencil, ArrowRotateRight, Key, Copy, Check } from "@gravity-ui/icons";
|
||||
import {
|
||||
api,
|
||||
type ChargePointPasswordReset,
|
||||
type MeterHistoryPoint,
|
||||
type MeterSampledValue,
|
||||
} from "@/lib/api";
|
||||
import { api, type ChargePointPasswordReset } from "@/lib/api";
|
||||
import { useSession } from "@/lib/auth-client";
|
||||
import dayjs from "@/lib/dayjs";
|
||||
import InfoSection from "@/components/info-section";
|
||||
@@ -63,8 +58,6 @@ const registrationColorMap: Record<string, "success" | "warning" | "danger"> = {
|
||||
Rejected: "danger",
|
||||
};
|
||||
|
||||
const RESET_CONFIRM_TEXT = "我将重新配置设备";
|
||||
|
||||
const TX_LIMIT = 10;
|
||||
|
||||
// ── Helpers ────────────────────────────────────────────────────────────────
|
||||
@@ -82,179 +75,6 @@ function relativeTime(iso: string): string {
|
||||
return dayjs(iso).fromNow();
|
||||
}
|
||||
|
||||
function formatDateTime(iso: string | null | undefined): string {
|
||||
if (!iso) return "—";
|
||||
return dayjs(iso).format("YYYY/M/D HH:mm:ss");
|
||||
}
|
||||
|
||||
function extractMeterValue(sampledValues: MeterSampledValue[], measurands: string[]) {
|
||||
const parsedValues = sampledValues
|
||||
.map((sv) => {
|
||||
const numericValue = Number(sv.value);
|
||||
if (Number.isNaN(numericValue)) return null;
|
||||
return {
|
||||
value: numericValue,
|
||||
measurand: sv.measurand,
|
||||
phase: sv.phase,
|
||||
unit: sv.unit,
|
||||
};
|
||||
})
|
||||
.filter((sv): sv is NonNullable<typeof sv> => sv !== null);
|
||||
|
||||
const withoutPhase = parsedValues.find(
|
||||
(sv) =>
|
||||
((sv.measurand == null && measurands.includes("Energy.Active.Import.Register")) ||
|
||||
(sv.measurand != null && measurands.includes(sv.measurand))) &&
|
||||
!sv.phase,
|
||||
);
|
||||
if (withoutPhase) return withoutPhase;
|
||||
|
||||
return parsedValues.find(
|
||||
(sv) =>
|
||||
(sv.measurand == null && measurands.includes("Energy.Active.Import.Register")) ||
|
||||
(sv.measurand != null && measurands.includes(sv.measurand)),
|
||||
);
|
||||
}
|
||||
|
||||
function MeterCard({
|
||||
label,
|
||||
value,
|
||||
emphasis = false,
|
||||
}: {
|
||||
label: string;
|
||||
value: string;
|
||||
emphasis?: boolean;
|
||||
}) {
|
||||
return (
|
||||
<div
|
||||
className={`relative overflow-hidden rounded-xl border border-border/70 px-3 py-2.5 ${
|
||||
emphasis ? "bg-surface-secondary" : "bg-surface"
|
||||
}`}
|
||||
>
|
||||
<div className="min-w-0">
|
||||
<dt className="text-xs font-medium tracking-wide text-muted">{label}</dt>
|
||||
<dd className="mt-1 truncate text-base font-semibold tabular-nums text-foreground">
|
||||
{value}
|
||||
</dd>
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
|
||||
function buildMeterSnapshot(history: MeterHistoryPoint[]) {
|
||||
const latestPoint = history[history.length - 1];
|
||||
return {
|
||||
latestTimestamp: latestPoint?.timestamp ?? null,
|
||||
latestValues: latestPoint?.sampledValues ?? [],
|
||||
};
|
||||
}
|
||||
|
||||
function MeterChannelSection({
|
||||
connectorNumber,
|
||||
history,
|
||||
}: {
|
||||
connectorNumber: number;
|
||||
history: MeterHistoryPoint[];
|
||||
}) {
|
||||
const snapshot = buildMeterSnapshot(history);
|
||||
const meterVoltage = extractMeterValue(snapshot.latestValues, ["Voltage"]);
|
||||
const meterCurrent = extractMeterValue(snapshot.latestValues, ["Current.Import"]);
|
||||
const meterPower = extractMeterValue(snapshot.latestValues, ["Power.Active.Import"]);
|
||||
const meterPf = extractMeterValue(snapshot.latestValues, ["Power.Factor"]);
|
||||
const meterFrequency = extractMeterValue(snapshot.latestValues, ["Frequency"]);
|
||||
const meterTemperature = extractMeterValue(snapshot.latestValues, ["Temperature"]);
|
||||
const meterEnergyReg = extractMeterValue(snapshot.latestValues, [
|
||||
"Energy.Active.Import.Register",
|
||||
]);
|
||||
|
||||
return (
|
||||
<InfoSection title={`连接器 #${connectorNumber}`}>
|
||||
{history.length === 0 ? (
|
||||
<div className="rounded-xl border border-dashed border-border/70 bg-surface px-4 py-6 text-center">
|
||||
<div className="mx-auto flex size-10 items-center justify-center rounded-full bg-muted/10 text-muted">
|
||||
<Plug className="size-5" />
|
||||
</div>
|
||||
<p className="mt-3 text-sm font-medium text-foreground">
|
||||
暂未收到该连接器的 MeterValue 采样数据
|
||||
</p>
|
||||
<p className="mt-1 text-xs leading-5 text-muted">
|
||||
充电桩上报后,这里会自动显示电压、电流、功率等实时计量信息。
|
||||
</p>
|
||||
</div>
|
||||
) : (
|
||||
<div className="space-y-3">
|
||||
<div className="flex items-center justify-between gap-3 rounded-xl border border-border/70 bg-surface-secondary px-3 py-2">
|
||||
<div>
|
||||
<p className="text-xs font-medium tracking-wide text-muted">
|
||||
连接器 #{connectorNumber}
|
||||
</p>
|
||||
<p className="text-sm font-medium text-foreground">
|
||||
{formatDateTime(snapshot.latestTimestamp)}
|
||||
</p>
|
||||
</div>
|
||||
<span className="rounded-full bg-accent/10 px-2 py-1 text-xs font-medium text-accent">
|
||||
最近 {history.length} 条
|
||||
</span>
|
||||
</div>
|
||||
<dl className="grid gap-3 sm:grid-cols-2 xl:grid-cols-3">
|
||||
<MeterCard
|
||||
label="电压"
|
||||
value={
|
||||
meterVoltage ? `${meterVoltage.value.toFixed(1)} ${meterVoltage.unit ?? "V"}` : "—"
|
||||
}
|
||||
/>
|
||||
<MeterCard
|
||||
label="电流"
|
||||
value={
|
||||
meterCurrent ? `${meterCurrent.value.toFixed(2)} ${meterCurrent.unit ?? "A"}` : "—"
|
||||
}
|
||||
/>
|
||||
<MeterCard
|
||||
label="有功功率"
|
||||
value={meterPower ? `${meterPower.value.toFixed(0)} ${meterPower.unit ?? "W"}` : "—"}
|
||||
/>
|
||||
<MeterCard label="功率因数" value={meterPf ? meterPf.value.toFixed(3) : "—"} />
|
||||
<MeterCard
|
||||
label="频率"
|
||||
value={
|
||||
meterFrequency
|
||||
? `${meterFrequency.value.toFixed(1)} ${meterFrequency.unit ?? "Hz"}`
|
||||
: "—"
|
||||
}
|
||||
/>
|
||||
<MeterCard
|
||||
label="温度"
|
||||
value={
|
||||
meterTemperature
|
||||
? `${meterTemperature.value.toFixed(1)} ${meterTemperature.unit ?? "Celsius"}`
|
||||
: "—"
|
||||
}
|
||||
/>
|
||||
<div className="sm:col-span-2 xl:col-span-1">
|
||||
<MeterCard
|
||||
label="累计电能表读数"
|
||||
value={
|
||||
meterEnergyReg
|
||||
? `${meterEnergyReg.value.toFixed(3)} ${meterEnergyReg.unit ?? "Wh"}`
|
||||
: "—"
|
||||
}
|
||||
emphasis
|
||||
/>
|
||||
</div>
|
||||
<div className="sm:col-span-2 xl:col-span-2">
|
||||
<MeterCard
|
||||
label="采样时间"
|
||||
value={formatDateTime(snapshot.latestTimestamp)}
|
||||
emphasis
|
||||
/>
|
||||
</div>
|
||||
</dl>
|
||||
</div>
|
||||
)}
|
||||
</InfoSection>
|
||||
);
|
||||
}
|
||||
|
||||
// ── Edit form type ─────────────────────────────────────────────────────────
|
||||
|
||||
type EditForm = {
|
||||
@@ -287,25 +107,16 @@ export default function ChargePointDetailPage({ params }: { params: Promise<{ id
|
||||
});
|
||||
|
||||
// reset password
|
||||
const [resetConfirmOpen, setResetConfirmOpen] = useState(false);
|
||||
const [resetConfirmText, setResetConfirmText] = useState("");
|
||||
const [resetBusy, setResetBusy] = useState(false);
|
||||
const [resetResult, setResetResult] = useState<ChargePointPasswordReset | null>(null);
|
||||
const [resetCopied, setResetCopied] = useState(false);
|
||||
|
||||
const openResetConfirm = () => {
|
||||
setResetConfirmText("");
|
||||
setResetConfirmOpen(true);
|
||||
};
|
||||
|
||||
const handleConfirmResetPassword = async () => {
|
||||
const handleResetPassword = async () => {
|
||||
if (!cp) return;
|
||||
setResetBusy(true);
|
||||
try {
|
||||
const result = await api.chargePoints.resetPassword(cp.id);
|
||||
setResetResult(result);
|
||||
setResetConfirmOpen(false);
|
||||
setResetConfirmText("");
|
||||
} finally {
|
||||
setResetBusy(false);
|
||||
}
|
||||
@@ -374,7 +185,7 @@ export default function ChargePointDetailPage({ params }: { params: Promise<{ id
|
||||
dayjs().diff(dayjs(cp.lastHeartbeatAt), "second") < (cp.heartbeatInterval ?? 60) * 3;
|
||||
const commandChannelUnavailable = cp?.transportStatus === "unavailable";
|
||||
const statusLabel = isOnline ? "在线" : commandChannelUnavailable ? "通道异常" : "离线";
|
||||
const transportStatusDotClass = isOnline
|
||||
const statusDotClass = isOnline
|
||||
? "bg-success animate-pulse"
|
||||
: commandChannelUnavailable
|
||||
? "bg-warning"
|
||||
@@ -409,16 +220,6 @@ export default function ChargePointDetailPage({ params }: { params: Promise<{ id
|
||||
}
|
||||
|
||||
const sortedConnectors = [...cp.connectors].sort((a, b) => a.connectorId - b.connectorId);
|
||||
const meterHistory = cp.meterHistory ?? [];
|
||||
const meterHistoryByConnector = meterHistory.reduce<Record<number, MeterHistoryPoint[]>>(
|
||||
(acc, row) => {
|
||||
if (!acc[row.connectorNumber]) acc[row.connectorNumber] = [];
|
||||
acc[row.connectorNumber].push(row);
|
||||
return acc;
|
||||
},
|
||||
{},
|
||||
);
|
||||
const displayConnectors = sortedConnectors.filter((connector) => connector.connectorId > 0);
|
||||
|
||||
// ── Render ───────────────────────────────────────────────────────────────
|
||||
|
||||
@@ -438,10 +239,10 @@ export default function ChargePointDetailPage({ params }: { params: Promise<{ id
|
||||
<div className="space-y-1.5">
|
||||
<div className="flex flex-wrap items-center gap-2">
|
||||
<h1 className="text-2xl font-semibold text-foreground">
|
||||
{cp.deviceName ?? <span>{cp.chargePointIdentifier}</span>}
|
||||
{cp.deviceName ?? <span className="font-mono">{cp.chargePointIdentifier}</span>}
|
||||
</h1>
|
||||
{isAdmin && cp.deviceName && (
|
||||
<span className="text-sm text-muted">{cp.chargePointIdentifier}</span>
|
||||
<span className="font-mono text-sm text-muted">{cp.chargePointIdentifier}</span>
|
||||
)}
|
||||
<Chip
|
||||
color={registrationColorMap[cp.registrationStatus] ?? "warning"}
|
||||
@@ -451,7 +252,9 @@ export default function ChargePointDetailPage({ params }: { params: Promise<{ id
|
||||
{cp.registrationStatus}
|
||||
</Chip>
|
||||
<div className="flex items-center gap-1.5">
|
||||
<span className={`size-2 rounded-full ${transportStatusDotClass}`} />
|
||||
<span
|
||||
className={`size-2 rounded-full ${statusDotClass}`}
|
||||
/>
|
||||
<span className="text-xs text-muted">{statusLabel}</span>
|
||||
</div>
|
||||
</div>
|
||||
@@ -462,14 +265,7 @@ export default function ChargePointDetailPage({ params }: { params: Promise<{ id
|
||||
)}
|
||||
</div>
|
||||
<div className="flex items-center gap-2">
|
||||
<Button
|
||||
isIconOnly
|
||||
size="sm"
|
||||
variant="ghost"
|
||||
isDisabled={refreshing}
|
||||
onPress={() => cpQuery.refetch()}
|
||||
aria-label="刷新"
|
||||
>
|
||||
<Button isIconOnly size="sm" variant="ghost" isDisabled={refreshing} onPress={() => cpQuery.refetch()} aria-label="刷新">
|
||||
<ArrowRotateRight className={`size-4 ${refreshing ? "animate-spin" : ""}`} />
|
||||
</Button>
|
||||
{isAdmin && (
|
||||
@@ -477,12 +273,7 @@ export default function ChargePointDetailPage({ params }: { params: Promise<{ id
|
||||
<Tooltip>
|
||||
<Tooltip.Content>重置 OCPP 认证密钥</Tooltip.Content>
|
||||
<Tooltip.Trigger>
|
||||
<Button
|
||||
size="sm"
|
||||
variant="ghost"
|
||||
isDisabled={resetBusy}
|
||||
onPress={openResetConfirm}
|
||||
>
|
||||
<Button size="sm" variant="ghost" isDisabled={resetBusy} onPress={handleResetPassword}>
|
||||
{resetBusy ? <Spinner size="sm" /> : <Key className="size-4" />}
|
||||
重置密钥
|
||||
</Button>
|
||||
@@ -549,66 +340,6 @@ export default function ChargePointDetailPage({ params }: { params: Promise<{ id
|
||||
</dd>
|
||||
</div>
|
||||
))}
|
||||
|
||||
{isAdmin && (
|
||||
<Modal
|
||||
isOpen={resetConfirmOpen}
|
||||
onOpenChange={(open) => {
|
||||
if (!resetBusy) {
|
||||
setResetConfirmOpen(open);
|
||||
if (!open) setResetConfirmText("");
|
||||
}
|
||||
}}
|
||||
>
|
||||
<Modal.Backdrop>
|
||||
<Modal.Container scroll="outside">
|
||||
<Modal.Dialog className="sm:max-w-md">
|
||||
<Modal.CloseTrigger />
|
||||
<Modal.Header>
|
||||
<Modal.Heading>重置 OCPP 认证密钥</Modal.Heading>
|
||||
</Modal.Header>
|
||||
<Modal.Body className="space-y-4">
|
||||
<p className="text-sm text-warning font-medium">
|
||||
重置后旧密钥将立即失效,请先确认设备已准备重新配置。
|
||||
</p>
|
||||
<TextField fullWidth>
|
||||
<Label className="text-sm font-normal">
|
||||
请输入 “
|
||||
<span className="font-medium cursor-text">{RESET_CONFIRM_TEXT}</span>”
|
||||
以继续
|
||||
</Label>
|
||||
<Input
|
||||
placeholder={RESET_CONFIRM_TEXT}
|
||||
value={resetConfirmText}
|
||||
onChange={(e) => setResetConfirmText(e.target.value)}
|
||||
autoComplete="off"
|
||||
/>
|
||||
</TextField>
|
||||
</Modal.Body>
|
||||
<Modal.Footer className="flex justify-end gap-2">
|
||||
<Button
|
||||
variant="ghost"
|
||||
onPress={() => {
|
||||
setResetConfirmOpen(false);
|
||||
setResetConfirmText("");
|
||||
}}
|
||||
isDisabled={resetBusy}
|
||||
>
|
||||
取消
|
||||
</Button>
|
||||
<Button
|
||||
variant="danger"
|
||||
isDisabled={resetBusy || resetConfirmText !== RESET_CONFIRM_TEXT}
|
||||
onPress={handleConfirmResetPassword}
|
||||
>
|
||||
{resetBusy ? <Spinner size="sm" /> : "确认重置"}
|
||||
</Button>
|
||||
</Modal.Footer>
|
||||
</Modal.Dialog>
|
||||
</Modal.Container>
|
||||
</Modal.Backdrop>
|
||||
</Modal>
|
||||
)}
|
||||
</dl>
|
||||
</InfoSection>
|
||||
)}
|
||||
@@ -713,7 +444,9 @@ export default function ChargePointDetailPage({ params }: { params: Promise<{ id
|
||||
<dt className="shrink-0 text-sm text-muted">充电桥状态</dt>
|
||||
<dd>
|
||||
<div className="flex items-center gap-1.5">
|
||||
<span className={`size-2 rounded-full ${transportStatusDotClass}`} />
|
||||
<span
|
||||
className={`size-2 rounded-full ${statusDotClass}`}
|
||||
/>
|
||||
<span className="text-sm text-foreground">{statusLabel}</span>
|
||||
</div>
|
||||
</dd>
|
||||
@@ -750,8 +483,10 @@ export default function ChargePointDetailPage({ params }: { params: Promise<{ id
|
||||
{conn.errorCode && conn.errorCode !== "NoError" && (
|
||||
<p className="text-xs text-danger">错误: {conn.errorCode}</p>
|
||||
)}
|
||||
{/* {conn.info && <p className="text-xs text-muted">{conn.info}</p>} */}
|
||||
<p className="text-xs text-muted">
|
||||
更新于 {dayjs(conn.lastStatusAt).format("MM/DD HH:mm")}
|
||||
更新于{" "}
|
||||
{dayjs(conn.lastStatusAt).format("MM/DD HH:mm")}
|
||||
</p>
|
||||
</div>
|
||||
))}
|
||||
@@ -759,19 +494,6 @@ export default function ChargePointDetailPage({ params }: { params: Promise<{ id
|
||||
</div>
|
||||
)}
|
||||
|
||||
{/* MeterValue */}
|
||||
{isAdmin && (
|
||||
<div className="grid gap-4 lg:grid-cols-2">
|
||||
{displayConnectors.map((connector) => (
|
||||
<MeterChannelSection
|
||||
key={connector.id}
|
||||
connectorNumber={connector.connectorId}
|
||||
history={meterHistoryByConnector[connector.connectorId] ?? []}
|
||||
/>
|
||||
))}
|
||||
</div>
|
||||
)}
|
||||
|
||||
{/* Transactions */}
|
||||
<div className="space-y-3">
|
||||
<div className="flex items-center justify-between">
|
||||
@@ -878,10 +600,7 @@ export default function ChargePointDetailPage({ params }: { params: Promise<{ id
|
||||
<Modal
|
||||
isOpen={resetResult !== null}
|
||||
onOpenChange={(open) => {
|
||||
if (!open) {
|
||||
setResetResult(null);
|
||||
setResetCopied(false);
|
||||
}
|
||||
if (!open) { setResetResult(null); setResetCopied(false); }
|
||||
}}
|
||||
>
|
||||
<Modal.Backdrop>
|
||||
@@ -907,15 +626,9 @@ export default function ChargePointDetailPage({ params }: { params: Promise<{ id
|
||||
isIconOnly
|
||||
size="sm"
|
||||
variant="ghost"
|
||||
onPress={() =>
|
||||
resetResult && handleCopyResetPassword(resetResult.plainPassword)
|
||||
}
|
||||
onPress={() => resetResult && handleCopyResetPassword(resetResult.plainPassword)}
|
||||
>
|
||||
{resetCopied ? (
|
||||
<Check className="size-4 text-success" />
|
||||
) : (
|
||||
<Copy className="size-4" />
|
||||
)}
|
||||
{resetCopied ? <Check className="size-4 text-success" /> : <Copy className="size-4" />}
|
||||
</Button>
|
||||
</Tooltip.Trigger>
|
||||
</Tooltip>
|
||||
@@ -923,12 +636,7 @@ export default function ChargePointDetailPage({ params }: { params: Promise<{ id
|
||||
</div>
|
||||
</Modal.Body>
|
||||
<Modal.Footer className="flex justify-end">
|
||||
<Button
|
||||
onPress={() => {
|
||||
setResetResult(null);
|
||||
setResetCopied(false);
|
||||
}}
|
||||
>
|
||||
<Button onPress={() => { setResetResult(null); setResetCopied(false); }}>
|
||||
我已保存密钥
|
||||
</Button>
|
||||
</Modal.Footer>
|
||||
@@ -959,7 +667,9 @@ export default function ChargePointDetailPage({ params }: { params: Promise<{ id
|
||||
<Input
|
||||
placeholder="1号楼A区01号桩"
|
||||
value={editForm.deviceName}
|
||||
onChange={(e) => setEditForm((f) => ({ ...f, deviceName: e.target.value }))}
|
||||
onChange={(e) =>
|
||||
setEditForm((f) => ({ ...f, deviceName: e.target.value }))
|
||||
}
|
||||
/>
|
||||
</TextField>
|
||||
<div className="grid grid-cols-2 gap-3">
|
||||
@@ -1034,17 +744,17 @@ export default function ChargePointDetailPage({ params }: { params: Promise<{ id
|
||||
</Select>
|
||||
</div>
|
||||
{editForm.pricingMode === "fixed" && (
|
||||
<TextField fullWidth>
|
||||
<Label className="text-sm font-medium">固定电价(分/kWh)</Label>
|
||||
<Input
|
||||
type="number"
|
||||
min="0"
|
||||
step="1"
|
||||
placeholder="0"
|
||||
value={editForm.feePerKwh}
|
||||
onChange={(e) => setEditForm((f) => ({ ...f, feePerKwh: e.target.value }))}
|
||||
/>
|
||||
</TextField>
|
||||
<TextField fullWidth>
|
||||
<Label className="text-sm font-medium">固定电价(分/kWh)</Label>
|
||||
<Input
|
||||
type="number"
|
||||
min="0"
|
||||
step="1"
|
||||
placeholder="0"
|
||||
value={editForm.feePerKwh}
|
||||
onChange={(e) => setEditForm((f) => ({ ...f, feePerKwh: e.target.value }))}
|
||||
/>
|
||||
</TextField>
|
||||
)}
|
||||
</Modal.Body>
|
||||
<Modal.Footer className="flex justify-end gap-2">
|
||||
|
||||
@@ -184,6 +184,7 @@ export default function PricingPage() {
|
||||
const [activeTier, setActiveTier] = useState<PriceTier>("peak");
|
||||
const [isDirty, setIsDirty] = useState(false);
|
||||
const [saving, setSaving] = useState(false);
|
||||
const [showPayload, setShowPayload] = useState(false);
|
||||
|
||||
// Populate state once remote tariff loads
|
||||
useEffect(() => {
|
||||
@@ -285,6 +286,7 @@ export default function PricingPage() {
|
||||
|
||||
// ── Derived values ───────────────────────────────────────────────────────
|
||||
const slots = scheduleToSlots(schedule);
|
||||
const apiPayload: TariffConfig = { slots, prices };
|
||||
|
||||
// ── Admin gate ───────────────────────────────────────────────────────────
|
||||
if (!isAdmin) {
|
||||
|
||||
@@ -8,6 +8,7 @@ import {
|
||||
Controls,
|
||||
Handle,
|
||||
MiniMap,
|
||||
Panel,
|
||||
Position,
|
||||
type Node,
|
||||
type Edge,
|
||||
@@ -26,8 +27,7 @@ type ConnectionStatus = "online" | "stale" | "offline";
|
||||
|
||||
function getStatus(cp: ChargePoint, connected: string[]): ConnectionStatus {
|
||||
if (cp.transportStatus === "unavailable") return "stale";
|
||||
if (cp.transportStatus !== "online" || !connected.includes(cp.chargePointIdentifier))
|
||||
return "offline";
|
||||
if (cp.transportStatus !== "online" || !connected.includes(cp.chargePointIdentifier)) return "offline";
|
||||
if (!cp.lastHeartbeatAt) return "stale";
|
||||
return dayjs().diff(dayjs(cp.lastHeartbeatAt), "minute") < 5 ? "online" : "stale";
|
||||
}
|
||||
|
||||
@@ -3,7 +3,18 @@
|
||||
import Link from "next/link";
|
||||
import { usePathname } from "next/navigation";
|
||||
import { useState } from "react";
|
||||
import { CreditCard, Gear, TagDollar, Thunderbolt, Xmark, Bars } from "@gravity-ui/icons";
|
||||
import {
|
||||
CreditCard,
|
||||
Gear,
|
||||
ListCheck,
|
||||
Person,
|
||||
PlugConnection,
|
||||
TagDollar,
|
||||
Thunderbolt,
|
||||
ThunderboltFill,
|
||||
Xmark,
|
||||
Bars,
|
||||
} from "@gravity-ui/icons";
|
||||
import SidebarFooter from "@/components/sidebar-footer";
|
||||
import { useSession } from "@/lib/auth-client";
|
||||
import { EvCharger, Gauge, Network, ReceiptText, UserCog, Users } from "lucide-react";
|
||||
|
||||
@@ -74,22 +74,6 @@ export type ConnectionsStatus = {
|
||||
|
||||
export type ChargePointConnectionStatus = "online" | "unavailable" | "offline";
|
||||
|
||||
export type MeterSampledValue = {
|
||||
value: string;
|
||||
context?: string;
|
||||
format?: string;
|
||||
measurand?: string;
|
||||
phase?: string;
|
||||
location?: string;
|
||||
unit?: string;
|
||||
};
|
||||
|
||||
export type MeterHistoryPoint = {
|
||||
connectorNumber: number;
|
||||
timestamp: string;
|
||||
sampledValues: MeterSampledValue[];
|
||||
};
|
||||
|
||||
export type ChargePoint = {
|
||||
id: string;
|
||||
chargePointIdentifier: string;
|
||||
@@ -139,9 +123,6 @@ export type ChargePointDetail = {
|
||||
connectors: ConnectorDetail[];
|
||||
chargePointStatus: string | null;
|
||||
chargePointErrorCode: string | null;
|
||||
latestMeterTimestamp: string | null;
|
||||
latestMeterValues: MeterSampledValue[];
|
||||
meterHistory: MeterHistoryPoint[];
|
||||
};
|
||||
|
||||
export type Transaction = {
|
||||
|
||||
@@ -4,7 +4,7 @@ const CSMS_INTERNAL_URL =
|
||||
process.env.CSMS_INTERNAL_URL ?? process.env.NEXT_PUBLIC_CSMS_URL ?? "http://localhost:3001";
|
||||
|
||||
/** 检查 CSMS 是否已完成初始化(有用户存在)。 */
|
||||
async function isInitialized(): Promise<boolean> {
|
||||
async function isInitialized(request: NextRequest): Promise<boolean> {
|
||||
try {
|
||||
const res = await fetch(`${CSMS_INTERNAL_URL}/api/setup`, {
|
||||
method: "GET",
|
||||
@@ -25,7 +25,7 @@ export async function proxy(request: NextRequest) {
|
||||
|
||||
// /setup 页面:已初始化则跳转登录
|
||||
if (pathname === "/setup") {
|
||||
if (await isInitialized()) {
|
||||
if (await isInitialized(request)) {
|
||||
return NextResponse.redirect(new URL("/login", request.url));
|
||||
}
|
||||
return NextResponse.next();
|
||||
@@ -33,7 +33,7 @@ export async function proxy(request: NextRequest) {
|
||||
|
||||
// /dashboard 路由:检查 session,未登录跳转 /login
|
||||
if (pathname.startsWith("/dashboard")) {
|
||||
if (!(await isInitialized())) {
|
||||
if (!(await isInitialized(request))) {
|
||||
return NextResponse.redirect(new URL("/setup", request.url));
|
||||
}
|
||||
|
||||
@@ -53,7 +53,7 @@ export async function proxy(request: NextRequest) {
|
||||
|
||||
// /login 路由:未初始化则跳转 /setup
|
||||
if (pathname === "/login") {
|
||||
if (!(await isInitialized())) {
|
||||
if (!(await isInitialized(request))) {
|
||||
return NextResponse.redirect(new URL("/setup", request.url));
|
||||
}
|
||||
return NextResponse.next();
|
||||
|
||||
@@ -1,36 +0,0 @@
|
||||
#ifndef HELIOS_PINS_H
|
||||
#define HELIOS_PINS_H
|
||||
|
||||
#include <Arduino.h>
|
||||
|
||||
// Panel switches and LEDs
|
||||
static const uint8_t PIN_CC1 = 39; // High-active switch
|
||||
static const uint8_t PIN_CC2 = 36; // High-active switch
|
||||
static const uint8_t PIN_LED1 = 32; // Low-active LED
|
||||
static const uint8_t PIN_LED2 = 33; // Low-active LED
|
||||
|
||||
// Key inputs
|
||||
static const uint8_t PIN_KEY1 = 34;
|
||||
static const uint8_t PIN_KEY2 = 35;
|
||||
|
||||
// Relay outputs
|
||||
static const uint8_t PIN_RELAY1 = 27;
|
||||
static const uint8_t PIN_RELAY2 = 14;
|
||||
|
||||
// I2C (OLED)
|
||||
static const uint8_t PIN_OLED_SCL = 22;
|
||||
static const uint8_t PIN_OLED_SDA = 21;
|
||||
|
||||
// SPI (RC522)
|
||||
static const uint8_t PIN_RC_MOSI = 23;
|
||||
static const uint8_t PIN_RC_MISO = 19;
|
||||
static const uint8_t PIN_RC_SCK = 18;
|
||||
static const uint8_t PIN_RC_CS = 5;
|
||||
static const uint8_t PIN_RC_RST = 4;
|
||||
|
||||
// UART2 <-> IM1281C (U2)
|
||||
static const uint8_t PIN_U2TXD = 26;
|
||||
static const uint8_t PIN_U2RXD = 25;
|
||||
static const uint32_t BAUD_IM1281C = 9600;
|
||||
|
||||
#endif // HELIOS_PINS_H
|
||||
@@ -1,125 +0,0 @@
|
||||
#include "IM1281C.h"
|
||||
|
||||
IM1281C::IM1281C()
|
||||
: _serial(nullptr),
|
||||
_slaveAddress(1),
|
||||
_lastAResult(0xFF),
|
||||
_lastBResult(0xFF)
|
||||
{
|
||||
}
|
||||
|
||||
bool IM1281C::begin(HardwareSerial &serial,
|
||||
int8_t rxPin,
|
||||
int8_t txPin,
|
||||
uint8_t slaveAddress,
|
||||
uint32_t baudRate,
|
||||
uint32_t serialConfig)
|
||||
{
|
||||
_serial = &serial;
|
||||
_slaveAddress = slaveAddress;
|
||||
_a = IM1281CAData{};
|
||||
_b = IM1281CBData{};
|
||||
_lastAResult = 0xFF;
|
||||
_lastBResult = 0xFF;
|
||||
|
||||
_serial->begin(baudRate, serialConfig, rxPin, txPin);
|
||||
_node.begin(_slaveAddress, *_serial);
|
||||
return true;
|
||||
}
|
||||
|
||||
bool IM1281C::readA()
|
||||
{
|
||||
return readAll();
|
||||
}
|
||||
|
||||
bool IM1281C::readB()
|
||||
{
|
||||
return readAll();
|
||||
}
|
||||
|
||||
bool IM1281C::readAll()
|
||||
{
|
||||
if (_serial == nullptr)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
// IM1281C datasheet addresses are effectively 32-bit data items.
|
||||
// Requesting 0x0010 from 0x0048 yields 64 data bytes (0x40), which covers A/B block.
|
||||
const uint8_t result = _node.readHoldingRegisters(0x0048, 16);
|
||||
_lastAResult = result;
|
||||
_lastBResult = result;
|
||||
|
||||
if (result != _node.ku8MBSuccess)
|
||||
{
|
||||
_a.valid = false;
|
||||
_b.valid = false;
|
||||
return false;
|
||||
}
|
||||
|
||||
const uint32_t aVoltageRaw = combineWords(_node.getResponseBuffer(0), _node.getResponseBuffer(1));
|
||||
const uint32_t aCurrentRaw = combineWords(_node.getResponseBuffer(2), _node.getResponseBuffer(3));
|
||||
const uint32_t aPowerRaw = combineWords(_node.getResponseBuffer(4), _node.getResponseBuffer(5));
|
||||
const uint32_t aEnergyRaw = combineWords(_node.getResponseBuffer(6), _node.getResponseBuffer(7));
|
||||
const uint32_t aPfRaw = combineWords(_node.getResponseBuffer(8), _node.getResponseBuffer(9));
|
||||
const uint32_t aCo2Raw = combineWords(_node.getResponseBuffer(10), _node.getResponseBuffer(11));
|
||||
const uint32_t aTempRaw = combineWords(_node.getResponseBuffer(12), _node.getResponseBuffer(13));
|
||||
const uint32_t aFreqRaw = combineWords(_node.getResponseBuffer(14), _node.getResponseBuffer(15));
|
||||
|
||||
_a.voltage = scaleValue(aVoltageRaw, 0.0001f);
|
||||
_a.current = scaleValue(aCurrentRaw, 0.0001f);
|
||||
_a.power = scaleValue(aPowerRaw, 0.0001f);
|
||||
_a.energy = scaleValue(aEnergyRaw, 0.0001f);
|
||||
_a.powerFactor = scaleValue(aPfRaw, 0.001f);
|
||||
_a.co2 = scaleValue(aCo2Raw, 0.0001f);
|
||||
_a.temperature = scaleValue(aTempRaw, 0.01f);
|
||||
_a.frequency = scaleValue(aFreqRaw, 0.01f);
|
||||
_a.valid = true;
|
||||
|
||||
const uint32_t bVoltageRaw = combineWords(_node.getResponseBuffer(16), _node.getResponseBuffer(17));
|
||||
const uint32_t bCurrentRaw = combineWords(_node.getResponseBuffer(18), _node.getResponseBuffer(19));
|
||||
const uint32_t bPowerRaw = combineWords(_node.getResponseBuffer(20), _node.getResponseBuffer(21));
|
||||
const uint32_t bEnergyRaw = combineWords(_node.getResponseBuffer(22), _node.getResponseBuffer(23));
|
||||
const uint32_t bPfRaw = combineWords(_node.getResponseBuffer(24), _node.getResponseBuffer(25));
|
||||
const uint32_t bCo2Raw = combineWords(_node.getResponseBuffer(26), _node.getResponseBuffer(27));
|
||||
|
||||
_b.voltage = scaleValue(bVoltageRaw, 0.0001f);
|
||||
_b.current = scaleValue(bCurrentRaw, 0.0001f);
|
||||
_b.power = scaleValue(bPowerRaw, 0.0001f);
|
||||
_b.energy = scaleValue(bEnergyRaw, 0.0001f);
|
||||
_b.powerFactor = scaleValue(bPfRaw, 0.001f);
|
||||
_b.co2 = scaleValue(bCo2Raw, 0.0001f);
|
||||
_b.valid = true;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
const IM1281CAData &IM1281C::a() const
|
||||
{
|
||||
return _a;
|
||||
}
|
||||
|
||||
const IM1281CBData &IM1281C::b() const
|
||||
{
|
||||
return _b;
|
||||
}
|
||||
|
||||
uint8_t IM1281C::lastAResult() const
|
||||
{
|
||||
return _lastAResult;
|
||||
}
|
||||
|
||||
uint8_t IM1281C::lastBResult() const
|
||||
{
|
||||
return _lastBResult;
|
||||
}
|
||||
|
||||
uint32_t IM1281C::combineWords(uint16_t highWord, uint16_t lowWord)
|
||||
{
|
||||
return (static_cast<uint32_t>(highWord) << 16) | static_cast<uint32_t>(lowWord);
|
||||
}
|
||||
|
||||
float IM1281C::scaleValue(uint32_t raw, float scale)
|
||||
{
|
||||
return static_cast<float>(raw) * scale;
|
||||
}
|
||||
@@ -1,65 +0,0 @@
|
||||
#ifndef HELIOS_IM1281C_H
|
||||
#define HELIOS_IM1281C_H
|
||||
|
||||
#include <Arduino.h>
|
||||
#include <ModbusMaster.h>
|
||||
|
||||
struct IM1281CAData
|
||||
{
|
||||
float voltage = 0.0f;
|
||||
float current = 0.0f;
|
||||
float power = 0.0f;
|
||||
float energy = 0.0f;
|
||||
float powerFactor = 0.0f;
|
||||
float co2 = 0.0f;
|
||||
float temperature = 0.0f;
|
||||
float frequency = 0.0f;
|
||||
bool valid = false;
|
||||
};
|
||||
|
||||
struct IM1281CBData
|
||||
{
|
||||
float voltage = 0.0f;
|
||||
float current = 0.0f;
|
||||
float power = 0.0f;
|
||||
float energy = 0.0f;
|
||||
float powerFactor = 0.0f;
|
||||
float co2 = 0.0f;
|
||||
bool valid = false;
|
||||
};
|
||||
|
||||
class IM1281C
|
||||
{
|
||||
public:
|
||||
IM1281C();
|
||||
|
||||
bool begin(HardwareSerial &serial,
|
||||
int8_t rxPin,
|
||||
int8_t txPin,
|
||||
uint8_t slaveAddress = 1,
|
||||
uint32_t baudRate = 4800,
|
||||
uint32_t serialConfig = SERIAL_8N1);
|
||||
|
||||
bool readA();
|
||||
bool readB();
|
||||
bool readAll();
|
||||
|
||||
const IM1281CAData &a() const;
|
||||
const IM1281CBData &b() const;
|
||||
uint8_t lastAResult() const;
|
||||
uint8_t lastBResult() const;
|
||||
|
||||
private:
|
||||
static uint32_t combineWords(uint16_t highWord, uint16_t lowWord);
|
||||
static float scaleValue(uint32_t raw, float scale);
|
||||
|
||||
ModbusMaster _node;
|
||||
HardwareSerial *_serial;
|
||||
uint8_t _slaveAddress;
|
||||
uint8_t _lastAResult;
|
||||
uint8_t _lastBResult;
|
||||
IM1281CAData _a;
|
||||
IM1281CBData _b;
|
||||
};
|
||||
|
||||
#endif // HELIOS_IM1281C_H
|
||||
@@ -17,7 +17,5 @@ lib_deps =
|
||||
roboticsbrno/SmartLeds@^3.1.5
|
||||
miguelbalboa/MFRC522@^1.4.12
|
||||
tzapu/WiFiManager@^2.0.17
|
||||
adafruit/Adafruit SSD1306@^2.5.16
|
||||
4-20ma/ModbusMaster@^2.0.1
|
||||
build_flags = -DMO_PLATFORM=MO_PLATFORM_ARDUINO -DMO_MG_USE_VERSION=MO_MG_V715 -DMO_NUMCONNECTORS=3
|
||||
board_build.partitions = partitions.csv
|
||||
|
||||
@@ -1,6 +1,4 @@
|
||||
#include <Arduino.h>
|
||||
#include <Wire.h>
|
||||
#include <SPI.h>
|
||||
#include <WiFiManager.h>
|
||||
#include <Preferences.h>
|
||||
#include <string.h>
|
||||
@@ -8,16 +6,12 @@
|
||||
#include <MicroOcpp.h>
|
||||
#include <MicroOcppMongooseClient.h>
|
||||
#include <MicroOcpp/Core/Context.h>
|
||||
#include <MicroOcpp/Core/Configuration.h>
|
||||
|
||||
#include <Adafruit_SSD1306.h>
|
||||
#include <SmartLeds.h>
|
||||
#include <MFRC522.h>
|
||||
|
||||
#include "esp_system.h"
|
||||
#include "config.h"
|
||||
#include "IM1281C.h"
|
||||
#include "pins.h"
|
||||
|
||||
/* LED State Enum */
|
||||
enum LEDState
|
||||
@@ -36,53 +30,6 @@ static volatile LEDState s_led_state = LED_INITIALIZING;
|
||||
static volatile unsigned long s_blink_last_time = 0;
|
||||
static volatile bool s_blink_on = false;
|
||||
static const unsigned long BLINK_INTERVAL = 200; // 200ms blink interval
|
||||
static const unsigned long AUTH_WINDOW_MS = 30000;
|
||||
static const unsigned long IM1281C_POLL_INTERVAL_MS = 5000;
|
||||
static const unsigned long OLED_REFRESH_INTERVAL_MS = 500;
|
||||
static const unsigned long CARD_ID_DISPLAY_MS = 5000;
|
||||
static const unsigned long WAIT_HINT_BLINK_MS = 300;
|
||||
static const int CC_FILTER_MIN = 0;
|
||||
static const int CC_FILTER_MAX = 100;
|
||||
static const int CC_FILTER_ON_THRESHOLD = 75;
|
||||
static const int CC_FILTER_OFF_THRESHOLD = 25;
|
||||
static const int CC_FILTER_DELTA_UP = 6;
|
||||
static const int CC_FILTER_DELTA_DOWN_IDLE = -8;
|
||||
static const int CC_FILTER_DELTA_DOWN_ACTIVE = -20;
|
||||
|
||||
static bool s_cc1_plugged = false;
|
||||
static bool s_cc2_plugged = false;
|
||||
static bool s_cc1_raw_last = false;
|
||||
static bool s_cc2_raw_last = false;
|
||||
static unsigned long s_cc1_last_change_ms = 0;
|
||||
static unsigned long s_cc2_last_change_ms = 0;
|
||||
static bool s_cc1_prev_plugged = false;
|
||||
static bool s_cc2_prev_plugged = false;
|
||||
static bool s_cc1_filter_inited = false;
|
||||
static int s_cc1_filter_score = 0;
|
||||
static bool s_cc2_filter_inited = false;
|
||||
static int s_cc2_filter_score = 0;
|
||||
|
||||
static bool s_auth_in_progress = false;
|
||||
static bool s_auth_ok = false;
|
||||
static unsigned long s_auth_ok_at_ms = 0;
|
||||
static String s_auth_id_tag;
|
||||
static String s_last_swipe_id;
|
||||
static unsigned long s_last_swipe_at_ms = 0;
|
||||
|
||||
static bool s_remote_start_accepted = false;
|
||||
|
||||
static bool authWindowValid();
|
||||
static bool isConnectorIdle(unsigned int connectorId);
|
||||
static void clearAuthWait(const char *reason)
|
||||
{
|
||||
if (s_auth_ok || s_auth_id_tag.length() > 0)
|
||||
{
|
||||
Serial.printf("[main] Clear pending authorization: %s\n", reason);
|
||||
}
|
||||
s_auth_ok = false;
|
||||
s_auth_ok_at_ms = 0;
|
||||
s_auth_id_tag = "";
|
||||
}
|
||||
|
||||
uint8_t mac[6];
|
||||
char cpSerial[13];
|
||||
@@ -102,8 +49,6 @@ void saveConfigCallback()
|
||||
|
||||
struct mg_mgr mgr;
|
||||
|
||||
Adafruit_SSD1306 display(128, 64, &Wire, -1);
|
||||
|
||||
/**
|
||||
* WS2812B LED Pin
|
||||
* - GPIO 17 - RYMCU ESP32-DevKitC
|
||||
@@ -113,638 +58,6 @@ Adafruit_SSD1306 display(128, 64, &Wire, -1);
|
||||
#define LED_COUNT 1
|
||||
|
||||
SmartLed leds(LED_WS2812B, LED_COUNT, LED_PIN, 0, DoubleBuffer);
|
||||
MFRC522 rfid(PIN_RC_CS, PIN_RC_RST);
|
||||
IM1281C im1281c;
|
||||
|
||||
static IM1281CAData s_meter_a;
|
||||
static IM1281CBData s_meter_b;
|
||||
static bool s_meter_data_ready = false;
|
||||
static bool s_oled_ready = false;
|
||||
static String s_oled_card_id;
|
||||
static unsigned long s_oled_card_started_at_ms = 0;
|
||||
static unsigned long s_oled_card_duration_ms = 0;
|
||||
static String s_oled_msg_title;
|
||||
static String s_oled_msg_line1;
|
||||
static String s_oled_msg_line2;
|
||||
static unsigned long s_oled_msg_started_at_ms = 0;
|
||||
static unsigned long s_oled_msg_duration_ms = 0;
|
||||
static bool s_oled_msg_alert = false;
|
||||
|
||||
static const char *ledStageText(LEDState state)
|
||||
{
|
||||
switch (state)
|
||||
{
|
||||
case LED_INITIALIZING:
|
||||
return "INIT";
|
||||
case LED_WIFI_CONNECTED:
|
||||
return "WIFI";
|
||||
case LED_OCPP_CONNECTED:
|
||||
return "OCPP";
|
||||
case LED_ERROR:
|
||||
return "ERROR";
|
||||
case LED_RESET_TX:
|
||||
return "RST-TX";
|
||||
case LED_FACTORY_RESET:
|
||||
return "FACTORY";
|
||||
default:
|
||||
return "UNKNOWN";
|
||||
}
|
||||
}
|
||||
|
||||
static const char *cpStatusShort(ChargePointStatus status)
|
||||
{
|
||||
switch (status)
|
||||
{
|
||||
case ChargePointStatus_Available:
|
||||
return "AVL";
|
||||
case ChargePointStatus_Preparing:
|
||||
return "PRE";
|
||||
case ChargePointStatus_Charging:
|
||||
return "CHG";
|
||||
case ChargePointStatus_SuspendedEVSE:
|
||||
return "SEVSE";
|
||||
case ChargePointStatus_SuspendedEV:
|
||||
return "SEV";
|
||||
case ChargePointStatus_Finishing:
|
||||
return "FIN";
|
||||
case ChargePointStatus_Reserved:
|
||||
return "RSV";
|
||||
case ChargePointStatus_Unavailable:
|
||||
return "UNAV";
|
||||
case ChargePointStatus_Faulted:
|
||||
return "FLT";
|
||||
default:
|
||||
return "N/A";
|
||||
}
|
||||
}
|
||||
|
||||
static unsigned int getWaitHintConnectorId()
|
||||
{
|
||||
if (!authWindowValid())
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
const bool c1_active = isTransactionActive(1) || isTransactionRunning(1) || ocppPermitsCharge(1);
|
||||
const bool c2_active = isTransactionActive(2) || isTransactionRunning(2) || ocppPermitsCharge(2);
|
||||
|
||||
if (c1_active && !c2_active && isConnectorIdle(2))
|
||||
{
|
||||
return 2;
|
||||
}
|
||||
|
||||
if (c2_active && !c1_active && isConnectorIdle(1))
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
if (!s_cc1_plugged && !s_cc2_plugged)
|
||||
{
|
||||
if (isConnectorIdle(1) && isOperative(1))
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
if (isConnectorIdle(2) && isOperative(2))
|
||||
{
|
||||
return 2;
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static void showOledCard(const String &idTag, unsigned long durationMs = CARD_ID_DISPLAY_MS)
|
||||
{
|
||||
s_oled_card_id = idTag;
|
||||
s_oled_card_started_at_ms = millis();
|
||||
s_oled_card_duration_ms = durationMs;
|
||||
}
|
||||
|
||||
static bool isOledCardVisible()
|
||||
{
|
||||
return s_oled_card_id.length() > 0 && (millis() - s_oled_card_started_at_ms) <= s_oled_card_duration_ms;
|
||||
}
|
||||
|
||||
static void showOledMessage(const String &title, const String &line1 = String(), const String &line2 = String(), unsigned long durationMs = 2500, bool alert = false)
|
||||
{
|
||||
s_oled_msg_title = title;
|
||||
s_oled_msg_line1 = line1;
|
||||
s_oled_msg_line2 = line2;
|
||||
s_oled_msg_started_at_ms = millis();
|
||||
s_oled_msg_duration_ms = durationMs;
|
||||
s_oled_msg_alert = alert;
|
||||
}
|
||||
|
||||
static bool isOledMessageVisible()
|
||||
{
|
||||
return s_oled_msg_title.length() > 0 && (millis() - s_oled_msg_started_at_ms) <= s_oled_msg_duration_ms;
|
||||
}
|
||||
|
||||
static int energyKwhToWh(float energyKwh)
|
||||
{
|
||||
if (energyKwh <= 0.0f)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
float energyWh = energyKwh * 1000.0f;
|
||||
if (energyWh > 2147483000.0f)
|
||||
{
|
||||
energyWh = 2147483000.0f;
|
||||
}
|
||||
return static_cast<int>(energyWh + 0.5f);
|
||||
}
|
||||
|
||||
static void drawCenteredText(const String &text, int16_t y, uint8_t textSize)
|
||||
{
|
||||
int16_t x1 = 0;
|
||||
int16_t y1 = 0;
|
||||
uint16_t w = 0;
|
||||
uint16_t h = 0;
|
||||
|
||||
display.setTextSize(textSize);
|
||||
display.getTextBounds(text.c_str(), 0, y, &x1, &y1, &w, &h);
|
||||
|
||||
int16_t x = (128 - static_cast<int16_t>(w)) / 2;
|
||||
if (x < 0)
|
||||
{
|
||||
x = 0;
|
||||
}
|
||||
|
||||
display.setCursor(x, y);
|
||||
display.print(text);
|
||||
}
|
||||
|
||||
static void refreshOled()
|
||||
{
|
||||
if (!s_oled_ready)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
static unsigned long s_last_refresh_ms = 0;
|
||||
const unsigned long now = millis();
|
||||
if ((now - s_last_refresh_ms) < OLED_REFRESH_INTERVAL_MS)
|
||||
{
|
||||
return;
|
||||
}
|
||||
s_last_refresh_ms = now;
|
||||
|
||||
const bool c1_chg = ocppPermitsCharge(1);
|
||||
const bool c2_chg = ocppPermitsCharge(2);
|
||||
const ChargePointStatus st1 = getChargePointStatus(1);
|
||||
const ChargePointStatus st2 = getChargePointStatus(2);
|
||||
const bool show_message = isOledMessageVisible();
|
||||
const bool show_card = !show_message && isOledCardVisible();
|
||||
|
||||
display.clearDisplay();
|
||||
display.setTextColor(SSD1306_WHITE);
|
||||
display.setTextWrap(false);
|
||||
|
||||
if (show_message)
|
||||
{
|
||||
String title = s_oled_msg_title;
|
||||
String line1 = s_oled_msg_line1;
|
||||
String line2 = s_oled_msg_line2;
|
||||
|
||||
if (s_oled_msg_alert)
|
||||
{
|
||||
const uint8_t alertTitleSize = (title.length() <= 10) ? 2 : 1;
|
||||
const int16_t alertTitleY = (alertTitleSize == 2) ? 6 : 10;
|
||||
if (title.length() > 21)
|
||||
{
|
||||
title = title.substring(0, 21);
|
||||
}
|
||||
if (line1.length() > 14)
|
||||
{
|
||||
line1 = line1.substring(0, 14);
|
||||
}
|
||||
if (line2.length() > 14)
|
||||
{
|
||||
line2 = line2.substring(0, 14);
|
||||
}
|
||||
|
||||
drawCenteredText(title, alertTitleY, alertTitleSize);
|
||||
if (line1.length() > 0)
|
||||
{
|
||||
drawCenteredText(line1, 30, 1);
|
||||
}
|
||||
if (line2.length() > 0)
|
||||
{
|
||||
drawCenteredText(line2, 44, 1);
|
||||
}
|
||||
display.display();
|
||||
return;
|
||||
}
|
||||
|
||||
if (title.length() > 14)
|
||||
{
|
||||
title = title.substring(0, 14);
|
||||
}
|
||||
if (line1.length() > 16)
|
||||
{
|
||||
line1 = line1.substring(0, 16);
|
||||
}
|
||||
if (line2.length() > 16)
|
||||
{
|
||||
line2 = line2.substring(0, 16);
|
||||
}
|
||||
|
||||
drawCenteredText(title, 6, 2);
|
||||
if (line1.length() > 0)
|
||||
{
|
||||
drawCenteredText(line1, 30, 1);
|
||||
}
|
||||
if (line2.length() > 0)
|
||||
{
|
||||
drawCenteredText(line2, 44, 1);
|
||||
}
|
||||
display.display();
|
||||
return;
|
||||
}
|
||||
|
||||
if (show_card)
|
||||
{
|
||||
String shownId = s_oled_card_id;
|
||||
if (shownId.length() > 12)
|
||||
{
|
||||
shownId = shownId.substring(shownId.length() - 12);
|
||||
}
|
||||
|
||||
// Card display mode: full-screen centered content
|
||||
drawCenteredText(String("CARD"), 16, 1);
|
||||
drawCenteredText(shownId, 34, 2);
|
||||
display.display();
|
||||
return;
|
||||
}
|
||||
|
||||
display.setTextSize(1);
|
||||
display.setCursor(0, 0);
|
||||
display.printf("ST:%s AUTH:%s", ledStageText(s_led_state), authWindowValid() ? "WAIT" : "IDLE");
|
||||
|
||||
display.setCursor(0, 8);
|
||||
display.printf("C1 P%d CH%d %s", s_cc1_plugged ? 1 : 0, c1_chg ? 1 : 0, cpStatusShort(st1));
|
||||
|
||||
display.setCursor(0, 16);
|
||||
display.printf("C2 P%d CH%d %s", s_cc2_plugged ? 1 : 0, c2_chg ? 1 : 0, cpStatusShort(st2));
|
||||
|
||||
if (!s_meter_data_ready)
|
||||
{
|
||||
display.setCursor(0, 28);
|
||||
display.print("Meter: waiting IM1281C");
|
||||
}
|
||||
else
|
||||
{
|
||||
display.setCursor(0, 24);
|
||||
display.printf("A U%.1f I%.2f", s_meter_a.voltage, s_meter_a.current);
|
||||
|
||||
display.setCursor(0, 32);
|
||||
display.printf("A P%.0f E%.3f", s_meter_a.power, s_meter_a.energy);
|
||||
|
||||
display.setCursor(0, 40);
|
||||
display.printf("B U%.1f I%.2f", s_meter_b.voltage, s_meter_b.current);
|
||||
|
||||
display.setCursor(0, 48);
|
||||
display.printf("B P%.0f E%.3f", s_meter_b.power, s_meter_b.energy);
|
||||
|
||||
display.setCursor(0, 56);
|
||||
display.printf("T%.1fC F%.1fHz", s_meter_a.temperature, s_meter_a.frequency);
|
||||
}
|
||||
|
||||
display.display();
|
||||
}
|
||||
|
||||
static bool isConnectorPlugged(unsigned int connectorId)
|
||||
{
|
||||
if (connectorId == 1)
|
||||
return s_cc1_plugged;
|
||||
if (connectorId == 2)
|
||||
return s_cc2_plugged;
|
||||
return false;
|
||||
}
|
||||
|
||||
static bool isConnectorIdle(unsigned int connectorId)
|
||||
{
|
||||
return !isTransactionActive(connectorId) && !isTransactionRunning(connectorId) && !getTransaction(connectorId);
|
||||
}
|
||||
|
||||
static bool isConnectorStartReady(unsigned int connectorId)
|
||||
{
|
||||
return connectorId >= 1 && connectorId <= 2 && isOperative(connectorId) && isConnectorIdle(connectorId) && isConnectorPlugged(connectorId);
|
||||
}
|
||||
|
||||
static void updateConnectorPluggedState()
|
||||
{
|
||||
const bool cc1_raw = (digitalRead(PIN_CC1) == HIGH);
|
||||
|
||||
if (!s_cc1_filter_inited)
|
||||
{
|
||||
s_cc1_filter_inited = true;
|
||||
s_cc1_filter_score = cc1_raw ? CC_FILTER_MAX : CC_FILTER_MIN;
|
||||
s_cc1_plugged = cc1_raw;
|
||||
}
|
||||
|
||||
int cc1_delta = cc1_raw ? CC_FILTER_DELTA_UP : CC_FILTER_DELTA_DOWN_IDLE;
|
||||
if ((isTransactionActive(1) || isTransactionRunning(1)) && !cc1_raw)
|
||||
{
|
||||
cc1_delta = CC_FILTER_DELTA_DOWN_ACTIVE;
|
||||
}
|
||||
|
||||
s_cc1_filter_score += cc1_delta;
|
||||
if (s_cc1_filter_score > CC_FILTER_MAX)
|
||||
{
|
||||
s_cc1_filter_score = CC_FILTER_MAX;
|
||||
}
|
||||
else if (s_cc1_filter_score < CC_FILTER_MIN)
|
||||
{
|
||||
s_cc1_filter_score = CC_FILTER_MIN;
|
||||
}
|
||||
|
||||
bool cc1_candidate = s_cc1_plugged;
|
||||
if (s_cc1_filter_score >= CC_FILTER_ON_THRESHOLD)
|
||||
{
|
||||
cc1_candidate = true;
|
||||
}
|
||||
else if (s_cc1_filter_score <= CC_FILTER_OFF_THRESHOLD)
|
||||
{
|
||||
cc1_candidate = false;
|
||||
}
|
||||
|
||||
if (cc1_candidate != s_cc1_plugged)
|
||||
{
|
||||
bool cc1_plugged_old = s_cc1_plugged;
|
||||
s_cc1_plugged = cc1_candidate;
|
||||
|
||||
// If connector1 just connected and auth window is valid, try to start
|
||||
if (!cc1_plugged_old && s_cc1_plugged && s_auth_ok && (millis() - s_auth_ok_at_ms) <= AUTH_WINDOW_MS && s_auth_id_tag.length() > 0 && isConnectorIdle(1))
|
||||
{
|
||||
Serial.printf("[main] Connector 1 plugged in, auto-starting with idTag %s\n", s_auth_id_tag.c_str());
|
||||
auto tx = beginTransaction_authorized(s_auth_id_tag.c_str(), nullptr, 1);
|
||||
if (tx != nullptr)
|
||||
{
|
||||
s_auth_ok = false;
|
||||
s_auth_id_tag = "";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
const bool cc2_raw = (digitalRead(PIN_CC2) == HIGH);
|
||||
|
||||
if (!s_cc2_filter_inited)
|
||||
{
|
||||
s_cc2_filter_inited = true;
|
||||
s_cc2_filter_score = cc2_raw ? CC_FILTER_MAX : CC_FILTER_MIN;
|
||||
s_cc2_plugged = cc2_raw;
|
||||
}
|
||||
|
||||
int delta = cc2_raw ? CC_FILTER_DELTA_UP : CC_FILTER_DELTA_DOWN_IDLE;
|
||||
if ((isTransactionActive(2) || isTransactionRunning(2)) && !cc2_raw)
|
||||
{
|
||||
delta = CC_FILTER_DELTA_DOWN_ACTIVE;
|
||||
}
|
||||
|
||||
s_cc2_filter_score += delta;
|
||||
if (s_cc2_filter_score > CC_FILTER_MAX)
|
||||
{
|
||||
s_cc2_filter_score = CC_FILTER_MAX;
|
||||
}
|
||||
else if (s_cc2_filter_score < CC_FILTER_MIN)
|
||||
{
|
||||
s_cc2_filter_score = CC_FILTER_MIN;
|
||||
}
|
||||
|
||||
bool cc2_candidate = s_cc2_plugged;
|
||||
if (s_cc2_filter_score >= CC_FILTER_ON_THRESHOLD)
|
||||
{
|
||||
cc2_candidate = true;
|
||||
}
|
||||
else if (s_cc2_filter_score <= CC_FILTER_OFF_THRESHOLD)
|
||||
{
|
||||
cc2_candidate = false;
|
||||
}
|
||||
|
||||
if (cc2_candidate != s_cc2_plugged)
|
||||
{
|
||||
bool cc2_plugged_old = s_cc2_plugged;
|
||||
s_cc2_plugged = cc2_candidate;
|
||||
|
||||
// If connector2 just connected and auth window is valid, try to start
|
||||
if (!cc2_plugged_old && s_cc2_plugged && s_auth_ok && (millis() - s_auth_ok_at_ms) <= AUTH_WINDOW_MS && s_auth_id_tag.length() > 0 && isConnectorIdle(2))
|
||||
{
|
||||
Serial.printf("[main] Connector 2 plugged in, auto-starting with idTag %s\n", s_auth_id_tag.c_str());
|
||||
auto tx = beginTransaction_authorized(s_auth_id_tag.c_str(), nullptr, 2);
|
||||
if (tx != nullptr)
|
||||
{
|
||||
s_auth_ok = false;
|
||||
s_auth_id_tag = "";
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
static void updatePanelLedsFromPlugState()
|
||||
{
|
||||
// Reserved for startup sync; runtime LED behavior is tied to charging permission.
|
||||
digitalWrite(PIN_LED1, HIGH);
|
||||
digitalWrite(PIN_LED2, HIGH);
|
||||
}
|
||||
|
||||
static void updateChargeActuators()
|
||||
{
|
||||
const bool chg1_on = ocppPermitsCharge(1);
|
||||
const bool chg2_on = ocppPermitsCharge(2);
|
||||
bool led1_on = chg1_on;
|
||||
bool led2_on = chg2_on;
|
||||
|
||||
// During local authorization wait, blink the suggested idle connector LED.
|
||||
const unsigned int hintConnector = getWaitHintConnectorId();
|
||||
if (hintConnector > 0)
|
||||
{
|
||||
const bool blink_on = ((millis() / WAIT_HINT_BLINK_MS) % 2) == 0;
|
||||
if (hintConnector == 1 && !chg1_on)
|
||||
{
|
||||
led1_on = blink_on;
|
||||
}
|
||||
else if (hintConnector == 2 && !chg2_on)
|
||||
{
|
||||
led2_on = blink_on;
|
||||
}
|
||||
}
|
||||
|
||||
// LEDs and relays are low-active
|
||||
digitalWrite(PIN_LED1, led1_on ? LOW : HIGH);
|
||||
digitalWrite(PIN_LED2, led2_on ? LOW : HIGH);
|
||||
digitalWrite(PIN_RELAY1, chg1_on ? LOW : HIGH);
|
||||
digitalWrite(PIN_RELAY2, chg2_on ? LOW : HIGH);
|
||||
}
|
||||
|
||||
static void stopIfUnplugged()
|
||||
{
|
||||
if (s_cc1_prev_plugged && !s_cc1_plugged && (isTransactionActive(1) || isTransactionRunning(1)))
|
||||
{
|
||||
Serial.println("[main] Connector 1 unplugged. Stop transaction immediately.");
|
||||
endTransaction(nullptr, "EVDisconnected", 1);
|
||||
}
|
||||
|
||||
if (s_cc2_prev_plugged && !s_cc2_plugged && (isTransactionActive(2) || isTransactionRunning(2)))
|
||||
{
|
||||
Serial.println("[main] Connector 2 unplugged. Stop transaction immediately.");
|
||||
endTransaction(nullptr, "EVDisconnected", 2);
|
||||
}
|
||||
|
||||
s_cc1_prev_plugged = s_cc1_plugged;
|
||||
s_cc2_prev_plugged = s_cc2_plugged;
|
||||
}
|
||||
|
||||
static bool authWindowValid()
|
||||
{
|
||||
return s_auth_ok && (millis() - s_auth_ok_at_ms) <= AUTH_WINDOW_MS && s_auth_id_tag.length() > 0;
|
||||
}
|
||||
|
||||
static void requestAuthorizeByCard(const String &idTag)
|
||||
{
|
||||
if (s_auth_in_progress)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
clearAuthWait("new card swiped");
|
||||
showOledCard(idTag);
|
||||
s_auth_in_progress = true;
|
||||
|
||||
Serial.printf("[main] Authorize idTag: %s\n", idTag.c_str());
|
||||
authorize(
|
||||
idTag.c_str(),
|
||||
[idTag](JsonObject payload)
|
||||
{
|
||||
s_auth_in_progress = false;
|
||||
const char *status = payload["idTagInfo"]["status"] | "";
|
||||
if (!strcmp(status, "Accepted"))
|
||||
{
|
||||
s_auth_ok = true;
|
||||
s_auth_ok_at_ms = millis();
|
||||
s_auth_id_tag = idTag;
|
||||
Serial.printf("[main] Authorize accepted for idTag %s\n", idTag.c_str());
|
||||
showOledMessage("AUTH OK", "Swipe ready", String("ID ") + idTag.substring(max(0, (int)idTag.length() - 10)), 2200, false);
|
||||
|
||||
// Check if there's already a connector plugged in; if so, start immediately
|
||||
unsigned int targetConnector = 0;
|
||||
if (s_cc1_plugged && isConnectorIdle(1) && isOperative(1))
|
||||
{
|
||||
targetConnector = 1;
|
||||
}
|
||||
else if (s_cc2_plugged && isConnectorIdle(2) && isOperative(2))
|
||||
{
|
||||
targetConnector = 2;
|
||||
}
|
||||
|
||||
if (targetConnector > 0)
|
||||
{
|
||||
// Immediately start the transaction on the plugged connector
|
||||
Serial.printf("[main] Connector %u is plugged in, auto-starting transaction\n", targetConnector);
|
||||
auto tx = beginTransaction_authorized(idTag.c_str(), nullptr, targetConnector);
|
||||
if (tx != nullptr)
|
||||
{
|
||||
clearAuthWait("transaction started");
|
||||
showOledMessage("START OK", String("C") + String(targetConnector), "Charging", 2200, false);
|
||||
}
|
||||
else
|
||||
{
|
||||
showOledMessage("START FAIL", String("C") + String(targetConnector), "Busy/Not Ready", 2500, true);
|
||||
}
|
||||
}
|
||||
// Otherwise, wait for a connector to be plugged in
|
||||
}
|
||||
else
|
||||
{
|
||||
clearAuthWait("authorize rejected");
|
||||
Serial.printf("[main] Authorize rejected, status=%s\n", status);
|
||||
showOledMessage("AUTH FAIL", status, "Try again", 2500, true);
|
||||
}
|
||||
},
|
||||
[]()
|
||||
{
|
||||
s_auth_in_progress = false;
|
||||
clearAuthWait("authorize aborted");
|
||||
Serial.println("[main] Authorize aborted");
|
||||
showOledMessage("AUTH ABORT", "Swipe again", String(), 1800, true);
|
||||
});
|
||||
}
|
||||
|
||||
static void pollRfidCard()
|
||||
{
|
||||
if (!rfid.PICC_IsNewCardPresent() || !rfid.PICC_ReadCardSerial())
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
String idTag;
|
||||
for (byte i = 0; i < rfid.uid.size; i++)
|
||||
{
|
||||
if (rfid.uid.uidByte[i] < 0x10)
|
||||
{
|
||||
idTag += '0';
|
||||
}
|
||||
idTag += String(rfid.uid.uidByte[i], HEX);
|
||||
}
|
||||
idTag.toUpperCase();
|
||||
|
||||
s_last_swipe_id = idTag;
|
||||
s_last_swipe_at_ms = millis();
|
||||
|
||||
rfid.PICC_HaltA();
|
||||
rfid.PCD_StopCrypto1();
|
||||
|
||||
requestAuthorizeByCard(idTag);
|
||||
}
|
||||
|
||||
static void expireAuthWaitIfNeeded()
|
||||
{
|
||||
if (s_auth_ok && s_auth_id_tag.length() > 0 && (millis() - s_auth_ok_at_ms) > AUTH_WINDOW_MS)
|
||||
{
|
||||
clearAuthWait("authorization timeout");
|
||||
}
|
||||
}
|
||||
|
||||
static void pollIm1281c()
|
||||
{
|
||||
static unsigned long s_last_poll_ms = 0;
|
||||
const unsigned long now = millis();
|
||||
if ((now - s_last_poll_ms) < IM1281C_POLL_INTERVAL_MS)
|
||||
{
|
||||
return;
|
||||
}
|
||||
s_last_poll_ms = now;
|
||||
|
||||
if (!im1281c.readAll())
|
||||
{
|
||||
Serial.printf("[IM1281C] read failed: A=%u B=%u\n", im1281c.lastAResult(), im1281c.lastBResult());
|
||||
return;
|
||||
}
|
||||
|
||||
const IM1281CAData &a = im1281c.a();
|
||||
const IM1281CBData &b = im1281c.b();
|
||||
s_meter_a = a;
|
||||
s_meter_b = b;
|
||||
s_meter_data_ready = true;
|
||||
|
||||
Serial.printf("[IM1281C] A: U=%.4fV I=%.4fA P=%.4fW E=%.4fkWh PF=%.3f CO2=%.4fkg T=%.2fC F=%.2fHz\n",
|
||||
a.voltage,
|
||||
a.current,
|
||||
a.power,
|
||||
a.energy,
|
||||
a.powerFactor,
|
||||
a.co2,
|
||||
a.temperature,
|
||||
a.frequency);
|
||||
Serial.printf("[IM1281C] B: U=%.4fV I=%.4fA P=%.4fW E=%.4fkWh PF=%.3f CO2=%.4fkg\n",
|
||||
b.voltage,
|
||||
b.current,
|
||||
b.power,
|
||||
b.energy,
|
||||
b.powerFactor,
|
||||
b.co2);
|
||||
}
|
||||
|
||||
/* LED Control Functions */
|
||||
void updateLED()
|
||||
@@ -858,64 +171,9 @@ void setup()
|
||||
s_blink_last_time = 0;
|
||||
s_blink_on = false;
|
||||
|
||||
// Initialize CC switches (input) and panel LEDs (low-active output)
|
||||
pinMode(PIN_CC1, INPUT);
|
||||
pinMode(PIN_CC2, INPUT);
|
||||
pinMode(PIN_LED1, OUTPUT);
|
||||
pinMode(PIN_LED2, OUTPUT);
|
||||
pinMode(PIN_RELAY1, OUTPUT);
|
||||
pinMode(PIN_RELAY2, OUTPUT);
|
||||
digitalWrite(PIN_LED1, HIGH); // Off by default (low-active)
|
||||
digitalWrite(PIN_LED2, HIGH); // Off by default (low-active)
|
||||
digitalWrite(PIN_RELAY1, HIGH); // Off by default (low-active)
|
||||
digitalWrite(PIN_RELAY2, HIGH); // Off by default (low-active)
|
||||
updateConnectorPluggedState();
|
||||
updatePanelLedsFromPlugState();
|
||||
|
||||
leds[0] = Rgb{255, 255, 0};
|
||||
leds.show();
|
||||
|
||||
// Initialize I2C for OLED (from schematic pin map)
|
||||
Wire.begin(PIN_OLED_SDA, PIN_OLED_SCL);
|
||||
|
||||
// Initialize SSD1306 OLED over I2C, try 0x3C then 0x3D
|
||||
if (display.begin(SSD1306_SWITCHCAPVCC, 0x3C))
|
||||
{
|
||||
s_oled_ready = true;
|
||||
}
|
||||
else if (display.begin(SSD1306_SWITCHCAPVCC, 0x3D))
|
||||
{
|
||||
s_oled_ready = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
s_oled_ready = false;
|
||||
Serial.println("[OLED] SSD1306 init failed");
|
||||
}
|
||||
|
||||
if (s_oled_ready)
|
||||
{
|
||||
display.clearDisplay();
|
||||
display.setTextSize(1);
|
||||
display.setTextColor(SSD1306_WHITE);
|
||||
display.setCursor(0, 0);
|
||||
display.println("Helios EVCS");
|
||||
display.setCursor(0, 12);
|
||||
display.println("Booting...");
|
||||
display.display();
|
||||
}
|
||||
|
||||
// Initialize IM1281C over UART2 (default: address 1, 4800bps, 8N1)
|
||||
im1281c.begin(Serial2, PIN_U2RXD, PIN_U2TXD);
|
||||
|
||||
// Initialize SPI bus for RC522
|
||||
SPI.begin(PIN_RC_SCK, PIN_RC_MISO, PIN_RC_MOSI, PIN_RC_CS);
|
||||
pinMode(PIN_RC_CS, OUTPUT);
|
||||
digitalWrite(PIN_RC_CS, HIGH);
|
||||
pinMode(PIN_RC_RST, OUTPUT);
|
||||
digitalWrite(PIN_RC_RST, HIGH);
|
||||
rfid.PCD_Init();
|
||||
|
||||
// Load configuration from Preferences
|
||||
Preferences preferences;
|
||||
preferences.begin("ocpp-config", false);
|
||||
@@ -1145,139 +403,6 @@ void setup()
|
||||
|
||||
mocpp_initialize(*client, ChargerCredentials(CFG_CP_MODAL, CFG_CP_VENDOR, CFG_CP_FW_VERSION, cpSerial, nullptr, nullptr, CFG_CB_SERIAL, nullptr, nullptr), MicroOcpp::makeDefaultFilesystemAdapter(MicroOcpp::FilesystemOpt::Use_Mount_FormatOnFail));
|
||||
|
||||
// Expose both physical connectors to CSMS and feed live plug-state from CC switches.
|
||||
// connectorId 1 <-> CC1, connectorId 2 <-> CC2
|
||||
setConnectorPluggedInput([]()
|
||||
{ return s_cc1_plugged; },
|
||||
1);
|
||||
setConnectorPluggedInput([]()
|
||||
{ return s_cc2_plugged; },
|
||||
2);
|
||||
|
||||
// Occupied state drives StatusNotification (Available <-> Preparing/Finishing)
|
||||
// to report plug-in / unplug events even without an active transaction.
|
||||
setOccupiedInput([]()
|
||||
{ return s_cc1_plugged; },
|
||||
1);
|
||||
setOccupiedInput([]()
|
||||
{ return s_cc2_plugged; },
|
||||
2);
|
||||
|
||||
// Bind IM1281C metering values to OCPP connector 1 / 2
|
||||
setEnergyMeterInput([]()
|
||||
{ return s_meter_data_ready ? energyKwhToWh(s_meter_a.energy) : 0; },
|
||||
1);
|
||||
setPowerMeterInput([]()
|
||||
{ return s_meter_data_ready ? s_meter_a.power : 0.0f; },
|
||||
1);
|
||||
addMeterValueInput([]()
|
||||
{ return s_meter_data_ready ? s_meter_a.voltage : 0.0f; },
|
||||
"Voltage", "V", nullptr, nullptr, 1);
|
||||
addMeterValueInput([]()
|
||||
{ return s_meter_data_ready ? s_meter_a.current : 0.0f; },
|
||||
"Current.Import", "A", nullptr, nullptr, 1);
|
||||
addMeterValueInput([]()
|
||||
{ return s_meter_data_ready ? s_meter_a.powerFactor : 0.0f; },
|
||||
"Power.Factor", nullptr, nullptr, nullptr, 1);
|
||||
addMeterValueInput([]()
|
||||
{ return s_meter_data_ready ? s_meter_a.frequency : 0.0f; },
|
||||
"Frequency", "Hz", nullptr, nullptr, 1);
|
||||
addMeterValueInput([]()
|
||||
{ return s_meter_data_ready ? s_meter_a.temperature : 0.0f; },
|
||||
"Temperature", "Celsius", nullptr, nullptr, 1);
|
||||
|
||||
setEnergyMeterInput([]()
|
||||
{ return s_meter_data_ready ? energyKwhToWh(s_meter_b.energy) : 0; },
|
||||
2);
|
||||
setPowerMeterInput([]()
|
||||
{ return s_meter_data_ready ? s_meter_b.power : 0.0f; },
|
||||
2);
|
||||
addMeterValueInput([]()
|
||||
{ return s_meter_data_ready ? s_meter_b.voltage : 0.0f; },
|
||||
"Voltage", "V", nullptr, nullptr, 2);
|
||||
addMeterValueInput([]()
|
||||
{ return s_meter_data_ready ? s_meter_b.current : 0.0f; },
|
||||
"Current.Import", "A", nullptr, nullptr, 2);
|
||||
addMeterValueInput([]()
|
||||
{ return s_meter_data_ready ? s_meter_b.powerFactor : 0.0f; },
|
||||
"Power.Factor", nullptr, nullptr, nullptr, 2);
|
||||
|
||||
// MicroOcpp defaults MeterValuesSampledData to Energy + Power only.
|
||||
// Expand sampled measurands so CSMS can receive voltage/current/PF/frequency/temperature.
|
||||
static const char *kMeterValuesSampledData =
|
||||
"Energy.Active.Import.Register,Power.Active.Import,Voltage,Current.Import,Power.Factor,Frequency,Temperature";
|
||||
if (auto *cfg = MicroOcpp::getConfigurationPublic("MeterValuesSampledData"))
|
||||
{
|
||||
cfg->setString(kMeterValuesSampledData);
|
||||
}
|
||||
if (auto *cfg = MicroOcpp::getConfigurationPublic("MeterValuesAlignedData"))
|
||||
{
|
||||
cfg->setString(kMeterValuesSampledData);
|
||||
}
|
||||
MicroOcpp::configuration_save();
|
||||
|
||||
// Custom RemoteStartTransaction policy:
|
||||
// accept only when target connector is idle + operative + plugged.
|
||||
setRequestHandler(
|
||||
"RemoteStartTransaction",
|
||||
[](JsonObject payload)
|
||||
{
|
||||
s_remote_start_accepted = false;
|
||||
|
||||
const char *idTag = payload["idTag"] | "";
|
||||
if (!idTag || !*idTag)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
int reqConnectorId = payload["connectorId"] | -1;
|
||||
unsigned int targetConnector = 0;
|
||||
|
||||
if (reqConnectorId >= 1 && reqConnectorId <= 2)
|
||||
{
|
||||
if (isConnectorStartReady((unsigned int)reqConnectorId))
|
||||
{
|
||||
targetConnector = (unsigned int)reqConnectorId;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
for (unsigned int cid = 1; cid <= 2; cid++)
|
||||
{
|
||||
if (isConnectorStartReady(cid))
|
||||
{
|
||||
targetConnector = cid;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (targetConnector == 0)
|
||||
{
|
||||
showOledMessage("REMOTE REJ", "No idle plug", "or not ready", 2500, true);
|
||||
return;
|
||||
}
|
||||
|
||||
auto tx = beginTransaction_authorized(idTag, nullptr, targetConnector);
|
||||
s_remote_start_accepted = (tx != nullptr);
|
||||
if (s_remote_start_accepted)
|
||||
{
|
||||
Serial.printf("[main] Remote start accepted on connector %u\n", targetConnector);
|
||||
showOledMessage("REMOTE OK", String("C") + String(targetConnector), "Charging", 2200, false);
|
||||
}
|
||||
else
|
||||
{
|
||||
showOledMessage("REMOTE REJ", String("C") + String(targetConnector), "Busy/Not Ready", 2500, true);
|
||||
}
|
||||
},
|
||||
[]() -> std::unique_ptr<MicroOcpp::JsonDoc>
|
||||
{
|
||||
auto doc = std::unique_ptr<MicroOcpp::JsonDoc>(new MicroOcpp::JsonDoc(JSON_OBJECT_SIZE(1)));
|
||||
JsonObject payload = doc->to<JsonObject>();
|
||||
payload["status"] = s_remote_start_accepted ? "Accepted" : "Rejected";
|
||||
return doc;
|
||||
});
|
||||
|
||||
// For development/recovery: Set up BOOT button (GPIO 0)
|
||||
pinMode(0, INPUT_PULLUP);
|
||||
|
||||
@@ -1285,28 +410,16 @@ void setup()
|
||||
setOnSendConf("RemoteStopTransaction", [](JsonObject payload)
|
||||
{
|
||||
if (!strcmp(payload["status"], "Rejected")) {
|
||||
unsigned int connectorId = payload["connectorId"] | 1;
|
||||
if (connectorId < 1 || connectorId > 2)
|
||||
{
|
||||
connectorId = 1;
|
||||
}
|
||||
Serial.printf("[main] MicroOcpp rejected RemoteStopTransaction on connector %u. Force overriding and stopping charging...\n", connectorId);
|
||||
endTransaction(nullptr, "Remote", connectorId);
|
||||
Serial.println("[main] MicroOcpp rejected RemoteStopTransaction! Force overriding and stopping charging...");
|
||||
endTransaction(nullptr, "Remote", 1);
|
||||
} });
|
||||
}
|
||||
}
|
||||
|
||||
void loop()
|
||||
{
|
||||
updateConnectorPluggedState();
|
||||
stopIfUnplugged();
|
||||
pollRfidCard();
|
||||
expireAuthWaitIfNeeded();
|
||||
pollIm1281c();
|
||||
|
||||
mg_mgr_poll(&mgr, 10);
|
||||
mocpp_loop();
|
||||
updateChargeActuators();
|
||||
|
||||
// Handle BOOT button (GPIO 0) interactions for recovery
|
||||
bool is_btn_pressed = (digitalRead(0) == LOW);
|
||||
@@ -1365,9 +478,8 @@ void loop()
|
||||
}
|
||||
else if (held_time >= 3000)
|
||||
{
|
||||
Serial.println("BOOT button held for > 3s! Forcefully ending dangling transactions on connector 1 and 2...");
|
||||
Serial.println("BOOT button held for > 3s! Forcefully ending dangling transaction...");
|
||||
endTransaction(nullptr, "PowerLoss", 1);
|
||||
endTransaction(nullptr, "PowerLoss", 2);
|
||||
}
|
||||
boot_was_pressed = false;
|
||||
// Temporarily set to init so the logic below restores the actual network state accurately
|
||||
@@ -1396,7 +508,6 @@ void loop()
|
||||
}
|
||||
|
||||
updateLED();
|
||||
refreshOled();
|
||||
|
||||
delay(10);
|
||||
}
|
||||
|
||||
Submodule hardware/pcb/.history deleted from 468ec3b809
File diff suppressed because it is too large
Load Diff
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"board": {
|
||||
"active_layer": 5,
|
||||
"active_layer": 0,
|
||||
"active_layer_preset": "",
|
||||
"auto_track_width": true,
|
||||
"hidden_netclasses": [],
|
||||
@@ -15,7 +15,6 @@
|
||||
"vias": 1.0,
|
||||
"zones": 0.6
|
||||
},
|
||||
"prototype_zone_fills": false,
|
||||
"selection_filter": {
|
||||
"dimensions": true,
|
||||
"footprints": true,
|
||||
@@ -65,42 +64,9 @@
|
||||
"version": 5
|
||||
},
|
||||
"net_inspector_panel": {
|
||||
"col_hidden": [
|
||||
false,
|
||||
false,
|
||||
false,
|
||||
false,
|
||||
false,
|
||||
false,
|
||||
false,
|
||||
false,
|
||||
false,
|
||||
false
|
||||
],
|
||||
"col_order": [
|
||||
0,
|
||||
1,
|
||||
2,
|
||||
3,
|
||||
4,
|
||||
5,
|
||||
6,
|
||||
7,
|
||||
8,
|
||||
9
|
||||
],
|
||||
"col_widths": [
|
||||
174,
|
||||
159,
|
||||
100,
|
||||
63,
|
||||
100,
|
||||
100,
|
||||
100,
|
||||
63,
|
||||
100,
|
||||
100
|
||||
],
|
||||
"col_hidden": [],
|
||||
"col_order": [],
|
||||
"col_widths": [],
|
||||
"custom_group_rules": [],
|
||||
"expanded_rows": [],
|
||||
"filter_by_net_name": true,
|
||||
@@ -108,18 +74,16 @@
|
||||
"filter_text": "",
|
||||
"group_by_constraint": false,
|
||||
"group_by_netclass": false,
|
||||
"show_time_domain_details": false,
|
||||
"show_unconnected_nets": false,
|
||||
"show_zero_pad_nets": false,
|
||||
"sort_ascending": true,
|
||||
"sorting_column": 0
|
||||
"sorting_column": -1
|
||||
},
|
||||
"open_jobsets": [],
|
||||
"project": {
|
||||
"files": []
|
||||
},
|
||||
"schematic": {
|
||||
"hierarchy_collapsed": [],
|
||||
"selection_filter": {
|
||||
"graphics": true,
|
||||
"images": true,
|
||||
@@ -127,7 +91,6 @@
|
||||
"lockedItems": false,
|
||||
"otherItems": true,
|
||||
"pins": true,
|
||||
"ruleAreas": true,
|
||||
"symbols": true,
|
||||
"text": true,
|
||||
"wires": true
|
||||
|
||||
@@ -2,264 +2,25 @@
|
||||
"board": {
|
||||
"3dviewports": [],
|
||||
"design_settings": {
|
||||
"defaults": {
|
||||
"apply_defaults_to_fp_barcodes": false,
|
||||
"apply_defaults_to_fp_dimensions": false,
|
||||
"apply_defaults_to_fp_fields": false,
|
||||
"apply_defaults_to_fp_shapes": false,
|
||||
"apply_defaults_to_fp_text": false,
|
||||
"board_outline_line_width": 0.05,
|
||||
"copper_line_width": 0.2,
|
||||
"copper_text_italic": false,
|
||||
"copper_text_size_h": 1.5,
|
||||
"copper_text_size_v": 1.5,
|
||||
"copper_text_thickness": 0.3,
|
||||
"copper_text_upright": false,
|
||||
"courtyard_line_width": 0.05,
|
||||
"dimension_precision": 4,
|
||||
"dimension_units": 3,
|
||||
"dimensions": {
|
||||
"arrow_length": 1270000,
|
||||
"extension_offset": 500000,
|
||||
"keep_text_aligned": true,
|
||||
"suppress_zeroes": true,
|
||||
"text_position": 0,
|
||||
"units_format": 0
|
||||
},
|
||||
"fab_line_width": 0.1,
|
||||
"fab_text_italic": false,
|
||||
"fab_text_size_h": 1.0,
|
||||
"fab_text_size_v": 1.0,
|
||||
"fab_text_thickness": 0.15,
|
||||
"fab_text_upright": false,
|
||||
"other_line_width": 0.1,
|
||||
"other_text_italic": false,
|
||||
"other_text_size_h": 1.0,
|
||||
"other_text_size_v": 1.0,
|
||||
"other_text_thickness": 0.15,
|
||||
"other_text_upright": false,
|
||||
"pads": {
|
||||
"drill": 1.0,
|
||||
"height": 1.7,
|
||||
"width": 1.7
|
||||
},
|
||||
"silk_line_width": 0.1,
|
||||
"silk_text_italic": false,
|
||||
"silk_text_size_h": 1.0,
|
||||
"silk_text_size_v": 1.0,
|
||||
"silk_text_thickness": 0.1,
|
||||
"silk_text_upright": false,
|
||||
"zones": {
|
||||
"min_clearance": 0.5
|
||||
}
|
||||
},
|
||||
"diff_pair_dimensions": [
|
||||
{
|
||||
"gap": 0.0,
|
||||
"via_gap": 0.0,
|
||||
"width": 0.0
|
||||
}
|
||||
],
|
||||
"defaults": {},
|
||||
"diff_pair_dimensions": [],
|
||||
"drc_exclusions": [],
|
||||
"meta": {
|
||||
"version": 2
|
||||
},
|
||||
"rule_severities": {
|
||||
"annular_width": "error",
|
||||
"clearance": "error",
|
||||
"connection_width": "warning",
|
||||
"copper_edge_clearance": "error",
|
||||
"copper_sliver": "warning",
|
||||
"courtyards_overlap": "error",
|
||||
"creepage": "error",
|
||||
"diff_pair_gap_out_of_range": "error",
|
||||
"diff_pair_uncoupled_length_too_long": "error",
|
||||
"drill_out_of_range": "error",
|
||||
"duplicate_footprints": "warning",
|
||||
"extra_footprint": "warning",
|
||||
"footprint": "error",
|
||||
"footprint_filters_mismatch": "ignore",
|
||||
"footprint_symbol_field_mismatch": "warning",
|
||||
"footprint_symbol_mismatch": "warning",
|
||||
"footprint_type_mismatch": "ignore",
|
||||
"hole_clearance": "error",
|
||||
"hole_to_hole": "warning",
|
||||
"holes_co_located": "warning",
|
||||
"invalid_outline": "error",
|
||||
"isolated_copper": "warning",
|
||||
"item_on_disabled_layer": "error",
|
||||
"items_not_allowed": "error",
|
||||
"length_out_of_range": "error",
|
||||
"lib_footprint_issues": "warning",
|
||||
"lib_footprint_mismatch": "warning",
|
||||
"malformed_courtyard": "error",
|
||||
"microvia_drill_out_of_range": "error",
|
||||
"mirrored_text_on_front_layer": "warning",
|
||||
"missing_courtyard": "ignore",
|
||||
"missing_footprint": "warning",
|
||||
"missing_tuning_profile": "warning",
|
||||
"net_conflict": "warning",
|
||||
"nonmirrored_text_on_back_layer": "warning",
|
||||
"npth_inside_courtyard": "ignore",
|
||||
"padstack": "warning",
|
||||
"pth_inside_courtyard": "ignore",
|
||||
"shorting_items": "error",
|
||||
"silk_edge_clearance": "warning",
|
||||
"silk_over_copper": "warning",
|
||||
"silk_overlap": "warning",
|
||||
"skew_out_of_range": "error",
|
||||
"solder_mask_bridge": "error",
|
||||
"starved_thermal": "error",
|
||||
"text_height": "warning",
|
||||
"text_on_edge_cuts": "error",
|
||||
"text_thickness": "warning",
|
||||
"through_hole_pad_without_hole": "error",
|
||||
"too_many_vias": "error",
|
||||
"track_angle": "error",
|
||||
"track_dangling": "warning",
|
||||
"track_not_centered_on_via": "ignore",
|
||||
"track_on_post_machined_layer": "error",
|
||||
"track_segment_length": "error",
|
||||
"track_width": "error",
|
||||
"tracks_crossing": "error",
|
||||
"tuning_profile_track_geometries": "ignore",
|
||||
"unconnected_items": "error",
|
||||
"unresolved_variable": "error",
|
||||
"via_dangling": "warning",
|
||||
"zones_intersect": "error"
|
||||
},
|
||||
"rules": {
|
||||
"max_error": 0.005,
|
||||
"min_clearance": 0.0,
|
||||
"min_connection": 0.0,
|
||||
"min_copper_edge_clearance": 0.5,
|
||||
"min_groove_width": 0.0,
|
||||
"min_hole_clearance": 0.25,
|
||||
"min_hole_to_hole": 0.25,
|
||||
"min_microvia_diameter": 0.2,
|
||||
"min_microvia_drill": 0.1,
|
||||
"min_resolved_spokes": 2,
|
||||
"min_silk_clearance": 0.0,
|
||||
"min_text_height": 0.8,
|
||||
"min_text_thickness": 0.08,
|
||||
"min_through_hole_diameter": 0.3,
|
||||
"min_track_width": 0.0,
|
||||
"min_via_annular_width": 0.1,
|
||||
"min_via_diameter": 0.5,
|
||||
"solder_mask_to_copper_clearance": 0.0,
|
||||
"use_height_for_length_calcs": true
|
||||
},
|
||||
"teardrop_options": [
|
||||
{
|
||||
"td_onpthpad": true,
|
||||
"td_onroundshapesonly": false,
|
||||
"td_onsmdpad": true,
|
||||
"td_ontrackend": false,
|
||||
"td_onvia": true
|
||||
}
|
||||
],
|
||||
"teardrop_parameters": [
|
||||
{
|
||||
"td_allow_use_two_tracks": true,
|
||||
"td_curve_segcount": 0,
|
||||
"td_height_ratio": 1.0,
|
||||
"td_length_ratio": 0.5,
|
||||
"td_maxheight": 2.0,
|
||||
"td_maxlen": 1.0,
|
||||
"td_on_pad_in_zone": false,
|
||||
"td_target_name": "td_round_shape",
|
||||
"td_width_to_size_filter_ratio": 0.9
|
||||
},
|
||||
{
|
||||
"td_allow_use_two_tracks": true,
|
||||
"td_curve_segcount": 0,
|
||||
"td_height_ratio": 1.0,
|
||||
"td_length_ratio": 0.5,
|
||||
"td_maxheight": 2.0,
|
||||
"td_maxlen": 1.0,
|
||||
"td_on_pad_in_zone": false,
|
||||
"td_target_name": "td_rect_shape",
|
||||
"td_width_to_size_filter_ratio": 0.9
|
||||
},
|
||||
{
|
||||
"td_allow_use_two_tracks": true,
|
||||
"td_curve_segcount": 0,
|
||||
"td_height_ratio": 1.0,
|
||||
"td_length_ratio": 0.5,
|
||||
"td_maxheight": 2.0,
|
||||
"td_maxlen": 1.0,
|
||||
"td_on_pad_in_zone": false,
|
||||
"td_target_name": "td_track_end",
|
||||
"td_width_to_size_filter_ratio": 0.9
|
||||
}
|
||||
],
|
||||
"track_widths": [
|
||||
0.0,
|
||||
0.2,
|
||||
0.254,
|
||||
0.5,
|
||||
1.0,
|
||||
2.0,
|
||||
2.54,
|
||||
12.0
|
||||
],
|
||||
"tuning_pattern_settings": {
|
||||
"diff_pair_defaults": {
|
||||
"corner_radius_percentage": 80,
|
||||
"corner_style": 1,
|
||||
"max_amplitude": 1.0,
|
||||
"min_amplitude": 0.2,
|
||||
"single_sided": false,
|
||||
"spacing": 1.0
|
||||
},
|
||||
"diff_pair_skew_defaults": {
|
||||
"corner_radius_percentage": 80,
|
||||
"corner_style": 1,
|
||||
"max_amplitude": 1.0,
|
||||
"min_amplitude": 0.2,
|
||||
"single_sided": false,
|
||||
"spacing": 0.6
|
||||
},
|
||||
"single_track_defaults": {
|
||||
"corner_radius_percentage": 80,
|
||||
"corner_style": 1,
|
||||
"max_amplitude": 1.0,
|
||||
"min_amplitude": 0.2,
|
||||
"single_sided": false,
|
||||
"spacing": 0.6
|
||||
}
|
||||
},
|
||||
"via_dimensions": [
|
||||
{
|
||||
"diameter": 0.0,
|
||||
"drill": 0.0
|
||||
}
|
||||
],
|
||||
"zones_allow_external_fillets": false
|
||||
"rules": {},
|
||||
"track_widths": [],
|
||||
"via_dimensions": []
|
||||
},
|
||||
"ipc2581": {
|
||||
"bom_rev": "",
|
||||
"dist": "",
|
||||
"distpn": "",
|
||||
"internal_id": "",
|
||||
"mfg": "",
|
||||
"mpn": "",
|
||||
"sch_revision": "1.0.0"
|
||||
"mpn": ""
|
||||
},
|
||||
"layer_pairs": [],
|
||||
"layer_presets": [],
|
||||
"viewports": []
|
||||
},
|
||||
"boards": [],
|
||||
"component_class_settings": {
|
||||
"assignments": [],
|
||||
"meta": {
|
||||
"version": 0
|
||||
},
|
||||
"sheet_component_classes": {
|
||||
"enabled": false
|
||||
}
|
||||
},
|
||||
"cvpcb": {
|
||||
"equivalence_files": []
|
||||
},
|
||||
@@ -449,14 +210,11 @@
|
||||
"duplicate_sheet_names": "error",
|
||||
"endpoint_off_grid": "warning",
|
||||
"extra_units": "error",
|
||||
"field_name_whitespace": "warning",
|
||||
"footprint_filter": "ignore",
|
||||
"footprint_link_issues": "warning",
|
||||
"four_way_junction": "ignore",
|
||||
"global_label_dangling": "warning",
|
||||
"ground_pin_not_ground": "warning",
|
||||
"hier_label_mismatch": "error",
|
||||
"isolated_pin_label": "warning",
|
||||
"label_dangling": "error",
|
||||
"label_multiple_wires": "warning",
|
||||
"lib_symbol_issues": "warning",
|
||||
@@ -479,7 +237,6 @@
|
||||
"similar_power": "warning",
|
||||
"simulation_model_issue": "ignore",
|
||||
"single_global_label": "ignore",
|
||||
"stacked_pin_name": "warning",
|
||||
"unannotated": "error",
|
||||
"unconnected_wire_endpoint": "warning",
|
||||
"undefined_netclass": "error",
|
||||
@@ -489,14 +246,8 @@
|
||||
}
|
||||
},
|
||||
"libraries": {
|
||||
"pinned_footprint_libs": [
|
||||
"RayineComponents",
|
||||
"converted"
|
||||
],
|
||||
"pinned_symbol_libs": [
|
||||
"RayineComponents",
|
||||
"converted"
|
||||
]
|
||||
"pinned_footprint_libs": [],
|
||||
"pinned_symbol_libs": []
|
||||
},
|
||||
"meta": {
|
||||
"filename": "HeliosDAONE.kicad_pro",
|
||||
@@ -506,7 +257,7 @@
|
||||
"classes": [
|
||||
{
|
||||
"bus_width": 12,
|
||||
"clearance": 0.254,
|
||||
"clearance": 0.2,
|
||||
"diff_pair_gap": 0.25,
|
||||
"diff_pair_via_gap": 0.25,
|
||||
"diff_pair_width": 0.2,
|
||||
@@ -517,75 +268,25 @@
|
||||
"pcb_color": "rgba(0, 0, 0, 0.000)",
|
||||
"priority": 2147483647,
|
||||
"schematic_color": "rgba(0, 0, 0, 0.000)",
|
||||
"track_width": 0.254,
|
||||
"tuning_profile": "",
|
||||
"track_width": 0.2,
|
||||
"via_diameter": 0.6,
|
||||
"via_drill": 0.3,
|
||||
"wire_width": 6
|
||||
},
|
||||
{
|
||||
"name": "Power In",
|
||||
"pcb_color": "rgba(0, 0, 0, 0.000)",
|
||||
"priority": 2,
|
||||
"schematic_color": "rgba(0, 0, 0, 0.000)",
|
||||
"track_width": 8.0,
|
||||
"tuning_profile": ""
|
||||
},
|
||||
{
|
||||
"name": "Power Low",
|
||||
"pcb_color": "rgba(0, 0, 0, 0.000)",
|
||||
"priority": 0,
|
||||
"schematic_color": "rgba(0, 0, 0, 0.000)",
|
||||
"track_width": 2.54,
|
||||
"tuning_profile": ""
|
||||
},
|
||||
{
|
||||
"name": "Power Out",
|
||||
"pcb_color": "rgba(0, 0, 0, 0.000)",
|
||||
"priority": 1,
|
||||
"schematic_color": "rgba(0, 0, 0, 0.000)",
|
||||
"track_width": 6.0,
|
||||
"tuning_profile": ""
|
||||
}
|
||||
],
|
||||
"meta": {
|
||||
"version": 5
|
||||
"version": 4
|
||||
},
|
||||
"net_colors": null,
|
||||
"netclass_assignments": null,
|
||||
"netclass_patterns": [
|
||||
{
|
||||
"netclass": "Power In",
|
||||
"pattern": "L"
|
||||
},
|
||||
{
|
||||
"netclass": "Power In",
|
||||
"pattern": "N"
|
||||
},
|
||||
{
|
||||
"netclass": "Power Out",
|
||||
"pattern": "/L?OUT"
|
||||
},
|
||||
{
|
||||
"netclass": "Power Out",
|
||||
"pattern": "/L?IN"
|
||||
},
|
||||
{
|
||||
"netclass": "Power Low",
|
||||
"pattern": "N_low"
|
||||
},
|
||||
{
|
||||
"netclass": "Power Low",
|
||||
"pattern": "L_low"
|
||||
}
|
||||
]
|
||||
"netclass_patterns": []
|
||||
},
|
||||
"pcbnew": {
|
||||
"last_paths": {
|
||||
"gencad": "",
|
||||
"idf": "",
|
||||
"netlist": "",
|
||||
"plot": "out/",
|
||||
"plot": "",
|
||||
"pos_files": "",
|
||||
"specctra_dsn": "",
|
||||
"step": "",
|
||||
@@ -596,10 +297,6 @@
|
||||
},
|
||||
"schematic": {
|
||||
"annotate_start_num": 0,
|
||||
"annotation": {
|
||||
"method": 0,
|
||||
"sort_order": 0
|
||||
},
|
||||
"bom_export_filename": "${PROJECTNAME}.csv",
|
||||
"bom_fmt_presets": [],
|
||||
"bom_fmt_settings": {
|
||||
@@ -671,7 +368,6 @@
|
||||
"sort_asc": true,
|
||||
"sort_field": "位号"
|
||||
},
|
||||
"bus_aliases": {},
|
||||
"connection_grid_size": 50.0,
|
||||
"drawing": {
|
||||
"dashed_lines_dash_length_ratio": 12.0,
|
||||
@@ -679,7 +375,6 @@
|
||||
"default_line_thickness": 6.0,
|
||||
"default_text_size": 50.0,
|
||||
"field_names": [],
|
||||
"hop_over_size_choice": 0,
|
||||
"intersheets_ref_own_page": false,
|
||||
"intersheets_ref_prefix": "",
|
||||
"intersheets_ref_short": false,
|
||||
@@ -703,7 +398,6 @@
|
||||
"net_format_name": "",
|
||||
"page_layout_descr_file": "",
|
||||
"plot_directory": "",
|
||||
"reuse_designators": true,
|
||||
"space_save_all_events": true,
|
||||
"spice_current_sheet_as_root": false,
|
||||
"spice_external_command": "spice \"%I\"",
|
||||
@@ -712,28 +406,13 @@
|
||||
"spice_save_all_dissipations": false,
|
||||
"spice_save_all_voltages": false,
|
||||
"subpart_first_id": 65,
|
||||
"subpart_id_separator": 0,
|
||||
"top_level_sheets": [
|
||||
{
|
||||
"filename": "HeliosDAONE.kicad_sch",
|
||||
"name": "HeliosDAONE",
|
||||
"uuid": "ef4a6f87-87d3-400e-b11f-0c7519b83474"
|
||||
}
|
||||
],
|
||||
"used_designators": "NT1,J4",
|
||||
"variants": []
|
||||
"subpart_id_separator": 0
|
||||
},
|
||||
"sheets": [
|
||||
[
|
||||
"ef4a6f87-87d3-400e-b11f-0c7519b83474",
|
||||
"HeliosDAONE"
|
||||
"Root"
|
||||
]
|
||||
],
|
||||
"text_variables": {},
|
||||
"tuning_profiles": {
|
||||
"meta": {
|
||||
"version": 0
|
||||
},
|
||||
"tuning_profiles_impedance_geometric": []
|
||||
}
|
||||
"text_variables": {}
|
||||
}
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
@@ -1,5 +0,0 @@
|
||||
(design_block_lib_table
|
||||
(version 7)
|
||||
(lib (name "converted.3dmodels") (type "KiCad") (uri "${KIPRJMOD}/library/converted.3dmodels") (options "") (descr ""))
|
||||
(lib (name "RayineComponents.3dmodels") (type "KiCad") (uri "${KIPRJMOD}/library/RayineComponents.3dmodels") (options "") (descr ""))
|
||||
)
|
||||
@@ -1,5 +0,0 @@
|
||||
(fp_lib_table
|
||||
(version 7)
|
||||
(lib (name "converted") (type "KiCad") (uri "${KIPRJMOD}/library/converted.pretty") (options "") (descr ""))
|
||||
(lib (name "RayineComponents") (type "KiCad") (uri "${KIPRJMOD}/library/RayineComponents.pretty") (options "") (descr ""))
|
||||
)
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,347 +0,0 @@
|
||||
(footprint "ATK-MW8266D"
|
||||
(version 20241229)
|
||||
(generator "pcbnew")
|
||||
(generator_version "9.0")
|
||||
(layer "F.Cu")
|
||||
(property "Reference" "REF**"
|
||||
(at -7.5 -15.5 0)
|
||||
(unlocked yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "66aa11d5-8592-4413-b775-d71d584519b9")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.1)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Value" "ATK-MW8266D"
|
||||
(at 0 16.5 0)
|
||||
(unlocked yes)
|
||||
(layer "F.Fab")
|
||||
(uuid "5815b450-1250-4e76-9986-3ff62a23b5e8")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Datasheet" "http://www.openedv.com/docs/modules/iot/atk-esp.html"
|
||||
(at 0 19.5 0)
|
||||
(unlocked yes)
|
||||
(layer "F.Fab")
|
||||
(uuid "0fb6cb36-8ca6-487d-8c0d-a111335a7659")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Description" "Alientek ESP8266 WiFi-uart module"
|
||||
(at 0 15.5 0)
|
||||
(unlocked yes)
|
||||
(layer "F.Fab")
|
||||
(hide yes)
|
||||
(uuid "a47c0fec-7785-421c-aac7-7e389cab5ec0")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(attr through_hole)
|
||||
(fp_line
|
||||
(start -7.68 11.85)
|
||||
(end -7.68 14.51)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "29d9255d-b015-4ad2-aab1-ffb5dabb1953")
|
||||
)
|
||||
(fp_line
|
||||
(start 5.08 11.85)
|
||||
(end -7.68 11.85)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "f257bc4a-4fe5-4492-b32f-388fdf1eed6a")
|
||||
)
|
||||
(fp_line
|
||||
(start 5.08 11.85)
|
||||
(end 5.08 14.51)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "8d52cd63-d2a0-491c-a22a-a0bd0865a432")
|
||||
)
|
||||
(fp_line
|
||||
(start 5.08 14.51)
|
||||
(end -7.68 14.51)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "d943dfc9-983f-4ade-8939-62f08de85bee")
|
||||
)
|
||||
(fp_line
|
||||
(start 7.68 13.18)
|
||||
(end 7.68 14.51)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "5d19fb20-66bc-4484-b4d6-918e676e283e")
|
||||
)
|
||||
(fp_line
|
||||
(start 7.68 14.51)
|
||||
(end 6.35 14.51)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "ff4f5a89-b3ca-4c6d-b958-0b0f32714ce7")
|
||||
)
|
||||
(fp_rect
|
||||
(start -9.5 -14.5)
|
||||
(end 9.5 14.5)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(fill no)
|
||||
(layer "F.SilkS")
|
||||
(uuid "ede2f971-8bca-4848-a9d1-5c33c5a0958a")
|
||||
)
|
||||
(fp_rect
|
||||
(start -9.5 -14.5)
|
||||
(end 9.5 14.5)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(fill no)
|
||||
(layer "F.CrtYd")
|
||||
(uuid "66ae0904-3f9c-4dfe-a4b7-6849aa993956")
|
||||
)
|
||||
(fp_line
|
||||
(start -7.62 11.91)
|
||||
(end 7.62 11.91)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.Fab")
|
||||
(uuid "e28763b7-19c6-4e1f-9ceb-66fdf852892f")
|
||||
)
|
||||
(fp_line
|
||||
(start -7.62 14.45)
|
||||
(end -7.62 11.91)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.Fab")
|
||||
(uuid "eabaf0a7-21f0-4c24-9bfd-ed96f8115773")
|
||||
)
|
||||
(fp_line
|
||||
(start 6.985 14.45)
|
||||
(end -7.62 14.45)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.Fab")
|
||||
(uuid "9a66edeb-1224-4244-a1d9-d81e0cceb48a")
|
||||
)
|
||||
(fp_line
|
||||
(start 7.62 11.91)
|
||||
(end 7.62 13.815)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.Fab")
|
||||
(uuid "e6e525c7-36c9-4a03-95d4-95538bda6255")
|
||||
)
|
||||
(fp_line
|
||||
(start 7.62 13.815)
|
||||
(end 6.985 14.45)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.Fab")
|
||||
(uuid "c8951726-0351-4973-93ca-d06384388a9f")
|
||||
)
|
||||
(fp_text user "ATK ESP8266"
|
||||
(at 0 0 0)
|
||||
(unlocked yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "e0dd6b14-8a07-41e1-bf80-301e6b2dcdf6")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.125)
|
||||
)
|
||||
)
|
||||
)
|
||||
(fp_text user "Antenna"
|
||||
(at 0 -8 0)
|
||||
(unlocked yes)
|
||||
(layer "Cmts.User")
|
||||
(uuid "0f6ce970-b525-479d-ad3d-f11982c77192")
|
||||
(effects
|
||||
(font
|
||||
(size 0.8 0.8)
|
||||
(thickness 0.1)
|
||||
)
|
||||
)
|
||||
)
|
||||
(fp_text user "KEEP-OUT ZONE"
|
||||
(at 0 -10.5 0)
|
||||
(unlocked yes)
|
||||
(layer "Cmts.User")
|
||||
(uuid "c0ab660f-d948-4406-911e-3c72f96f67c4")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(fp_text user "${REFERENCE}"
|
||||
(at 0 18 0)
|
||||
(unlocked yes)
|
||||
(layer "F.Fab")
|
||||
(uuid "b75931b7-2a21-4ae4-b19c-43cca2d6041c")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pad "1" thru_hole rect
|
||||
(at 6.35 13.18 270)
|
||||
(size 1.7 1.7)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "18e8dd2e-b72c-4db4-932f-c11db201eebf")
|
||||
)
|
||||
(pad "2" thru_hole oval
|
||||
(at 3.81 13.18 270)
|
||||
(size 1.7 1.7)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "6d442aff-a326-47ff-9bc9-8c42d38b71eb")
|
||||
)
|
||||
(pad "3" thru_hole oval
|
||||
(at 1.27 13.18 270)
|
||||
(size 1.7 1.7)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "82e78d8f-8e07-4ce4-9659-582bda8e9df7")
|
||||
)
|
||||
(pad "4" thru_hole oval
|
||||
(at -1.27 13.18 270)
|
||||
(size 1.7 1.7)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "cb113e47-fafd-4bf0-ba84-662108a9f031")
|
||||
)
|
||||
(pad "5" thru_hole oval
|
||||
(at -3.81 13.18 270)
|
||||
(size 1.7 1.7)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "f411c3ad-52b0-4635-85e6-8add0231b772")
|
||||
)
|
||||
(pad "6" thru_hole oval
|
||||
(at -6.35 13.18 270)
|
||||
(size 1.7 1.7)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "b6e7b4aa-4a6f-4fcb-9d38-766ecbc7e6d7")
|
||||
)
|
||||
(zone
|
||||
(net 0)
|
||||
(net_name "")
|
||||
(layers "F.Cu" "B.Cu" "In1.Cu" "In2.Cu" "In3.Cu" "In4.Cu" "In5.Cu" "In6.Cu"
|
||||
"In7.Cu" "In8.Cu" "In9.Cu" "In10.Cu" "In11.Cu" "In12.Cu" "In13.Cu" "In14.Cu"
|
||||
"In15.Cu" "In16.Cu" "In17.Cu" "In18.Cu" "In19.Cu" "In20.Cu" "In21.Cu"
|
||||
"In22.Cu" "In23.Cu" "In24.Cu" "In25.Cu" "In26.Cu" "In27.Cu" "In28.Cu"
|
||||
"In29.Cu" "In30.Cu"
|
||||
)
|
||||
(uuid "d80086d3-2edd-4077-a281-5f9dde62f7bf")
|
||||
(name "No routing")
|
||||
(hatch edge 0.5)
|
||||
(connect_pads
|
||||
(clearance 0)
|
||||
)
|
||||
(min_thickness 0.25)
|
||||
(filled_areas_thickness no)
|
||||
(keepout
|
||||
(tracks not_allowed)
|
||||
(vias not_allowed)
|
||||
(pads not_allowed)
|
||||
(copperpour not_allowed)
|
||||
(footprints not_allowed)
|
||||
)
|
||||
(placement
|
||||
(enabled no)
|
||||
(sheetname "")
|
||||
)
|
||||
(fill
|
||||
(thermal_gap 0.5)
|
||||
(thermal_bridge_width 0.5)
|
||||
)
|
||||
(polygon
|
||||
(pts
|
||||
(xy -9 -14) (xy -9 -5) (xy 9 -5) (xy 9 -14)
|
||||
)
|
||||
)
|
||||
)
|
||||
(group ""
|
||||
(uuid "9f51b370-845a-4d90-8d44-1d4e55cb4015")
|
||||
(members "18e8dd2e-b72c-4db4-932f-c11db201eebf" "29d9255d-b015-4ad2-aab1-ffb5dabb1953"
|
||||
"5d19fb20-66bc-4484-b4d6-918e676e283e" "6d442aff-a326-47ff-9bc9-8c42d38b71eb"
|
||||
"82e78d8f-8e07-4ce4-9659-582bda8e9df7" "8d52cd63-d2a0-491c-a22a-a0bd0865a432"
|
||||
"9a66edeb-1224-4244-a1d9-d81e0cceb48a" "b6e7b4aa-4a6f-4fcb-9d38-766ecbc7e6d7"
|
||||
"c8951726-0351-4973-93ca-d06384388a9f" "cb113e47-fafd-4bf0-ba84-662108a9f031"
|
||||
"d943dfc9-983f-4ade-8939-62f08de85bee" "e28763b7-19c6-4e1f-9ceb-66fdf852892f"
|
||||
"e6e525c7-36c9-4a03-95d4-95538bda6255" "eabaf0a7-21f0-4c24-9bfd-ed96f8115773"
|
||||
"f257bc4a-4fe5-4492-b32f-388fdf1eed6a" "f411c3ad-52b0-4635-85e6-8add0231b772"
|
||||
"ff4f5a89-b3ca-4c6d-b958-0b0f32714ce7"
|
||||
)
|
||||
)
|
||||
(embedded_fonts no)
|
||||
(model "${KICAD9_3DMODEL_DIR}/Connector_PinSocket_2.54mm.3dshapes/PinSocket_1x06_P2.54mm_Vertical.wrl"
|
||||
(offset
|
||||
(xyz 6.36 -13.2 0)
|
||||
)
|
||||
(scale
|
||||
(xyz 1 1 1)
|
||||
)
|
||||
(rotate
|
||||
(xyz -0 -0 90)
|
||||
)
|
||||
)
|
||||
)
|
||||
@@ -1,434 +0,0 @@
|
||||
(footprint "ESP32_DevKitC_RYMCU"
|
||||
(version 20241229)
|
||||
(generator "pcbnew")
|
||||
(generator_version "9.0")
|
||||
(layer "F.Cu")
|
||||
(property "Reference" "REF**"
|
||||
(at 2.54 -1.27 0)
|
||||
(unlocked yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "f90805cc-4d4b-41fe-be1f-935a6ccd7187")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.1)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Value" "ESP32_DevKitC_RYMCU"
|
||||
(at 13.95 27.36 0)
|
||||
(unlocked yes)
|
||||
(layer "F.Fab")
|
||||
(uuid "073466aa-48f6-40ac-959a-562ae10316f4")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Datasheet" ""
|
||||
(at 13.95 26.36 0)
|
||||
(unlocked yes)
|
||||
(layer "F.Fab")
|
||||
(hide yes)
|
||||
(uuid "77aad992-a83f-4438-956f-713db2195079")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Description" ""
|
||||
(at 13.95 26.36 0)
|
||||
(unlocked yes)
|
||||
(layer "F.Fab")
|
||||
(hide yes)
|
||||
(uuid "8145992e-dad2-4c89-a3c7-32f709709fbe")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(attr through_hole)
|
||||
(fp_rect
|
||||
(start 0 0)
|
||||
(end 27.9 54.72)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type default)
|
||||
)
|
||||
(fill no)
|
||||
(layer "F.SilkS")
|
||||
(uuid "68b0d5d5-8795-47a1-ae4e-291796a3f18e")
|
||||
)
|
||||
(fp_rect
|
||||
(start 0 6.52)
|
||||
(end 27.9 54.72)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type default)
|
||||
)
|
||||
(fill no)
|
||||
(layer "F.SilkS")
|
||||
(uuid "410419f6-9a84-431d-b0fe-ea63c5dab233")
|
||||
)
|
||||
(fp_text user "${REFERENCE}"
|
||||
(at 13.95 28.86 0)
|
||||
(unlocked yes)
|
||||
(layer "F.Fab")
|
||||
(uuid "b28476b5-8745-46f2-84ff-ed88578518c6")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pad "1" thru_hole circle
|
||||
(at 1.27 7.62)
|
||||
(size 1.8 1.8)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "4d908c32-ee53-4cd8-8dd8-c83526125db9")
|
||||
)
|
||||
(pad "2" thru_hole circle
|
||||
(at 1.27 10.16)
|
||||
(size 1.8 1.8)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "ecdf825f-df08-4035-8d59-cb6ed4c24beb")
|
||||
)
|
||||
(pad "3" thru_hole circle
|
||||
(at 1.27 12.7)
|
||||
(size 1.8 1.8)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "09cd60d4-d6d7-4cf1-a67c-610276979a7e")
|
||||
)
|
||||
(pad "4" thru_hole circle
|
||||
(at 1.27 15.24)
|
||||
(size 1.8 1.8)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "12d78e63-c037-4eec-b366-5d94448f5d25")
|
||||
)
|
||||
(pad "5" thru_hole circle
|
||||
(at 1.27 17.78)
|
||||
(size 1.8 1.8)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "06d3a89d-fe67-4daa-84f2-6bd31d59e5ef")
|
||||
)
|
||||
(pad "6" thru_hole circle
|
||||
(at 1.27 20.32)
|
||||
(size 1.8 1.8)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "d4a098e4-c1e5-43aa-8e75-4228d19e6511")
|
||||
)
|
||||
(pad "7" thru_hole circle
|
||||
(at 1.27 22.86)
|
||||
(size 1.8 1.8)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "16512920-dc5f-4c6c-9b0c-27510285db55")
|
||||
)
|
||||
(pad "8" thru_hole circle
|
||||
(at 1.27 25.4)
|
||||
(size 1.8 1.8)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "45aac27f-9f05-4f81-ad09-0714c25504c8")
|
||||
)
|
||||
(pad "9" thru_hole circle
|
||||
(at 1.27 27.94)
|
||||
(size 1.8 1.8)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "7a997b1c-f21f-46d3-9347-959ee7d9f1de")
|
||||
)
|
||||
(pad "10" thru_hole circle
|
||||
(at 1.27 30.48)
|
||||
(size 1.8 1.8)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "57e29aee-4c51-4516-bbfa-a8bd80a4c00c")
|
||||
)
|
||||
(pad "11" thru_hole circle
|
||||
(at 1.27 33.02)
|
||||
(size 1.8 1.8)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "ea89ec96-b8c5-4335-bb7e-597c316eff94")
|
||||
)
|
||||
(pad "12" thru_hole circle
|
||||
(at 1.27 35.56)
|
||||
(size 1.8 1.8)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "fd2e9e48-33f4-497d-9ffb-12eed7bccfe2")
|
||||
)
|
||||
(pad "13" thru_hole circle
|
||||
(at 1.27 38.1)
|
||||
(size 1.8 1.8)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "4670b0d7-cb62-4979-89e0-e63d08cfd26d")
|
||||
)
|
||||
(pad "14" thru_hole circle
|
||||
(at 1.27 40.64)
|
||||
(size 1.8 1.8)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "227f099d-a257-42c4-bd36-cd213080e3c2")
|
||||
)
|
||||
(pad "15" thru_hole circle
|
||||
(at 1.27 43.18)
|
||||
(size 1.8 1.8)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "a3850576-c175-4b64-94dd-d75b5cb187f9")
|
||||
)
|
||||
(pad "16" thru_hole circle
|
||||
(at 1.27 45.72)
|
||||
(size 1.8 1.8)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "ee7ad67b-e7ae-4d9f-beb8-a352c3eaf871")
|
||||
)
|
||||
(pad "17" thru_hole circle
|
||||
(at 1.27 48.26)
|
||||
(size 1.8 1.8)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "6c35dae6-968e-49f8-b904-1fac85e3393a")
|
||||
)
|
||||
(pad "18" thru_hole circle
|
||||
(at 1.27 50.8)
|
||||
(size 1.8 1.8)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "0cfb47e4-44a9-4816-b89a-579900cee929")
|
||||
)
|
||||
(pad "19" thru_hole circle
|
||||
(at 1.27 53.34)
|
||||
(size 1.8 1.8)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "8916e867-5855-460d-a74f-a27707253b96")
|
||||
)
|
||||
(pad "20" thru_hole circle
|
||||
(at 26.67 7.62)
|
||||
(size 1.8 1.8)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "129091dd-4697-48d5-b76e-dd59a66c0ad5")
|
||||
)
|
||||
(pad "21" thru_hole circle
|
||||
(at 26.67 10.16)
|
||||
(size 1.8 1.8)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "919d2459-ee68-45a1-9d9d-ba99370a6dc2")
|
||||
)
|
||||
(pad "22" thru_hole circle
|
||||
(at 26.67 12.7)
|
||||
(size 1.8 1.8)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "24e6209d-35c1-42c3-af63-bf831ee21d7e")
|
||||
)
|
||||
(pad "23" thru_hole circle
|
||||
(at 26.67 15.24)
|
||||
(size 1.8 1.8)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "b2d91fe8-e1de-4bfe-bbee-aa3bef091b6d")
|
||||
)
|
||||
(pad "24" thru_hole circle
|
||||
(at 26.67 17.78)
|
||||
(size 1.8 1.8)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "734323f3-75ac-46f9-9079-1211d7454270")
|
||||
)
|
||||
(pad "25" thru_hole circle
|
||||
(at 26.67 20.32)
|
||||
(size 1.8 1.8)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "18cac653-2b82-47ec-aa9f-69d70415c651")
|
||||
)
|
||||
(pad "26" thru_hole circle
|
||||
(at 26.67 22.86)
|
||||
(size 1.8 1.8)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "09fc6e3e-9085-4ca5-8e2f-11df51d2fcd5")
|
||||
)
|
||||
(pad "27" thru_hole circle
|
||||
(at 26.67 25.4)
|
||||
(size 1.8 1.8)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "2dbeceec-2c22-458c-9750-f8127d7421ea")
|
||||
)
|
||||
(pad "28" thru_hole circle
|
||||
(at 26.67 27.94)
|
||||
(size 1.8 1.8)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "b9dc4bd4-b2c1-4a09-b6bc-d9d7c8f2afd6")
|
||||
)
|
||||
(pad "29" thru_hole circle
|
||||
(at 26.67 30.48)
|
||||
(size 1.8 1.8)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "d0e31f52-bb07-4ee5-8282-653990482522")
|
||||
)
|
||||
(pad "30" thru_hole circle
|
||||
(at 26.67 33.02)
|
||||
(size 1.8 1.8)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "5b9d293c-3fd1-454c-9819-d9a844c69a07")
|
||||
)
|
||||
(pad "31" thru_hole circle
|
||||
(at 26.67 35.56)
|
||||
(size 1.8 1.8)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "bab5e48e-f53b-4398-a169-4ed56a7bb1ec")
|
||||
)
|
||||
(pad "32" thru_hole circle
|
||||
(at 26.67 38.1)
|
||||
(size 1.8 1.8)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "e94dc7d1-3da4-4b89-bbad-fae698e32613")
|
||||
)
|
||||
(pad "33" thru_hole circle
|
||||
(at 26.67 40.64)
|
||||
(size 1.8 1.8)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "71dd4fab-106d-460f-8d64-b2c8b23ef31b")
|
||||
)
|
||||
(pad "34" thru_hole circle
|
||||
(at 26.67 43.18)
|
||||
(size 1.8 1.8)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "a2aeac4c-6dbc-4893-baaf-38dd95940827")
|
||||
)
|
||||
(pad "35" thru_hole circle
|
||||
(at 26.67 45.72)
|
||||
(size 1.8 1.8)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "8aba11e9-b351-494b-a249-87bf14dce163")
|
||||
)
|
||||
(pad "36" thru_hole circle
|
||||
(at 26.67 48.26)
|
||||
(size 1.8 1.8)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "d2497308-c801-4a35-b253-bd28976a86db")
|
||||
)
|
||||
(pad "37" thru_hole circle
|
||||
(at 26.67 50.8)
|
||||
(size 1.8 1.8)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "8d2f081f-d314-4943-b49a-465d242bc0e2")
|
||||
)
|
||||
(pad "38" thru_hole circle
|
||||
(at 26.67 53.34)
|
||||
(size 1.8 1.8)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "a8230a12-5c94-4632-a656-9c3fe10f121a")
|
||||
)
|
||||
(zone
|
||||
(net 0)
|
||||
(net_name "")
|
||||
(layers "F.Cu" "B.Cu" "In1.Cu" "In2.Cu" "In3.Cu" "In4.Cu" "In5.Cu" "In6.Cu"
|
||||
"In7.Cu" "In8.Cu" "In9.Cu" "In10.Cu" "In11.Cu" "In12.Cu" "In13.Cu" "In14.Cu"
|
||||
"In15.Cu" "In16.Cu" "In17.Cu" "In18.Cu" "In19.Cu" "In20.Cu" "In21.Cu"
|
||||
"In22.Cu" "In23.Cu" "In24.Cu" "In25.Cu" "In26.Cu" "In27.Cu" "In28.Cu"
|
||||
"In29.Cu" "In30.Cu"
|
||||
)
|
||||
(uuid "09d3fc69-13c2-4142-9898-59b96eeaa21d")
|
||||
(name "No routing")
|
||||
(hatch edge 0.5)
|
||||
(connect_pads
|
||||
(clearance 0)
|
||||
)
|
||||
(min_thickness 0.25)
|
||||
(filled_areas_thickness no)
|
||||
(keepout
|
||||
(tracks not_allowed)
|
||||
(vias not_allowed)
|
||||
(pads not_allowed)
|
||||
(copperpour not_allowed)
|
||||
(footprints not_allowed)
|
||||
)
|
||||
(placement
|
||||
(enabled no)
|
||||
(sheetname "")
|
||||
)
|
||||
(fill
|
||||
(thermal_gap 0.5)
|
||||
(thermal_bridge_width 0.5)
|
||||
)
|
||||
(polygon
|
||||
(pts
|
||||
(xy 0 0) (xy 27.9 0) (xy 27.9 6.52) (xy 0 6.52)
|
||||
)
|
||||
)
|
||||
)
|
||||
(embedded_fonts no)
|
||||
)
|
||||
@@ -1,782 +0,0 @@
|
||||
(footprint "IM1281B"
|
||||
(version 20260206)
|
||||
(generator "pcbnew")
|
||||
(generator_version "10.0")
|
||||
(layer "F.Cu")
|
||||
(property "Reference" "REF**"
|
||||
(at 2 -26.4 0)
|
||||
(layer "F.SilkS")
|
||||
(uuid "64dcfe44-f2d6-4a35-b887-32cafb1b4e0e")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Value" "IM1281B"
|
||||
(at 21.50945 0.95 0)
|
||||
(layer "F.Fab")
|
||||
(uuid "a3c2f98d-50b1-4330-b82f-8b4b0df286c9")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Datasheet" ""
|
||||
(at 0 0 0)
|
||||
(layer "F.Fab")
|
||||
(hide yes)
|
||||
(uuid "8fbb7397-470a-426e-a7b1-2d7e1829b42a")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Description" ""
|
||||
(at 0 0 0)
|
||||
(layer "F.Fab")
|
||||
(hide yes)
|
||||
(uuid "6335b030-9bee-428a-ab70-e5166d47724a")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(attr through_hole)
|
||||
(duplicate_pad_numbers_are_jumpers no)
|
||||
(fp_line
|
||||
(start 0.0254 -25.4762)
|
||||
(end 43.2054 -25.4762)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "78884b96-a5bc-4126-b702-806fe1e7449a")
|
||||
)
|
||||
(fp_line
|
||||
(start 0.0254 -0.0508)
|
||||
(end 0.0254 -25.4762)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "7b6f2ce5-2cfb-4b35-8f5e-1b3a26d0f148")
|
||||
)
|
||||
(fp_line
|
||||
(start 0.0254 -0.0508)
|
||||
(end 43.2054 -0.0508)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "23dd1778-fe54-4eb2-8326-fcd515989e5f")
|
||||
)
|
||||
(fp_line
|
||||
(start 0.0508 -23.6728)
|
||||
(end 24.257 -23.6728)
|
||||
(stroke
|
||||
(width 0.3048)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "d15eb9cb-6436-4705-8bbd-549bfbb5fdb4")
|
||||
)
|
||||
(fp_line
|
||||
(start 0.0508 -10.7188)
|
||||
(end 0.0508 -23.5458)
|
||||
(stroke
|
||||
(width 0.3048)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "b010ec4f-603e-4be4-bf1f-f952c937863e")
|
||||
)
|
||||
(fp_line
|
||||
(start 0.0508 -10.7188)
|
||||
(end 24.257 -10.7188)
|
||||
(stroke
|
||||
(width 0.3048)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "eec1225e-7f00-45d7-97ee-0c170dbdf4df")
|
||||
)
|
||||
(fp_line
|
||||
(start 6.4135 -10.795)
|
||||
(end 18.3261 -10.795)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "12d3f410-196c-47b4-9af2-d2130b5c50c6")
|
||||
)
|
||||
(fp_line
|
||||
(start 12.2428 -10.7188)
|
||||
(end 12.2428 -23.6728)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "4853787f-4ad4-44b9-9fb7-d83ddd356679")
|
||||
)
|
||||
(fp_line
|
||||
(start 24.257 -20.0025)
|
||||
(end 24.257 -23.6728)
|
||||
(stroke
|
||||
(width 0.3048)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "0a0c00d4-8d91-449f-9586-5caecebf77f8")
|
||||
)
|
||||
(fp_line
|
||||
(start 24.257 -14.3891)
|
||||
(end 24.257 -20.0025)
|
||||
(stroke
|
||||
(width 0.3048)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "23820f7e-d206-418c-8621-e8c8416e1f7e")
|
||||
)
|
||||
(fp_line
|
||||
(start 24.257 -10.7188)
|
||||
(end 24.257 -14.3891)
|
||||
(stroke
|
||||
(width 0.3048)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "47a1c6bb-3a19-4309-b7ef-4de05f966458")
|
||||
)
|
||||
(fp_line
|
||||
(start 24.7904 -22.86)
|
||||
(end 24.7904 -25.0698)
|
||||
(stroke
|
||||
(width 0.127)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "aaf60d37-3734-496c-8ab8-a952b3323a24")
|
||||
)
|
||||
(fp_line
|
||||
(start 24.7904 -22.86)
|
||||
(end 30.5562 -22.86)
|
||||
(stroke
|
||||
(width 0.127)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "67208698-3f2e-4f00-8fee-be73bf7c426e")
|
||||
)
|
||||
(fp_line
|
||||
(start 24.8158 -25.0952)
|
||||
(end 30.5562 -25.0952)
|
||||
(stroke
|
||||
(width 0.127)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "7746d09e-a8ba-494a-8475-9f0d7671aa42")
|
||||
)
|
||||
(fp_line
|
||||
(start 30.5562 -22.86)
|
||||
(end 30.5562 -25.0952)
|
||||
(stroke
|
||||
(width 0.127)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "ff938a1c-842b-44ce-a384-8ba6af898acf")
|
||||
)
|
||||
(fp_line
|
||||
(start 30.8578 -1.3716)
|
||||
(end 30.8578 -21.1836)
|
||||
(stroke
|
||||
(width 0.2032)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "3175ef0d-f4e9-4210-8d8a-b1eb6082cd9f")
|
||||
)
|
||||
(fp_line
|
||||
(start 30.8578 -1.3462)
|
||||
(end 41.3734 -1.3462)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "8f6cb92a-4441-4583-92df-1385f3097def")
|
||||
)
|
||||
(fp_line
|
||||
(start 30.934 -21.209)
|
||||
(end 41.3734 -21.209)
|
||||
(stroke
|
||||
(width 0.2032)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "65d9d1e8-1222-41b1-9d4e-957422affbb0")
|
||||
)
|
||||
(fp_line
|
||||
(start 32.5088 -2.7544)
|
||||
(end 32.5088 -3.2304)
|
||||
(stroke
|
||||
(width 1.524)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "e695a6ba-dc13-4114-b473-6664a55799f0")
|
||||
)
|
||||
(fp_line
|
||||
(start 35.2552 -22.86)
|
||||
(end 35.2552 -25.0698)
|
||||
(stroke
|
||||
(width 0.127)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "59f774ac-864f-42a8-8ee6-ce66ee596e97")
|
||||
)
|
||||
(fp_line
|
||||
(start 35.2552 -22.86)
|
||||
(end 41.021 -22.86)
|
||||
(stroke
|
||||
(width 0.127)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "246a3996-2fa4-4332-a323-1f7a8b596da9")
|
||||
)
|
||||
(fp_line
|
||||
(start 35.2806 -25.0952)
|
||||
(end 41.021 -25.0952)
|
||||
(stroke
|
||||
(width 0.127)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "3f4529c9-cb25-4d29-8013-15a3fa9dac36")
|
||||
)
|
||||
(fp_line
|
||||
(start 39.751 -2.7544)
|
||||
(end 39.751 -3.2304)
|
||||
(stroke
|
||||
(width 1.524)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "11764331-a69b-4c19-a687-3bbbc478164e")
|
||||
)
|
||||
(fp_line
|
||||
(start 41.021 -22.86)
|
||||
(end 41.021 -25.0952)
|
||||
(stroke
|
||||
(width 0.127)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "6d3dc788-80ab-4309-92c3-e26fc08e90da")
|
||||
)
|
||||
(fp_line
|
||||
(start 41.3734 -1.3462)
|
||||
(end 41.3734 -21.1582)
|
||||
(stroke
|
||||
(width 0.2032)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "6f59f528-d7f0-417e-a556-5cd661fb7373")
|
||||
)
|
||||
(fp_line
|
||||
(start 43.2054 -0.0508)
|
||||
(end 43.2054 -25.4762)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "c4018832-9820-435b-a407-1a4ea93e2742")
|
||||
)
|
||||
(fp_arc
|
||||
(start 33.4902 -3.6576)
|
||||
(mid 34.7902 -4.9576)
|
||||
(end 36.0902 -3.6576)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "e8f6dc9e-2e11-4d09-b669-2237f0f503ba")
|
||||
)
|
||||
(fp_arc
|
||||
(start 36.0394 -18.923)
|
||||
(mid 34.7394 -17.623)
|
||||
(end 33.4394 -18.923)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "125aef75-4ecd-4f71-be39-b8049f6208fd")
|
||||
)
|
||||
(fp_arc
|
||||
(start 36.2842 -3.5814)
|
||||
(mid 37.5842 -4.8814)
|
||||
(end 38.8842 -3.5814)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "9f141317-b9c0-4ad5-87e7-4b67f0cc67ae")
|
||||
)
|
||||
(fp_arc
|
||||
(start 38.6302 -18.9992)
|
||||
(mid 37.3302 -17.6992)
|
||||
(end 36.0302 -18.9992)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "5519400f-0008-4555-bfba-54498406bdb9")
|
||||
)
|
||||
(fp_circle
|
||||
(center 2.7428 -12.1968)
|
||||
(end 2.7428 -12.821797)
|
||||
(stroke
|
||||
(width 1.249995)
|
||||
(type solid)
|
||||
)
|
||||
(fill yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "8376cb43-0a88-4b26-a0ab-4c2947355e91")
|
||||
)
|
||||
(fp_circle
|
||||
(center 4.6228 -22.6568)
|
||||
(end 4.6228 -23.2283)
|
||||
(stroke
|
||||
(width 1.143)
|
||||
(type solid)
|
||||
)
|
||||
(fill yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "cbc5d1ab-6216-4bf4-a543-085c1bf1090f")
|
||||
)
|
||||
(fp_circle
|
||||
(center 19.8628 -22.6568)
|
||||
(end 19.8628 -23.2283)
|
||||
(stroke
|
||||
(width 1.143)
|
||||
(type solid)
|
||||
)
|
||||
(fill yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "cec98098-0d30-4d40-bad2-4bac6a513343")
|
||||
)
|
||||
(fp_circle
|
||||
(center 21.7428 -12.2476)
|
||||
(end 21.7428 -12.872597)
|
||||
(stroke
|
||||
(width 1.249995)
|
||||
(type solid)
|
||||
)
|
||||
(fill yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "ea5570ea-661a-42b4-a0ec-db5b5899473f")
|
||||
)
|
||||
(fp_circle
|
||||
(center 32.5088 -19.558)
|
||||
(end 32.5088 -20.058)
|
||||
(stroke
|
||||
(width 1)
|
||||
(type solid)
|
||||
)
|
||||
(fill yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "29d1e83a-0d7c-4433-a176-07b5432c538d")
|
||||
)
|
||||
(fp_circle
|
||||
(center 39.751 -19.558)
|
||||
(end 39.751 -20.058)
|
||||
(stroke
|
||||
(width 1)
|
||||
(type solid)
|
||||
)
|
||||
(fill yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "a30d5dcb-f4ad-4015-9249-6dae143e49d5")
|
||||
)
|
||||
(fp_line
|
||||
(start 15.5702 -3.2258)
|
||||
(end 28.2702 -3.2258)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "B.SilkS")
|
||||
(uuid "c3b7a7a2-9918-4489-ac60-aeb288b26e12")
|
||||
)
|
||||
(fp_line
|
||||
(start 15.5702 -0.6858)
|
||||
(end 15.5702 -3.2258)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "B.SilkS")
|
||||
(uuid "63649af0-d292-4635-8243-482452db3006")
|
||||
)
|
||||
(fp_line
|
||||
(start 15.5702 -0.6858)
|
||||
(end 28.2702 -0.6858)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "B.SilkS")
|
||||
(uuid "3b6f7fbd-0f83-46e0-aa86-f1b017350e58")
|
||||
)
|
||||
(fp_line
|
||||
(start 18.1102 -0.6858)
|
||||
(end 18.1102 -3.2258)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "B.SilkS")
|
||||
(uuid "280341ed-5cb5-46dd-a51b-dba04ac63c80")
|
||||
)
|
||||
(fp_line
|
||||
(start 27.8892 -25.1968)
|
||||
(end 38.0492 -25.1968)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "B.SilkS")
|
||||
(uuid "f72d4112-e2c0-4496-8456-19713316d2d0")
|
||||
)
|
||||
(fp_line
|
||||
(start 27.8892 -22.6568)
|
||||
(end 27.8892 -25.1968)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "B.SilkS")
|
||||
(uuid "8a0903d1-3729-4ced-b959-e9c897d95e8a")
|
||||
)
|
||||
(fp_line
|
||||
(start 27.8892 -22.6568)
|
||||
(end 38.0492 -22.6568)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "B.SilkS")
|
||||
(uuid "e350d926-6e4c-4ffe-abe0-b8052ec838fe")
|
||||
)
|
||||
(fp_line
|
||||
(start 28.2702 -0.6858)
|
||||
(end 28.2702 -3.2258)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "B.SilkS")
|
||||
(uuid "860e4939-a57c-4b5e-8416-1fe9a8f0bda2")
|
||||
)
|
||||
(fp_line
|
||||
(start 30.4292 -22.6568)
|
||||
(end 30.4292 -25.1968)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "B.SilkS")
|
||||
(uuid "2c63376d-0a70-4b3b-9349-7fb06146bd2f")
|
||||
)
|
||||
(fp_line
|
||||
(start 38.0492 -22.6568)
|
||||
(end 38.0492 -25.1968)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "B.SilkS")
|
||||
(uuid "d1bd7ea8-daa2-4f27-a885-f67727ab00db")
|
||||
)
|
||||
(fp_line
|
||||
(start 0 -27.94)
|
||||
(end 43.18 -27.94)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.CrtYd")
|
||||
(uuid "3467d99d-f38c-46e9-90ba-e80fe0dbf331")
|
||||
)
|
||||
(fp_line
|
||||
(start 0.0254 2.54)
|
||||
(end 0 -27.94)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.CrtYd")
|
||||
(uuid "bad5571f-dbb4-45fd-a0f0-58af7898db1d")
|
||||
)
|
||||
(fp_line
|
||||
(start 0.0254 2.54)
|
||||
(end 43.2054 2.54)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.CrtYd")
|
||||
(uuid "2f8f90f9-84b0-490f-b3c8-55fd12e02cc2")
|
||||
)
|
||||
(fp_line
|
||||
(start 43.2054 2.54)
|
||||
(end 43.2054 -27.94)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.CrtYd")
|
||||
(uuid "5d6c5e51-51d7-4d05-bbb0-997f44835a22")
|
||||
)
|
||||
(fp_text user "IM1281B"
|
||||
(at 0.4 -0.8 0)
|
||||
(unlocked yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "ca17ac62-ec7d-4f09-a6f0-a8a516a35dc5")
|
||||
(effects
|
||||
(font
|
||||
(size 1.524 1.524)
|
||||
(thickness 0.254)
|
||||
)
|
||||
(justify left bottom)
|
||||
)
|
||||
)
|
||||
(fp_text user "CT41A"
|
||||
(at 5.207 -16.92 0)
|
||||
(unlocked yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "f156c8e3-8e13-43ec-98eb-4dd80a9703df")
|
||||
(effects
|
||||
(font
|
||||
(size 0.8 0.8)
|
||||
(thickness 0.1)
|
||||
)
|
||||
(justify left bottom)
|
||||
)
|
||||
)
|
||||
(fp_text user "PF"
|
||||
(at 17.5 -3.5 90)
|
||||
(unlocked yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "57b26baa-29b8-422a-912b-f19435d21b00")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.1)
|
||||
)
|
||||
(justify left bottom)
|
||||
)
|
||||
)
|
||||
(fp_text user "TX"
|
||||
(at 20 -3.5 90)
|
||||
(unlocked yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "0ba7e37f-3836-4f9b-a524-db17315330cc")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.1)
|
||||
)
|
||||
(justify left bottom)
|
||||
)
|
||||
)
|
||||
(fp_text user "RX"
|
||||
(at 22.5 -3.5 90)
|
||||
(unlocked yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "e7b34392-89b0-417d-b3f9-df1be527034c")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.1)
|
||||
)
|
||||
(justify left bottom)
|
||||
)
|
||||
)
|
||||
(fp_text user "VCC"
|
||||
(at 25 -3.5 90)
|
||||
(unlocked yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "49854185-6946-4cd1-a81e-c84d143a15e3")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.1)
|
||||
)
|
||||
(justify left bottom)
|
||||
)
|
||||
)
|
||||
(fp_text user "VN"
|
||||
(at 25.527 -23.136225 0)
|
||||
(unlocked yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "7e156e8e-6e66-40f7-9a90-bde506beb94a")
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
(thickness 0.2032)
|
||||
)
|
||||
(justify left bottom)
|
||||
)
|
||||
)
|
||||
(fp_text user "GND"
|
||||
(at 27.5 -3.5 90)
|
||||
(unlocked yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "be6ff3ee-264e-4c26-ad69-f5257dd0bfcd")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.1)
|
||||
)
|
||||
(justify left bottom)
|
||||
)
|
||||
)
|
||||
(fp_text user "PT02A"
|
||||
(at 35.234855 -14.478 270)
|
||||
(unlocked yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "7985a8cf-81d4-4477-8edd-a3ca9b15abd0")
|
||||
(effects
|
||||
(font
|
||||
(size 0.8 0.8)
|
||||
(thickness 0.1)
|
||||
)
|
||||
(justify left bottom)
|
||||
)
|
||||
)
|
||||
(fp_text user "VL"
|
||||
(at 38.1508 -23.187025 0)
|
||||
(unlocked yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "cab479bc-5750-4d2f-9c50-833fd8c45256")
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
(thickness 0.2032)
|
||||
)
|
||||
(justify left bottom)
|
||||
)
|
||||
)
|
||||
(pad "1" thru_hole rect
|
||||
(at 16.8402 -1.9558)
|
||||
(size 1.5 1.5)
|
||||
(drill 0.9)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "c92c40b9-d8e2-4357-9eb3-26b65b52f505")
|
||||
)
|
||||
(pad "2" thru_hole circle
|
||||
(at 19.3802 -1.9558)
|
||||
(size 1.5 1.5)
|
||||
(drill 0.9)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(thermal_bridge_angle 90)
|
||||
(uuid "d8d203a9-0e03-48c3-bdef-54321542302c")
|
||||
)
|
||||
(pad "3" thru_hole circle
|
||||
(at 21.9202 -1.9558)
|
||||
(size 1.5 1.5)
|
||||
(drill 0.9)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(thermal_bridge_angle 90)
|
||||
(uuid "5d10b803-1b50-4f77-b630-8da92f9a07ba")
|
||||
)
|
||||
(pad "4" thru_hole circle
|
||||
(at 24.4602 -1.9558)
|
||||
(size 1.5 1.5)
|
||||
(drill 0.9)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(thermal_bridge_angle 90)
|
||||
(uuid "8a04be09-560f-4532-9bde-2026ede08105")
|
||||
)
|
||||
(pad "5" thru_hole circle
|
||||
(at 27.0002 -1.9558)
|
||||
(size 1.5 1.5)
|
||||
(drill 0.9)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(thermal_bridge_angle 90)
|
||||
(uuid "57fd2c25-4857-44ec-a4f3-9eb925de9bb8")
|
||||
)
|
||||
(pad "6" thru_hole oval
|
||||
(at 36.7792 -23.9268)
|
||||
(size 1.5 1.778)
|
||||
(drill 0.9)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "4fb68f0c-d934-4d77-aa82-127403c2fba5")
|
||||
)
|
||||
(pad "7" thru_hole rect
|
||||
(at 29.1592 -23.9268)
|
||||
(size 1.5 1.778)
|
||||
(drill 0.9)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "771bc945-978d-4474-9dcd-ff9533cf13ff")
|
||||
)
|
||||
(pad "8" thru_hole circle
|
||||
(at 12.2428 -31)
|
||||
(size 5.08 5.08)
|
||||
(drill 2.54)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "acbaff89-4fc5-47a0-867c-b9b342ef0a23")
|
||||
)
|
||||
(pad "9" thru_hole circle
|
||||
(at 12.2428 6)
|
||||
(size 5.08 5.08)
|
||||
(drill 2.54)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "cf2e8f07-3b40-4103-9d14-4fa6eb3d9431")
|
||||
)
|
||||
(embedded_fonts no)
|
||||
(model "${USER_3DMODEL}/IM1281B.step"
|
||||
(offset
|
||||
(xyz 36.8 23.5 0)
|
||||
)
|
||||
(scale
|
||||
(xyz 1 0.98 1)
|
||||
)
|
||||
(rotate
|
||||
(xyz -0 -0 -0)
|
||||
)
|
||||
)
|
||||
)
|
||||
@@ -1,868 +0,0 @@
|
||||
(footprint "IM1281C"
|
||||
(version 20260206)
|
||||
(generator "pcbnew")
|
||||
(generator_version "10.0")
|
||||
(layer "F.Cu")
|
||||
(property "Reference" "REF**"
|
||||
(at 2.286 -40.132 0)
|
||||
(layer "F.SilkS")
|
||||
(uuid "fe9168ac-555b-4db2-a1de-5ac53b9e4f31")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Value" "IM1281C"
|
||||
(at 3.556 1.27 0)
|
||||
(layer "F.Fab")
|
||||
(uuid "9dd90b1f-14b2-4f02-9fc3-52657c6e894e")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Datasheet" ""
|
||||
(at 0 0 0)
|
||||
(layer "F.Fab")
|
||||
(hide yes)
|
||||
(uuid "f7ed3c86-805a-4f21-b584-50b266020746")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Description" ""
|
||||
(at 93.768545 -18.6182 0)
|
||||
(layer "F.Fab")
|
||||
(hide yes)
|
||||
(uuid "49a35a34-9e29-4a94-be84-1df5b86b479f")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(attr through_hole)
|
||||
(duplicate_pad_numbers_are_jumpers no)
|
||||
(fp_line
|
||||
(start 0 -35.5)
|
||||
(end 24.5 -35.5)
|
||||
(stroke
|
||||
(width 0.3048)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "489d509f-82cd-424c-a1f5-ff13d5b6e7bc")
|
||||
)
|
||||
(fp_line
|
||||
(start 0 -22.5)
|
||||
(end 0 -35.5)
|
||||
(stroke
|
||||
(width 0.3048)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "e5ada2d1-d524-4978-bb94-eb5eb682e98f")
|
||||
)
|
||||
(fp_line
|
||||
(start 0 -22.5)
|
||||
(end 24.5 -22.5)
|
||||
(stroke
|
||||
(width 0.3048)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "b9989d2c-ebe7-48db-b75d-b77794e32f31")
|
||||
)
|
||||
(fp_line
|
||||
(start 0 0)
|
||||
(end 0 -36.5)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "9349c9ae-2a75-424b-836c-4b3604b8f928")
|
||||
)
|
||||
(fp_line
|
||||
(start 0 0)
|
||||
(end 60 0)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "4e4c1075-1579-4a09-a4ad-a0edf07f58ec")
|
||||
)
|
||||
(fp_line
|
||||
(start 12.25 -35.5)
|
||||
(end 12.25 -22.5)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "11b754fe-3517-4e11-ab23-8ee682e23053")
|
||||
)
|
||||
(fp_line
|
||||
(start 24.5 -35.5)
|
||||
(end 49 -35.5)
|
||||
(stroke
|
||||
(width 0.3048)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "e7f880a2-b43d-4b5f-97eb-c2287c576671")
|
||||
)
|
||||
(fp_line
|
||||
(start 24.5 -22.5)
|
||||
(end 24.5 -35.5)
|
||||
(stroke
|
||||
(width 0.3048)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "03583d2c-30a2-4b56-9d4d-5d6f10f08821")
|
||||
)
|
||||
(fp_line
|
||||
(start 24.5 -22.5)
|
||||
(end 24.5 -35.5)
|
||||
(stroke
|
||||
(width 0.3048)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "160171c3-0cf4-4d9c-a667-c01259f04703")
|
||||
)
|
||||
(fp_line
|
||||
(start 24.5 -22.5)
|
||||
(end 49 -22.5)
|
||||
(stroke
|
||||
(width 0.3048)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "d19388fa-6212-4efd-b389-bb946568beeb")
|
||||
)
|
||||
(fp_line
|
||||
(start 36.75 -35.5)
|
||||
(end 36.75 -22.5)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "467d1a9c-867e-4311-8ff7-20e6bdf5cbac")
|
||||
)
|
||||
(fp_line
|
||||
(start 49 -22.5)
|
||||
(end 49 -35.5)
|
||||
(stroke
|
||||
(width 0.3048)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "3214d7d4-5a1c-4bc2-a709-076868432a31")
|
||||
)
|
||||
(fp_line
|
||||
(start 49.05 -35.33)
|
||||
(end 49.05 -32.67)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "bcae564f-9ec5-4e47-b760-1e0aeaa830c0")
|
||||
)
|
||||
(fp_line
|
||||
(start 49.5 -0.5)
|
||||
(end 49.5 -19.5)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "3a9ce882-f371-42c5-8de9-1f771c8d50a4")
|
||||
)
|
||||
(fp_line
|
||||
(start 49.5 -0.5)
|
||||
(end 59.5 -0.5)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "47001e29-3045-49d3-8af6-b3896a07a016")
|
||||
)
|
||||
(fp_line
|
||||
(start 56.73 -35.33)
|
||||
(end 49.05 -35.33)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "edee6b7e-4087-456a-a459-23fddc868ddc")
|
||||
)
|
||||
(fp_line
|
||||
(start 56.73 -35.33)
|
||||
(end 56.73 -32.67)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "53ff4055-0678-40bb-a55f-697bfb53c34c")
|
||||
)
|
||||
(fp_line
|
||||
(start 56.73 -32.67)
|
||||
(end 49.05 -32.67)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "df0a49e8-0aae-4d58-9810-5824bd16bc23")
|
||||
)
|
||||
(fp_line
|
||||
(start 59.33 -34)
|
||||
(end 59.33 -32.67)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "1c52accb-2eea-455d-a80a-36be67b2bd4f")
|
||||
)
|
||||
(fp_line
|
||||
(start 59.33 -32.67)
|
||||
(end 58 -32.67)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "71dced72-9823-4a4a-a450-d2f1cfbd660f")
|
||||
)
|
||||
(fp_line
|
||||
(start 59.5 -19.5)
|
||||
(end 49.5 -19.5)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "b75b2f0b-c6c8-43f7-ac8d-b646cf8d9bb1")
|
||||
)
|
||||
(fp_line
|
||||
(start 59.5 -19.5)
|
||||
(end 59.5 -0.5)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "0c8aa3a3-82c1-4195-9532-fcc87ee2bbdb")
|
||||
)
|
||||
(fp_line
|
||||
(start 60 -36.5)
|
||||
(end 0 -36.5)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "5bf58fc1-3468-4476-9773-54819969c74d")
|
||||
)
|
||||
(fp_line
|
||||
(start 60 -36.5)
|
||||
(end 60 0)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "a4639be6-14cf-4f4b-9544-6465dfa33c0b")
|
||||
)
|
||||
(fp_arc
|
||||
(start 52.0226 -2.4308)
|
||||
(mid 53.3226 -3.7308)
|
||||
(end 54.6226 -2.4308)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "89c113b6-dc01-4e29-a793-dcb6cf11624b")
|
||||
)
|
||||
(fp_arc
|
||||
(start 54.3866 -17.493)
|
||||
(mid 53.0866 -16.193)
|
||||
(end 51.7866 -17.493)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "6300f23f-b2bd-42a8-be17-731520198b20")
|
||||
)
|
||||
(fp_arc
|
||||
(start 54.6134 -2.507)
|
||||
(mid 55.9134 -3.807)
|
||||
(end 57.2134 -2.507)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "2dbc243f-c315-4353-bbcb-beb71e9dc1b2")
|
||||
)
|
||||
(fp_arc
|
||||
(start 56.9774 -17.5692)
|
||||
(mid 55.6774 -16.2692)
|
||||
(end 54.3774 -17.5692)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "9de87d0e-83f7-4d7a-9634-fdc90a56e740")
|
||||
)
|
||||
(fp_circle
|
||||
(center 1.9685 -23.8335)
|
||||
(end 1.9685 -24.405)
|
||||
(stroke
|
||||
(width 1.143)
|
||||
(type solid)
|
||||
)
|
||||
(fill yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "99ebe313-2cb7-4f4f-9b16-3785218e8567")
|
||||
)
|
||||
(fp_circle
|
||||
(center 4.5085 -33.9935)
|
||||
(end 4.5085 -34.565)
|
||||
(stroke
|
||||
(width 1.143)
|
||||
(type solid)
|
||||
)
|
||||
(fill yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "9da61688-8e13-4097-8bf9-fd47aa1634ea")
|
||||
)
|
||||
(fp_circle
|
||||
(center 20.066 -33.9935)
|
||||
(end 20.066 -33.422)
|
||||
(stroke
|
||||
(width 1.143)
|
||||
(type solid)
|
||||
)
|
||||
(fill yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "ef708353-0c26-45b0-84ec-0486b8ba0d65")
|
||||
)
|
||||
(fp_circle
|
||||
(center 22.606 -23.8335)
|
||||
(end 22.606 -23.262)
|
||||
(stroke
|
||||
(width 1.143)
|
||||
(type solid)
|
||||
)
|
||||
(fill yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "1ca6b705-205f-4af3-835e-a691a242279d")
|
||||
)
|
||||
(fp_circle
|
||||
(center 26.4685 -23.8335)
|
||||
(end 26.4685 -24.405)
|
||||
(stroke
|
||||
(width 1.143)
|
||||
(type solid)
|
||||
)
|
||||
(fill yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "3e1c4ff6-2042-490c-8202-c834ad93722e")
|
||||
)
|
||||
(fp_circle
|
||||
(center 29.0085 -33.9935)
|
||||
(end 29.0085 -34.565)
|
||||
(stroke
|
||||
(width 1.143)
|
||||
(type solid)
|
||||
)
|
||||
(fill yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "b42084ff-ef54-4ca1-933c-39c88d1f67ca")
|
||||
)
|
||||
(fp_circle
|
||||
(center 44.566 -33.9935)
|
||||
(end 44.566 -33.422)
|
||||
(stroke
|
||||
(width 1.143)
|
||||
(type solid)
|
||||
)
|
||||
(fill yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "e6e5c0da-cf6e-496b-8301-f7f16093c69c")
|
||||
)
|
||||
(fp_circle
|
||||
(center 47.106 -23.8335)
|
||||
(end 47.106 -23.262)
|
||||
(stroke
|
||||
(width 1.143)
|
||||
(type solid)
|
||||
)
|
||||
(fill yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "bfbe3ccd-0d22-490b-bbf3-ad79b629e49a")
|
||||
)
|
||||
(fp_circle
|
||||
(center 50.856 -18.128)
|
||||
(end 50.856 -18.628)
|
||||
(stroke
|
||||
(width 1)
|
||||
(type solid)
|
||||
)
|
||||
(fill yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "da7c8701-a360-45f9-845e-e2cb46d20874")
|
||||
)
|
||||
(fp_circle
|
||||
(center 50.9018 -1.872)
|
||||
(end 50.9018 -1.372)
|
||||
(stroke
|
||||
(width 1)
|
||||
(type solid)
|
||||
)
|
||||
(fill yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "a5dcfb95-36bc-41c6-aea7-bc2975e911e3")
|
||||
)
|
||||
(fp_circle
|
||||
(center 58.0982 -18.128)
|
||||
(end 58.0982 -18.628)
|
||||
(stroke
|
||||
(width 1)
|
||||
(type solid)
|
||||
)
|
||||
(fill yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "3542dab8-339a-4022-bdd1-79774d666177")
|
||||
)
|
||||
(fp_circle
|
||||
(center 58.144 -1.872)
|
||||
(end 58.144 -1.372)
|
||||
(stroke
|
||||
(width 1)
|
||||
(type solid)
|
||||
)
|
||||
(fill yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "ab04b3c2-a95f-408b-8db7-3f0fd7f3d877")
|
||||
)
|
||||
(fp_line
|
||||
(start 24 -3.81)
|
||||
(end 36.7 -3.81)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "B.SilkS")
|
||||
(uuid "4a3a57fe-da54-47fb-a6e1-d64563829023")
|
||||
)
|
||||
(fp_line
|
||||
(start 24 -1.27)
|
||||
(end 24 -3.81)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "B.SilkS")
|
||||
(uuid "cf12f589-67c7-4c3f-b72e-b641d34e61d8")
|
||||
)
|
||||
(fp_line
|
||||
(start 24 -1.27)
|
||||
(end 36.7 -1.27)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "B.SilkS")
|
||||
(uuid "0f6f8de4-e21c-4300-9139-286719ff6e92")
|
||||
)
|
||||
(fp_line
|
||||
(start 26.54 -1.27)
|
||||
(end 26.54 -3.81)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "B.SilkS")
|
||||
(uuid "ae87a6a7-135b-4262-916a-d0541c7baa53")
|
||||
)
|
||||
(fp_line
|
||||
(start 36.7 -1.27)
|
||||
(end 36.7 -3.81)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "B.SilkS")
|
||||
(uuid "5fc596d8-8d04-41b7-8942-7e6d25f0a0b0")
|
||||
)
|
||||
(fp_line
|
||||
(start 0 -39.04)
|
||||
(end 0 2.54)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(layer "F.CrtYd")
|
||||
(uuid "187dd031-6961-4533-a35b-6fc28403898f")
|
||||
)
|
||||
(fp_line
|
||||
(start 0 -39.04)
|
||||
(end 60 -39.04)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.CrtYd")
|
||||
(uuid "e9b5faa1-11e2-4f9b-a8be-270b9abf26ea")
|
||||
)
|
||||
(fp_line
|
||||
(start 0 2.54)
|
||||
(end 60 2.54)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.CrtYd")
|
||||
(uuid "4237a21b-0fe2-44ef-b265-71ea07f98355")
|
||||
)
|
||||
(fp_line
|
||||
(start 60 -39.04)
|
||||
(end 60 2.54)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.CrtYd")
|
||||
(uuid "0ef89fde-ae51-4ba4-b782-840c57db4561")
|
||||
)
|
||||
(fp_line
|
||||
(start 49.11 -35.27)
|
||||
(end 59.27 -35.27)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.Fab")
|
||||
(uuid "5238e886-318f-44d2-9760-fa898cef4e07")
|
||||
)
|
||||
(fp_line
|
||||
(start 49.11 -32.73)
|
||||
(end 49.11 -35.27)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.Fab")
|
||||
(uuid "45d3f4d6-48c2-4979-9232-fc1622427a2f")
|
||||
)
|
||||
(fp_line
|
||||
(start 58.635 -32.73)
|
||||
(end 49.11 -32.73)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.Fab")
|
||||
(uuid "9d410165-de66-4660-9dfb-80f41fd66f65")
|
||||
)
|
||||
(fp_line
|
||||
(start 59.27 -35.27)
|
||||
(end 59.27 -33.365)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.Fab")
|
||||
(uuid "f7c513eb-d873-4e00-abad-ca8c139bb9b1")
|
||||
)
|
||||
(fp_line
|
||||
(start 59.27 -33.365)
|
||||
(end 58.635 -32.73)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.Fab")
|
||||
(uuid "f8dc48fe-ae70-49e4-9030-c57fc1c7c2a4")
|
||||
)
|
||||
(fp_text user "IM1281C"
|
||||
(at 0 -0.254 0)
|
||||
(unlocked yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "44f32f16-aa2b-42e6-8ed0-ecea9e657d31")
|
||||
(effects
|
||||
(font
|
||||
(size 1.524 1.524)
|
||||
(thickness 0.254)
|
||||
)
|
||||
(justify left bottom)
|
||||
)
|
||||
)
|
||||
(fp_text user "CT41A"
|
||||
(at 5.08 -28.7012 0)
|
||||
(unlocked yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "5c3da85d-c779-4c37-b498-273133e18918")
|
||||
(effects
|
||||
(font
|
||||
(size 0.8 0.8)
|
||||
(thickness 0.1)
|
||||
)
|
||||
(justify left bottom)
|
||||
)
|
||||
)
|
||||
(fp_text user "PF2"
|
||||
(at 23.368 -4.064 90)
|
||||
(unlocked yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "3073fb23-de1b-47b7-afb1-7761b48b9272")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.1)
|
||||
)
|
||||
(justify left bottom)
|
||||
)
|
||||
)
|
||||
(fp_text user "GND"
|
||||
(at 26.02 -4.064 90)
|
||||
(unlocked yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "615d373a-d1cf-41d1-8d36-5c1759345378")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.1)
|
||||
)
|
||||
(justify left bottom)
|
||||
)
|
||||
)
|
||||
(fp_text user "PF1"
|
||||
(at 28.448 -4.064 90)
|
||||
(unlocked yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "edb1ab47-7d84-43e4-b74b-c47e17b27e10")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.1)
|
||||
)
|
||||
(justify left bottom)
|
||||
)
|
||||
)
|
||||
(fp_text user "CT41A"
|
||||
(at 29.58 -28.7012 0)
|
||||
(unlocked yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "041aae02-718a-4a1b-a47c-5bb212fb4860")
|
||||
(effects
|
||||
(font
|
||||
(size 0.8 0.8)
|
||||
(thickness 0.1)
|
||||
)
|
||||
(justify left bottom)
|
||||
)
|
||||
)
|
||||
(fp_text user "TX"
|
||||
(at 30.988 -4.064 90)
|
||||
(unlocked yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "6e2e8466-173f-4e27-bbfe-c57b5b5ebcf0")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.1)
|
||||
)
|
||||
(justify left bottom)
|
||||
)
|
||||
)
|
||||
(fp_text user "RX"
|
||||
(at 33.528 -4.064 90)
|
||||
(unlocked yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "584fb5c6-8140-4ff2-acb3-16eedb27e11d")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.1)
|
||||
)
|
||||
(justify left bottom)
|
||||
)
|
||||
)
|
||||
(fp_text user "VCC"
|
||||
(at 36.068 -4.064 90)
|
||||
(unlocked yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "6818cfc8-791a-472c-a418-6ebcf77fa5d8")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.1)
|
||||
)
|
||||
(justify left bottom)
|
||||
)
|
||||
)
|
||||
(fp_text user "VN"
|
||||
(at 49.53 -30.48 0)
|
||||
(unlocked yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "3c10906b-3a9e-4e32-bfa1-c9809f9eb550")
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
(thickness 0.2032)
|
||||
)
|
||||
(justify left bottom)
|
||||
)
|
||||
)
|
||||
(fp_text user "PT02A"
|
||||
(at 54.42 -12.54 270)
|
||||
(unlocked yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "dade1830-5011-44db-95ad-dc490b411276")
|
||||
(effects
|
||||
(font
|
||||
(size 0.8 0.8)
|
||||
(thickness 0.1)
|
||||
)
|
||||
(justify left bottom)
|
||||
)
|
||||
)
|
||||
(fp_text user "VL"
|
||||
(at 57.15 -30.48 0)
|
||||
(unlocked yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "03b910f1-55f3-4f81-a64e-a30f4c82d1e7")
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
(thickness 0.2032)
|
||||
)
|
||||
(justify left bottom)
|
||||
)
|
||||
)
|
||||
(pad "1" thru_hole circle
|
||||
(at 22.73 -2.54)
|
||||
(size 1.5 1.5)
|
||||
(drill 0.9)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(thermal_bridge_angle 90)
|
||||
(uuid "86890be6-a7de-4b66-ae96-3c5409d3df50")
|
||||
)
|
||||
(pad "2" thru_hole rect
|
||||
(at 25.27 -2.54)
|
||||
(size 1.5 1.5)
|
||||
(drill 0.9)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "90f51025-2439-48ef-ad23-9da54a50a6d2")
|
||||
)
|
||||
(pad "3" thru_hole circle
|
||||
(at 27.81 -2.54)
|
||||
(size 1.5 1.5)
|
||||
(drill 0.9)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(thermal_bridge_angle 90)
|
||||
(uuid "064dba03-b3e9-4d62-8a28-b2a86736ca81")
|
||||
)
|
||||
(pad "4" thru_hole circle
|
||||
(at 30.35 -2.54)
|
||||
(size 1.5 1.5)
|
||||
(drill 0.9)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(thermal_bridge_angle 90)
|
||||
(uuid "403430e4-42ce-4e23-a2ed-ab8672da2aa5")
|
||||
)
|
||||
(pad "5" thru_hole circle
|
||||
(at 32.89 -2.54)
|
||||
(size 1.5 1.5)
|
||||
(drill 0.9)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(thermal_bridge_angle 90)
|
||||
(uuid "0dc8fbe5-c9f0-423e-8c05-997d7d8e31cf")
|
||||
)
|
||||
(pad "6" thru_hole circle
|
||||
(at 35.43 -2.54)
|
||||
(size 1.5 1.5)
|
||||
(drill 0.9)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(thermal_bridge_angle 90)
|
||||
(uuid "33b80c00-0c2f-4765-ae53-8ca34e3b2aa7")
|
||||
)
|
||||
(pad "7" thru_hole rect
|
||||
(at 58 -34 270)
|
||||
(size 1.7 1.7)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "23a115d3-d41d-46e3-a837-fd6b6a7f3d73")
|
||||
)
|
||||
(pad "8" thru_hole oval
|
||||
(at 50.38 -34 270)
|
||||
(size 1.7 1.7)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "815a0210-aa7c-47fb-8b7c-00ed5da1daa1")
|
||||
)
|
||||
(pad "9" thru_hole circle
|
||||
(at 36.83 -43.18)
|
||||
(size 5.08 5.08)
|
||||
(drill 2.54)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "0b7a14ce-3569-4c43-8abf-e77ae16b0441")
|
||||
)
|
||||
(pad "10" thru_hole circle
|
||||
(at 36.83 7.62)
|
||||
(size 5.08 5.08)
|
||||
(drill 2.54)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "b9f73c87-cb2a-4888-9f5c-dc806cd4dca4")
|
||||
)
|
||||
(pad "11" thru_hole circle
|
||||
(at 12.7 -43.18)
|
||||
(size 5.08 5.08)
|
||||
(drill 2.54)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "c2f8e08e-fb5d-46ca-b685-a6e56f7f91e9")
|
||||
)
|
||||
(pad "12" thru_hole circle
|
||||
(at 12.7 7.62)
|
||||
(size 5.08 5.08)
|
||||
(drill 2.54)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "f14d7bb5-1895-4583-81f3-4bd5175ff5b7")
|
||||
)
|
||||
(embedded_fonts no)
|
||||
)
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,411 +0,0 @@
|
||||
(footprint "OLED_12864_IIC_0.96"
|
||||
(version 20241229)
|
||||
(generator "pcbnew")
|
||||
(generator_version "9.0")
|
||||
(layer "F.Cu")
|
||||
(property "Reference" "REF**"
|
||||
(at -11.5 -15.25 0)
|
||||
(unlocked yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "af33b77d-8c94-4096-b7bd-9b998bd9105e")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.1)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Value" "OLED_12864_IIC_0.96"
|
||||
(at 0 21.5 0)
|
||||
(unlocked yes)
|
||||
(layer "F.Fab")
|
||||
(uuid "8fd431c8-3a98-4a99-8f75-73a5ee95b071")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Datasheet" ""
|
||||
(at 0 0 0)
|
||||
(unlocked yes)
|
||||
(layer "F.Fab")
|
||||
(hide yes)
|
||||
(uuid "48881b68-4c1f-4225-b28e-459a51e93340")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Description" ""
|
||||
(at 0 0 0)
|
||||
(unlocked yes)
|
||||
(layer "F.Fab")
|
||||
(hide yes)
|
||||
(uuid "3dc059d6-6786-4720-80de-115a0a26e730")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(attr through_hole)
|
||||
(fp_line
|
||||
(start -13.5 -14)
|
||||
(end 13.5 -14)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "ae0d72db-ab14-4b9b-96a1-6f072bd8c6f3")
|
||||
)
|
||||
(fp_line
|
||||
(start -13.5 14)
|
||||
(end -13.5 -14)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "ccc5e632-b9f9-4b8f-b854-7446193940cf")
|
||||
)
|
||||
(fp_line
|
||||
(start -13.5 14)
|
||||
(end -7 14)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "122717f0-b086-4b5e-beee-6c3d8cfcc201")
|
||||
)
|
||||
(fp_line
|
||||
(start -7 12)
|
||||
(end -7 14)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "af3c2124-03ff-48f3-8db8-ee274e1e5582")
|
||||
)
|
||||
(fp_line
|
||||
(start -7 12)
|
||||
(end 7 12)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "cf94e387-430a-4efe-960e-04510dce6763")
|
||||
)
|
||||
(fp_line
|
||||
(start 7 12)
|
||||
(end 7 14)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "335ee4bc-2f93-41fc-9a25-a9d9ba1d3f44")
|
||||
)
|
||||
(fp_line
|
||||
(start 13.5 -14)
|
||||
(end 13.5 14)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "b8b5accb-360c-48da-8602-c066e3e5f1bd")
|
||||
)
|
||||
(fp_line
|
||||
(start 13.5 14)
|
||||
(end 7 14)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "2775154a-79dd-4727-9868-e919f698cee8")
|
||||
)
|
||||
(fp_rect
|
||||
(start -13 -9.8)
|
||||
(end 13 9.8)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type default)
|
||||
)
|
||||
(fill no)
|
||||
(layer "F.SilkS")
|
||||
(uuid "fddccd1e-9d3a-4776-b2f7-d8c3fed42185")
|
||||
)
|
||||
(fp_line
|
||||
(start -5.15 -13.6)
|
||||
(end -2.54 -13.6)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "B.SilkS")
|
||||
(uuid "69696b24-f6aa-4d8e-ac22-1bcdee3d4c7e")
|
||||
)
|
||||
(fp_line
|
||||
(start -5.15 -10.94)
|
||||
(end -5.15 -13.6)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "B.SilkS")
|
||||
(uuid "aaf9174c-36a1-4512-9f7b-8cfb649faba2")
|
||||
)
|
||||
(fp_line
|
||||
(start -5.15 -10.94)
|
||||
(end -2.54 -10.94)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "B.SilkS")
|
||||
(uuid "4f4861d2-9e9c-42ff-9edd-cb7dcc7b908e")
|
||||
)
|
||||
(fp_line
|
||||
(start -2.54 -13.6)
|
||||
(end 5.14 -13.6)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "B.SilkS")
|
||||
(uuid "6c071c66-3042-4496-9960-2f90659dcd59")
|
||||
)
|
||||
(fp_line
|
||||
(start -2.54 -10.94)
|
||||
(end -2.54 -13.6)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "B.SilkS")
|
||||
(uuid "77f583fd-03e8-420e-ac93-fba9481b849c")
|
||||
)
|
||||
(fp_line
|
||||
(start -2.54 -10.94)
|
||||
(end 5.14 -10.94)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "B.SilkS")
|
||||
(uuid "c6f45abf-0ee7-466d-8aaf-cc86737f2eb2")
|
||||
)
|
||||
(fp_line
|
||||
(start 5.14 -10.94)
|
||||
(end 5.14 -13.6)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "B.SilkS")
|
||||
(uuid "39acec8c-0bdc-40a3-b7d8-b267fc8dc174")
|
||||
)
|
||||
(fp_poly
|
||||
(pts
|
||||
(xy -13.5 -14) (xy 13.5 -14) (xy 13.5 14) (xy -13.5 14)
|
||||
)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(fill no)
|
||||
(layer "F.CrtYd")
|
||||
(uuid "92762d21-e25c-4d41-9799-e2f30424f5fc")
|
||||
)
|
||||
(fp_line
|
||||
(start -5.08 -12.905)
|
||||
(end -4.445 -13.54)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.Fab")
|
||||
(uuid "4d9fd298-bd81-4ae0-a01f-d17b1dc3e1d9")
|
||||
)
|
||||
(fp_line
|
||||
(start -5.08 -11)
|
||||
(end -5.08 -12.905)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.Fab")
|
||||
(uuid "68f631a1-0447-4d2d-985a-fbb28ea0e1e3")
|
||||
)
|
||||
(fp_line
|
||||
(start -4.445 -13.54)
|
||||
(end 5.08 -13.54)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.Fab")
|
||||
(uuid "b5454a7b-69f4-4bbb-bfc0-9570e9908283")
|
||||
)
|
||||
(fp_line
|
||||
(start 5.08 -13.54)
|
||||
(end 5.08 -11)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.Fab")
|
||||
(uuid "d613c0ae-76d6-42b6-8152-1c88bcfe08e7")
|
||||
)
|
||||
(fp_line
|
||||
(start 5.08 -11)
|
||||
(end -5.08 -11)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.Fab")
|
||||
(uuid "864ff6c6-d15e-4edf-9a7d-bd899e7ca262")
|
||||
)
|
||||
(fp_text user "SDA"
|
||||
(at 2.75 -10 0)
|
||||
(unlocked yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "3fda5818-66c7-4113-bf97-1db6c0e9b215")
|
||||
(effects
|
||||
(font
|
||||
(size 0.8 0.8)
|
||||
(thickness 0.1)
|
||||
)
|
||||
(justify left bottom)
|
||||
)
|
||||
)
|
||||
(fp_text user "OLED 0.96\" I2C"
|
||||
(at 0 0 0)
|
||||
(unlocked yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "79f6b89a-cd30-446a-a8be-cb1551c9ae04")
|
||||
(effects
|
||||
(font
|
||||
(size 1.2 1.2)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(fp_text user "SCL"
|
||||
(at 0.2 -10 0)
|
||||
(unlocked yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "7ca97dde-957a-4a7a-957a-68f8066ed8a0")
|
||||
(effects
|
||||
(font
|
||||
(size 0.8 0.8)
|
||||
(thickness 0.1)
|
||||
)
|
||||
(justify left bottom)
|
||||
)
|
||||
)
|
||||
(fp_text user "GND"
|
||||
(at -5 -10 0)
|
||||
(unlocked yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "961ba907-6869-4e07-b15d-308130e5e273")
|
||||
(effects
|
||||
(font
|
||||
(size 0.8 0.8)
|
||||
(thickness 0.1)
|
||||
)
|
||||
(justify left bottom)
|
||||
)
|
||||
)
|
||||
(fp_text user "VCC"
|
||||
(at -2.4 -10 0)
|
||||
(unlocked yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "c0b90d02-b352-4349-94da-f01bb1960ab4")
|
||||
(effects
|
||||
(font
|
||||
(size 0.8 0.8)
|
||||
(thickness 0.1)
|
||||
)
|
||||
(justify left bottom)
|
||||
)
|
||||
)
|
||||
(fp_text user "${REFERENCE}"
|
||||
(at 0 23.25 0)
|
||||
(unlocked yes)
|
||||
(layer "F.Fab")
|
||||
(uuid "4f4e0e75-cd5f-4db9-abd1-4e27e9556cf4")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pad "1" thru_hole rect
|
||||
(at -3.81 -12.27 90)
|
||||
(size 1.7 1.7)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "c9bf91c5-5653-44db-87e4-68bfca977bef")
|
||||
)
|
||||
(pad "2" thru_hole oval
|
||||
(at -1.27 -12.27 90)
|
||||
(size 1.7 1.7)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "d69c56a9-7c14-4253-8756-c8a5fad7f14d")
|
||||
)
|
||||
(pad "3" thru_hole oval
|
||||
(at 1.27 -12.27 90)
|
||||
(size 1.7 1.7)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "4ec0e2e9-5562-4d23-b34c-02fbebf35ec1")
|
||||
)
|
||||
(pad "4" thru_hole oval
|
||||
(at 3.81 -12.27 90)
|
||||
(size 1.7 1.7)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "d3318c3f-0bee-4e0e-b480-d085712a2f2d")
|
||||
)
|
||||
(embedded_fonts no)
|
||||
(model "${USER_3DMODEL}/OLED_IIC_12864_0.96.step"
|
||||
(offset
|
||||
(xyz 34.3 5 12.1)
|
||||
)
|
||||
(scale
|
||||
(xyz 1 1 1)
|
||||
)
|
||||
(rotate
|
||||
(xyz -0 -0 -0)
|
||||
)
|
||||
)
|
||||
(model "${KICAD9_3DMODEL_DIR}/Connector_PinSocket_2.54mm.3dshapes/PinSocket_1x04_P2.54mm_Vertical.step"
|
||||
(offset
|
||||
(xyz -3.8 12.27 0)
|
||||
)
|
||||
(scale
|
||||
(xyz 1 1 1)
|
||||
)
|
||||
(rotate
|
||||
(xyz -0 -0 -90)
|
||||
)
|
||||
)
|
||||
)
|
||||
@@ -1,539 +0,0 @@
|
||||
(footprint "RFID_RC522"
|
||||
(version 20241229)
|
||||
(generator "pcbnew")
|
||||
(generator_version "9.0")
|
||||
(layer "F.Cu")
|
||||
(property "Reference" "REF**"
|
||||
(at -17.78 -31.115 0)
|
||||
(unlocked yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "035ddb91-0658-4af8-a13d-ddf98c50dd59")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.1)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Value" "RFID_RC522"
|
||||
(at 0 1 0)
|
||||
(unlocked yes)
|
||||
(layer "F.Fab")
|
||||
(uuid "bdaf21c6-09ad-4d7b-af6d-14b5e5bd6124")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Datasheet" ""
|
||||
(at -11.96 -16.905 0)
|
||||
(unlocked yes)
|
||||
(layer "F.Fab")
|
||||
(hide yes)
|
||||
(uuid "fbf13de2-2bc9-4731-bc02-81852ba04089")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Description" ""
|
||||
(at -11.96 -16.905 0)
|
||||
(unlocked yes)
|
||||
(layer "F.Fab")
|
||||
(hide yes)
|
||||
(uuid "241103cd-c46c-412f-b13d-038c95d8d7de")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(attr through_hole)
|
||||
(fp_line
|
||||
(start -20 -30)
|
||||
(end -20 30)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "e6237026-b310-4e88-8421-6ec576006fa5")
|
||||
)
|
||||
(fp_line
|
||||
(start -20 -30)
|
||||
(end 20 -30)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "88b5eea1-f2a5-436d-9a1a-1f4159943aa5")
|
||||
)
|
||||
(fp_line
|
||||
(start -10.22 -29.778)
|
||||
(end -10.22 -27.118)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "6b72374f-07ac-4750-a04f-f481fd92776b")
|
||||
)
|
||||
(fp_line
|
||||
(start 7.62 -29.778)
|
||||
(end -10.22 -29.778)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "5bb5a24f-9b82-4b78-80b8-c959c6662e0e")
|
||||
)
|
||||
(fp_line
|
||||
(start 7.62 -29.778)
|
||||
(end 7.62 -27.118)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "52559693-3d17-4632-bccb-d96e8fb2139a")
|
||||
)
|
||||
(fp_line
|
||||
(start 7.62 -27.118)
|
||||
(end -10.22 -27.118)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "d4989a4e-687f-4aca-8fb4-7cbcf4b237c4")
|
||||
)
|
||||
(fp_line
|
||||
(start 10.22 -28.448)
|
||||
(end 10.22 -27.118)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "6d15b2fc-a00c-46c8-b8a3-b28415809691")
|
||||
)
|
||||
(fp_line
|
||||
(start 10.22 -27.118)
|
||||
(end 8.89 -27.118)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "09c268cc-6a21-4bb5-877a-4766bd226f33")
|
||||
)
|
||||
(fp_line
|
||||
(start 20 30)
|
||||
(end -20 30)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "b32d60ed-c339-4df3-91e0-16a871ee60a6")
|
||||
)
|
||||
(fp_line
|
||||
(start 20 30)
|
||||
(end 20 -30)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "a1d0659d-8ea4-43a3-9a46-b0f0d2f5456a")
|
||||
)
|
||||
(fp_arc
|
||||
(start -7.071068 17.071068)
|
||||
(mid -10 10)
|
||||
(end -7.071068 2.928932)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "8578fffb-ef47-4784-9c4c-806d3aa88b3c")
|
||||
)
|
||||
(fp_arc
|
||||
(start -5.656854 15.656854)
|
||||
(mid -8 10)
|
||||
(end -5.656854 4.343146)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "f34f2822-b895-4001-966f-481bc2b9035a")
|
||||
)
|
||||
(fp_arc
|
||||
(start -4.242641 14.242641)
|
||||
(mid -6 10)
|
||||
(end -4.242641 5.757359)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "7c15d5be-d301-4e69-8c9d-24406e81868f")
|
||||
)
|
||||
(fp_arc
|
||||
(start -2.828427 12.828427)
|
||||
(mid -4 10)
|
||||
(end -2.828427 7.171573)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "bd6ba14e-4b2e-4def-b8ed-405f80b4e971")
|
||||
)
|
||||
(fp_arc
|
||||
(start -1.414214 11.414214)
|
||||
(mid -2.000001 10)
|
||||
(end -1.414214 8.585786)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "57bf66af-78d5-4cbf-86fe-444d453c94a2")
|
||||
)
|
||||
(fp_arc
|
||||
(start 1.414214 8.585786)
|
||||
(mid 2.000001 10)
|
||||
(end 1.414214 11.414214)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "09310083-2e12-4251-a35b-c72d635080c6")
|
||||
)
|
||||
(fp_arc
|
||||
(start 2.828427 7.171573)
|
||||
(mid 4 10)
|
||||
(end 2.828427 12.828427)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "6cbbce2c-5ab1-40c7-bb6d-779c0116d23a")
|
||||
)
|
||||
(fp_arc
|
||||
(start 4.242641 5.757359)
|
||||
(mid 6 10)
|
||||
(end 4.242641 14.242641)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "49d9b195-3487-428a-b075-de004f698911")
|
||||
)
|
||||
(fp_arc
|
||||
(start 5.656854 4.343146)
|
||||
(mid 8 10)
|
||||
(end 5.656854 15.656854)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "8df4b8dc-eeed-4a84-b9ae-28957541def9")
|
||||
)
|
||||
(fp_arc
|
||||
(start 7.071068 2.928932)
|
||||
(mid 10 10)
|
||||
(end 7.071068 17.071068)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "d740483c-ea02-4ba0-814b-fdf2fdbc46eb")
|
||||
)
|
||||
(fp_circle
|
||||
(center 0 10)
|
||||
(end 0 10.5)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type default)
|
||||
)
|
||||
(fill yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "a6dcba14-d8ef-41cd-9c7f-1b4d3e18ff78")
|
||||
)
|
||||
(fp_circle
|
||||
(center -17 -15)
|
||||
(end -13.8 -15)
|
||||
(stroke
|
||||
(width 0.15)
|
||||
(type solid)
|
||||
)
|
||||
(fill no)
|
||||
(layer "Cmts.User")
|
||||
(uuid "b642eaac-74c7-4556-a9a6-6cf18824c1c2")
|
||||
)
|
||||
(fp_circle
|
||||
(center -12.5 22.5)
|
||||
(end -9.3 22.5)
|
||||
(stroke
|
||||
(width 0.15)
|
||||
(type solid)
|
||||
)
|
||||
(fill no)
|
||||
(layer "Cmts.User")
|
||||
(uuid "8525d831-7618-478b-82f0-ab45cf567e56")
|
||||
)
|
||||
(fp_circle
|
||||
(center 12.5 22.5)
|
||||
(end 9.3 22.5)
|
||||
(stroke
|
||||
(width 0.15)
|
||||
(type solid)
|
||||
)
|
||||
(fill no)
|
||||
(layer "Cmts.User")
|
||||
(uuid "510256af-b6ce-4b4e-9fb4-aa6aaaf399ec")
|
||||
)
|
||||
(fp_circle
|
||||
(center 17 -15)
|
||||
(end 13.8 -15)
|
||||
(stroke
|
||||
(width 0.15)
|
||||
(type solid)
|
||||
)
|
||||
(fill no)
|
||||
(layer "Cmts.User")
|
||||
(uuid "fbc4b471-73d2-47c0-bfd5-b846a1224037")
|
||||
)
|
||||
(fp_line
|
||||
(start -20 -30)
|
||||
(end -20 30)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.CrtYd")
|
||||
(uuid "8fcad557-4bc8-4dcd-bd4a-43ee8d455dce")
|
||||
)
|
||||
(fp_line
|
||||
(start -20 -30)
|
||||
(end 20 -30)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.CrtYd")
|
||||
(uuid "b4903fd7-07b5-4ee4-b053-c890ae6dd38b")
|
||||
)
|
||||
(fp_line
|
||||
(start 20 30)
|
||||
(end -20 30)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.CrtYd")
|
||||
(uuid "e1bb6cc2-313e-477f-ae8d-8eec069d5916")
|
||||
)
|
||||
(fp_line
|
||||
(start 20 30)
|
||||
(end 20 -30)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.CrtYd")
|
||||
(uuid "eca65d4b-d036-46e5-9f25-5b7ab1a9d963")
|
||||
)
|
||||
(fp_line
|
||||
(start -10.16 -29.718)
|
||||
(end 10.16 -29.718)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.Fab")
|
||||
(uuid "971902f7-cf22-4bfc-9ced-ad6d260896fa")
|
||||
)
|
||||
(fp_line
|
||||
(start -10.16 -27.178)
|
||||
(end -10.16 -29.718)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.Fab")
|
||||
(uuid "968787b4-0331-4283-9c50-9faa5874b98f")
|
||||
)
|
||||
(fp_line
|
||||
(start 9.525 -27.178)
|
||||
(end -10.16 -27.178)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.Fab")
|
||||
(uuid "ef44f9a6-d2fc-4350-a34a-3db8c1ee3397")
|
||||
)
|
||||
(fp_line
|
||||
(start 10.16 -29.718)
|
||||
(end 10.16 -27.813)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.Fab")
|
||||
(uuid "68a7f4b4-ebc4-45fc-bfec-eae79f12dde8")
|
||||
)
|
||||
(fp_line
|
||||
(start 10.16 -27.813)
|
||||
(end 9.525 -27.178)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.Fab")
|
||||
(uuid "fb3f778f-63b2-4bf5-bc2c-9319ba519032")
|
||||
)
|
||||
(fp_text user "${REFERENCE}"
|
||||
(at 0 2.5 0)
|
||||
(unlocked yes)
|
||||
(layer "F.Fab")
|
||||
(uuid "8075237d-f9d2-4ce9-a3ec-b528dc0b75c7")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pad "" np_thru_hole circle
|
||||
(at -17 -15)
|
||||
(size 3.2 3.2)
|
||||
(drill 3.2)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(uuid "8909b979-bd99-4d7b-bbf5-2299c67efb75")
|
||||
)
|
||||
(pad "" np_thru_hole circle
|
||||
(at -12.5 22.5)
|
||||
(size 3.2 3.2)
|
||||
(drill 3.2)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(uuid "2b857417-f652-4f71-8410-98a1bc79c69e")
|
||||
)
|
||||
(pad "" np_thru_hole circle
|
||||
(at 12.5 22.5)
|
||||
(size 3.2 3.2)
|
||||
(drill 3.2)
|
||||
(layers "F&B.Cu" "*.Mask")
|
||||
(uuid "5c932b8d-39bb-4719-8d18-66dbdc856fe9")
|
||||
)
|
||||
(pad "" np_thru_hole circle
|
||||
(at 17 -15 180)
|
||||
(size 3.2 3.2)
|
||||
(drill 3.2)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(uuid "7cd8eca7-735a-492a-966d-9e65ade64636")
|
||||
)
|
||||
(pad "1" thru_hole rect
|
||||
(at 8.89 -28.448 270)
|
||||
(size 1.7 1.7)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "ca26e70b-c9c6-4a63-99e4-6499b940280b")
|
||||
)
|
||||
(pad "2" thru_hole oval
|
||||
(at 6.35 -28.448 270)
|
||||
(size 1.7 1.7)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "1e28318b-1616-420e-b6b5-c097c3c3b2c5")
|
||||
)
|
||||
(pad "3" thru_hole oval
|
||||
(at 3.81 -28.448 270)
|
||||
(size 1.7 1.7)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "6c2a74e8-8a13-4fb7-8373-6f39c7bb3a7d")
|
||||
)
|
||||
(pad "4" thru_hole oval
|
||||
(at 1.27 -28.448 270)
|
||||
(size 1.7 1.7)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "ffab03c8-748b-4b64-a156-8c4b69df4018")
|
||||
)
|
||||
(pad "5" thru_hole oval
|
||||
(at -1.27 -28.448 270)
|
||||
(size 1.7 1.7)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "bc7ac3a8-e2a5-4bdf-82a2-a7a557554a32")
|
||||
)
|
||||
(pad "6" thru_hole oval
|
||||
(at -3.81 -28.448 270)
|
||||
(size 1.7 1.7)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "9881b1dc-95ce-4060-9e8f-ebd1e6ede0a4")
|
||||
)
|
||||
(pad "7" thru_hole oval
|
||||
(at -6.35 -28.448 270)
|
||||
(size 1.7 1.7)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "5cc5f140-2162-4331-914f-183a585f7337")
|
||||
)
|
||||
(pad "8" thru_hole oval
|
||||
(at -8.89 -28.448 270)
|
||||
(size 1.7 1.7)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "ff81d216-d0af-4b15-b912-79a791e81094")
|
||||
)
|
||||
(embedded_fonts no)
|
||||
(model "${USER_3DMODEL}/RFID-RC522.STEP"
|
||||
(offset
|
||||
(xyz -4.12 -0.1 -50.9)
|
||||
)
|
||||
(scale
|
||||
(xyz 1 1 1)
|
||||
)
|
||||
(rotate
|
||||
(xyz -0 -0 -0)
|
||||
)
|
||||
)
|
||||
(model "${KICAD9_3DMODEL_DIR}/Connector_PinSocket_2.54mm.3dshapes/PinSocket_1x08_P2.54mm_Vertical.step"
|
||||
(offset
|
||||
(xyz -8.9 28.45 0)
|
||||
)
|
||||
(scale
|
||||
(xyz 1 1 1)
|
||||
)
|
||||
(rotate
|
||||
(xyz -0 -0 -90)
|
||||
)
|
||||
)
|
||||
)
|
||||
@@ -1,463 +0,0 @@
|
||||
(footprint "Relay_JQC-3FF-005-1Z"
|
||||
(version 20241229)
|
||||
(generator "pcbnew")
|
||||
(generator_version "9.0")
|
||||
(layer "F.Cu")
|
||||
(descr "Hongfa subminature high power latching SPDT relay 5, 6, 9, 12, 18, 24, 48VDC. 10A switching current, Form-B https://www.generationrobots.com/media/JQC-3FF-v1.pdf")
|
||||
(tags "relays Hongmei 1-coil")
|
||||
(property "Reference" "REF**"
|
||||
(at -2 -3 0)
|
||||
(layer "F.SilkS")
|
||||
(uuid "fd0f43dc-deff-461c-bd31-27a3beb9413e")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Value" "Relay_JQC-3FF-005-1Z"
|
||||
(at 7 -5 0)
|
||||
(layer "F.Fab")
|
||||
(uuid "d7e8705c-9d76-44dd-8194-796951704bf6")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Datasheet" ""
|
||||
(at 7 15.5 0)
|
||||
(unlocked yes)
|
||||
(layer "F.Fab")
|
||||
(hide yes)
|
||||
(uuid "aab30ce8-a74c-41bf-8f45-7d4e93216534")
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Description" ""
|
||||
(at 0 12 0)
|
||||
(unlocked yes)
|
||||
(layer "F.Fab")
|
||||
(hide yes)
|
||||
(uuid "dec044f5-0ced-40cf-b2ed-80bb1a7a2ac8")
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(attr through_hole)
|
||||
(fp_line
|
||||
(start -4 12.1)
|
||||
(end -4 14.3)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "99171971-3c81-4a22-8c9c-48d77f0c8a8d")
|
||||
)
|
||||
(fp_line
|
||||
(start -4 14.3)
|
||||
(end -1.8 14.3)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "131830d3-6fe5-4319-9e20-b691e40805d5")
|
||||
)
|
||||
(fp_line
|
||||
(start -3.6 -1.9)
|
||||
(end -3.6 13.9)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "838f0a8f-7324-4280-a908-878a6a98823c")
|
||||
)
|
||||
(fp_line
|
||||
(start -3.6 13.9)
|
||||
(end 15.8 13.9)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "33ba6bb8-42b1-48d9-9243-e6a0b90f186c")
|
||||
)
|
||||
(fp_line
|
||||
(start -0.4 6)
|
||||
(end 2.4 6)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "474a76b7-47e3-4bec-be4e-cbebec304983")
|
||||
)
|
||||
(fp_line
|
||||
(start 2.9 3.95)
|
||||
(end 2.9 7.75)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "d2897046-4386-4b1b-a073-011aa31676c8")
|
||||
)
|
||||
(fp_line
|
||||
(start 2.9 7.75)
|
||||
(end 4.9 7.75)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "82f1f9ae-930a-4ff9-9ac3-be26bb7a82ab")
|
||||
)
|
||||
(fp_line
|
||||
(start 3.9 0)
|
||||
(end 1.4 0)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "d8ce081b-29d4-4d4b-998e-c8f7afb2d808")
|
||||
)
|
||||
(fp_line
|
||||
(start 3.9 3.95)
|
||||
(end 3.9 0)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type default)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "3bd94a4b-7a31-42fc-942b-d9505c30b9d6")
|
||||
)
|
||||
(fp_line
|
||||
(start 3.9 7.75)
|
||||
(end 3.9 12)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type default)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "28a818ea-c007-423f-914f-d6a09612d188")
|
||||
)
|
||||
(fp_line
|
||||
(start 3.9 12)
|
||||
(end 1.4 12)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "4a09816a-4fb2-4528-b623-29029859f318")
|
||||
)
|
||||
(fp_line
|
||||
(start 4.9 3.95)
|
||||
(end 2.9 3.95)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "df645c7c-d2ae-4cd0-8cf3-fef8cfad0162")
|
||||
)
|
||||
(fp_line
|
||||
(start 4.9 5.55)
|
||||
(end 2.9 6.55)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "67b18a82-53b1-4474-b6fb-34be6eee9015")
|
||||
)
|
||||
(fp_line
|
||||
(start 4.9 7.75)
|
||||
(end 4.9 3.95)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "378dc484-e631-4ddf-938d-ff1a87e5de4d")
|
||||
)
|
||||
(fp_line
|
||||
(start 6.4 6)
|
||||
(end 5.3 6)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type default)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "e7ef2ce8-8d9f-4a16-b154-cf68ce65a91d")
|
||||
)
|
||||
(fp_line
|
||||
(start 6.4 6)
|
||||
(end 8.2 4.2)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "43dab8e3-dfa6-48de-84fd-2ee408ba2eff")
|
||||
)
|
||||
(fp_line
|
||||
(start 8 2.8)
|
||||
(end 8 4)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "f4eb66b6-8353-481e-95ae-ecfca6372f23")
|
||||
)
|
||||
(fp_line
|
||||
(start 8 2.8)
|
||||
(end 12.2 2.8)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "0597be12-47d4-46ae-bcf7-0440b41a86a4")
|
||||
)
|
||||
(fp_line
|
||||
(start 8 9.2)
|
||||
(end 8 8)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "abf38c4f-669e-40a0-b930-a731d8c37b33")
|
||||
)
|
||||
(fp_line
|
||||
(start 12.2 1.6)
|
||||
(end 12.2 2.8)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "24276916-5336-43e6-a7db-94230dc5909b")
|
||||
)
|
||||
(fp_line
|
||||
(start 12.2 9.2)
|
||||
(end 8 9.2)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "07ccb6f5-ab53-4d0e-8414-7bbc521a2b1b")
|
||||
)
|
||||
(fp_line
|
||||
(start 12.2 10.4)
|
||||
(end 12.2 9.2)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "4aadd050-76f0-4b35-a902-75be48d645b6")
|
||||
)
|
||||
(fp_line
|
||||
(start 15.8 -1.9)
|
||||
(end -3.6 -1.9)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "939d5683-2a43-4e05-8e01-ae7ac09576a4")
|
||||
)
|
||||
(fp_line
|
||||
(start 15.8 13.9)
|
||||
(end 15.8 -1.9)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "bc5f1f15-fa5d-4a4f-a05c-67fe3aef8a12")
|
||||
)
|
||||
(fp_line
|
||||
(start -3.8 -2.1)
|
||||
(end -3.8 14.1)
|
||||
(stroke
|
||||
(width 0.05)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.CrtYd")
|
||||
(uuid "f8f73ccd-07e6-4407-941e-f386d4134e00")
|
||||
)
|
||||
(fp_line
|
||||
(start -3.8 14.1)
|
||||
(end 16 14.1)
|
||||
(stroke
|
||||
(width 0.05)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.CrtYd")
|
||||
(uuid "87e640b1-c99c-41fa-b7b0-8ebd0d6ef2c8")
|
||||
)
|
||||
(fp_line
|
||||
(start 16 -2.1)
|
||||
(end -3.8 -2.1)
|
||||
(stroke
|
||||
(width 0.05)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.CrtYd")
|
||||
(uuid "775bf8b8-bac0-42d6-9b9f-ab6b36180b4d")
|
||||
)
|
||||
(fp_line
|
||||
(start 16 14.1)
|
||||
(end 16 -2.1)
|
||||
(stroke
|
||||
(width 0.05)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.CrtYd")
|
||||
(uuid "7b717307-0883-4ef7-9d76-e0cc361cf439")
|
||||
)
|
||||
(fp_line
|
||||
(start -3.4 -1.7)
|
||||
(end -3.4 12.7)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.Fab")
|
||||
(uuid "4bacdf74-fc4f-48ab-a7ca-0e65c4803bfe")
|
||||
)
|
||||
(fp_line
|
||||
(start -3.4 12.7)
|
||||
(end -2.4 13.7)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.Fab")
|
||||
(uuid "f06c9a94-b8cc-49fc-ae73-3cc3b533bacf")
|
||||
)
|
||||
(fp_line
|
||||
(start -2.4 13.7)
|
||||
(end 15.6 13.7)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.Fab")
|
||||
(uuid "0009184d-aa19-4312-953e-b182713505da")
|
||||
)
|
||||
(fp_line
|
||||
(start 15.6 -1.7)
|
||||
(end -3.4 -1.7)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.Fab")
|
||||
(uuid "38e34458-de7d-421f-a0c5-a3f045379dc2")
|
||||
)
|
||||
(fp_line
|
||||
(start 15.6 13.7)
|
||||
(end 15.6 -1.7)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.Fab")
|
||||
(uuid "85c7b886-f11a-4157-aaad-c93ebe925452")
|
||||
)
|
||||
(fp_text user "${REFERENCE}"
|
||||
(at 6.2 6 0)
|
||||
(layer "F.Fab")
|
||||
(uuid "af70861d-430d-475b-86c5-b944e80520a7")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pad "11" thru_hole circle
|
||||
(at -2 6)
|
||||
(size 2.5 2.5)
|
||||
(drill 1.3)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "33d00e72-2fd6-47c4-baa1-38067895fe89")
|
||||
)
|
||||
(pad "12" thru_hole circle
|
||||
(at 12.2 0)
|
||||
(size 2.5 2.5)
|
||||
(drill 1.3)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "d832323f-a6d3-460a-abbc-3df3880e92e2")
|
||||
)
|
||||
(pad "14" thru_hole circle
|
||||
(at 12.2 12)
|
||||
(size 2.5 2.5)
|
||||
(drill 1.3)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "e5f366d2-b01f-461d-ba35-ae4ccaa55bc8")
|
||||
)
|
||||
(pad "A1" thru_hole roundrect
|
||||
(at 0 0)
|
||||
(size 2.5 2.5)
|
||||
(drill 1.3)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(roundrect_rratio 0.1)
|
||||
(uuid "36a20b37-5997-41a5-a8b2-8ca4b6199d3a")
|
||||
)
|
||||
(pad "A2" thru_hole circle
|
||||
(at 0 12)
|
||||
(size 2.5 2.5)
|
||||
(drill 1.3)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "774f9c67-df5c-4f55-b385-72e4ef19a931")
|
||||
)
|
||||
(embedded_fonts no)
|
||||
(model "${KICAD9_3DMODEL_DIR}/Relay_THT.3dshapes/Relay_SPDT_Hongfa_JQC-3FF_0XX-1Z.wrl"
|
||||
(hide yes)
|
||||
(offset
|
||||
(xyz 0 0 0)
|
||||
)
|
||||
(scale
|
||||
(xyz 1 1 1)
|
||||
)
|
||||
(rotate
|
||||
(xyz 0 0 0)
|
||||
)
|
||||
)
|
||||
(model "${USER_3DMODEL}/JQC-3FF-005-1Z.step"
|
||||
(offset
|
||||
(xyz 5.12 -6 0)
|
||||
)
|
||||
(scale
|
||||
(xyz 1 1 1)
|
||||
)
|
||||
(rotate
|
||||
(xyz -0 -0 -0)
|
||||
)
|
||||
)
|
||||
)
|
||||
@@ -1,622 +0,0 @@
|
||||
(footprint "STM32F103C8T6 Blue Pill"
|
||||
(version 20241229)
|
||||
(generator "pcbnew")
|
||||
(generator_version "9.0")
|
||||
(layer "F.Cu")
|
||||
(property "Reference" "REF**"
|
||||
(at -27 -12.6 0)
|
||||
(layer "F.SilkS")
|
||||
(uuid "01ff5d8f-706c-4b44-8185-d8a365c083ee")
|
||||
(effects
|
||||
(font
|
||||
(size 1.143 1.143)
|
||||
(thickness 0.152)
|
||||
)
|
||||
(justify left)
|
||||
)
|
||||
)
|
||||
(property "Value" "STM32F103C8T6 Blue Pill"
|
||||
(at -0.254 -13.462 0)
|
||||
(layer "F.Fab")
|
||||
(hide yes)
|
||||
(uuid "9d1b79e9-7a3c-4da4-9535-1e565ed91a56")
|
||||
(effects
|
||||
(font
|
||||
(size 1.143 1.143)
|
||||
(thickness 0.152)
|
||||
)
|
||||
(justify left)
|
||||
)
|
||||
)
|
||||
(property "Datasheet" ""
|
||||
(at 0 0 0)
|
||||
(layer "F.Fab")
|
||||
(hide yes)
|
||||
(uuid "d6ba3252-d702-4c1b-b346-f8ba5a2f2157")
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Description" ""
|
||||
(at 0 0 0)
|
||||
(layer "F.Fab")
|
||||
(hide yes)
|
||||
(uuid "b51ab3db-2c14-4c1e-a736-b072dcafa1eb")
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(attr through_hole)
|
||||
(fp_line
|
||||
(start -26.67 -11.43)
|
||||
(end -26.67 11.43)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "ed1c9a5e-bf23-47c6-b244-f12c627bb4a0")
|
||||
)
|
||||
(fp_line
|
||||
(start -26.67 -11.43)
|
||||
(end 26.67 -11.43)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "6857faba-5e2f-4416-a8f8-7bef1a64bf3f")
|
||||
)
|
||||
(fp_line
|
||||
(start -26.67 5.945)
|
||||
(end -25.5 4.775)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "3a5d92bc-ea81-498a-81e2-8dadb72fe79e")
|
||||
)
|
||||
(fp_line
|
||||
(start -25.5 -4.798)
|
||||
(end -26.67 -5.968)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "759752cd-f9a9-4cf5-952e-6016ffc4af4d")
|
||||
)
|
||||
(fp_line
|
||||
(start -25.5 -4)
|
||||
(end -25.5 -4.798)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "07267a24-18e0-49e1-96d5-ec1a306e1678")
|
||||
)
|
||||
(fp_line
|
||||
(start -25.5 4.775)
|
||||
(end -25.5 -4)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "b66466ce-1902-4222-ab3c-eeac88f52358")
|
||||
)
|
||||
(fp_line
|
||||
(start -3.889087 0)
|
||||
(end 0 -3.889087)
|
||||
(stroke
|
||||
(width 0.2)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "a397b36d-12e9-4632-adeb-739ee9a9df61")
|
||||
)
|
||||
(fp_line
|
||||
(start -3.889087 0)
|
||||
(end 0 3.889087)
|
||||
(stroke
|
||||
(width 0.2)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "42da9ee5-ab35-412a-b247-6d7f8b8e11fb")
|
||||
)
|
||||
(fp_line
|
||||
(start 3.889087 0)
|
||||
(end 0 -3.889087)
|
||||
(stroke
|
||||
(width 0.2)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "13b10686-1ada-4a2f-99a9-6afa28cd682e")
|
||||
)
|
||||
(fp_line
|
||||
(start 3.889087 0)
|
||||
(end 0 3.889087)
|
||||
(stroke
|
||||
(width 0.2)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "71864ecf-a444-48cc-900f-358fd8c2bf49")
|
||||
)
|
||||
(fp_line
|
||||
(start 22 -6)
|
||||
(end 24 -6)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "acd8e159-6bae-4311-b013-63bfa619c235")
|
||||
)
|
||||
(fp_line
|
||||
(start 22 6)
|
||||
(end 22 -6)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "a0573afd-0d4b-4e75-a249-c8a9b78399c2")
|
||||
)
|
||||
(fp_line
|
||||
(start 24 -6)
|
||||
(end 24 6)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "67aa4be3-3951-464f-98d7-39556a55ca98")
|
||||
)
|
||||
(fp_line
|
||||
(start 24 6)
|
||||
(end 22 6)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "7396e575-0ca9-4dac-a895-01f8349d267c")
|
||||
)
|
||||
(fp_line
|
||||
(start 26.67 -11.43)
|
||||
(end 26.67 11.43)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "821817f9-d895-4965-9974-f3fe1d27ae6b")
|
||||
)
|
||||
(fp_line
|
||||
(start 26.67 11.43)
|
||||
(end -26.67 11.43)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "1e1d0244-bd68-4192-a8af-7d058e875270")
|
||||
)
|
||||
(fp_poly
|
||||
(pts
|
||||
(xy -26.67 -5.968) (xy -25.5 -4.798) (xy -25.5 4.775) (xy -26.67 5.945)
|
||||
)
|
||||
(stroke
|
||||
(width 0)
|
||||
(type solid)
|
||||
)
|
||||
(fill yes)
|
||||
(layer "Cmts.User")
|
||||
(uuid "6fdf45d9-e14f-4567-899f-87bf022d8bf4")
|
||||
)
|
||||
(fp_line
|
||||
(start -26.67 -11.43)
|
||||
(end -26.67 11.43)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.CrtYd")
|
||||
(uuid "3a129635-5a57-4060-8196-bdd6e142b284")
|
||||
)
|
||||
(fp_line
|
||||
(start -26.67 -11.43)
|
||||
(end 26.67 -11.43)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.CrtYd")
|
||||
(uuid "703e3838-7665-4533-8600-0969cc2a4b4f")
|
||||
)
|
||||
(fp_line
|
||||
(start 26.67 -11.43)
|
||||
(end 26.67 11.43)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.CrtYd")
|
||||
(uuid "7fd8fc78-7a8c-49b9-a470-b66971fe3adf")
|
||||
)
|
||||
(fp_line
|
||||
(start 26.67 11.43)
|
||||
(end -26.67 11.43)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.CrtYd")
|
||||
(uuid "a91b8cf1-32ca-4b06-9fe7-8dce0f4a243b")
|
||||
)
|
||||
(pad "1" thru_hole circle
|
||||
(at -24.13 7.62)
|
||||
(size 1.6 1.6)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Paste" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "1661a8cb-d8d4-4fe6-941f-4ee76fdc08ea")
|
||||
)
|
||||
(pad "2" thru_hole circle
|
||||
(at -21.59 7.62)
|
||||
(size 1.6 1.6)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Paste" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "6ed4f8d3-adb2-4ca9-9cb9-c36039ac0cfb")
|
||||
)
|
||||
(pad "3" thru_hole circle
|
||||
(at -19.05 7.62)
|
||||
(size 1.6 1.6)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Paste" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "b010cc98-b83b-4f1c-be7d-e6335aae6e17")
|
||||
)
|
||||
(pad "4" thru_hole circle
|
||||
(at -16.51 7.62)
|
||||
(size 1.6 1.6)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Paste" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "102b556e-ce18-42b4-819f-aa40a4d26b78")
|
||||
)
|
||||
(pad "5" thru_hole circle
|
||||
(at -13.97 7.62)
|
||||
(size 1.6 1.6)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Paste" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "f048f45b-9ab6-4650-8c47-a0027e0a4c3a")
|
||||
)
|
||||
(pad "6" thru_hole circle
|
||||
(at -11.43 7.62)
|
||||
(size 1.6 1.6)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Paste" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "b56cd404-d451-4697-946d-9485101ca0ff")
|
||||
)
|
||||
(pad "7" thru_hole circle
|
||||
(at -8.89 7.62)
|
||||
(size 1.6 1.6)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Paste" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "86ef7c22-0d6e-40e7-ad91-f5b41712ee29")
|
||||
)
|
||||
(pad "8" thru_hole circle
|
||||
(at -6.35 7.62)
|
||||
(size 1.6 1.6)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Paste" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "8d01dd26-648b-428f-a324-bf4b5298951d")
|
||||
)
|
||||
(pad "9" thru_hole circle
|
||||
(at -3.81 7.62)
|
||||
(size 1.6 1.6)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Paste" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "f23201fa-f347-4d36-b927-e60d87b279ef")
|
||||
)
|
||||
(pad "10" thru_hole circle
|
||||
(at -1.27 7.62)
|
||||
(size 1.6 1.6)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Paste" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "8d62d1e8-3163-435c-bbcf-d22d50c788bd")
|
||||
)
|
||||
(pad "11" thru_hole circle
|
||||
(at 1.27 7.62)
|
||||
(size 1.6 1.6)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Paste" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "1c7f2466-ded2-4667-b504-b6070a5a407d")
|
||||
)
|
||||
(pad "12" thru_hole circle
|
||||
(at 3.81 7.62)
|
||||
(size 1.6 1.6)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Paste" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "dfc68a86-0a4a-43ea-ba09-88f0e08e5d01")
|
||||
)
|
||||
(pad "13" thru_hole circle
|
||||
(at 6.35 7.62)
|
||||
(size 1.6 1.6)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Paste" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "a17dea35-81ab-40a0-a73f-a4d95e3e1650")
|
||||
)
|
||||
(pad "14" thru_hole circle
|
||||
(at 8.89 7.62)
|
||||
(size 1.6 1.6)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Paste" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "d8349489-ee61-4433-9586-0e89c5dd275b")
|
||||
)
|
||||
(pad "15" thru_hole circle
|
||||
(at 11.43 7.62)
|
||||
(size 1.6 1.6)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Paste" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "dd548998-74ce-4b3e-ba76-14fc1af9c4d8")
|
||||
)
|
||||
(pad "16" thru_hole circle
|
||||
(at 13.97 7.62)
|
||||
(size 1.6 1.6)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Paste" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "85ec34c5-4176-4176-b674-01cc053ee878")
|
||||
)
|
||||
(pad "17" thru_hole circle
|
||||
(at 16.51 7.62)
|
||||
(size 1.6 1.6)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Paste" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "48f99ab3-b9c3-40bc-af17-c0c172fd734e")
|
||||
)
|
||||
(pad "18" thru_hole circle
|
||||
(at 19.05 7.62)
|
||||
(size 1.6 1.6)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Paste" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "4bd02961-623a-4a65-a495-6c06d6c2eec6")
|
||||
)
|
||||
(pad "19" thru_hole circle
|
||||
(at 21.59 7.62)
|
||||
(size 1.6 1.6)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Paste" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "35707ac2-1c11-4549-956f-61cd5c3ae9fc")
|
||||
)
|
||||
(pad "20" thru_hole circle
|
||||
(at 24.13 7.62)
|
||||
(size 1.6 1.6)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Paste" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "436d3db7-dc77-44ab-abd7-515ab5e57dc9")
|
||||
)
|
||||
(pad "21" thru_hole circle
|
||||
(at 24.13 -7.62)
|
||||
(size 1.6 1.6)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Paste" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "4d1a13ce-c5c4-42f5-8414-f6dea5e50793")
|
||||
)
|
||||
(pad "22" thru_hole circle
|
||||
(at 21.59 -7.62)
|
||||
(size 1.6 1.6)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Paste" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "6d059125-a5b9-4c82-ac5c-18eb8db71d0b")
|
||||
)
|
||||
(pad "23" thru_hole circle
|
||||
(at 19.05 -7.62)
|
||||
(size 1.6 1.6)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Paste" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "59591f5d-5369-4701-83b9-a80a0a0384d1")
|
||||
)
|
||||
(pad "24" thru_hole circle
|
||||
(at 16.51 -7.62)
|
||||
(size 1.6 1.6)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Paste" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "77f93625-51ab-4679-930f-4869f35005f8")
|
||||
)
|
||||
(pad "25" thru_hole circle
|
||||
(at 13.97 -7.62)
|
||||
(size 1.6 1.6)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Paste" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "236aaed7-55e8-4fa0-9bec-b5ee3f6cd231")
|
||||
)
|
||||
(pad "26" thru_hole circle
|
||||
(at 11.43 -7.62)
|
||||
(size 1.6 1.6)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Paste" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "71c09176-e129-4a4b-9112-1ab53b21a76d")
|
||||
)
|
||||
(pad "27" thru_hole circle
|
||||
(at 8.89 -7.62)
|
||||
(size 1.6 1.6)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Paste" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "8f57fb49-15c7-4006-8756-439a102fd32e")
|
||||
)
|
||||
(pad "28" thru_hole circle
|
||||
(at 6.35 -7.62)
|
||||
(size 1.6 1.6)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Paste" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "25ba20f4-5fef-45b8-a009-bf9201274b1b")
|
||||
)
|
||||
(pad "29" thru_hole circle
|
||||
(at 3.81 -7.62)
|
||||
(size 1.6 1.6)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Paste" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "e522c48c-1d17-434c-a493-171bf2895077")
|
||||
)
|
||||
(pad "30" thru_hole circle
|
||||
(at 1.27 -7.62)
|
||||
(size 1.6 1.6)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Paste" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "b370f3ec-cfc1-4ddb-989c-df8cf9d11634")
|
||||
)
|
||||
(pad "31" thru_hole circle
|
||||
(at -1.27 -7.62)
|
||||
(size 1.6 1.6)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Paste" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "c6ba6e14-1321-4c47-b975-2d3e716e7bd1")
|
||||
)
|
||||
(pad "32" thru_hole circle
|
||||
(at -3.81 -7.62)
|
||||
(size 1.6 1.6)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Paste" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "7f10c4fe-8924-412b-be1b-8782503cd5b9")
|
||||
)
|
||||
(pad "33" thru_hole circle
|
||||
(at -6.35 -7.62)
|
||||
(size 1.6 1.6)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Paste" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "b5b08c43-d6f4-4d57-bb33-f791eb77e065")
|
||||
)
|
||||
(pad "34" thru_hole circle
|
||||
(at -8.89 -7.62)
|
||||
(size 1.6 1.6)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Paste" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "b46e7755-20ec-4ab0-97cf-5d1666fdedd5")
|
||||
)
|
||||
(pad "35" thru_hole circle
|
||||
(at -11.43 -7.62)
|
||||
(size 1.6 1.6)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Paste" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "d2309b81-3795-4df3-b9fb-3319beac5f76")
|
||||
)
|
||||
(pad "36" thru_hole circle
|
||||
(at -13.97 -7.62)
|
||||
(size 1.6 1.6)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Paste" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "9be12942-0717-4ccf-858b-b436e4ba12f8")
|
||||
)
|
||||
(pad "37" thru_hole circle
|
||||
(at -16.51 -7.62)
|
||||
(size 1.6 1.6)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Paste" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "0a0d45aa-1ca2-4af9-a089-56030ffdfc14")
|
||||
)
|
||||
(pad "38" thru_hole circle
|
||||
(at -19.05 -7.62)
|
||||
(size 1.6 1.6)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Paste" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "48f4854f-dc05-49d6-8866-aa08acd52adf")
|
||||
)
|
||||
(pad "39" thru_hole circle
|
||||
(at -21.59 -7.62)
|
||||
(size 1.6 1.6)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Paste" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "dfd1d94a-eb23-47db-809e-6a90e995bf31")
|
||||
)
|
||||
(pad "40" thru_hole circle
|
||||
(at -24.13 -7.62)
|
||||
(size 1.6 1.6)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Paste" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "61019b44-a018-4984-9b72-af365424a707")
|
||||
)
|
||||
(embedded_fonts no)
|
||||
(model "${USER_3DMODEL}/STM32F103C8T6 Blue Pill.step"
|
||||
(offset
|
||||
(xyz 0 0 5.28)
|
||||
)
|
||||
(scale
|
||||
(xyz 1 1 1)
|
||||
)
|
||||
(rotate
|
||||
(xyz -0 -0 -0)
|
||||
)
|
||||
)
|
||||
(model "${KICAD9_3DMODEL_DIR}/Connector_PinSocket_2.54mm.3dshapes/PinSocket_1x20_P2.54mm_Vertical.step"
|
||||
(offset
|
||||
(xyz -24.15 7.6 0)
|
||||
)
|
||||
(scale
|
||||
(xyz 1 1 1)
|
||||
)
|
||||
(rotate
|
||||
(xyz -0 -0 -90)
|
||||
)
|
||||
)
|
||||
(model "${KICAD9_3DMODEL_DIR}/Connector_PinSocket_2.54mm.3dshapes/PinSocket_1x20_P2.54mm_Vertical.step"
|
||||
(offset
|
||||
(xyz -24.1 -7.58 0)
|
||||
)
|
||||
(scale
|
||||
(xyz 1 1 1)
|
||||
)
|
||||
(rotate
|
||||
(xyz -0 -0 -90)
|
||||
)
|
||||
)
|
||||
)
|
||||
@@ -1,302 +0,0 @@
|
||||
(footprint "SW-SMD_4P-L5.1-W5.1-P3.70-LS6.5-TL_H1.5"
|
||||
(version 20241229)
|
||||
(generator "pcbnew")
|
||||
(generator_version "9.0")
|
||||
(layer "F.Cu")
|
||||
(property "Reference" "REF**"
|
||||
(at 0 -4 0)
|
||||
(unlocked yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "ed5965af-c280-4652-9dc2-d69811e48be6")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.1)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Value" "SW-SMD_4P-L5.1-W5.1-P3.70-LS6.5-TL_H1.5"
|
||||
(at 0 1 0)
|
||||
(unlocked yes)
|
||||
(layer "F.Fab")
|
||||
(uuid "af59e606-d553-4be1-9fe6-4404d694b654")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Datasheet" ""
|
||||
(at 0 0 0)
|
||||
(unlocked yes)
|
||||
(layer "F.Fab")
|
||||
(hide yes)
|
||||
(uuid "4ef8af1f-2c7d-4d76-977c-547d750c7c97")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Description" ""
|
||||
(at 0 0 0)
|
||||
(unlocked yes)
|
||||
(layer "F.Fab")
|
||||
(hide yes)
|
||||
(uuid "120434ea-1390-4d44-afd7-af909d3360b6")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(attr smd)
|
||||
(fp_line
|
||||
(start -2.55 -1.168)
|
||||
(end -2.55 1.168)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "a483c794-0917-453e-abbe-9df006d685eb")
|
||||
)
|
||||
(fp_line
|
||||
(start -2.17 1.655)
|
||||
(end -1.275 2.55)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "fe1b389b-6ba5-4ec9-9176-aab15a908653")
|
||||
)
|
||||
(fp_line
|
||||
(start -1.801 -1.001)
|
||||
(end -1.001 -1.801)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "74a6bd5d-1d2c-4e14-9621-7a637e3ec697")
|
||||
)
|
||||
(fp_line
|
||||
(start -1.801 0.998)
|
||||
(end -1.801 -1.001)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "3d42e139-faab-4db8-8a48-f84aa1ff8929")
|
||||
)
|
||||
(fp_line
|
||||
(start -1.275 -2.55)
|
||||
(end -2.17 -1.655)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "4ddd9f5e-8926-48d8-894a-3ea6ff06e32b")
|
||||
)
|
||||
(fp_line
|
||||
(start -1.275 -2.55)
|
||||
(end 1.275 -2.55)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "9e97bfd5-12ab-494f-8ccf-68f43f9e6535")
|
||||
)
|
||||
(fp_line
|
||||
(start -1.275 2.55)
|
||||
(end 1.275 2.55)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "470b533e-b051-479b-962f-46dd8686e977")
|
||||
)
|
||||
(fp_line
|
||||
(start -1.001 -1.801)
|
||||
(end 0.899 -1.801)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "657ca91b-d6ac-41be-97aa-946f29ec7082")
|
||||
)
|
||||
(fp_line
|
||||
(start -0.899 1.9)
|
||||
(end -1.801 0.998)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "2afbb7f9-f3c7-4ee6-81b1-7ed85b973b9d")
|
||||
)
|
||||
(fp_line
|
||||
(start 0.8 1.9)
|
||||
(end -0.899 1.9)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "d49203a0-502f-4707-9d30-1f5b88108fdf")
|
||||
)
|
||||
(fp_line
|
||||
(start 0.899 -1.801)
|
||||
(end 1.801 -0.899)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "c7655c12-4889-45b3-aba0-6e1fadaa259b")
|
||||
)
|
||||
(fp_line
|
||||
(start 1.275 -2.55)
|
||||
(end 2.17 -1.655)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "ddfc6ba3-15a0-4f3e-ba80-ce30e6e7d1a5")
|
||||
)
|
||||
(fp_line
|
||||
(start 1.801 -0.899)
|
||||
(end 1.801 0.899)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "f4592342-1c43-4583-8a5a-f77f58d49855")
|
||||
)
|
||||
(fp_line
|
||||
(start 1.801 0.899)
|
||||
(end 0.8 1.9)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "61e13fa6-908b-4a34-a137-2f5d492b3c9b")
|
||||
)
|
||||
(fp_line
|
||||
(start 2.17 1.655)
|
||||
(end 1.275 2.55)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "d073193f-fc12-4920-bee2-1a7da6ad4f2f")
|
||||
)
|
||||
(fp_line
|
||||
(start 2.55 -1.168)
|
||||
(end 2.55 1.168)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "4aec8f4a-c9e0-44d3-a1c9-c9bbf6712d33")
|
||||
)
|
||||
(fp_circle
|
||||
(center 0 0)
|
||||
(end 1.275 0)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(fill no)
|
||||
(layer "F.SilkS")
|
||||
(uuid "dfad9233-d228-4a50-a059-603c4921bc76")
|
||||
)
|
||||
(fp_rect
|
||||
(start -3.5 -2.5)
|
||||
(end 3.5 2.5)
|
||||
(stroke
|
||||
(width 0.05)
|
||||
(type default)
|
||||
)
|
||||
(fill no)
|
||||
(layer "F.CrtYd")
|
||||
(uuid "a12d43f6-05fd-48fb-b094-41491d836e0f")
|
||||
)
|
||||
(fp_text user "${REFERENCE}"
|
||||
(at 0 2.5 0)
|
||||
(unlocked yes)
|
||||
(layer "F.Fab")
|
||||
(uuid "1b0c4aec-4c31-4b20-9d67-1d5cd371a9cf")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pad "1" smd rect
|
||||
(at -3 -1.85)
|
||||
(size 1 0.75)
|
||||
(layers "F.Cu" "F.Mask" "F.Paste")
|
||||
(uuid "ede3d644-016c-42f7-9f34-ad594d15b656")
|
||||
)
|
||||
(pad "2" smd rect
|
||||
(at 3 -1.85)
|
||||
(size 1 0.75)
|
||||
(layers "F.Cu" "F.Mask" "F.Paste")
|
||||
(uuid "88ee239b-fbc4-4a6c-9a46-0d6ec2f6270f")
|
||||
)
|
||||
(pad "3" smd rect
|
||||
(at -3 1.85)
|
||||
(size 1 0.75)
|
||||
(layers "F.Cu" "F.Mask" "F.Paste")
|
||||
(uuid "236ca59d-916e-40b6-a5d5-e5afdc310590")
|
||||
)
|
||||
(pad "4" smd rect
|
||||
(at 3 1.85)
|
||||
(size 1 0.75)
|
||||
(layers "F.Cu" "F.Mask" "F.Paste")
|
||||
(uuid "bf546c1d-979b-481f-940d-86a37581f9e1")
|
||||
)
|
||||
(group ""
|
||||
(uuid "dc81c066-2597-47f0-abda-0bf62b30f6c3")
|
||||
(members "236ca59d-916e-40b6-a5d5-e5afdc310590" "2afbb7f9-f3c7-4ee6-81b1-7ed85b973b9d"
|
||||
"3d42e139-faab-4db8-8a48-f84aa1ff8929" "470b533e-b051-479b-962f-46dd8686e977"
|
||||
"4aec8f4a-c9e0-44d3-a1c9-c9bbf6712d33" "4ddd9f5e-8926-48d8-894a-3ea6ff06e32b"
|
||||
"61e13fa6-908b-4a34-a137-2f5d492b3c9b" "657ca91b-d6ac-41be-97aa-946f29ec7082"
|
||||
"74a6bd5d-1d2c-4e14-9621-7a637e3ec697" "88ee239b-fbc4-4a6c-9a46-0d6ec2f6270f"
|
||||
"9e97bfd5-12ab-494f-8ccf-68f43f9e6535" "a483c794-0917-453e-abbe-9df006d685eb"
|
||||
"bf546c1d-979b-481f-940d-86a37581f9e1" "c7655c12-4889-45b3-aba0-6e1fadaa259b"
|
||||
"d073193f-fc12-4920-bee2-1a7da6ad4f2f" "d49203a0-502f-4707-9d30-1f5b88108fdf"
|
||||
"ddfc6ba3-15a0-4f3e-ba80-ce30e6e7d1a5" "dfad9233-d228-4a50-a059-603c4921bc76"
|
||||
"ede3d644-016c-42f7-9f34-ad594d15b656" "f4592342-1c43-4583-8a5a-f77f58d49855"
|
||||
"fe1b389b-6ba5-4ec9-9176-aab15a908653"
|
||||
)
|
||||
)
|
||||
(embedded_fonts no)
|
||||
(model "${USER_3DMODEL}/TS-1187A-B-A-B.step"
|
||||
(offset
|
||||
(xyz 0 0 0)
|
||||
)
|
||||
(scale
|
||||
(xyz 1 1 1)
|
||||
)
|
||||
(rotate
|
||||
(xyz 0 0 0)
|
||||
)
|
||||
)
|
||||
)
|
||||
@@ -1,307 +0,0 @@
|
||||
(footprint "SW-TH_SS12D10G5"
|
||||
(version 20241229)
|
||||
(generator "pcbnew")
|
||||
(generator_version "9.0")
|
||||
(layer "F.Cu")
|
||||
(property "Reference" ""
|
||||
(at -0.0001 -4.312 0)
|
||||
(layer "F.SilkS")
|
||||
(uuid "c8f157f4-1339-4b73-8507-bbf6597bd918")
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Value" "SW-TH_SS12D10G5"
|
||||
(at -0.0001 4.312 0)
|
||||
(layer "F.Fab")
|
||||
(uuid "1a065337-a29e-411b-9e96-534869430518")
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Datasheet" ""
|
||||
(at 0 0 0)
|
||||
(layer "F.Fab")
|
||||
(hide yes)
|
||||
(uuid "86ecd2ee-252f-45f3-a768-052ab2d6522a")
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Description" ""
|
||||
(at 0 0 0)
|
||||
(layer "F.Fab")
|
||||
(hide yes)
|
||||
(uuid "b7820832-e45f-4401-bed8-9790df7c1223")
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(fp_line
|
||||
(start -6.3501 -3.35)
|
||||
(end -6.3501 3.35)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "7174d9d9-9e05-4d49-af0f-398ef7571139")
|
||||
)
|
||||
(fp_line
|
||||
(start -6.3501 -3.35)
|
||||
(end 6.3499 -3.35)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "4ff6df59-5576-4f74-a589-03f8b3f914f5")
|
||||
)
|
||||
(fp_line
|
||||
(start -3.5501 -1.8)
|
||||
(end -3.5501 1.8)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "56cecc0e-424e-4d17-bb9c-fa0e42b6b46e")
|
||||
)
|
||||
(fp_line
|
||||
(start -3.5501 1.8)
|
||||
(end 3.5499 1.8)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "a2c87ae9-b111-48aa-8f7f-1e834f588a2d")
|
||||
)
|
||||
(fp_line
|
||||
(start -3.2328 -1.8)
|
||||
(end -3.2328 1.8)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "c3f9273a-b3c6-4d59-92dc-917808f36c9e")
|
||||
)
|
||||
(fp_line
|
||||
(start -3.2328 1.8)
|
||||
(end -3.2422 1.8)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "152f749f-cc6a-4420-99c3-5419a75c17bf")
|
||||
)
|
||||
(fp_line
|
||||
(start -2.753 -1.8)
|
||||
(end -2.753 1.8)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "4f5f5e2d-d874-4010-8a47-175ca8b7d4b6")
|
||||
)
|
||||
(fp_line
|
||||
(start -2.753 1.8)
|
||||
(end -2.7625 1.8)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "50f19b98-436f-4662-be72-f74e820eec28")
|
||||
)
|
||||
(fp_line
|
||||
(start -2.2732 -1.8)
|
||||
(end -2.2732 1.7999)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "d98fbf71-4ff3-449e-9b28-b99c1eb476e0")
|
||||
)
|
||||
(fp_line
|
||||
(start -2.2732 1.7999)
|
||||
(end -2.2827 1.7999)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "e04a3dba-e86c-4a7c-a908-dfe1ce566bd1")
|
||||
)
|
||||
(fp_line
|
||||
(start -1.7934 -1.8)
|
||||
(end -1.7934 1.8)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "6ed33d4d-35fc-4698-96d4-6904b608362b")
|
||||
)
|
||||
(fp_line
|
||||
(start -1.7934 1.8)
|
||||
(end -1.8029 1.8)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "03727839-5f05-4fbb-8726-36ca8417cb97")
|
||||
)
|
||||
(fp_line
|
||||
(start -1.3137 -1.8)
|
||||
(end -1.3137 1.8)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "ae38569c-033e-42ef-ab48-97281b2bf19a")
|
||||
)
|
||||
(fp_line
|
||||
(start -1.3137 1.8)
|
||||
(end -1.2572 1.8)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "c3dde96b-bed8-420b-acb5-4e11178889c4")
|
||||
)
|
||||
(fp_line
|
||||
(start 2.45 -1.8)
|
||||
(end -3.5501 -1.8)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "062c21b2-5a6c-42f6-8d2f-8e0b18b03adc")
|
||||
)
|
||||
(fp_line
|
||||
(start 2.7401 -1.8)
|
||||
(end 2.3167 -1.8)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "6e4285e2-3023-465b-9c25-c4321c29ffa5")
|
||||
)
|
||||
(fp_line
|
||||
(start 3.5499 -1.8)
|
||||
(end 2.5499 -1.8)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "7b2a3e47-9ac4-4375-858b-8ca5a18cfbc8")
|
||||
)
|
||||
(fp_line
|
||||
(start 3.5499 -1.3)
|
||||
(end 3.5499 -1.8)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "2c93a21d-74df-47ac-acaa-1c4e1f8abb81")
|
||||
)
|
||||
(fp_line
|
||||
(start 3.5499 1.8)
|
||||
(end 3.5499 -1.3)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "7e0f6d82-9ba0-4a1b-83a9-c4079c6c112c")
|
||||
)
|
||||
(fp_line
|
||||
(start 6.3499 -3.35)
|
||||
(end 6.3499 3.35)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "52640202-69e8-412c-a4fc-083a5fc85557")
|
||||
)
|
||||
(fp_line
|
||||
(start 6.3499 3.35)
|
||||
(end -6.3501 3.35)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "26fc296a-9f91-4d20-9369-bf5d37aee786")
|
||||
)
|
||||
(fp_circle
|
||||
(center -6.3501 3.35)
|
||||
(end -6.3201 3.35)
|
||||
(stroke
|
||||
(width 0.06)
|
||||
(type default)
|
||||
)
|
||||
(fill no)
|
||||
(layer "User.5")
|
||||
(uuid "5bb72387-4a82-4c72-9b84-27736dbd0bb7")
|
||||
)
|
||||
(pad "1" thru_hole oval
|
||||
(at -4.7001 0)
|
||||
(size 1.7 2.9)
|
||||
(drill oval 1.1 2.3)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(solder_mask_margin 0.05)
|
||||
(solder_paste_margin 0)
|
||||
(thermal_bridge_angle 0)
|
||||
(uuid "1a133d9c-e3f6-46e5-8e54-cfd3a5517778")
|
||||
)
|
||||
(pad "2" thru_hole oval
|
||||
(at -0.0001 0)
|
||||
(size 1.7 2.9)
|
||||
(drill oval 1.1 2.3)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(solder_mask_margin 0.05)
|
||||
(solder_paste_margin 0)
|
||||
(thermal_bridge_angle 0)
|
||||
(uuid "574fd89e-b9b2-4fb6-9756-537454d19391")
|
||||
)
|
||||
(pad "3" thru_hole oval
|
||||
(at 4.7 0)
|
||||
(size 1.7 2.9)
|
||||
(drill oval 1.1 2.3)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(solder_mask_margin 0.05)
|
||||
(solder_paste_margin 0)
|
||||
(thermal_bridge_angle 0)
|
||||
(uuid "550d4de2-7c34-40ea-84f3-c50fd57a1064")
|
||||
)
|
||||
(embedded_fonts no)
|
||||
)
|
||||
@@ -1,278 +0,0 @@
|
||||
(footprint "SW_PUSH_XC29"
|
||||
(version 20241229)
|
||||
(generator "pcbnew")
|
||||
(generator_version "9.0")
|
||||
(layer "F.Cu")
|
||||
(property "Reference" "REF**"
|
||||
(at 0 -6.9 0)
|
||||
(unlocked yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "6d4e3b69-fa22-40fb-bb05-60a9be78f909")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.1)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Value" "SW_PUSH_XC29"
|
||||
(at 0 8.2 0)
|
||||
(unlocked yes)
|
||||
(layer "F.Fab")
|
||||
(uuid "4d802352-0671-461a-b882-9ca09391f2ca")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Datasheet" ""
|
||||
(at 0 0 0)
|
||||
(unlocked yes)
|
||||
(layer "F.Fab")
|
||||
(hide yes)
|
||||
(uuid "bcdcd157-1dec-4ffc-90c9-052278494080")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Description" ""
|
||||
(at 0 0 0)
|
||||
(unlocked yes)
|
||||
(layer "F.Fab")
|
||||
(hide yes)
|
||||
(uuid "64bac866-3e13-4253-9fbb-89d94515eceb")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(attr through_hole)
|
||||
(fp_line
|
||||
(start -6 -5.5)
|
||||
(end -6 -4.8)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type default)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "61cec425-db14-4a92-ad50-5aa908e7880a")
|
||||
)
|
||||
(fp_line
|
||||
(start -6 -5.5)
|
||||
(end -1.5 -5.5)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type default)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "e14ee26d-7446-46b6-827b-7713fe755ad7")
|
||||
)
|
||||
(fp_line
|
||||
(start -6 0.15)
|
||||
(end -6 0.85)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type default)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "11264e82-313d-4503-977e-816b2cc75e78")
|
||||
)
|
||||
(fp_line
|
||||
(start -6 5.8)
|
||||
(end -6 6.5)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type default)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "183da6ee-de6b-46f1-b294-5ddea6dce7dd")
|
||||
)
|
||||
(fp_line
|
||||
(start -6 6.5)
|
||||
(end -1.5 6.5)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type default)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "cba49449-b7ea-4a86-a183-3a3679008928")
|
||||
)
|
||||
(fp_line
|
||||
(start 1.5 -5.5)
|
||||
(end 6 -5.5)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type default)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "34c9f964-03e4-466a-a838-019f5c74ae7d")
|
||||
)
|
||||
(fp_line
|
||||
(start 1.5 6.5)
|
||||
(end 6 6.5)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type default)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "13d139d7-36aa-435e-aa9a-faead6802d1b")
|
||||
)
|
||||
(fp_line
|
||||
(start 6 -5.5)
|
||||
(end 6 -4.8)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type default)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "da600876-37aa-4a29-b505-f5e4282e297f")
|
||||
)
|
||||
(fp_line
|
||||
(start 6 0.15)
|
||||
(end 6 0.85)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type default)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "a336a8b6-d965-4387-b0b0-d7068a459e25")
|
||||
)
|
||||
(fp_line
|
||||
(start 6 5.8)
|
||||
(end 6 6.5)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type default)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "73007545-f9f8-4269-b14d-131ef069e42d")
|
||||
)
|
||||
(fp_line
|
||||
(start -6.25 -2)
|
||||
(end 6.25 -2)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.Fab")
|
||||
(uuid "f02a347d-c894-4186-ab8d-21e489d65aa2")
|
||||
)
|
||||
(fp_line
|
||||
(start -6.25 3)
|
||||
(end -6.25 -2)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.Fab")
|
||||
(uuid "110c5e5c-ec92-4c51-b940-6f4220751ce7")
|
||||
)
|
||||
(fp_line
|
||||
(start -6.25 3)
|
||||
(end 6.25 3)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.Fab")
|
||||
(uuid "ee707ae1-e1ea-4518-9b04-6831d56efef9")
|
||||
)
|
||||
(fp_line
|
||||
(start 0 -5)
|
||||
(end 0 6)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.Fab")
|
||||
(uuid "6c7b24c9-8111-4e6f-a1d0-9cde9e0bcdb0")
|
||||
)
|
||||
(fp_line
|
||||
(start 6.25 0.5)
|
||||
(end -6.25 0.5)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.Fab")
|
||||
(uuid "6bf6f130-7716-41de-805a-5455b04b6e6c")
|
||||
)
|
||||
(fp_line
|
||||
(start 6.25 3)
|
||||
(end 6.25 -2)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.Fab")
|
||||
(uuid "ee33d6bc-6234-498c-8f35-7d6eee55c7b9")
|
||||
)
|
||||
(fp_text user "${REFERENCE}"
|
||||
(at 0 0.5 0)
|
||||
(unlocked yes)
|
||||
(layer "F.Fab")
|
||||
(uuid "f5f88e80-6fa1-4795-b319-2ca6a7584209")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pad "1" thru_hole circle
|
||||
(at -6.25 -2)
|
||||
(size 4 4)
|
||||
(drill 1.1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "9c14fb01-2fdb-4dce-b0b5-d7130849c066")
|
||||
)
|
||||
(pad "2" thru_hole circle
|
||||
(at 6.25 -2)
|
||||
(size 4 4)
|
||||
(drill 1.1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "2c385aff-7cde-4115-97e9-045b81c9ac01")
|
||||
)
|
||||
(pad "3" thru_hole circle
|
||||
(at -6.25 3)
|
||||
(size 4 4)
|
||||
(drill 1.1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "49e3f24e-ebec-45f0-95d9-5edc7009c278")
|
||||
)
|
||||
(pad "4" thru_hole circle
|
||||
(at 6.25 3)
|
||||
(size 4 4)
|
||||
(drill 1.1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "696856b5-63e6-4ebd-85c6-7634529ea5e1")
|
||||
)
|
||||
(pad "5" thru_hole circle
|
||||
(at 0 6)
|
||||
(size 2 2)
|
||||
(drill 0.85)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "2031a9e3-31c0-41ce-8413-f105f435afc6")
|
||||
)
|
||||
(pad "6" thru_hole circle
|
||||
(at 0 -5)
|
||||
(size 2 2)
|
||||
(drill 0.85)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "290332d1-1db4-4c03-8461-efac1255c54c")
|
||||
)
|
||||
(embedded_fonts no)
|
||||
)
|
||||
@@ -1,381 +0,0 @@
|
||||
(footprint "Transformer_220_5_1A_Module"
|
||||
(version 20241229)
|
||||
(generator "pcbnew")
|
||||
(generator_version "9.0")
|
||||
(layer "F.Cu")
|
||||
(property "Reference" "REF**"
|
||||
(at -12.6 -11.6 0)
|
||||
(unlocked yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "caaf2c29-9fab-4ebe-8fc8-4544a0b601eb")
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
(thickness 0.15875)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Value" "Transformer_220/5_1A_Module"
|
||||
(at 0 11 0)
|
||||
(unlocked yes)
|
||||
(layer "F.Fab")
|
||||
(uuid "e8002a30-de96-403d-a118-43e8fb0ccd3f")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Datasheet" ""
|
||||
(at 0 0 0)
|
||||
(unlocked yes)
|
||||
(layer "F.Fab")
|
||||
(hide yes)
|
||||
(uuid "82149ce1-b99a-44fb-96ec-2ab80849a45d")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Description" ""
|
||||
(at 0 0 0)
|
||||
(unlocked yes)
|
||||
(layer "F.Fab")
|
||||
(hide yes)
|
||||
(uuid "76cd516d-fc85-4d42-bd0d-7c038e87d23b")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(attr through_hole)
|
||||
(fp_line
|
||||
(start -14.95 6.77)
|
||||
(end -13.62 6.77)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "a9ad7a2a-425e-4915-81db-ae21254d6710")
|
||||
)
|
||||
(fp_line
|
||||
(start -14.95 8.1)
|
||||
(end -14.95 6.77)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "0cdadd8a-ab8e-41d8-a5e6-cb687d29274f")
|
||||
)
|
||||
(fp_line
|
||||
(start -12.35 6.77)
|
||||
(end -7.21 6.77)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "398a06cb-de44-45a1-ae15-4b68df40a61a")
|
||||
)
|
||||
(fp_line
|
||||
(start -12.35 9.43)
|
||||
(end -12.35 6.77)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "ddfc0ab8-0f67-4bb8-b2cd-39199141aef7")
|
||||
)
|
||||
(fp_line
|
||||
(start -12.35 9.43)
|
||||
(end -7.21 9.43)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "26128a49-7993-4a56-ad7d-4af3f4066bbc")
|
||||
)
|
||||
(fp_line
|
||||
(start -7.21 9.43)
|
||||
(end -7.21 6.77)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "dbf47577-be91-40b8-9dee-93017f253d85")
|
||||
)
|
||||
(fp_line
|
||||
(start 9.73 6.77)
|
||||
(end 11.06 6.77)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "05b30b40-f9fc-4617-b382-c5c44bc07232")
|
||||
)
|
||||
(fp_line
|
||||
(start 9.73 8.1)
|
||||
(end 9.73 6.77)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "eb1e018a-9555-47ef-bc7e-5b1034bda958")
|
||||
)
|
||||
(fp_line
|
||||
(start 12.33 6.77)
|
||||
(end 14.93 6.77)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "0ac30cc0-7458-4698-a3c3-7771bc02304c")
|
||||
)
|
||||
(fp_line
|
||||
(start 12.33 9.43)
|
||||
(end 12.33 6.77)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "1ae1ee4c-c4eb-4ed8-8a8b-47a7c1dd8443")
|
||||
)
|
||||
(fp_line
|
||||
(start 12.33 9.43)
|
||||
(end 14.93 9.43)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "b9457030-bbcd-41a5-9b6c-e749434778cc")
|
||||
)
|
||||
(fp_line
|
||||
(start 14.93 9.43)
|
||||
(end 14.93 6.77)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "0a6a2e53-4b80-4fe0-a63e-10540e1700df")
|
||||
)
|
||||
(fp_rect
|
||||
(start -15 -10.5)
|
||||
(end 15 9.5)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(fill no)
|
||||
(layer "F.SilkS")
|
||||
(uuid "da790940-a745-4ac2-a959-dbf0f8233eed")
|
||||
)
|
||||
(fp_line
|
||||
(start -14.89 7.465)
|
||||
(end -14.255 6.83)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.Fab")
|
||||
(uuid "8f8ffc37-bf7c-4271-9d52-7e7a7487b4ad")
|
||||
)
|
||||
(fp_line
|
||||
(start -14.89 9.37)
|
||||
(end -14.89 7.465)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.Fab")
|
||||
(uuid "6a284d45-7a96-407f-838e-115c605cc3d5")
|
||||
)
|
||||
(fp_line
|
||||
(start -14.255 6.83)
|
||||
(end -7.27 6.83)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.Fab")
|
||||
(uuid "a34505a5-b8fb-4efe-8581-861e55951131")
|
||||
)
|
||||
(fp_line
|
||||
(start -7.27 6.83)
|
||||
(end -7.27 9.37)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.Fab")
|
||||
(uuid "048898e9-55de-4a34-8b0f-8ea0980abf46")
|
||||
)
|
||||
(fp_line
|
||||
(start -7.27 9.37)
|
||||
(end -14.89 9.37)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.Fab")
|
||||
(uuid "3adffad4-814c-4868-bcb1-a6cfa41ed646")
|
||||
)
|
||||
(fp_line
|
||||
(start 9.79 7.465)
|
||||
(end 10.425 6.83)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.Fab")
|
||||
(uuid "cc5aabd3-3bcf-4ab7-9ec1-15d25e14bedf")
|
||||
)
|
||||
(fp_line
|
||||
(start 9.79 9.37)
|
||||
(end 9.79 7.465)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.Fab")
|
||||
(uuid "7c9e8e68-62af-4f93-be66-03b3174b616a")
|
||||
)
|
||||
(fp_line
|
||||
(start 10.425 6.83)
|
||||
(end 14.87 6.83)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.Fab")
|
||||
(uuid "07778d00-3a2d-4025-a484-7b8646d8ac7c")
|
||||
)
|
||||
(fp_line
|
||||
(start 14.87 6.83)
|
||||
(end 14.87 9.37)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.Fab")
|
||||
(uuid "64c49d72-1df8-4120-8b64-c65f8aa2f8c1")
|
||||
)
|
||||
(fp_line
|
||||
(start 14.87 9.37)
|
||||
(end 9.79 9.37)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.Fab")
|
||||
(uuid "fc9506a7-7049-4ced-8afb-9f6abf07fee6")
|
||||
)
|
||||
(fp_text user "V-"
|
||||
(at 11 5 90)
|
||||
(unlocked yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "7a811511-54ef-42fe-aac4-04b55e02da43")
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
(thickness 0.15875)
|
||||
)
|
||||
)
|
||||
)
|
||||
(fp_text user "N"
|
||||
(at -8.509 5.6 0)
|
||||
(unlocked yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "849e0305-c0cd-4e84-92ac-8f9c5303cd13")
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
(thickness 0.15875)
|
||||
)
|
||||
)
|
||||
)
|
||||
(fp_text user "V+"
|
||||
(at 13.6 5 90)
|
||||
(unlocked yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "a6ee0f8f-072b-416b-87f6-94af7f46cdfd")
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
(thickness 0.15875)
|
||||
)
|
||||
)
|
||||
)
|
||||
(fp_text user "L"
|
||||
(at -13.6 5.6 0)
|
||||
(unlocked yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "c4ab9a46-aa6e-4ce4-a01f-300571d779c1")
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
(thickness 0.15875)
|
||||
)
|
||||
)
|
||||
)
|
||||
(fp_text user "${REFERENCE}"
|
||||
(at 0 12.5 0)
|
||||
(unlocked yes)
|
||||
(layer "F.Fab")
|
||||
(uuid "7cba04c1-ad08-43c1-99fe-100f9706e3ff")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pad "1" thru_hole rect
|
||||
(at -13.62 8.1 90)
|
||||
(size 1.7 1.7)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "2bf4194c-11d7-4a14-8ca2-264838ad4377")
|
||||
)
|
||||
(pad "2" thru_hole oval
|
||||
(at -8.54 8.1 90)
|
||||
(size 1.7 1.7)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "8ebf881d-9c13-462c-80bc-cd4927c19cfc")
|
||||
)
|
||||
(pad "3" thru_hole oval
|
||||
(at 13.6 8.1 90)
|
||||
(size 1.7 1.7)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "54e638f0-c8e1-4208-936d-a05ad24e571e")
|
||||
)
|
||||
(pad "4" thru_hole rect
|
||||
(at 11.06 8.1 90)
|
||||
(size 1.7 1.7)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "f626e4d4-746d-4737-b656-17ede08c9408")
|
||||
)
|
||||
(embedded_fonts no)
|
||||
)
|
||||
@@ -1,459 +0,0 @@
|
||||
(footprint "Transformer_220_5_2A_Module"
|
||||
(version 20241229)
|
||||
(generator "pcbnew")
|
||||
(generator_version "9.0")
|
||||
(layer "F.Cu")
|
||||
(property "Reference" "REF**"
|
||||
(at 2.4 -1.1 0)
|
||||
(unlocked yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "caaf2c29-9fab-4ebe-8fc8-4544a0b601eb")
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
(thickness 0.15875)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Value" "Transformer_220/5_2A_Module"
|
||||
(at 17.272 24.13 0)
|
||||
(unlocked yes)
|
||||
(layer "F.Fab")
|
||||
(uuid "e8002a30-de96-403d-a118-43e8fb0ccd3f")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Datasheet" ""
|
||||
(at 15 10.5 0)
|
||||
(unlocked yes)
|
||||
(layer "F.Fab")
|
||||
(hide yes)
|
||||
(uuid "82149ce1-b99a-44fb-96ec-2ab80849a45d")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Description" ""
|
||||
(at 15 10.5 0)
|
||||
(unlocked yes)
|
||||
(layer "F.Fab")
|
||||
(hide yes)
|
||||
(uuid "76cd516d-fc85-4d42-bd0d-7c038e87d23b")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(attr through_hole)
|
||||
(fp_line
|
||||
(start 3.242 20.32)
|
||||
(end 4.572 20.32)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "a9ad7a2a-425e-4915-81db-ae21254d6710")
|
||||
)
|
||||
(fp_line
|
||||
(start 3.242 21.65)
|
||||
(end 3.242 20.32)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "0cdadd8a-ab8e-41d8-a5e6-cb687d29274f")
|
||||
)
|
||||
(fp_line
|
||||
(start 5.842 20.32)
|
||||
(end 10.982 20.32)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "398a06cb-de44-45a1-ae15-4b68df40a61a")
|
||||
)
|
||||
(fp_line
|
||||
(start 5.842 22.98)
|
||||
(end 5.842 20.32)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "ddfc0ab8-0f67-4bb8-b2cd-39199141aef7")
|
||||
)
|
||||
(fp_line
|
||||
(start 5.842 22.98)
|
||||
(end 10.982 22.98)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "26128a49-7993-4a56-ad7d-4af3f4066bbc")
|
||||
)
|
||||
(fp_line
|
||||
(start 10.982 22.98)
|
||||
(end 10.982 20.32)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "dbf47577-be91-40b8-9dee-93017f253d85")
|
||||
)
|
||||
(fp_line
|
||||
(start 28.896 20.26)
|
||||
(end 30.226 20.26)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "05b30b40-f9fc-4617-b382-c5c44bc07232")
|
||||
)
|
||||
(fp_line
|
||||
(start 28.896 21.59)
|
||||
(end 28.896 20.26)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "eb1e018a-9555-47ef-bc7e-5b1034bda958")
|
||||
)
|
||||
(fp_line
|
||||
(start 31.496 20.26)
|
||||
(end 34.096 20.26)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "0ac30cc0-7458-4698-a3c3-7771bc02304c")
|
||||
)
|
||||
(fp_line
|
||||
(start 31.496 22.92)
|
||||
(end 31.496 20.26)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "1ae1ee4c-c4eb-4ed8-8a8b-47a7c1dd8443")
|
||||
)
|
||||
(fp_line
|
||||
(start 31.496 22.92)
|
||||
(end 34.096 22.92)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "b9457030-bbcd-41a5-9b6c-e749434778cc")
|
||||
)
|
||||
(fp_line
|
||||
(start 34.096 22.92)
|
||||
(end 34.096 20.26)
|
||||
(stroke
|
||||
(width 0.12)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "0a6a2e53-4b80-4fe0-a63e-10540e1700df")
|
||||
)
|
||||
(fp_rect
|
||||
(start 0 0)
|
||||
(end 35.53 22.97)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type solid)
|
||||
)
|
||||
(fill no)
|
||||
(layer "F.SilkS")
|
||||
(uuid "da790940-a745-4ac2-a959-dbf0f8233eed")
|
||||
)
|
||||
(fp_line
|
||||
(start 3.302 21.015)
|
||||
(end 3.937 20.38)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.Fab")
|
||||
(uuid "8f8ffc37-bf7c-4271-9d52-7e7a7487b4ad")
|
||||
)
|
||||
(fp_line
|
||||
(start 3.302 22.92)
|
||||
(end 3.302 21.015)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.Fab")
|
||||
(uuid "6a284d45-7a96-407f-838e-115c605cc3d5")
|
||||
)
|
||||
(fp_line
|
||||
(start 3.937 20.38)
|
||||
(end 10.922 20.38)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.Fab")
|
||||
(uuid "a34505a5-b8fb-4efe-8581-861e55951131")
|
||||
)
|
||||
(fp_line
|
||||
(start 10.922 20.38)
|
||||
(end 10.922 22.92)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.Fab")
|
||||
(uuid "048898e9-55de-4a34-8b0f-8ea0980abf46")
|
||||
)
|
||||
(fp_line
|
||||
(start 10.922 22.92)
|
||||
(end 3.302 22.92)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.Fab")
|
||||
(uuid "3adffad4-814c-4868-bcb1-a6cfa41ed646")
|
||||
)
|
||||
(fp_line
|
||||
(start 28.956 20.955)
|
||||
(end 29.591 20.32)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.Fab")
|
||||
(uuid "cc5aabd3-3bcf-4ab7-9ec1-15d25e14bedf")
|
||||
)
|
||||
(fp_line
|
||||
(start 28.956 22.86)
|
||||
(end 28.956 20.955)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.Fab")
|
||||
(uuid "7c9e8e68-62af-4f93-be66-03b3174b616a")
|
||||
)
|
||||
(fp_line
|
||||
(start 29.591 20.32)
|
||||
(end 34.036 20.32)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.Fab")
|
||||
(uuid "07778d00-3a2d-4025-a484-7b8646d8ac7c")
|
||||
)
|
||||
(fp_line
|
||||
(start 34.036 20.32)
|
||||
(end 34.036 22.86)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.Fab")
|
||||
(uuid "64c49d72-1df8-4120-8b64-c65f8aa2f8c1")
|
||||
)
|
||||
(fp_line
|
||||
(start 34.036 22.86)
|
||||
(end 28.956 22.86)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.Fab")
|
||||
(uuid "fc9506a7-7049-4ced-8afb-9f6abf07fee6")
|
||||
)
|
||||
(fp_text user "V+"
|
||||
(at 30.166 18.49 90)
|
||||
(unlocked yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "7a811511-54ef-42fe-aac4-04b55e02da43")
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
(thickness 0.15875)
|
||||
)
|
||||
)
|
||||
)
|
||||
(fp_text user "N"
|
||||
(at 9.683 19.15 0)
|
||||
(unlocked yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "849e0305-c0cd-4e84-92ac-8f9c5303cd13")
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
(thickness 0.15875)
|
||||
)
|
||||
)
|
||||
)
|
||||
(fp_text user "V-"
|
||||
(at 32.766 18.49 90)
|
||||
(unlocked yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "a6ee0f8f-072b-416b-87f6-94af7f46cdfd")
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
(thickness 0.15875)
|
||||
)
|
||||
)
|
||||
)
|
||||
(fp_text user "L"
|
||||
(at 4.592 19.15 0)
|
||||
(unlocked yes)
|
||||
(layer "F.SilkS")
|
||||
(uuid "c4ab9a46-aa6e-4ce4-a01f-300571d779c1")
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
(thickness 0.15875)
|
||||
)
|
||||
)
|
||||
)
|
||||
(fp_text user "${REFERENCE}"
|
||||
(at 17.272 25.63 0)
|
||||
(unlocked yes)
|
||||
(layer "F.Fab")
|
||||
(uuid "7cba04c1-ad08-43c1-99fe-100f9706e3ff")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(dimension
|
||||
(type orthogonal)
|
||||
(layer "F.Fab")
|
||||
(uuid "4f0719e7-359e-42e3-a83e-5e9ecd08e404")
|
||||
(pts
|
||||
(xy 0 22.97) (xy 30.226 22.97)
|
||||
)
|
||||
(height 5.732)
|
||||
(orientation 0)
|
||||
(format
|
||||
(prefix "")
|
||||
(suffix "")
|
||||
(units 3)
|
||||
(units_format 0)
|
||||
(precision 4)
|
||||
(override_value "30.2")
|
||||
(suppress_zeroes yes)
|
||||
)
|
||||
(style
|
||||
(thickness 0.1)
|
||||
(arrow_length 1.27)
|
||||
(text_position_mode 0)
|
||||
(arrow_direction outward)
|
||||
(extension_height 0.58642)
|
||||
(extension_offset 0.5)
|
||||
(keep_text_aligned yes)
|
||||
)
|
||||
(gr_text "30.2"
|
||||
(at 15.113 27.602 0)
|
||||
(layer "F.Fab")
|
||||
(uuid "4f0719e7-359e-42e3-a83e-5e9ecd08e404")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.1)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(dimension
|
||||
(type orthogonal)
|
||||
(layer "F.Fab")
|
||||
(uuid "5bcada13-da53-47f1-bc13-d129160d80aa")
|
||||
(pts
|
||||
(xy 0 22.97) (xy 4.572 22.97)
|
||||
)
|
||||
(height 2.684)
|
||||
(orientation 0)
|
||||
(format
|
||||
(prefix "")
|
||||
(suffix "")
|
||||
(units 3)
|
||||
(units_format 0)
|
||||
(precision 4)
|
||||
(override_value "4.54")
|
||||
(suppress_zeroes yes)
|
||||
)
|
||||
(style
|
||||
(thickness 0.1)
|
||||
(arrow_length 1.27)
|
||||
(text_position_mode 0)
|
||||
(arrow_direction outward)
|
||||
(extension_height 0.58642)
|
||||
(extension_offset 0.5)
|
||||
(keep_text_aligned yes)
|
||||
)
|
||||
(gr_text "4.54"
|
||||
(at 2.286 24.554 0)
|
||||
(layer "F.Fab")
|
||||
(uuid "5bcada13-da53-47f1-bc13-d129160d80aa")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.1)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pad "1" thru_hole rect
|
||||
(at 4.572 21.65 90)
|
||||
(size 1.7 1.7)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "2bf4194c-11d7-4a14-8ca2-264838ad4377")
|
||||
)
|
||||
(pad "2" thru_hole oval
|
||||
(at 9.652 21.65 90)
|
||||
(size 1.7 1.7)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "8ebf881d-9c13-462c-80bc-cd4927c19cfc")
|
||||
)
|
||||
(pad "3" thru_hole rect
|
||||
(at 30.226 21.59 90)
|
||||
(size 1.7 1.7)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "f626e4d4-746d-4737-b656-17ede08c9408")
|
||||
)
|
||||
(pad "4" thru_hole oval
|
||||
(at 32.766 21.59 90)
|
||||
(size 1.7 1.7)
|
||||
(drill 1)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "54e638f0-c8e1-4208-936d-a05ad24e571e")
|
||||
)
|
||||
(embedded_fonts no)
|
||||
)
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,964 +0,0 @@
|
||||
(kicad_symbol_lib
|
||||
(version 20241209)
|
||||
(generator https://github.com/tangsangsimida/EasyKiConverter)
|
||||
(symbol "SS12D10G5"
|
||||
(in_bom yes)
|
||||
(on_board yes)
|
||||
(property
|
||||
"Reference"
|
||||
"U"
|
||||
(id 0)
|
||||
(at 0 7.62 0)
|
||||
(effects (font (size 1.27 1.27) (thickness 0) ) )
|
||||
)
|
||||
(property
|
||||
"Value"
|
||||
"SS12D10G5"
|
||||
(id 1)
|
||||
(at 0 -9.00 0)
|
||||
(effects (font (size 1.27 1.27) (thickness 0) ) )
|
||||
)
|
||||
(property
|
||||
"Footprint"
|
||||
"converted:SW-TH_SHOU-HAN_SS12D10G4"
|
||||
(id 2)
|
||||
(at 0 -11.54 0)
|
||||
(effects (font (size 1.27 1.27) (thickness 0) ) hide)
|
||||
)
|
||||
(property
|
||||
"Manufacturer"
|
||||
"SHOU HAN(首韩)"
|
||||
(id 4)
|
||||
(at 0 -14.08 0)
|
||||
(effects (font (size 1.27 1.27) (thickness 0) ) hide)
|
||||
)
|
||||
(property
|
||||
"LCSC Part"
|
||||
"C7431054"
|
||||
(id 5)
|
||||
(at 0 -16.62 0)
|
||||
(effects (font (size 1.27 1.27) (thickness 0) ) hide)
|
||||
)
|
||||
(circle
|
||||
(center -1.33 -1.13)
|
||||
(radius 0.25)
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(circle
|
||||
(center 1.21 -1.13)
|
||||
(radius 0.25)
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(circle
|
||||
(center 3.75 -1.13)
|
||||
(radius 0.25)
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 1.21 1.66) (xy 1.21 4.20))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy -1.33 -0.37) (xy -1.33 1.66) (xy 1.21 1.66) (xy 1.21 -0.37))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 1.21 4.20) (xy 1.71 4.20))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 2.22 4.20) (xy 2.73 4.20))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 3.24 4.20) (xy 3.75 4.20))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 3.75 4.20) (xy 3.75 3.70))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 3.75 3.19) (xy 3.75 2.43))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 3.75 1.92) (xy 3.75 1.16))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 3.75 0.65) (xy 3.75 -0.11))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 3.75 -0.11) (xy 3.75 -0.37))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy -1.33 -0.37) (xy -1.59 0.39))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy -1.33 -0.37) (xy -1.08 0.39))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 1.21 -0.37) (xy 1.46 0.39))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 1.21 -0.37) (xy 0.95 0.39))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 3.75 -0.37) (xy 4.00 0.39))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 3.75 -0.37) (xy 3.49 0.39))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(pin unspecified line
|
||||
(at -1.33 -3.92 90)
|
||||
(length 2.54)
|
||||
(name "1" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
(number "1" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
)
|
||||
(pin unspecified line
|
||||
(at 1.21 -3.92 90)
|
||||
(length 2.54)
|
||||
(name "2" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
(number "2" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
)
|
||||
(pin unspecified line
|
||||
(at 3.75 -3.92 90)
|
||||
(length 2.54)
|
||||
(name "3" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
(number "3" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
)
|
||||
)
|
||||
(symbol "SS12D10G5"
|
||||
(in_bom yes)
|
||||
(on_board yes)
|
||||
(property
|
||||
"Reference"
|
||||
"U"
|
||||
(id 0)
|
||||
(at 0 7.62 0)
|
||||
(effects (font (size 1.27 1.27) (thickness 0) ) )
|
||||
)
|
||||
(property
|
||||
"Value"
|
||||
"SS12D10G5"
|
||||
(id 1)
|
||||
(at 0 -9.00 0)
|
||||
(effects (font (size 1.27 1.27) (thickness 0) ) )
|
||||
)
|
||||
(property
|
||||
"Footprint"
|
||||
"converted:SW-TH_SHOU-HAN_SS12D10G4"
|
||||
(id 2)
|
||||
(at 0 -11.54 0)
|
||||
(effects (font (size 1.27 1.27) (thickness 0) ) hide)
|
||||
)
|
||||
(property
|
||||
"Manufacturer"
|
||||
"SHOU HAN(首韩)"
|
||||
(id 4)
|
||||
(at 0 -14.08 0)
|
||||
(effects (font (size 1.27 1.27) (thickness 0) ) hide)
|
||||
)
|
||||
(property
|
||||
"LCSC Part"
|
||||
"C7431054"
|
||||
(id 5)
|
||||
(at 0 -16.62 0)
|
||||
(effects (font (size 1.27 1.27) (thickness 0) ) hide)
|
||||
)
|
||||
(circle
|
||||
(center -1.33 -1.13)
|
||||
(radius 0.25)
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(circle
|
||||
(center 1.21 -1.13)
|
||||
(radius 0.25)
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(circle
|
||||
(center 3.75 -1.13)
|
||||
(radius 0.25)
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 1.21 1.66) (xy 1.21 4.20))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy -1.33 -0.37) (xy -1.33 1.66) (xy 1.21 1.66) (xy 1.21 -0.37))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 1.21 4.20) (xy 1.71 4.20))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 2.22 4.20) (xy 2.73 4.20))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 3.24 4.20) (xy 3.75 4.20))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 3.75 4.20) (xy 3.75 3.70))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 3.75 3.19) (xy 3.75 2.43))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 3.75 1.92) (xy 3.75 1.16))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 3.75 0.65) (xy 3.75 -0.11))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 3.75 -0.11) (xy 3.75 -0.37))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy -1.33 -0.37) (xy -1.59 0.39))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy -1.33 -0.37) (xy -1.08 0.39))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 1.21 -0.37) (xy 1.46 0.39))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 1.21 -0.37) (xy 0.95 0.39))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 3.75 -0.37) (xy 4.00 0.39))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 3.75 -0.37) (xy 3.49 0.39))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(pin unspecified line
|
||||
(at -1.33 -3.92 90)
|
||||
(length 2.54)
|
||||
(name "1" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
(number "1" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
)
|
||||
(pin unspecified line
|
||||
(at 1.21 -3.92 90)
|
||||
(length 2.54)
|
||||
(name "2" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
(number "2" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
)
|
||||
(pin unspecified line
|
||||
(at 3.75 -3.92 90)
|
||||
(length 2.54)
|
||||
(name "3" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
(number "3" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
)
|
||||
)
|
||||
(symbol "HB9500SS-9.5-10P"
|
||||
(in_bom yes)
|
||||
(on_board yes)
|
||||
(property
|
||||
"Reference"
|
||||
"U"
|
||||
(id 0)
|
||||
(at 0 16.51 0)
|
||||
(effects (font (size 1.27 1.27) (thickness 0) ) )
|
||||
)
|
||||
(property
|
||||
"Value"
|
||||
"HB9500SS-9.5-10P"
|
||||
(id 1)
|
||||
(at 0 -16.51 0)
|
||||
(effects (font (size 1.27 1.27) (thickness 0) ) )
|
||||
)
|
||||
(property
|
||||
"Footprint"
|
||||
"converted:CONN-TH_HB9500SS-9.5-10P"
|
||||
(id 2)
|
||||
(at 0 -19.05 0)
|
||||
(effects (font (size 1.27 1.27) (thickness 0) ) hide)
|
||||
)
|
||||
(property
|
||||
"Datasheet"
|
||||
"https://lcsc.com/product-detail/Barrier-Terminal-Blocks_Cixi-Kefa-Elec-HB9500SS-9-5-10P_C707853.html"
|
||||
(id 3)
|
||||
(at 0 -21.59 0)
|
||||
(effects (font (size 1.27 1.27) (thickness 0) ) hide)
|
||||
)
|
||||
(property
|
||||
"Manufacturer"
|
||||
"KEFA(科发)"
|
||||
(id 4)
|
||||
(at 0 -24.13 0)
|
||||
(effects (font (size 1.27 1.27) (thickness 0) ) hide)
|
||||
)
|
||||
(property
|
||||
"LCSC Part"
|
||||
"C707853"
|
||||
(id 5)
|
||||
(at 0 -26.67 0)
|
||||
(effects (font (size 1.27 1.27) (thickness 0) ) hide)
|
||||
)
|
||||
(rectangle
|
||||
(start -0.97 13.97)
|
||||
(end 4.11 -13.97)
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(circle
|
||||
(center 0.30 12.70)
|
||||
(radius 0.38)
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(pin unspecified line
|
||||
(at -3.51 11.43 0)
|
||||
(length 2.54)
|
||||
(name "1" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
(number "1" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
)
|
||||
(pin unspecified line
|
||||
(at -3.51 8.89 0)
|
||||
(length 2.54)
|
||||
(name "2" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
(number "2" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
)
|
||||
(pin unspecified line
|
||||
(at -3.51 6.35 0)
|
||||
(length 2.54)
|
||||
(name "3" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
(number "3" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
)
|
||||
(pin unspecified line
|
||||
(at -3.51 3.81 0)
|
||||
(length 2.54)
|
||||
(name "4" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
(number "4" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
)
|
||||
(pin unspecified line
|
||||
(at -3.51 1.27 0)
|
||||
(length 2.54)
|
||||
(name "5" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
(number "5" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
)
|
||||
(pin unspecified line
|
||||
(at -3.51 -1.27 0)
|
||||
(length 2.54)
|
||||
(name "6" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
(number "6" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
)
|
||||
(pin unspecified line
|
||||
(at -3.51 -3.81 0)
|
||||
(length 2.54)
|
||||
(name "7" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
(number "7" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
)
|
||||
(pin unspecified line
|
||||
(at -3.51 -6.35 0)
|
||||
(length 2.54)
|
||||
(name "8" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
(number "8" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
)
|
||||
(pin unspecified line
|
||||
(at -3.51 -8.89 0)
|
||||
(length 2.54)
|
||||
(name "9" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
(number "9" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
)
|
||||
(pin unspecified line
|
||||
(at -3.51 -11.43 0)
|
||||
(length 2.54)
|
||||
(name "10" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
(number "10" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
)
|
||||
)
|
||||
(symbol "SS12D10G5"
|
||||
(in_bom yes)
|
||||
(on_board yes)
|
||||
(property
|
||||
"Reference"
|
||||
"U"
|
||||
(id 0)
|
||||
(at 0 7.62 0)
|
||||
(effects (font (size 1.27 1.27) (thickness 0) ) )
|
||||
)
|
||||
(property
|
||||
"Value"
|
||||
"SS12D10G5"
|
||||
(id 1)
|
||||
(at 0 -9.00 0)
|
||||
(effects (font (size 1.27 1.27) (thickness 0) ) )
|
||||
)
|
||||
(property
|
||||
"Footprint"
|
||||
"converted:SW-TH_SHOU-HAN_SS12D10G4"
|
||||
(id 2)
|
||||
(at 0 -11.54 0)
|
||||
(effects (font (size 1.27 1.27) (thickness 0) ) hide)
|
||||
)
|
||||
(property
|
||||
"Manufacturer"
|
||||
"SHOU HAN(首韩)"
|
||||
(id 4)
|
||||
(at 0 -14.08 0)
|
||||
(effects (font (size 1.27 1.27) (thickness 0) ) hide)
|
||||
)
|
||||
(property
|
||||
"LCSC Part"
|
||||
"C7431054"
|
||||
(id 5)
|
||||
(at 0 -16.62 0)
|
||||
(effects (font (size 1.27 1.27) (thickness 0) ) hide)
|
||||
)
|
||||
(circle
|
||||
(center -1.33 -1.13)
|
||||
(radius 0.25)
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(circle
|
||||
(center 1.21 -1.13)
|
||||
(radius 0.25)
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(circle
|
||||
(center 3.75 -1.13)
|
||||
(radius 0.25)
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 1.21 1.66) (xy 1.21 4.20))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy -1.33 -0.37) (xy -1.33 1.66) (xy 1.21 1.66) (xy 1.21 -0.37))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 1.21 4.20) (xy 1.71 4.20))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 2.22 4.20) (xy 2.73 4.20))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 3.24 4.20) (xy 3.75 4.20))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 3.75 4.20) (xy 3.75 3.70))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 3.75 3.19) (xy 3.75 2.43))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 3.75 1.92) (xy 3.75 1.16))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 3.75 0.65) (xy 3.75 -0.11))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 3.75 -0.11) (xy 3.75 -0.37))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy -1.33 -0.37) (xy -1.59 0.39))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy -1.33 -0.37) (xy -1.08 0.39))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 1.21 -0.37) (xy 1.46 0.39))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 1.21 -0.37) (xy 0.95 0.39))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 3.75 -0.37) (xy 4.00 0.39))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 3.75 -0.37) (xy 3.49 0.39))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(pin unspecified line
|
||||
(at -1.33 -3.92 90)
|
||||
(length 2.54)
|
||||
(name "1" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
(number "1" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
)
|
||||
(pin unspecified line
|
||||
(at 1.21 -3.92 90)
|
||||
(length 2.54)
|
||||
(name "2" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
(number "2" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
)
|
||||
(pin unspecified line
|
||||
(at 3.75 -3.92 90)
|
||||
(length 2.54)
|
||||
(name "3" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
(number "3" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
)
|
||||
)
|
||||
(symbol "HB9500SS-9.5-2P"
|
||||
(in_bom yes)
|
||||
(on_board yes)
|
||||
(property
|
||||
"Reference"
|
||||
"U"
|
||||
(id 0)
|
||||
(at 0 7.62 0)
|
||||
(effects (font (size 1.27 1.27) (thickness 0) ) )
|
||||
)
|
||||
(property
|
||||
"Value"
|
||||
"HB9500SS-9.5-2P"
|
||||
(id 1)
|
||||
(at 0 -7.62 0)
|
||||
(effects (font (size 1.27 1.27) (thickness 0) ) )
|
||||
)
|
||||
(property
|
||||
"Footprint"
|
||||
"converted:CONN-TH_HB9500SS-9.5-2P"
|
||||
(id 2)
|
||||
(at 0 -10.16 0)
|
||||
(effects (font (size 1.27 1.27) (thickness 0) ) hide)
|
||||
)
|
||||
(property
|
||||
"Datasheet"
|
||||
"https://lcsc.com/product-detail/Barrier-Terminal-Blocks_Cixi-Kefa-Elec-HB9500SS-9-5-2P_C707845.html"
|
||||
(id 3)
|
||||
(at 0 -12.70 0)
|
||||
(effects (font (size 1.27 1.27) (thickness 0) ) hide)
|
||||
)
|
||||
(property
|
||||
"Manufacturer"
|
||||
"KEFA(科发)"
|
||||
(id 4)
|
||||
(at 0 -15.24 0)
|
||||
(effects (font (size 1.27 1.27) (thickness 0) ) hide)
|
||||
)
|
||||
(property
|
||||
"LCSC Part"
|
||||
"C707845"
|
||||
(id 5)
|
||||
(at 0 -17.78 0)
|
||||
(effects (font (size 1.27 1.27) (thickness 0) ) hide)
|
||||
)
|
||||
(rectangle
|
||||
(start -1.02 3.81)
|
||||
(end 4.06 -3.81)
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(circle
|
||||
(center 0.25 2.54)
|
||||
(radius 0.38)
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(pin unspecified line
|
||||
(at -3.56 1.27 0)
|
||||
(length 2.54)
|
||||
(name "1" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
(number "1" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
)
|
||||
(pin unspecified line
|
||||
(at -3.56 -1.27 0)
|
||||
(length 2.54)
|
||||
(name "2" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
(number "2" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
)
|
||||
)
|
||||
(symbol "SS12D10G5"
|
||||
(in_bom yes)
|
||||
(on_board yes)
|
||||
(property
|
||||
"Reference"
|
||||
"U"
|
||||
(id 0)
|
||||
(at 0 7.62 0)
|
||||
(effects (font (size 1.27 1.27) (thickness 0) ) )
|
||||
)
|
||||
(property
|
||||
"Value"
|
||||
"SS12D10G5"
|
||||
(id 1)
|
||||
(at 0 -9.00 0)
|
||||
(effects (font (size 1.27 1.27) (thickness 0) ) )
|
||||
)
|
||||
(property
|
||||
"Footprint"
|
||||
"converted:SW-TH_SHOU-HAN_SS12D10G4"
|
||||
(id 2)
|
||||
(at 0 -11.54 0)
|
||||
(effects (font (size 1.27 1.27) (thickness 0) ) hide)
|
||||
)
|
||||
(property
|
||||
"Manufacturer"
|
||||
"SHOU HAN(首韩)"
|
||||
(id 4)
|
||||
(at 0 -14.08 0)
|
||||
(effects (font (size 1.27 1.27) (thickness 0) ) hide)
|
||||
)
|
||||
(property
|
||||
"LCSC Part"
|
||||
"C7431054"
|
||||
(id 5)
|
||||
(at 0 -16.62 0)
|
||||
(effects (font (size 1.27 1.27) (thickness 0) ) hide)
|
||||
)
|
||||
(circle
|
||||
(center -1.33 -1.13)
|
||||
(radius 0.25)
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(circle
|
||||
(center 1.21 -1.13)
|
||||
(radius 0.25)
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(circle
|
||||
(center 3.75 -1.13)
|
||||
(radius 0.25)
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 1.21 1.66) (xy 1.21 4.20))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy -1.33 -0.37) (xy -1.33 1.66) (xy 1.21 1.66) (xy 1.21 -0.37))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 1.21 4.20) (xy 1.71 4.20))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 2.22 4.20) (xy 2.73 4.20))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 3.24 4.20) (xy 3.75 4.20))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 3.75 4.20) (xy 3.75 3.70))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 3.75 3.19) (xy 3.75 2.43))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 3.75 1.92) (xy 3.75 1.16))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 3.75 0.65) (xy 3.75 -0.11))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 3.75 -0.11) (xy 3.75 -0.37))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy -1.33 -0.37) (xy -1.59 0.39))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy -1.33 -0.37) (xy -1.08 0.39))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 1.21 -0.37) (xy 1.46 0.39))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 1.21 -0.37) (xy 0.95 0.39))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 3.75 -0.37) (xy 4.00 0.39))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts (xy 3.75 -0.37) (xy 3.49 0.39))
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(pin unspecified line
|
||||
(at -1.33 -3.92 90)
|
||||
(length 2.54)
|
||||
(name "1" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
(number "1" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
)
|
||||
(pin unspecified line
|
||||
(at 1.21 -3.92 90)
|
||||
(length 2.54)
|
||||
(name "2" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
(number "2" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
)
|
||||
(pin unspecified line
|
||||
(at 3.75 -3.92 90)
|
||||
(length 2.54)
|
||||
(name "3" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
(number "3" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
)
|
||||
)
|
||||
(symbol "HB9500SS-9.5-2P"
|
||||
(in_bom yes)
|
||||
(on_board yes)
|
||||
(property
|
||||
"Reference"
|
||||
"U"
|
||||
(id 0)
|
||||
(at 0 7.62 0)
|
||||
(effects (font (size 1.27 1.27) (thickness 0) ) )
|
||||
)
|
||||
(property
|
||||
"Value"
|
||||
"HB9500SS-9.5-2P"
|
||||
(id 1)
|
||||
(at 0 -7.62 0)
|
||||
(effects (font (size 1.27 1.27) (thickness 0) ) )
|
||||
)
|
||||
(property
|
||||
"Footprint"
|
||||
"converted:CONN-TH_HB9500SS-9.5-2P"
|
||||
(id 2)
|
||||
(at 0 -10.16 0)
|
||||
(effects (font (size 1.27 1.27) (thickness 0) ) hide)
|
||||
)
|
||||
(property
|
||||
"Datasheet"
|
||||
"https://lcsc.com/product-detail/Barrier-Terminal-Blocks_Cixi-Kefa-Elec-HB9500SS-9-5-2P_C707845.html"
|
||||
(id 3)
|
||||
(at 0 -12.70 0)
|
||||
(effects (font (size 1.27 1.27) (thickness 0) ) hide)
|
||||
)
|
||||
(property
|
||||
"Manufacturer"
|
||||
"KEFA(科发)"
|
||||
(id 4)
|
||||
(at 0 -15.24 0)
|
||||
(effects (font (size 1.27 1.27) (thickness 0) ) hide)
|
||||
)
|
||||
(property
|
||||
"LCSC Part"
|
||||
"C707845"
|
||||
(id 5)
|
||||
(at 0 -17.78 0)
|
||||
(effects (font (size 1.27 1.27) (thickness 0) ) hide)
|
||||
)
|
||||
(rectangle
|
||||
(start -1.02 3.81)
|
||||
(end 4.06 -3.81)
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(circle
|
||||
(center 0.25 2.54)
|
||||
(radius 0.38)
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(pin unspecified line
|
||||
(at -3.56 1.27 0)
|
||||
(length 2.54)
|
||||
(name "1" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
(number "1" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
)
|
||||
(pin unspecified line
|
||||
(at -3.56 -1.27 0)
|
||||
(length 2.54)
|
||||
(name "2" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
(number "2" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
)
|
||||
)
|
||||
(symbol "HB9500SS-9.5-4P"
|
||||
(in_bom yes)
|
||||
(on_board yes)
|
||||
(property
|
||||
"Reference"
|
||||
"U"
|
||||
(id 0)
|
||||
(at 0 8.89 0)
|
||||
(effects (font (size 1.27 1.27) (thickness 0) ) )
|
||||
)
|
||||
(property
|
||||
"Value"
|
||||
"HB9500SS-9.5-4P"
|
||||
(id 1)
|
||||
(at 0 -8.89 0)
|
||||
(effects (font (size 1.27 1.27) (thickness 0) ) )
|
||||
)
|
||||
(property
|
||||
"Footprint"
|
||||
"converted:CONN-TH_HB9500SS-9.5-4P"
|
||||
(id 2)
|
||||
(at 0 -11.43 0)
|
||||
(effects (font (size 1.27 1.27) (thickness 0) ) hide)
|
||||
)
|
||||
(property
|
||||
"Datasheet"
|
||||
"https://lcsc.com/product-detail/Barrier-Terminal-Blocks_Cixi-Kefa-Elec-HB9500SS-9-5-4P_C707847.html"
|
||||
(id 3)
|
||||
(at 0 -13.97 0)
|
||||
(effects (font (size 1.27 1.27) (thickness 0) ) hide)
|
||||
)
|
||||
(property
|
||||
"Manufacturer"
|
||||
"KEFA(科发)"
|
||||
(id 4)
|
||||
(at 0 -16.51 0)
|
||||
(effects (font (size 1.27 1.27) (thickness 0) ) hide)
|
||||
)
|
||||
(property
|
||||
"LCSC Part"
|
||||
"C707847"
|
||||
(id 5)
|
||||
(at 0 -19.05 0)
|
||||
(effects (font (size 1.27 1.27) (thickness 0) ) hide)
|
||||
)
|
||||
(rectangle
|
||||
(start -1.02 6.35)
|
||||
(end 4.06 -6.35)
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(circle
|
||||
(center 0.25 5.08)
|
||||
(radius 0.38)
|
||||
(stroke (width 0.254) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(pin unspecified line
|
||||
(at -3.56 3.81 0)
|
||||
(length 2.54)
|
||||
(name "1" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
(number "1" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
)
|
||||
(pin unspecified line
|
||||
(at -3.56 1.27 0)
|
||||
(length 2.54)
|
||||
(name "2" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
(number "2" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
)
|
||||
(pin unspecified line
|
||||
(at -3.56 -1.27 0)
|
||||
(length 2.54)
|
||||
(name "3" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
(number "3" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
)
|
||||
(pin unspecified line
|
||||
(at -3.56 -3.81 0)
|
||||
(length 2.54)
|
||||
(name "4" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
(number "4" (effects (font (size 1.27 1.27) (thickness 0) )))
|
||||
)
|
||||
)
|
||||
)
|
||||
@@ -1,643 +0,0 @@
|
||||
(kicad_symbol_lib
|
||||
(version 20241209)
|
||||
(generator "kicad_symbol_editor")
|
||||
(generator_version "9.0")
|
||||
(symbol "HB9500SS-9.5-2P"
|
||||
(exclude_from_sim no)
|
||||
(in_bom yes)
|
||||
(on_board yes)
|
||||
(property "Reference" "U"
|
||||
(at 0 7.62 0)
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Value" "HB9500SS-9.5-2P"
|
||||
(at 0 -7.62 0)
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Footprint" "converted:CONN-TH_HB9500SS-9.5-2P"
|
||||
(at 0 -10.16 0)
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
(hide yes)
|
||||
)
|
||||
)
|
||||
(property "Datasheet" "https://lcsc.com/product-detail/Barrier-Terminal-Blocks_Cixi-Kefa-Elec-HB9500SS-9-5-2P_C707845.html"
|
||||
(at 0 -12.7 0)
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
(hide yes)
|
||||
)
|
||||
)
|
||||
(property "Description" ""
|
||||
(at 0 0 0)
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
(hide yes)
|
||||
)
|
||||
)
|
||||
(property "Manufacturer" "KEFA(科发)"
|
||||
(at 0 -15.24 0)
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
(hide yes)
|
||||
)
|
||||
)
|
||||
(property "LCSC Part" "C707845"
|
||||
(at 0 -17.78 0)
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
(hide yes)
|
||||
)
|
||||
)
|
||||
(symbol "HB9500SS-9.5-2P_1_1"
|
||||
(rectangle
|
||||
(start -1.02 3.81)
|
||||
(end 4.06 -3.81)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(fill
|
||||
(type none)
|
||||
)
|
||||
)
|
||||
(circle
|
||||
(center 0.25 2.54)
|
||||
(radius 0.38)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(fill
|
||||
(type none)
|
||||
)
|
||||
)
|
||||
(pin unspecified line
|
||||
(at -3.56 1.27 0)
|
||||
(length 2.54)
|
||||
(name "1"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "1"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin unspecified line
|
||||
(at -3.56 -1.27 0)
|
||||
(length 2.54)
|
||||
(name "2"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "2"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(embedded_fonts no)
|
||||
)
|
||||
(symbol "HB9500SS-9.5-4P"
|
||||
(exclude_from_sim no)
|
||||
(in_bom yes)
|
||||
(on_board yes)
|
||||
(property "Reference" "U"
|
||||
(at 0 8.89 0)
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Value" "HB9500SS-9.5-4P"
|
||||
(at 0 -8.89 0)
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Footprint" "converted:CONN-TH_HB9500SS-9.5-4P"
|
||||
(at 0 -11.43 0)
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
(hide yes)
|
||||
)
|
||||
)
|
||||
(property "Datasheet" "https://lcsc.com/product-detail/Barrier-Terminal-Blocks_Cixi-Kefa-Elec-HB9500SS-9-5-4P_C707847.html"
|
||||
(at 0 -13.97 0)
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
(hide yes)
|
||||
)
|
||||
)
|
||||
(property "Description" ""
|
||||
(at 0 0 0)
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
(hide yes)
|
||||
)
|
||||
)
|
||||
(property "Manufacturer" "KEFA(科发)"
|
||||
(at 0 -16.51 0)
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
(hide yes)
|
||||
)
|
||||
)
|
||||
(property "LCSC Part" "C707847"
|
||||
(at 0 -19.05 0)
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
(hide yes)
|
||||
)
|
||||
)
|
||||
(symbol "HB9500SS-9.5-4P_1_1"
|
||||
(rectangle
|
||||
(start -1.02 6.35)
|
||||
(end 4.06 -6.35)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(fill
|
||||
(type none)
|
||||
)
|
||||
)
|
||||
(circle
|
||||
(center 0.25 5.08)
|
||||
(radius 0.38)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(fill
|
||||
(type none)
|
||||
)
|
||||
)
|
||||
(pin unspecified line
|
||||
(at -3.56 3.81 0)
|
||||
(length 2.54)
|
||||
(name "1"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "1"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin unspecified line
|
||||
(at -3.56 1.27 0)
|
||||
(length 2.54)
|
||||
(name "2"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "2"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin unspecified line
|
||||
(at -3.56 -1.27 0)
|
||||
(length 2.54)
|
||||
(name "3"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "3"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin unspecified line
|
||||
(at -3.56 -3.81 0)
|
||||
(length 2.54)
|
||||
(name "4"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "4"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(embedded_fonts no)
|
||||
)
|
||||
(symbol "SS12D10G5"
|
||||
(exclude_from_sim no)
|
||||
(in_bom yes)
|
||||
(on_board yes)
|
||||
(property "Reference" "U"
|
||||
(at 0 7.62 0)
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Value" "SS12D10G5"
|
||||
(at 0 -9 0)
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Footprint" "converted:SW-TH_SHOU-HAN_SS12D10G4"
|
||||
(at 0 -11.54 0)
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
(hide yes)
|
||||
)
|
||||
)
|
||||
(property "Datasheet" ""
|
||||
(at 0 0 0)
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
(hide yes)
|
||||
)
|
||||
)
|
||||
(property "Description" ""
|
||||
(at 0 0 0)
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
(hide yes)
|
||||
)
|
||||
)
|
||||
(property "Manufacturer" "SHOU HAN(首韩)"
|
||||
(at 0 -14.08 0)
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
(hide yes)
|
||||
)
|
||||
)
|
||||
(property "LCSC Part" "C7431054"
|
||||
(at 0 -16.62 0)
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
(hide yes)
|
||||
)
|
||||
)
|
||||
(symbol "SS12D10G5_1_1"
|
||||
(polyline
|
||||
(pts
|
||||
(xy -1.33 -0.37) (xy -1.59 0.39)
|
||||
)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(fill
|
||||
(type none)
|
||||
)
|
||||
)
|
||||
(polyline
|
||||
(pts
|
||||
(xy -1.33 -0.37) (xy -1.08 0.39)
|
||||
)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(fill
|
||||
(type none)
|
||||
)
|
||||
)
|
||||
(polyline
|
||||
(pts
|
||||
(xy -1.33 -0.37) (xy -1.33 1.66) (xy 1.21 1.66) (xy 1.21 -0.37)
|
||||
)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(fill
|
||||
(type none)
|
||||
)
|
||||
)
|
||||
(circle
|
||||
(center -1.33 -1.13)
|
||||
(radius 0.25)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(fill
|
||||
(type none)
|
||||
)
|
||||
)
|
||||
(polyline
|
||||
(pts
|
||||
(xy 1.21 4.2) (xy 1.71 4.2)
|
||||
)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(fill
|
||||
(type none)
|
||||
)
|
||||
)
|
||||
(polyline
|
||||
(pts
|
||||
(xy 1.21 1.66) (xy 1.21 4.2)
|
||||
)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(fill
|
||||
(type none)
|
||||
)
|
||||
)
|
||||
(polyline
|
||||
(pts
|
||||
(xy 1.21 -0.37) (xy 0.95 0.39)
|
||||
)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(fill
|
||||
(type none)
|
||||
)
|
||||
)
|
||||
(polyline
|
||||
(pts
|
||||
(xy 1.21 -0.37) (xy 1.46 0.39)
|
||||
)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(fill
|
||||
(type none)
|
||||
)
|
||||
)
|
||||
(circle
|
||||
(center 1.21 -1.13)
|
||||
(radius 0.25)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(fill
|
||||
(type none)
|
||||
)
|
||||
)
|
||||
(polyline
|
||||
(pts
|
||||
(xy 2.22 4.2) (xy 2.73 4.2)
|
||||
)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(fill
|
||||
(type none)
|
||||
)
|
||||
)
|
||||
(polyline
|
||||
(pts
|
||||
(xy 3.24 4.2) (xy 3.75 4.2)
|
||||
)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(fill
|
||||
(type none)
|
||||
)
|
||||
)
|
||||
(polyline
|
||||
(pts
|
||||
(xy 3.75 4.2) (xy 3.75 3.7)
|
||||
)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(fill
|
||||
(type none)
|
||||
)
|
||||
)
|
||||
(polyline
|
||||
(pts
|
||||
(xy 3.75 3.19) (xy 3.75 2.43)
|
||||
)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(fill
|
||||
(type none)
|
||||
)
|
||||
)
|
||||
(polyline
|
||||
(pts
|
||||
(xy 3.75 1.92) (xy 3.75 1.16)
|
||||
)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(fill
|
||||
(type none)
|
||||
)
|
||||
)
|
||||
(polyline
|
||||
(pts
|
||||
(xy 3.75 0.65) (xy 3.75 -0.11)
|
||||
)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(fill
|
||||
(type none)
|
||||
)
|
||||
)
|
||||
(polyline
|
||||
(pts
|
||||
(xy 3.75 -0.11) (xy 3.75 -0.37)
|
||||
)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(fill
|
||||
(type none)
|
||||
)
|
||||
)
|
||||
(polyline
|
||||
(pts
|
||||
(xy 3.75 -0.37) (xy 3.49 0.39)
|
||||
)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(fill
|
||||
(type none)
|
||||
)
|
||||
)
|
||||
(polyline
|
||||
(pts
|
||||
(xy 3.75 -0.37) (xy 4 0.39)
|
||||
)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(fill
|
||||
(type none)
|
||||
)
|
||||
)
|
||||
(circle
|
||||
(center 3.75 -1.13)
|
||||
(radius 0.25)
|
||||
(stroke
|
||||
(width 0.254)
|
||||
(type default)
|
||||
)
|
||||
(fill
|
||||
(type none)
|
||||
)
|
||||
)
|
||||
(pin unspecified line
|
||||
(at -1.33 -3.92 90)
|
||||
(length 2.54)
|
||||
(name "1"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "1"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin unspecified line
|
||||
(at 1.21 -3.92 90)
|
||||
(length 2.54)
|
||||
(name "2"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "2"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pin unspecified line
|
||||
(at 3.75 -3.92 90)
|
||||
(length 2.54)
|
||||
(name "3"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
(number "3"
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(embedded_fonts no)
|
||||
)
|
||||
)
|
||||
@@ -1,222 +0,0 @@
|
||||
(footprint "CONN-TH_HB9500SS-9.5-2P"
|
||||
(version 20241229)
|
||||
(generator "pcbnew")
|
||||
(generator_version "9.0")
|
||||
(layer "F.Cu")
|
||||
(property "Reference" "REF**"
|
||||
(at -8.509 -9.017 0)
|
||||
(layer "F.SilkS")
|
||||
(uuid "c12c5012-e42c-48e6-8649-8d29d929d8d4")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Value" "CONN-TH_HB9500SS-9.5-2P"
|
||||
(at 0.635 9.271 0)
|
||||
(layer "F.Fab")
|
||||
(uuid "5bf005a9-6b42-43d2-88c9-a64eb397f554")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Datasheet" ""
|
||||
(at 0 0 0)
|
||||
(layer "F.Fab")
|
||||
(hide yes)
|
||||
(uuid "2c723e25-892f-4f68-b499-ed6f947e1f16")
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Description" ""
|
||||
(at 0 0 0)
|
||||
(layer "F.Fab")
|
||||
(hide yes)
|
||||
(uuid "65bf4008-8b20-4622-864d-46141a489a05")
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(attr through_hole)
|
||||
(fp_line
|
||||
(start -10.31 -8.11)
|
||||
(end -10.31 8.09)
|
||||
(stroke
|
||||
(width 0.25)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "1481d5cf-5542-46ec-9342-44b4c476969c")
|
||||
)
|
||||
(fp_line
|
||||
(start 10.29 -8.11)
|
||||
(end -10.31 -8.11)
|
||||
(stroke
|
||||
(width 0.25)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "ddd63f81-9010-4a5c-b229-e14f2093d268")
|
||||
)
|
||||
(fp_line
|
||||
(start 10.29 -8.11)
|
||||
(end 10.29 8.09)
|
||||
(stroke
|
||||
(width 0.25)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "aa0855fe-2496-48f0-bed0-ddbf8099e675")
|
||||
)
|
||||
(fp_line
|
||||
(start 10.29 8.09)
|
||||
(end -10.31 8.09)
|
||||
(stroke
|
||||
(width 0.25)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "1d639874-53f8-4cd7-bac0-9898b6a7978c")
|
||||
)
|
||||
(fp_circle
|
||||
(center -10.44 8.22)
|
||||
(end -10.42 8.22)
|
||||
(stroke
|
||||
(width 0.06)
|
||||
(type solid)
|
||||
)
|
||||
(fill no)
|
||||
(layer "F.SilkS")
|
||||
(uuid "fc3a73fb-c184-4e20-8220-1fe10f8bf36e")
|
||||
)
|
||||
(fp_line
|
||||
(start -10.44 -8.23)
|
||||
(end 10.42 -8.23)
|
||||
(stroke
|
||||
(width 0.05)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.CrtYd")
|
||||
(uuid "78c920b4-9948-44f0-8049-40b68060f611")
|
||||
)
|
||||
(fp_line
|
||||
(start -10.44 8.22)
|
||||
(end -10.44 -8.23)
|
||||
(stroke
|
||||
(width 0.05)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.CrtYd")
|
||||
(uuid "9f7e327e-89fe-4a17-8da1-ba8f8dc254cd")
|
||||
)
|
||||
(fp_line
|
||||
(start 10.42 -8.23)
|
||||
(end 10.42 8.22)
|
||||
(stroke
|
||||
(width 0.05)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.CrtYd")
|
||||
(uuid "ec8dea4a-c621-448d-ab70-486ac2a51be9")
|
||||
)
|
||||
(fp_line
|
||||
(start 10.42 8.22)
|
||||
(end -10.44 8.22)
|
||||
(stroke
|
||||
(width 0.05)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.CrtYd")
|
||||
(uuid "8a381d58-1e0a-4926-affe-40f786b923f8")
|
||||
)
|
||||
(fp_circle
|
||||
(center -4.76 -4.11)
|
||||
(end -4.32 -4.11)
|
||||
(stroke
|
||||
(width 0.9)
|
||||
(type solid)
|
||||
)
|
||||
(fill no)
|
||||
(layer "F.Fab")
|
||||
(uuid "3f747209-1430-44fb-85d5-bb449bd7f380")
|
||||
)
|
||||
(fp_circle
|
||||
(center 4.74 -4.11)
|
||||
(end 5.18 -4.11)
|
||||
(stroke
|
||||
(width 0.9)
|
||||
(type solid)
|
||||
)
|
||||
(fill no)
|
||||
(layer "F.Fab")
|
||||
(uuid "65d4933f-0ab6-4462-aa92-bac7488d7d5b")
|
||||
)
|
||||
(fp_text user "${REFERENCE}"
|
||||
(at -4.572 6.731 0)
|
||||
(layer "F.Fab")
|
||||
(uuid "6b75b0dd-b12e-47e9-be93-6ec825a121d6")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pad "1" thru_hole rect
|
||||
(at -4.76 -4.11)
|
||||
(size 3.49 3.49)
|
||||
(drill 1.98)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "6809a690-a23e-4609-bec8-68265c6ff4ee")
|
||||
)
|
||||
(pad "2" thru_hole custom
|
||||
(at 4.74 -4.11)
|
||||
(size 3.49 3.49)
|
||||
(drill 1.98)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(options
|
||||
(clearance outline)
|
||||
(anchor circle)
|
||||
)
|
||||
(primitives)
|
||||
(uuid "06a8144f-36f2-452d-8a20-9bcfd5b58137")
|
||||
)
|
||||
(embedded_fonts no)
|
||||
(model "../converted.3dmodels/CONN-TH_HB9500SS-9.5-2P.wrl"
|
||||
(offset
|
||||
(xyz -0.01 0.01 13)
|
||||
)
|
||||
(scale
|
||||
(xyz 1 1 1)
|
||||
)
|
||||
(rotate
|
||||
(xyz -0 -0 -0)
|
||||
)
|
||||
)
|
||||
(model "../converted.3dmodels/CONN-TH_HB9500SS-9.5-2P.step"
|
||||
(hide yes)
|
||||
(offset
|
||||
(xyz -0.01 0.01 0)
|
||||
)
|
||||
(scale
|
||||
(xyz 1 1 1)
|
||||
)
|
||||
(rotate
|
||||
(xyz 0 0 0)
|
||||
)
|
||||
)
|
||||
)
|
||||
@@ -1,270 +0,0 @@
|
||||
(footprint "CONN-TH_HB9500SS-9.5-4P"
|
||||
(version 20241229)
|
||||
(generator "pcbnew")
|
||||
(generator_version "9.0")
|
||||
(layer "F.Cu")
|
||||
(property "Reference" "REF**"
|
||||
(at -17.907 -9.144 0)
|
||||
(layer "F.SilkS")
|
||||
(uuid "c0ae3e6b-a9f8-4e44-a9cf-dfe0c175feec")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Value" "CONN-TH_HB9500SS-9.5-4P"
|
||||
(at -8.255 7.112 0)
|
||||
(layer "F.Fab")
|
||||
(uuid "9ce19949-9a26-4a0f-a7a2-cf8bc1ebe1b0")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Datasheet" ""
|
||||
(at 0 0 0)
|
||||
(layer "F.Fab")
|
||||
(hide yes)
|
||||
(uuid "664e8648-cd07-496d-84e7-f01eba29a795")
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Description" ""
|
||||
(at 0 0 0)
|
||||
(layer "F.Fab")
|
||||
(hide yes)
|
||||
(uuid "c2b870e8-c465-4b9e-82fe-e186de6e1e7a")
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(attr through_hole)
|
||||
(fp_line
|
||||
(start -19.81 -8.11)
|
||||
(end -19.81 8.09)
|
||||
(stroke
|
||||
(width 0.25)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "d0a85028-4765-4808-8a4f-a662d7b9aac1")
|
||||
)
|
||||
(fp_line
|
||||
(start 19.79 -8.11)
|
||||
(end -19.81 -8.11)
|
||||
(stroke
|
||||
(width 0.25)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "771ae154-b508-4c1a-acc4-930b3bc38f32")
|
||||
)
|
||||
(fp_line
|
||||
(start 19.79 -8.11)
|
||||
(end 19.79 8.09)
|
||||
(stroke
|
||||
(width 0.25)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "3e727369-2ed3-471c-996b-86d45dd84e37")
|
||||
)
|
||||
(fp_line
|
||||
(start 19.79 8.09)
|
||||
(end -19.81 8.09)
|
||||
(stroke
|
||||
(width 0.25)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "d4a5f618-7fe4-4766-82e7-e810d1c3dafb")
|
||||
)
|
||||
(fp_circle
|
||||
(center -19.94 8.22)
|
||||
(end -19.92 8.22)
|
||||
(stroke
|
||||
(width 0.06)
|
||||
(type solid)
|
||||
)
|
||||
(fill no)
|
||||
(layer "F.SilkS")
|
||||
(uuid "76b1a2dc-fcff-4bd9-b83b-f70242cfd254")
|
||||
)
|
||||
(fp_line
|
||||
(start -19.94 -8.23)
|
||||
(end 19.92 -8.23)
|
||||
(stroke
|
||||
(width 0.05)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.CrtYd")
|
||||
(uuid "e29763e2-63a2-4359-b9ad-6d48b3d6440d")
|
||||
)
|
||||
(fp_line
|
||||
(start -19.94 8.22)
|
||||
(end -19.94 -8.23)
|
||||
(stroke
|
||||
(width 0.05)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.CrtYd")
|
||||
(uuid "736aec42-49f7-454b-ab35-e79944aa0e2f")
|
||||
)
|
||||
(fp_line
|
||||
(start 19.92 -8.23)
|
||||
(end 19.92 8.22)
|
||||
(stroke
|
||||
(width 0.05)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.CrtYd")
|
||||
(uuid "3c0a4486-e7a7-4381-94ae-820aca1a01b1")
|
||||
)
|
||||
(fp_line
|
||||
(start 19.92 8.22)
|
||||
(end -19.94 8.22)
|
||||
(stroke
|
||||
(width 0.05)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.CrtYd")
|
||||
(uuid "0ad2e2f8-ebfa-4213-beb8-1feb018c1df2")
|
||||
)
|
||||
(fp_circle
|
||||
(center -14.26 -4.11)
|
||||
(end -13.82 -4.11)
|
||||
(stroke
|
||||
(width 0.9)
|
||||
(type solid)
|
||||
)
|
||||
(fill no)
|
||||
(layer "F.Fab")
|
||||
(uuid "2f8fd3ae-ebbc-49d2-8506-541924354afd")
|
||||
)
|
||||
(fp_circle
|
||||
(center -4.76 -4.11)
|
||||
(end -4.32 -4.11)
|
||||
(stroke
|
||||
(width 0.9)
|
||||
(type solid)
|
||||
)
|
||||
(fill no)
|
||||
(layer "F.Fab")
|
||||
(uuid "551f636f-0ae6-4342-9aab-4cc9f3ebdf08")
|
||||
)
|
||||
(fp_circle
|
||||
(center 4.74 -4.11)
|
||||
(end 5.18 -4.11)
|
||||
(stroke
|
||||
(width 0.9)
|
||||
(type solid)
|
||||
)
|
||||
(fill no)
|
||||
(layer "F.Fab")
|
||||
(uuid "ec8c1c65-caba-4310-aa54-4663841e7652")
|
||||
)
|
||||
(fp_circle
|
||||
(center 14.24 -4.11)
|
||||
(end 14.68 -4.11)
|
||||
(stroke
|
||||
(width 0.9)
|
||||
(type solid)
|
||||
)
|
||||
(fill no)
|
||||
(layer "F.Fab")
|
||||
(uuid "6a2ad5ed-3308-4d07-b51a-04c2e3b56019")
|
||||
)
|
||||
(fp_text user "${REFERENCE}"
|
||||
(at -14.097 5.461 0)
|
||||
(layer "F.Fab")
|
||||
(uuid "347edc2a-c557-4107-bd32-dba62d8a267a")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pad "1" thru_hole rect
|
||||
(at -14.26 -4.11)
|
||||
(size 3.49 3.49)
|
||||
(drill 1.98)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "c7f09bd1-e6e1-4ddb-9083-b56d907ae18e")
|
||||
)
|
||||
(pad "2" thru_hole custom
|
||||
(at -4.76 -4.11)
|
||||
(size 3.49 3.49)
|
||||
(drill 1.98)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(options
|
||||
(clearance outline)
|
||||
(anchor circle)
|
||||
)
|
||||
(primitives)
|
||||
(uuid "8a6e9fbd-42b4-4221-b06a-3f4e11210df4")
|
||||
)
|
||||
(pad "3" thru_hole custom
|
||||
(at 4.74 -4.11)
|
||||
(size 3.49 3.49)
|
||||
(drill 1.98)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(options
|
||||
(clearance outline)
|
||||
(anchor circle)
|
||||
)
|
||||
(primitives)
|
||||
(uuid "bdd3bcda-3f18-4ec2-8ed2-4988f4a8b8dc")
|
||||
)
|
||||
(pad "4" thru_hole custom
|
||||
(at 14.24 -4.11)
|
||||
(size 3.49 3.49)
|
||||
(drill 1.98)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(options
|
||||
(clearance outline)
|
||||
(anchor circle)
|
||||
)
|
||||
(primitives)
|
||||
(uuid "8827f79c-625f-4698-900e-e97c230b4625")
|
||||
)
|
||||
(embedded_fonts no)
|
||||
(model "../converted.3dmodels/CONN-TH_HB9500SS-9.5-4P.wrl"
|
||||
(offset
|
||||
(xyz -0.01 0.01 13)
|
||||
)
|
||||
(scale
|
||||
(xyz 1 1 1)
|
||||
)
|
||||
(rotate
|
||||
(xyz -0 -0 -0)
|
||||
)
|
||||
)
|
||||
(model "../converted.3dmodels/CONN-TH_HB9500SS-9.5-4P.step"
|
||||
(hide yes)
|
||||
(offset
|
||||
(xyz -0.01 0 0)
|
||||
)
|
||||
(scale
|
||||
(xyz 1 1 1)
|
||||
)
|
||||
(rotate
|
||||
(xyz -0 -0 -0)
|
||||
)
|
||||
)
|
||||
)
|
||||
@@ -1,469 +0,0 @@
|
||||
(footprint "SW-TH_SHOU-HAN_SS12D10G4"
|
||||
(version 20241229)
|
||||
(generator "pcbnew")
|
||||
(generator_version "9.0")
|
||||
(layer "F.Cu")
|
||||
(property "Reference" "REF**"
|
||||
(at -4.445 -4.318 0)
|
||||
(layer "F.SilkS")
|
||||
(uuid "5ed66327-f9fb-4d7c-8054-7b0d63080912")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Value" "SW-TH_SHOU-HAN_SS12D10G4"
|
||||
(at 0.01 6.35 0)
|
||||
(layer "F.Fab")
|
||||
(uuid "a6e76fc0-97d9-4037-bf04-5478afe716a1")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Datasheet" ""
|
||||
(at 0 0 0)
|
||||
(layer "F.Fab")
|
||||
(hide yes)
|
||||
(uuid "6edf8423-11f3-46c4-8118-bdd56628d4d2")
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Description" ""
|
||||
(at 0 0 0)
|
||||
(layer "F.Fab")
|
||||
(hide yes)
|
||||
(uuid "1ce72336-3690-4698-90f5-1eab3d1e7954")
|
||||
(effects
|
||||
(font
|
||||
(size 1.27 1.27)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(attr through_hole)
|
||||
(fp_line
|
||||
(start -6.34 -3.37)
|
||||
(end -6.34 3.33)
|
||||
(stroke
|
||||
(width 0.25)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "edfa1e33-a6f3-43aa-b114-10773ba38cbb")
|
||||
)
|
||||
(fp_line
|
||||
(start -6.34 -3.37)
|
||||
(end 6.36 -3.37)
|
||||
(stroke
|
||||
(width 0.25)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "41dfc94d-b818-4517-b6f1-fdc7fa7c2713")
|
||||
)
|
||||
(fp_line
|
||||
(start -3.54 -1.82)
|
||||
(end -3.54 1.78)
|
||||
(stroke
|
||||
(width 0.25)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "a0780d6f-2e1c-4733-9075-3920046b7d72")
|
||||
)
|
||||
(fp_line
|
||||
(start -3.54 1.78)
|
||||
(end 3.56 1.78)
|
||||
(stroke
|
||||
(width 0.25)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "a04b6865-8dca-404b-8ccb-ffe25b2ee3cc")
|
||||
)
|
||||
(fp_line
|
||||
(start -3.23 -1.82)
|
||||
(end -3.23 1.78)
|
||||
(stroke
|
||||
(width 0.25)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "2c1bb9d3-263f-4f04-b2ee-83dc89347e0f")
|
||||
)
|
||||
(fp_line
|
||||
(start -3.23 1.78)
|
||||
(end -3.24 1.78)
|
||||
(stroke
|
||||
(width 0.25)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "77b8a0cd-8fd0-4131-8438-ed063bea600e")
|
||||
)
|
||||
(fp_line
|
||||
(start -2.75 -1.82)
|
||||
(end -2.75 1.78)
|
||||
(stroke
|
||||
(width 0.25)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "0e2ccd31-fb9b-463e-a33a-61e01e44dc1b")
|
||||
)
|
||||
(fp_line
|
||||
(start -2.75 1.78)
|
||||
(end -2.76 1.78)
|
||||
(stroke
|
||||
(width 0.25)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "18d67333-131e-4bda-bfdb-ba713c62013d")
|
||||
)
|
||||
(fp_line
|
||||
(start -2.27 -1.82)
|
||||
(end -2.27 1.78)
|
||||
(stroke
|
||||
(width 0.25)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "abdec75e-7eb8-4f17-8b4b-9c596eabe352")
|
||||
)
|
||||
(fp_line
|
||||
(start -2.27 1.78)
|
||||
(end -2.28 1.78)
|
||||
(stroke
|
||||
(width 0.25)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "a959e6a0-7b97-45ae-b157-9ecb2fb570a6")
|
||||
)
|
||||
(fp_line
|
||||
(start -1.79 -1.82)
|
||||
(end -1.79 1.78)
|
||||
(stroke
|
||||
(width 0.25)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "1fc7b986-ec3c-4141-bf36-fb8d92b05145")
|
||||
)
|
||||
(fp_line
|
||||
(start -1.79 1.78)
|
||||
(end -1.8 1.78)
|
||||
(stroke
|
||||
(width 0.25)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "e17524ab-51cf-46ae-a06f-ddbdff6d48a3")
|
||||
)
|
||||
(fp_line
|
||||
(start -1.31 -1.82)
|
||||
(end -1.31 1.78)
|
||||
(stroke
|
||||
(width 0.25)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "b1e9ee37-1e05-4f92-ad6a-d6b31e0f90f9")
|
||||
)
|
||||
(fp_line
|
||||
(start -1.31 1.78)
|
||||
(end -1.25 1.78)
|
||||
(stroke
|
||||
(width 0.25)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "acc0a04e-3e0d-49b8-8e3a-4e7851ccc22f")
|
||||
)
|
||||
(fp_line
|
||||
(start 2.46 -1.82)
|
||||
(end -3.54 -1.82)
|
||||
(stroke
|
||||
(width 0.25)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "c277423b-07cd-4ac0-9a12-03b72baf6711")
|
||||
)
|
||||
(fp_line
|
||||
(start 2.75 -1.82)
|
||||
(end 2.32 -1.82)
|
||||
(stroke
|
||||
(width 0.25)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "2dddd5ca-5a88-4fe7-837d-80115c141db9")
|
||||
)
|
||||
(fp_line
|
||||
(start 3.56 -1.82)
|
||||
(end 2.56 -1.82)
|
||||
(stroke
|
||||
(width 0.25)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "bf5e62a5-f54a-412a-b2f9-eb10849fcb84")
|
||||
)
|
||||
(fp_line
|
||||
(start 3.56 -1.32)
|
||||
(end 3.56 -1.82)
|
||||
(stroke
|
||||
(width 0.25)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "58137773-8868-4f51-8aed-787aef25ef6c")
|
||||
)
|
||||
(fp_line
|
||||
(start 3.56 1.78)
|
||||
(end 3.56 -1.32)
|
||||
(stroke
|
||||
(width 0.25)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "222f5c11-9e32-4f91-b0e6-799d98e21a22")
|
||||
)
|
||||
(fp_line
|
||||
(start 6.36 -3.37)
|
||||
(end 6.36 3.33)
|
||||
(stroke
|
||||
(width 0.25)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "4694f741-a131-4506-8db3-2e2c788c42a3")
|
||||
)
|
||||
(fp_line
|
||||
(start 6.36 3.33)
|
||||
(end -6.34 3.33)
|
||||
(stroke
|
||||
(width 0.25)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.SilkS")
|
||||
(uuid "d5ceffb9-ee1d-400b-b842-6d00a87f873e")
|
||||
)
|
||||
(fp_circle
|
||||
(center -6.34 3.33)
|
||||
(end -6.32 3.33)
|
||||
(stroke
|
||||
(width 0.06)
|
||||
(type solid)
|
||||
)
|
||||
(fill no)
|
||||
(layer "F.SilkS")
|
||||
(uuid "c7c87e65-ad10-451e-a568-98d05f79158d")
|
||||
)
|
||||
(fp_poly
|
||||
(pts
|
||||
(xy -2.39 -1.15) (xy 0.01 -1.15) (xy 0.01 1.25) (xy -2.39 1.25) (xy -2.39 -1.15)
|
||||
)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(fill yes)
|
||||
(layer "Dwgs.User")
|
||||
(uuid "066bb198-fc4b-473c-ab6c-bd4faa99488e")
|
||||
)
|
||||
(fp_poly
|
||||
(pts
|
||||
(xy -0.01 -1.15) (xy 2.39 -1.15) (xy 2.43 -1.15) (xy 2.43 -0.84) (xy -0.01 -0.84) (xy -0.01 -0.94)
|
||||
(xy -0.01 -1.15)
|
||||
)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(fill yes)
|
||||
(layer "Dwgs.User")
|
||||
(uuid "e9f45446-23c6-4313-8823-cfe3814470bf")
|
||||
)
|
||||
(fp_poly
|
||||
(pts
|
||||
(xy -0.01 0.99) (xy 2.39 0.99) (xy 2.42 0.99) (xy 2.42 1.29) (xy -0.02 1.29) (xy -0.02 1.19) (xy -0.01 0.99)
|
||||
)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(fill yes)
|
||||
(layer "Dwgs.User")
|
||||
(uuid "071ddbb8-ab59-4827-ac61-fb6a1fb7da3e")
|
||||
)
|
||||
(fp_poly
|
||||
(pts
|
||||
(xy -0.01 1.28) (xy -0.01 -1.12) (xy -0.01 -1.15) (xy 0.29 -1.15) (xy 0.29 1.29) (xy 0.19 1.29) (xy -0.01 1.28)
|
||||
)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(fill yes)
|
||||
(layer "Dwgs.User")
|
||||
(uuid "d66077c9-60a9-4457-9700-879ba9abc74c")
|
||||
)
|
||||
(fp_poly
|
||||
(pts
|
||||
(xy 2.13 1.29) (xy 2.13 -1.11) (xy 2.13 -1.14) (xy 2.44 -1.14) (xy 2.44 1.29) (xy 2.33 1.29) (xy 2.13 1.29)
|
||||
)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(fill yes)
|
||||
(layer "Dwgs.User")
|
||||
(uuid "d261527b-fb0f-41f8-81fc-4a7d9dcbab0d")
|
||||
)
|
||||
(fp_line
|
||||
(start -6.34 -3.37)
|
||||
(end 6.36 -3.37)
|
||||
(stroke
|
||||
(width 0.05)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.CrtYd")
|
||||
(uuid "0234a2d4-a928-40fb-9a75-ac1135df590a")
|
||||
)
|
||||
(fp_line
|
||||
(start -6.34 3.33)
|
||||
(end -6.34 -3.37)
|
||||
(stroke
|
||||
(width 0.05)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.CrtYd")
|
||||
(uuid "fb22553b-4aad-4c01-beed-e81c95d0844c")
|
||||
)
|
||||
(fp_line
|
||||
(start 6.36 -3.37)
|
||||
(end 6.36 3.33)
|
||||
(stroke
|
||||
(width 0.05)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.CrtYd")
|
||||
(uuid "5a3774eb-4386-4681-986a-ec8c83731b29")
|
||||
)
|
||||
(fp_line
|
||||
(start 6.36 3.33)
|
||||
(end -6.34 3.33)
|
||||
(stroke
|
||||
(width 0.05)
|
||||
(type solid)
|
||||
)
|
||||
(layer "F.CrtYd")
|
||||
(uuid "2cd90ec7-4db4-419d-9a9d-c599d6e5786e")
|
||||
)
|
||||
(fp_poly
|
||||
(pts
|
||||
(xy -5.19 -0.67) (xy -4.39 -0.67) (xy -4.39 0.63) (xy -5.19 0.63) (xy -5.19 -0.67)
|
||||
)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(fill yes)
|
||||
(layer "F.Fab")
|
||||
(uuid "e745ca8c-9698-4c18-8a97-bbb0a42010bd")
|
||||
)
|
||||
(fp_poly
|
||||
(pts
|
||||
(xy -0.39 -0.67) (xy 0.41 -0.67) (xy 0.41 0.63) (xy -0.39 0.63) (xy -0.39 -0.67)
|
||||
)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(fill yes)
|
||||
(layer "F.Fab")
|
||||
(uuid "19264bfb-3d94-4fd7-877f-c52270adc575")
|
||||
)
|
||||
(fp_poly
|
||||
(pts
|
||||
(xy 4.41 -0.67) (xy 5.21 -0.67) (xy 5.21 0.63) (xy 4.41 0.63) (xy 4.41 -0.67)
|
||||
)
|
||||
(stroke
|
||||
(width 0.1)
|
||||
(type solid)
|
||||
)
|
||||
(fill yes)
|
||||
(layer "F.Fab")
|
||||
(uuid "e1bc0efc-2e99-4061-b488-9ffd0b8d6497")
|
||||
)
|
||||
(fp_text user "${REFERENCE}"
|
||||
(at 0 4.445 0)
|
||||
(layer "F.Fab")
|
||||
(uuid "17a74dde-7a03-4ba7-9412-3ab3cb468052")
|
||||
(effects
|
||||
(font
|
||||
(size 1 1)
|
||||
(thickness 0.15)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pad "1" thru_hole oval
|
||||
(at -4.79 -0.02)
|
||||
(size 1.69 2.89)
|
||||
(drill oval 1.1 2.29)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "7ef401ff-3953-4173-8a34-968aa481e74c")
|
||||
)
|
||||
(pad "2" thru_hole oval
|
||||
(at 0.01 -0.02)
|
||||
(size 1.69 2.89)
|
||||
(drill oval 1.1 2.29)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "d765877f-f49c-4662-a893-ecb848b19fb7")
|
||||
)
|
||||
(pad "3" thru_hole oval
|
||||
(at 4.81 -0.02)
|
||||
(size 1.69 2.89)
|
||||
(drill oval 1.1 2.29)
|
||||
(layers "*.Cu" "*.Mask")
|
||||
(remove_unused_layers no)
|
||||
(uuid "11d41814-1adb-4370-95ee-969557b370aa")
|
||||
)
|
||||
(embedded_fonts no)
|
||||
(model "../converted.3dmodels/SW-TH_SHOU-HAN_SS12D10G4.wrl"
|
||||
(offset
|
||||
(xyz -0.01 0 0)
|
||||
)
|
||||
(scale
|
||||
(xyz 1 1 1)
|
||||
)
|
||||
(rotate
|
||||
(xyz 0 0 0)
|
||||
)
|
||||
)
|
||||
(model "../converted.3dmodels/SW-TH_SHOU-HAN_SS12D10G4.step"
|
||||
(offset
|
||||
(xyz -0.01 0 0)
|
||||
)
|
||||
(scale
|
||||
(xyz 1 1 1)
|
||||
)
|
||||
(rotate
|
||||
(xyz 0 0 0)
|
||||
)
|
||||
)
|
||||
)
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,215 +0,0 @@
|
||||
%TF.GenerationSoftware,KiCad,Pcbnew,10.0.1*%
|
||||
%TF.CreationDate,2026-04-17T01:40:59+08:00*%
|
||||
%TF.ProjectId,HeliosDAONE,48656c69-6f73-4444-914f-4e452e6b6963,rev?*%
|
||||
%TF.SameCoordinates,Original*%
|
||||
%TF.FileFunction,Soldermask,Bot*%
|
||||
%TF.FilePolarity,Negative*%
|
||||
%FSLAX46Y46*%
|
||||
G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)*
|
||||
G04 Created by KiCad (PCBNEW 10.0.1) date 2026-04-17 01:40:59*
|
||||
%MOMM*%
|
||||
%LPD*%
|
||||
G01*
|
||||
G04 APERTURE LIST*
|
||||
G04 Aperture macros list*
|
||||
%AMRoundRect*
|
||||
0 Rectangle with rounded corners*
|
||||
0 $1 Rounding radius*
|
||||
0 $2 $3 $4 $5 $6 $7 $8 $9 X,Y pos of 4 corners*
|
||||
0 Add a 4 corners polygon primitive as box body*
|
||||
4,1,4,$2,$3,$4,$5,$6,$7,$8,$9,$2,$3,0*
|
||||
0 Add four circle primitives for the rounded corners*
|
||||
1,1,$1+$1,$2,$3*
|
||||
1,1,$1+$1,$4,$5*
|
||||
1,1,$1+$1,$6,$7*
|
||||
1,1,$1+$1,$8,$9*
|
||||
0 Add four rect primitives between the rounded corners*
|
||||
20,1,$1+$1,$2,$3,$4,$5,0*
|
||||
20,1,$1+$1,$4,$5,$6,$7,0*
|
||||
20,1,$1+$1,$6,$7,$8,$9,0*
|
||||
20,1,$1+$1,$8,$9,$2,$3,0*%
|
||||
%AMFreePoly0*
|
||||
4,1,49,0.340433,1.711470,0.560912,1.652393,0.771794,1.565043,0.969470,1.450914,1.150558,1.311960,1.311960,1.150558,1.450914,0.969470,1.565043,0.771794,1.652393,0.560912,1.711470,0.340433,1.741264,0.114128,1.741264,-0.114128,1.711470,-0.340433,1.652393,-0.560912,1.565043,-0.771794,1.450914,-0.969470,1.311960,-1.150558,1.150558,-1.311960,0.969470,-1.450914,0.771794,-1.565043,
|
||||
0.560912,-1.652393,0.340433,-1.711470,0.114128,-1.741264,-0.114128,-1.741264,-0.340433,-1.711470,-0.560912,-1.652393,-0.771794,-1.565043,-0.969470,-1.450914,-1.150558,-1.311960,-1.311960,-1.150558,-1.450914,-0.969470,-1.565043,-0.771794,-1.652393,-0.560912,-1.711470,-0.340433,-1.741264,-0.114128,-1.741264,0.114128,-1.711470,0.340433,-1.652393,0.560912,-1.565043,0.771794,-1.450914,0.969470,
|
||||
-1.311960,1.150558,-1.150558,1.311960,-0.969470,1.450914,-0.771794,1.565043,-0.560912,1.652393,-0.340433,1.711470,-0.114128,1.741264,0.114128,1.741264,0.340433,1.711470,0.340433,1.711470,$1*%
|
||||
G04 Aperture macros list end*
|
||||
%ADD10C,5.080000*%
|
||||
%ADD11O,1.700000X1.700000*%
|
||||
%ADD12R,1.700000X1.700000*%
|
||||
%ADD13C,1.500000*%
|
||||
%ADD14R,1.500000X1.500000*%
|
||||
%ADD15C,2.000000*%
|
||||
%ADD16C,4.000000*%
|
||||
%ADD17O,2.890000X1.690000*%
|
||||
%ADD18R,3.490000X3.490000*%
|
||||
%ADD19FreePoly0,180.000000*%
|
||||
%ADD20C,1.700000*%
|
||||
%ADD21C,2.500000*%
|
||||
%ADD22RoundRect,0.250000X1.000000X1.000000X-1.000000X1.000000X-1.000000X-1.000000X1.000000X-1.000000X0*%
|
||||
%ADD23C,1.800000*%
|
||||
G04 APERTURE END LIST*
|
||||
D10*
|
||||
%TO.C,U5*%
|
||||
X43486000Y-48507000D03*
|
||||
X67616000Y-66414000D03*
|
||||
X26976000Y-48507000D03*
|
||||
X67616000Y-90544000D03*
|
||||
D11*
|
||||
X58436000Y-104094000D03*
|
||||
D12*
|
||||
X58436000Y-111714000D03*
|
||||
D13*
|
||||
X26976000Y-89144000D03*
|
||||
X26976000Y-86604000D03*
|
||||
X26976000Y-84064000D03*
|
||||
X26976000Y-81524000D03*
|
||||
D14*
|
||||
X26976000Y-78984000D03*
|
||||
D13*
|
||||
X26976000Y-76444000D03*
|
||||
%TD*%
|
||||
D11*
|
||||
%TO.C,U2*%
|
||||
X79846000Y-159237700D03*
|
||||
X79846000Y-161777700D03*
|
||||
X79846000Y-164317700D03*
|
||||
X79846000Y-166857700D03*
|
||||
X79846000Y-169397700D03*
|
||||
X79846000Y-171937700D03*
|
||||
X79846000Y-174477700D03*
|
||||
D12*
|
||||
X79846000Y-177017700D03*
|
||||
%TD*%
|
||||
D15*
|
||||
%TO.C,SW2*%
|
||||
X113153100Y-171754700D03*
|
||||
X113153100Y-182754700D03*
|
||||
D16*
|
||||
X119403100Y-179754700D03*
|
||||
X106903100Y-179754700D03*
|
||||
X119403100Y-174754700D03*
|
||||
X106903100Y-174754700D03*
|
||||
%TD*%
|
||||
D15*
|
||||
%TO.C,SW1*%
|
||||
X92964050Y-171754700D03*
|
||||
X92964050Y-182754700D03*
|
||||
D16*
|
||||
X99214050Y-179754700D03*
|
||||
X86714050Y-179754700D03*
|
||||
X99214050Y-174754700D03*
|
||||
X86714050Y-174754700D03*
|
||||
%TD*%
|
||||
D12*
|
||||
%TO.C,T1*%
|
||||
X120206100Y-99847000D03*
|
||||
D11*
|
||||
X120206100Y-94767000D03*
|
||||
D12*
|
||||
X120146100Y-74193000D03*
|
||||
D11*
|
||||
X120146100Y-71653000D03*
|
||||
%TD*%
|
||||
D17*
|
||||
%TO.C,SW3*%
|
||||
X112727505Y-164037700D03*
|
||||
X112727505Y-159237700D03*
|
||||
X112727505Y-154437700D03*
|
||||
%TD*%
|
||||
D18*
|
||||
%TO.C,J1*%
|
||||
X115923100Y-37140300D03*
|
||||
D19*
|
||||
X106423100Y-37140300D03*
|
||||
%TD*%
|
||||
D12*
|
||||
%TO.C,J4*%
|
||||
X43021000Y-116377700D03*
|
||||
D20*
|
||||
X45561000Y-116377700D03*
|
||||
X48101000Y-116377700D03*
|
||||
%TD*%
|
||||
D21*
|
||||
%TO.C,K2*%
|
||||
X91270300Y-72414000D03*
|
||||
X77070300Y-78414000D03*
|
||||
X77070300Y-66414000D03*
|
||||
D22*
|
||||
X89270300Y-78414000D03*
|
||||
D21*
|
||||
X89270300Y-66414000D03*
|
||||
%TD*%
|
||||
D12*
|
||||
%TO.C,U3*%
|
||||
X87249000Y-120714700D03*
|
||||
D11*
|
||||
X89789000Y-120714700D03*
|
||||
X92329000Y-120714700D03*
|
||||
X94869000Y-120714700D03*
|
||||
%TD*%
|
||||
D18*
|
||||
%TO.C,J5*%
|
||||
X55476000Y-37140300D03*
|
||||
D19*
|
||||
X45976000Y-37140300D03*
|
||||
X36476000Y-37140300D03*
|
||||
X26976000Y-37140300D03*
|
||||
%TD*%
|
||||
D17*
|
||||
%TO.C,SW4*%
|
||||
X92976000Y-164037700D03*
|
||||
X92976000Y-159237700D03*
|
||||
X92976000Y-154437700D03*
|
||||
%TD*%
|
||||
D21*
|
||||
%TO.C,K1*%
|
||||
X91270300Y-96544000D03*
|
||||
X77070300Y-102544000D03*
|
||||
X77070300Y-90544000D03*
|
||||
D22*
|
||||
X89270300Y-102544000D03*
|
||||
D21*
|
||||
X89270300Y-90544000D03*
|
||||
%TD*%
|
||||
D23*
|
||||
%TO.C,U1*%
|
||||
X68421000Y-120377700D03*
|
||||
X65881000Y-120377700D03*
|
||||
X63341000Y-120377700D03*
|
||||
X60801000Y-120377700D03*
|
||||
X58261000Y-120377700D03*
|
||||
X55721000Y-120377700D03*
|
||||
X53181000Y-120377700D03*
|
||||
X50641000Y-120377700D03*
|
||||
X48101000Y-120377700D03*
|
||||
X45561000Y-120377700D03*
|
||||
X43021000Y-120377700D03*
|
||||
X40481000Y-120377700D03*
|
||||
X37941000Y-120377700D03*
|
||||
X35401000Y-120377700D03*
|
||||
X32861000Y-120377700D03*
|
||||
X30321000Y-120377700D03*
|
||||
X27781000Y-120377700D03*
|
||||
X25241000Y-120377700D03*
|
||||
X22701000Y-120377700D03*
|
||||
X68421000Y-145777700D03*
|
||||
X65881000Y-145777700D03*
|
||||
X63341000Y-145777700D03*
|
||||
X60801000Y-145777700D03*
|
||||
X58261000Y-145777700D03*
|
||||
X55721000Y-145777700D03*
|
||||
X53181000Y-145777700D03*
|
||||
X50641000Y-145777700D03*
|
||||
X48101000Y-145777700D03*
|
||||
X45561000Y-145777700D03*
|
||||
X43021000Y-145777700D03*
|
||||
X40481000Y-145777700D03*
|
||||
X37941000Y-145777700D03*
|
||||
X35401000Y-145777700D03*
|
||||
X32861000Y-145777700D03*
|
||||
X30321000Y-145777700D03*
|
||||
X27781000Y-145777700D03*
|
||||
X25241000Y-145777700D03*
|
||||
X22701000Y-145777700D03*
|
||||
%TD*%
|
||||
M02*
|
||||
@@ -1,15 +0,0 @@
|
||||
%TF.GenerationSoftware,KiCad,Pcbnew,10.0.1*%
|
||||
%TF.CreationDate,2026-04-17T01:40:59+08:00*%
|
||||
%TF.ProjectId,HeliosDAONE,48656c69-6f73-4444-914f-4e452e6b6963,rev?*%
|
||||
%TF.SameCoordinates,Original*%
|
||||
%TF.FileFunction,Paste,Bot*%
|
||||
%TF.FilePolarity,Positive*%
|
||||
%FSLAX46Y46*%
|
||||
G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)*
|
||||
G04 Created by KiCad (PCBNEW 10.0.1) date 2026-04-17 01:40:59*
|
||||
%MOMM*%
|
||||
%LPD*%
|
||||
G01*
|
||||
G04 APERTURE LIST*
|
||||
G04 APERTURE END LIST*
|
||||
M02*
|
||||
@@ -1,46 +0,0 @@
|
||||
%TF.GenerationSoftware,KiCad,Pcbnew,10.0.1*%
|
||||
%TF.CreationDate,2026-04-17T01:40:59+08:00*%
|
||||
%TF.ProjectId,HeliosDAONE,48656c69-6f73-4444-914f-4e452e6b6963,rev?*%
|
||||
%TF.SameCoordinates,Original*%
|
||||
%TF.FileFunction,Legend,Bot*%
|
||||
%TF.FilePolarity,Positive*%
|
||||
%FSLAX46Y46*%
|
||||
G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)*
|
||||
G04 Created by KiCad (PCBNEW 10.0.1) date 2026-04-17 01:40:59*
|
||||
%MOMM*%
|
||||
%LPD*%
|
||||
G01*
|
||||
G04 APERTURE LIST*
|
||||
%ADD10C,0.254000*%
|
||||
%ADD11C,0.120000*%
|
||||
G04 APERTURE END LIST*
|
||||
%TO.C,U5*%
|
||||
D10*
|
||||
X28246000Y-77714000D02*
|
||||
X28246000Y-90414000D01*
|
||||
X25706000Y-90414000D02*
|
||||
X28246000Y-90414000D01*
|
||||
X25706000Y-80254000D02*
|
||||
X28246000Y-80254000D01*
|
||||
X25706000Y-77714000D02*
|
||||
X28246000Y-77714000D01*
|
||||
X25706000Y-77714000D02*
|
||||
X25706000Y-90414000D01*
|
||||
%TO.C,U3*%
|
||||
D11*
|
||||
X85909000Y-119384700D02*
|
||||
X88519000Y-119384700D01*
|
||||
X85909000Y-122044700D02*
|
||||
X85909000Y-119384700D01*
|
||||
X85909000Y-122044700D02*
|
||||
X88519000Y-122044700D01*
|
||||
X88519000Y-119384700D02*
|
||||
X96199000Y-119384700D01*
|
||||
X88519000Y-122044700D02*
|
||||
X88519000Y-119384700D01*
|
||||
X88519000Y-122044700D02*
|
||||
X96199000Y-122044700D01*
|
||||
X96199000Y-122044700D02*
|
||||
X96199000Y-119384700D01*
|
||||
%TD*%
|
||||
M02*
|
||||
@@ -1,40 +0,0 @@
|
||||
%TF.GenerationSoftware,KiCad,Pcbnew,10.0.1*%
|
||||
%TF.CreationDate,2026-04-17T01:40:59+08:00*%
|
||||
%TF.ProjectId,HeliosDAONE,48656c69-6f73-4444-914f-4e452e6b6963,rev?*%
|
||||
%TF.SameCoordinates,Original*%
|
||||
%TF.FileFunction,Profile,NP*%
|
||||
%FSLAX46Y46*%
|
||||
G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)*
|
||||
G04 Created by KiCad (PCBNEW 10.0.1) date 2026-04-17 01:40:59*
|
||||
%MOMM*%
|
||||
%LPD*%
|
||||
G01*
|
||||
G04 APERTURE LIST*
|
||||
%TA.AperFunction,Profile*%
|
||||
%ADD10C,0.050000*%
|
||||
%TD*%
|
||||
G04 APERTURE END LIST*
|
||||
D10*
|
||||
X17254000Y-21780000D02*
|
||||
X17254000Y-21780000D01*
|
||||
G75*
|
||||
G02*
|
||||
X21254000Y-17780000I4000000J0D01*
|
||||
G01*
|
||||
X123254000Y-17780000D01*
|
||||
G75*
|
||||
G02*
|
||||
X127254000Y-21780000I0J-4000000D01*
|
||||
G01*
|
||||
X127254000Y-188780000D01*
|
||||
G75*
|
||||
G02*
|
||||
X123254000Y-192780000I-4000000J0D01*
|
||||
G01*
|
||||
X21254000Y-192780000D01*
|
||||
G75*
|
||||
G02*
|
||||
X17254000Y-188780000I0J4000000D01*
|
||||
G01*
|
||||
X17254000Y-21780000D01*
|
||||
M02*
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,294 +0,0 @@
|
||||
%TF.GenerationSoftware,KiCad,Pcbnew,10.0.1*%
|
||||
%TF.CreationDate,2026-04-17T01:40:59+08:00*%
|
||||
%TF.ProjectId,HeliosDAONE,48656c69-6f73-4444-914f-4e452e6b6963,rev?*%
|
||||
%TF.SameCoordinates,Original*%
|
||||
%TF.FileFunction,Soldermask,Top*%
|
||||
%TF.FilePolarity,Negative*%
|
||||
%FSLAX46Y46*%
|
||||
G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)*
|
||||
G04 Created by KiCad (PCBNEW 10.0.1) date 2026-04-17 01:40:59*
|
||||
%MOMM*%
|
||||
%LPD*%
|
||||
G01*
|
||||
G04 APERTURE LIST*
|
||||
G04 Aperture macros list*
|
||||
%AMRoundRect*
|
||||
0 Rectangle with rounded corners*
|
||||
0 $1 Rounding radius*
|
||||
0 $2 $3 $4 $5 $6 $7 $8 $9 X,Y pos of 4 corners*
|
||||
0 Add a 4 corners polygon primitive as box body*
|
||||
4,1,4,$2,$3,$4,$5,$6,$7,$8,$9,$2,$3,0*
|
||||
0 Add four circle primitives for the rounded corners*
|
||||
1,1,$1+$1,$2,$3*
|
||||
1,1,$1+$1,$4,$5*
|
||||
1,1,$1+$1,$6,$7*
|
||||
1,1,$1+$1,$8,$9*
|
||||
0 Add four rect primitives between the rounded corners*
|
||||
20,1,$1+$1,$2,$3,$4,$5,0*
|
||||
20,1,$1+$1,$4,$5,$6,$7,0*
|
||||
20,1,$1+$1,$6,$7,$8,$9,0*
|
||||
20,1,$1+$1,$8,$9,$2,$3,0*%
|
||||
%AMFreePoly0*
|
||||
4,1,49,0.340433,1.711470,0.560912,1.652393,0.771794,1.565043,0.969470,1.450914,1.150558,1.311960,1.311960,1.150558,1.450914,0.969470,1.565043,0.771794,1.652393,0.560912,1.711470,0.340433,1.741264,0.114128,1.741264,-0.114128,1.711470,-0.340433,1.652393,-0.560912,1.565043,-0.771794,1.450914,-0.969470,1.311960,-1.150558,1.150558,-1.311960,0.969470,-1.450914,0.771794,-1.565043,
|
||||
0.560912,-1.652393,0.340433,-1.711470,0.114128,-1.741264,-0.114128,-1.741264,-0.340433,-1.711470,-0.560912,-1.652393,-0.771794,-1.565043,-0.969470,-1.450914,-1.150558,-1.311960,-1.311960,-1.150558,-1.450914,-0.969470,-1.565043,-0.771794,-1.652393,-0.560912,-1.711470,-0.340433,-1.741264,-0.114128,-1.741264,0.114128,-1.711470,0.340433,-1.652393,0.560912,-1.565043,0.771794,-1.450914,0.969470,
|
||||
-1.311960,1.150558,-1.150558,1.311960,-0.969470,1.450914,-0.771794,1.565043,-0.560912,1.652393,-0.340433,1.711470,-0.114128,1.741264,0.114128,1.741264,0.340433,1.711470,0.340433,1.711470,$1*%
|
||||
G04 Aperture macros list end*
|
||||
%ADD10C,5.080000*%
|
||||
%ADD11O,1.700000X1.700000*%
|
||||
%ADD12R,1.700000X1.700000*%
|
||||
%ADD13C,1.500000*%
|
||||
%ADD14R,1.500000X1.500000*%
|
||||
%ADD15C,2.000000*%
|
||||
%ADD16C,4.000000*%
|
||||
%ADD17RoundRect,0.250000X0.475000X-0.250000X0.475000X0.250000X-0.475000X0.250000X-0.475000X-0.250000X0*%
|
||||
%ADD18RoundRect,0.200000X0.200000X0.275000X-0.200000X0.275000X-0.200000X-0.275000X0.200000X-0.275000X0*%
|
||||
%ADD19RoundRect,0.225000X-0.225000X-0.375000X0.225000X-0.375000X0.225000X0.375000X-0.225000X0.375000X0*%
|
||||
%ADD20RoundRect,0.200000X-0.275000X0.200000X-0.275000X-0.200000X0.275000X-0.200000X0.275000X0.200000X0*%
|
||||
%ADD21RoundRect,0.150000X0.150000X-0.750000X0.150000X0.750000X-0.150000X0.750000X-0.150000X-0.750000X0*%
|
||||
%ADD22O,2.890000X1.690000*%
|
||||
%ADD23R,3.490000X3.490000*%
|
||||
%ADD24FreePoly0,180.000000*%
|
||||
%ADD25C,1.700000*%
|
||||
%ADD26C,2.500000*%
|
||||
%ADD27RoundRect,0.250000X1.000000X1.000000X-1.000000X1.000000X-1.000000X-1.000000X1.000000X-1.000000X0*%
|
||||
%ADD28RoundRect,0.150000X-0.587500X-0.150000X0.587500X-0.150000X0.587500X0.150000X-0.587500X0.150000X0*%
|
||||
%ADD29C,1.800000*%
|
||||
G04 APERTURE END LIST*
|
||||
D10*
|
||||
%TO.C,U5*%
|
||||
X43486000Y-48507000D03*
|
||||
X67616000Y-66414000D03*
|
||||
X26976000Y-48507000D03*
|
||||
X67616000Y-90544000D03*
|
||||
D11*
|
||||
X58436000Y-104094000D03*
|
||||
D12*
|
||||
X58436000Y-111714000D03*
|
||||
D13*
|
||||
X26976000Y-89144000D03*
|
||||
X26976000Y-86604000D03*
|
||||
X26976000Y-84064000D03*
|
||||
X26976000Y-81524000D03*
|
||||
D14*
|
||||
X26976000Y-78984000D03*
|
||||
D13*
|
||||
X26976000Y-76444000D03*
|
||||
%TD*%
|
||||
D11*
|
||||
%TO.C,U2*%
|
||||
X79846000Y-159237700D03*
|
||||
X79846000Y-161777700D03*
|
||||
X79846000Y-164317700D03*
|
||||
X79846000Y-166857700D03*
|
||||
X79846000Y-169397700D03*
|
||||
X79846000Y-171937700D03*
|
||||
X79846000Y-174477700D03*
|
||||
D12*
|
||||
X79846000Y-177017700D03*
|
||||
%TD*%
|
||||
D15*
|
||||
%TO.C,SW2*%
|
||||
X113153100Y-171754700D03*
|
||||
X113153100Y-182754700D03*
|
||||
D16*
|
||||
X119403100Y-179754700D03*
|
||||
X106903100Y-179754700D03*
|
||||
X119403100Y-174754700D03*
|
||||
X106903100Y-174754700D03*
|
||||
%TD*%
|
||||
D15*
|
||||
%TO.C,SW1*%
|
||||
X92964050Y-171754700D03*
|
||||
X92964050Y-182754700D03*
|
||||
D16*
|
||||
X99214050Y-179754700D03*
|
||||
X86714050Y-179754700D03*
|
||||
X99214050Y-174754700D03*
|
||||
X86714050Y-174754700D03*
|
||||
%TD*%
|
||||
D17*
|
||||
%TO.C,C2*%
|
||||
X105153100Y-169574000D03*
|
||||
X105153100Y-171474000D03*
|
||||
%TD*%
|
||||
%TO.C,C1*%
|
||||
X85214050Y-169574000D03*
|
||||
X85214050Y-171474000D03*
|
||||
%TD*%
|
||||
D18*
|
||||
%TO.C,R1*%
|
||||
X87889050Y-170024000D03*
|
||||
X89539050Y-170024000D03*
|
||||
%TD*%
|
||||
%TO.C,R2*%
|
||||
X107828100Y-170024000D03*
|
||||
X109478100Y-170024000D03*
|
||||
%TD*%
|
||||
D19*
|
||||
%TO.C,D1*%
|
||||
X73519600Y-114934700D03*
|
||||
X76819600Y-114934700D03*
|
||||
%TD*%
|
||||
%TO.C,D2*%
|
||||
X88894600Y-114934700D03*
|
||||
X92194600Y-114934700D03*
|
||||
%TD*%
|
||||
D20*
|
||||
%TO.C,R4*%
|
||||
X86861600Y-113792700D03*
|
||||
X86861600Y-115442700D03*
|
||||
%TD*%
|
||||
D21*
|
||||
%TO.C,OC1*%
|
||||
X66752600Y-115027700D03*
|
||||
X69292600Y-115027700D03*
|
||||
X69292600Y-108727700D03*
|
||||
X66752600Y-108727700D03*
|
||||
%TD*%
|
||||
D20*
|
||||
%TO.C,R5*%
|
||||
X71522600Y-108727700D03*
|
||||
X71522600Y-110377700D03*
|
||||
%TD*%
|
||||
D12*
|
||||
%TO.C,T1*%
|
||||
X120206100Y-99847000D03*
|
||||
D11*
|
||||
X120206100Y-94767000D03*
|
||||
D12*
|
||||
X120146100Y-74193000D03*
|
||||
D11*
|
||||
X120146100Y-71653000D03*
|
||||
%TD*%
|
||||
D22*
|
||||
%TO.C,SW3*%
|
||||
X112727505Y-164037700D03*
|
||||
X112727505Y-159237700D03*
|
||||
X112727505Y-154437700D03*
|
||||
%TD*%
|
||||
D23*
|
||||
%TO.C,J1*%
|
||||
X115923100Y-37140300D03*
|
||||
D24*
|
||||
X106423100Y-37140300D03*
|
||||
%TD*%
|
||||
D12*
|
||||
%TO.C,J4*%
|
||||
X43021000Y-116377700D03*
|
||||
D25*
|
||||
X45561000Y-116377700D03*
|
||||
X48101000Y-116377700D03*
|
||||
%TD*%
|
||||
D26*
|
||||
%TO.C,K2*%
|
||||
X91270300Y-72414000D03*
|
||||
X77070300Y-78414000D03*
|
||||
X77070300Y-66414000D03*
|
||||
D27*
|
||||
X89270300Y-78414000D03*
|
||||
D26*
|
||||
X89270300Y-66414000D03*
|
||||
%TD*%
|
||||
D28*
|
||||
%TO.C,Q2*%
|
||||
X90319600Y-110377700D03*
|
||||
X90319600Y-112277700D03*
|
||||
X92194600Y-111327700D03*
|
||||
%TD*%
|
||||
D12*
|
||||
%TO.C,U3*%
|
||||
X87249000Y-120714700D03*
|
||||
D11*
|
||||
X89789000Y-120714700D03*
|
||||
X92329000Y-120714700D03*
|
||||
X94869000Y-120714700D03*
|
||||
%TD*%
|
||||
D20*
|
||||
%TO.C,R3*%
|
||||
X71522600Y-113802700D03*
|
||||
X71522600Y-115452700D03*
|
||||
%TD*%
|
||||
D28*
|
||||
%TO.C,Q1*%
|
||||
X74944600Y-110377700D03*
|
||||
X74944600Y-112277700D03*
|
||||
X76819600Y-111327700D03*
|
||||
%TD*%
|
||||
D23*
|
||||
%TO.C,J5*%
|
||||
X55476000Y-37140300D03*
|
||||
D24*
|
||||
X45976000Y-37140300D03*
|
||||
X36476000Y-37140300D03*
|
||||
X26976000Y-37140300D03*
|
||||
%TD*%
|
||||
D22*
|
||||
%TO.C,SW4*%
|
||||
X92976000Y-164037700D03*
|
||||
X92976000Y-159237700D03*
|
||||
X92976000Y-154437700D03*
|
||||
%TD*%
|
||||
D20*
|
||||
%TO.C,R6*%
|
||||
X86861600Y-108727700D03*
|
||||
X86861600Y-110377700D03*
|
||||
%TD*%
|
||||
D21*
|
||||
%TO.C,OC2*%
|
||||
X82035600Y-115027700D03*
|
||||
X84575600Y-115027700D03*
|
||||
X84575600Y-108727700D03*
|
||||
X82035600Y-108727700D03*
|
||||
%TD*%
|
||||
D26*
|
||||
%TO.C,K1*%
|
||||
X91270300Y-96544000D03*
|
||||
X77070300Y-102544000D03*
|
||||
X77070300Y-90544000D03*
|
||||
D27*
|
||||
X89270300Y-102544000D03*
|
||||
D26*
|
||||
X89270300Y-90544000D03*
|
||||
%TD*%
|
||||
D29*
|
||||
%TO.C,U1*%
|
||||
X68421000Y-120377700D03*
|
||||
X65881000Y-120377700D03*
|
||||
X63341000Y-120377700D03*
|
||||
X60801000Y-120377700D03*
|
||||
X58261000Y-120377700D03*
|
||||
X55721000Y-120377700D03*
|
||||
X53181000Y-120377700D03*
|
||||
X50641000Y-120377700D03*
|
||||
X48101000Y-120377700D03*
|
||||
X45561000Y-120377700D03*
|
||||
X43021000Y-120377700D03*
|
||||
X40481000Y-120377700D03*
|
||||
X37941000Y-120377700D03*
|
||||
X35401000Y-120377700D03*
|
||||
X32861000Y-120377700D03*
|
||||
X30321000Y-120377700D03*
|
||||
X27781000Y-120377700D03*
|
||||
X25241000Y-120377700D03*
|
||||
X22701000Y-120377700D03*
|
||||
X68421000Y-145777700D03*
|
||||
X65881000Y-145777700D03*
|
||||
X63341000Y-145777700D03*
|
||||
X60801000Y-145777700D03*
|
||||
X58261000Y-145777700D03*
|
||||
X55721000Y-145777700D03*
|
||||
X53181000Y-145777700D03*
|
||||
X50641000Y-145777700D03*
|
||||
X48101000Y-145777700D03*
|
||||
X45561000Y-145777700D03*
|
||||
X43021000Y-145777700D03*
|
||||
X40481000Y-145777700D03*
|
||||
X37941000Y-145777700D03*
|
||||
X35401000Y-145777700D03*
|
||||
X32861000Y-145777700D03*
|
||||
X30321000Y-145777700D03*
|
||||
X27781000Y-145777700D03*
|
||||
X25241000Y-145777700D03*
|
||||
X22701000Y-145777700D03*
|
||||
%TD*%
|
||||
M02*
|
||||
@@ -1,112 +0,0 @@
|
||||
%TF.GenerationSoftware,KiCad,Pcbnew,10.0.1*%
|
||||
%TF.CreationDate,2026-04-17T01:40:59+08:00*%
|
||||
%TF.ProjectId,HeliosDAONE,48656c69-6f73-4444-914f-4e452e6b6963,rev?*%
|
||||
%TF.SameCoordinates,Original*%
|
||||
%TF.FileFunction,Paste,Top*%
|
||||
%TF.FilePolarity,Positive*%
|
||||
%FSLAX46Y46*%
|
||||
G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)*
|
||||
G04 Created by KiCad (PCBNEW 10.0.1) date 2026-04-17 01:40:59*
|
||||
%MOMM*%
|
||||
%LPD*%
|
||||
G01*
|
||||
G04 APERTURE LIST*
|
||||
G04 Aperture macros list*
|
||||
%AMRoundRect*
|
||||
0 Rectangle with rounded corners*
|
||||
0 $1 Rounding radius*
|
||||
0 $2 $3 $4 $5 $6 $7 $8 $9 X,Y pos of 4 corners*
|
||||
0 Add a 4 corners polygon primitive as box body*
|
||||
4,1,4,$2,$3,$4,$5,$6,$7,$8,$9,$2,$3,0*
|
||||
0 Add four circle primitives for the rounded corners*
|
||||
1,1,$1+$1,$2,$3*
|
||||
1,1,$1+$1,$4,$5*
|
||||
1,1,$1+$1,$6,$7*
|
||||
1,1,$1+$1,$8,$9*
|
||||
0 Add four rect primitives between the rounded corners*
|
||||
20,1,$1+$1,$2,$3,$4,$5,0*
|
||||
20,1,$1+$1,$4,$5,$6,$7,0*
|
||||
20,1,$1+$1,$6,$7,$8,$9,0*
|
||||
20,1,$1+$1,$8,$9,$2,$3,0*%
|
||||
G04 Aperture macros list end*
|
||||
%ADD10RoundRect,0.250000X0.475000X-0.250000X0.475000X0.250000X-0.475000X0.250000X-0.475000X-0.250000X0*%
|
||||
%ADD11RoundRect,0.200000X0.200000X0.275000X-0.200000X0.275000X-0.200000X-0.275000X0.200000X-0.275000X0*%
|
||||
%ADD12RoundRect,0.225000X-0.225000X-0.375000X0.225000X-0.375000X0.225000X0.375000X-0.225000X0.375000X0*%
|
||||
%ADD13RoundRect,0.200000X-0.275000X0.200000X-0.275000X-0.200000X0.275000X-0.200000X0.275000X0.200000X0*%
|
||||
%ADD14RoundRect,0.150000X0.150000X-0.750000X0.150000X0.750000X-0.150000X0.750000X-0.150000X-0.750000X0*%
|
||||
%ADD15RoundRect,0.150000X-0.587500X-0.150000X0.587500X-0.150000X0.587500X0.150000X-0.587500X0.150000X0*%
|
||||
G04 APERTURE END LIST*
|
||||
D10*
|
||||
%TO.C,C2*%
|
||||
X105153100Y-169574000D03*
|
||||
X105153100Y-171474000D03*
|
||||
%TD*%
|
||||
%TO.C,C1*%
|
||||
X85214050Y-169574000D03*
|
||||
X85214050Y-171474000D03*
|
||||
%TD*%
|
||||
D11*
|
||||
%TO.C,R1*%
|
||||
X87889050Y-170024000D03*
|
||||
X89539050Y-170024000D03*
|
||||
%TD*%
|
||||
%TO.C,R2*%
|
||||
X107828100Y-170024000D03*
|
||||
X109478100Y-170024000D03*
|
||||
%TD*%
|
||||
D12*
|
||||
%TO.C,D1*%
|
||||
X73519600Y-114934700D03*
|
||||
X76819600Y-114934700D03*
|
||||
%TD*%
|
||||
%TO.C,D2*%
|
||||
X88894600Y-114934700D03*
|
||||
X92194600Y-114934700D03*
|
||||
%TD*%
|
||||
D13*
|
||||
%TO.C,R4*%
|
||||
X86861600Y-113792700D03*
|
||||
X86861600Y-115442700D03*
|
||||
%TD*%
|
||||
D14*
|
||||
%TO.C,OC1*%
|
||||
X66752600Y-115027700D03*
|
||||
X69292600Y-115027700D03*
|
||||
X69292600Y-108727700D03*
|
||||
X66752600Y-108727700D03*
|
||||
%TD*%
|
||||
D13*
|
||||
%TO.C,R5*%
|
||||
X71522600Y-108727700D03*
|
||||
X71522600Y-110377700D03*
|
||||
%TD*%
|
||||
D15*
|
||||
%TO.C,Q2*%
|
||||
X90319600Y-110377700D03*
|
||||
X90319600Y-112277700D03*
|
||||
X92194600Y-111327700D03*
|
||||
%TD*%
|
||||
D13*
|
||||
%TO.C,R3*%
|
||||
X71522600Y-113802700D03*
|
||||
X71522600Y-115452700D03*
|
||||
%TD*%
|
||||
D15*
|
||||
%TO.C,Q1*%
|
||||
X74944600Y-110377700D03*
|
||||
X74944600Y-112277700D03*
|
||||
X76819600Y-111327700D03*
|
||||
%TD*%
|
||||
D13*
|
||||
%TO.C,R6*%
|
||||
X86861600Y-108727700D03*
|
||||
X86861600Y-110377700D03*
|
||||
%TD*%
|
||||
D14*
|
||||
%TO.C,OC2*%
|
||||
X82035600Y-115027700D03*
|
||||
X84575600Y-115027700D03*
|
||||
X84575600Y-108727700D03*
|
||||
X82035600Y-108727700D03*
|
||||
%TD*%
|
||||
M02*
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,179 +0,0 @@
|
||||
%TF.GenerationSoftware,KiCad,Pcbnew,10.0.1*%
|
||||
%TF.CreationDate,2026-04-17T01:41:30+08:00*%
|
||||
%TF.ProjectId,HeliosDAONE,48656c69-6f73-4444-914f-4e452e6b6963,rev?*%
|
||||
%TF.SameCoordinates,Original*%
|
||||
%TF.FileFunction,Drillmap*%
|
||||
%TF.FilePolarity,Positive*%
|
||||
%FSLAX45Y45*%
|
||||
G04 Gerber Fmt 4.5, Leading zero omitted, Abs format (unit mm)*
|
||||
G04 Created by KiCad (PCBNEW 10.0.1) date 2026-04-17 01:41:30*
|
||||
%MOMM*%
|
||||
%LPD*%
|
||||
G01*
|
||||
G04 APERTURE LIST*
|
||||
%ADD10C,0.050000*%
|
||||
%ADD11C,0.200000*%
|
||||
G04 APERTURE END LIST*
|
||||
D10*
|
||||
X1725400Y-2178000D02*
|
||||
X1725400Y-2178000D01*
|
||||
G75*
|
||||
G02*
|
||||
X2125400Y-1778000I400000J0D01*
|
||||
G01*
|
||||
X12325400Y-1778000D01*
|
||||
G75*
|
||||
G02*
|
||||
X12725400Y-2178000I0J-400000D01*
|
||||
G01*
|
||||
X12725400Y-18878000D01*
|
||||
G75*
|
||||
G02*
|
||||
X12325400Y-19278000I-400000J0D01*
|
||||
G01*
|
||||
X2125400Y-19278000D01*
|
||||
G75*
|
||||
G02*
|
||||
X1725400Y-18878000I0J400000D01*
|
||||
G01*
|
||||
X1725400Y-2178000D01*
|
||||
D11*
|
||||
X1983677Y-19591984D02*
|
||||
X1983677Y-19391984D01*
|
||||
X1983677Y-19391984D02*
|
||||
X2031296Y-19391984D01*
|
||||
X2031296Y-19391984D02*
|
||||
X2059867Y-19401508D01*
|
||||
X2059867Y-19401508D02*
|
||||
X2078915Y-19420555D01*
|
||||
X2078915Y-19420555D02*
|
||||
X2088439Y-19439603D01*
|
||||
X2088439Y-19439603D02*
|
||||
X2097963Y-19477698D01*
|
||||
X2097963Y-19477698D02*
|
||||
X2097963Y-19506270D01*
|
||||
X2097963Y-19506270D02*
|
||||
X2088439Y-19544365D01*
|
||||
X2088439Y-19544365D02*
|
||||
X2078915Y-19563412D01*
|
||||
X2078915Y-19563412D02*
|
||||
X2059867Y-19582460D01*
|
||||
X2059867Y-19582460D02*
|
||||
X2031296Y-19591984D01*
|
||||
X2031296Y-19591984D02*
|
||||
X1983677Y-19591984D01*
|
||||
X2183677Y-19591984D02*
|
||||
X2183677Y-19458650D01*
|
||||
X2183677Y-19496746D02*
|
||||
X2193201Y-19477698D01*
|
||||
X2193201Y-19477698D02*
|
||||
X2202724Y-19468174D01*
|
||||
X2202724Y-19468174D02*
|
||||
X2221772Y-19458650D01*
|
||||
X2221772Y-19458650D02*
|
||||
X2240820Y-19458650D01*
|
||||
X2307486Y-19591984D02*
|
||||
X2307486Y-19458650D01*
|
||||
X2307486Y-19391984D02*
|
||||
X2297963Y-19401508D01*
|
||||
X2297963Y-19401508D02*
|
||||
X2307486Y-19411031D01*
|
||||
X2307486Y-19411031D02*
|
||||
X2317010Y-19401508D01*
|
||||
X2317010Y-19401508D02*
|
||||
X2307486Y-19391984D01*
|
||||
X2307486Y-19391984D02*
|
||||
X2307486Y-19411031D01*
|
||||
X2431296Y-19591984D02*
|
||||
X2412248Y-19582460D01*
|
||||
X2412248Y-19582460D02*
|
||||
X2402724Y-19563412D01*
|
||||
X2402724Y-19563412D02*
|
||||
X2402724Y-19391984D01*
|
||||
X2536058Y-19591984D02*
|
||||
X2517010Y-19582460D01*
|
||||
X2517010Y-19582460D02*
|
||||
X2507486Y-19563412D01*
|
||||
X2507486Y-19563412D02*
|
||||
X2507486Y-19391984D01*
|
||||
X2764629Y-19591984D02*
|
||||
X2764629Y-19391984D01*
|
||||
X2764629Y-19391984D02*
|
||||
X2831296Y-19534841D01*
|
||||
X2831296Y-19534841D02*
|
||||
X2897962Y-19391984D01*
|
||||
X2897962Y-19391984D02*
|
||||
X2897962Y-19591984D01*
|
||||
X3078915Y-19591984D02*
|
||||
X3078915Y-19487222D01*
|
||||
X3078915Y-19487222D02*
|
||||
X3069391Y-19468174D01*
|
||||
X3069391Y-19468174D02*
|
||||
X3050343Y-19458650D01*
|
||||
X3050343Y-19458650D02*
|
||||
X3012248Y-19458650D01*
|
||||
X3012248Y-19458650D02*
|
||||
X2993201Y-19468174D01*
|
||||
X3078915Y-19582460D02*
|
||||
X3059867Y-19591984D01*
|
||||
X3059867Y-19591984D02*
|
||||
X3012248Y-19591984D01*
|
||||
X3012248Y-19591984D02*
|
||||
X2993201Y-19582460D01*
|
||||
X2993201Y-19582460D02*
|
||||
X2983677Y-19563412D01*
|
||||
X2983677Y-19563412D02*
|
||||
X2983677Y-19544365D01*
|
||||
X2983677Y-19544365D02*
|
||||
X2993201Y-19525317D01*
|
||||
X2993201Y-19525317D02*
|
||||
X3012248Y-19515793D01*
|
||||
X3012248Y-19515793D02*
|
||||
X3059867Y-19515793D01*
|
||||
X3059867Y-19515793D02*
|
||||
X3078915Y-19506270D01*
|
||||
X3174153Y-19458650D02*
|
||||
X3174153Y-19658650D01*
|
||||
X3174153Y-19468174D02*
|
||||
X3193201Y-19458650D01*
|
||||
X3193201Y-19458650D02*
|
||||
X3231296Y-19458650D01*
|
||||
X3231296Y-19458650D02*
|
||||
X3250343Y-19468174D01*
|
||||
X3250343Y-19468174D02*
|
||||
X3259867Y-19477698D01*
|
||||
X3259867Y-19477698D02*
|
||||
X3269391Y-19496746D01*
|
||||
X3269391Y-19496746D02*
|
||||
X3269391Y-19553889D01*
|
||||
X3269391Y-19553889D02*
|
||||
X3259867Y-19572936D01*
|
||||
X3259867Y-19572936D02*
|
||||
X3250343Y-19582460D01*
|
||||
X3250343Y-19582460D02*
|
||||
X3231296Y-19591984D01*
|
||||
X3231296Y-19591984D02*
|
||||
X3193201Y-19591984D01*
|
||||
X3193201Y-19591984D02*
|
||||
X3174153Y-19582460D01*
|
||||
X3355105Y-19572936D02*
|
||||
X3364629Y-19582460D01*
|
||||
X3364629Y-19582460D02*
|
||||
X3355105Y-19591984D01*
|
||||
X3355105Y-19591984D02*
|
||||
X3345582Y-19582460D01*
|
||||
X3345582Y-19582460D02*
|
||||
X3355105Y-19572936D01*
|
||||
X3355105Y-19572936D02*
|
||||
X3355105Y-19591984D01*
|
||||
X3355105Y-19468174D02*
|
||||
X3364629Y-19477698D01*
|
||||
X3364629Y-19477698D02*
|
||||
X3355105Y-19487222D01*
|
||||
X3355105Y-19487222D02*
|
||||
X3345582Y-19477698D01*
|
||||
X3345582Y-19477698D02*
|
||||
X3355105Y-19468174D01*
|
||||
X3355105Y-19468174D02*
|
||||
X3355105Y-19487222D01*
|
||||
M02*
|
||||
@@ -1,12 +0,0 @@
|
||||
M48
|
||||
; DRILL file KiCad 10.0.1 date 2026-04-17T01:41:30
|
||||
; FORMAT={-:-/ absolute / metric / decimal}
|
||||
; #@! TF.CreationDate,2026-04-17T01:41:30+08:00
|
||||
; #@! TF.GenerationSoftware,Kicad,Pcbnew,10.0.1
|
||||
; #@! TF.FileFunction,NonPlated,1,2,NPTH
|
||||
FMAT,2
|
||||
METRIC
|
||||
%
|
||||
G90
|
||||
G05
|
||||
M30
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,187 +0,0 @@
|
||||
M48
|
||||
; DRILL file KiCad 10.0.1 date 2026-04-17T01:41:30
|
||||
; FORMAT={-:-/ absolute / metric / decimal}
|
||||
; #@! TF.CreationDate,2026-04-17T01:41:30+08:00
|
||||
; #@! TF.GenerationSoftware,Kicad,Pcbnew,10.0.1
|
||||
; #@! TF.FileFunction,Plated,1,2,PTH
|
||||
FMAT,2
|
||||
METRIC
|
||||
; #@! TA.AperFunction,Plated,PTH,ViaDrill
|
||||
T1C0.300
|
||||
; #@! TA.AperFunction,Plated,PTH,ComponentDrill
|
||||
T2C0.850
|
||||
; #@! TA.AperFunction,Plated,PTH,ComponentDrill
|
||||
T3C0.900
|
||||
; #@! TA.AperFunction,Plated,PTH,ComponentDrill
|
||||
T4C1.000
|
||||
; #@! TA.AperFunction,Plated,PTH,ComponentDrill
|
||||
T5C1.100
|
||||
; #@! TA.AperFunction,Plated,PTH,ComponentDrill
|
||||
T6C1.300
|
||||
; #@! TA.AperFunction,Plated,PTH,ComponentDrill
|
||||
T7C1.980
|
||||
; #@! TA.AperFunction,Plated,PTH,ComponentDrill
|
||||
T8C2.540
|
||||
%
|
||||
G90
|
||||
G05
|
||||
T1
|
||||
X39.116Y-84.074
|
||||
X39.116Y-86.614
|
||||
X51.181Y-161.798
|
||||
X52.578Y-118.999
|
||||
X58.293Y-126.111
|
||||
X59.817Y-132.969
|
||||
X67.183Y-167.259
|
||||
X68.707Y-124.079
|
||||
X68.707Y-125.476
|
||||
X72.517Y-117.094
|
||||
X75.184Y-113.919
|
||||
X76.327Y-161.798
|
||||
X76.327Y-171.958
|
||||
X82.069Y-86.904
|
||||
X83.312Y-76.327
|
||||
X89.308Y-86.904
|
||||
X92.98Y-117.102
|
||||
X92.98Y-118.102
|
||||
X93.98Y-117.102
|
||||
X93.98Y-118.102
|
||||
X94.869Y-86.868
|
||||
X94.98Y-117.102
|
||||
X94.98Y-118.102
|
||||
T2
|
||||
X92.964Y-171.755
|
||||
X92.964Y-182.755
|
||||
X113.153Y-171.755
|
||||
X113.153Y-182.755
|
||||
T3
|
||||
X26.976Y-76.444
|
||||
X26.976Y-78.984
|
||||
X26.976Y-81.524
|
||||
X26.976Y-84.064
|
||||
X26.976Y-86.604
|
||||
X26.976Y-89.144
|
||||
T4
|
||||
X22.701Y-120.378
|
||||
X22.701Y-145.778
|
||||
X25.241Y-120.378
|
||||
X25.241Y-145.778
|
||||
X27.781Y-120.378
|
||||
X27.781Y-145.778
|
||||
X30.321Y-120.378
|
||||
X30.321Y-145.778
|
||||
X32.861Y-120.378
|
||||
X32.861Y-145.778
|
||||
X35.401Y-120.378
|
||||
X35.401Y-145.778
|
||||
X37.941Y-120.378
|
||||
X37.941Y-145.778
|
||||
X40.481Y-120.378
|
||||
X40.481Y-145.778
|
||||
X43.021Y-116.378
|
||||
X43.021Y-120.378
|
||||
X43.021Y-145.778
|
||||
X45.561Y-116.378
|
||||
X45.561Y-120.378
|
||||
X45.561Y-145.778
|
||||
X48.101Y-116.378
|
||||
X48.101Y-120.378
|
||||
X48.101Y-145.778
|
||||
X50.641Y-120.378
|
||||
X50.641Y-145.778
|
||||
X53.181Y-120.378
|
||||
X53.181Y-145.778
|
||||
X55.721Y-120.378
|
||||
X55.721Y-145.778
|
||||
X58.261Y-120.378
|
||||
X58.261Y-145.778
|
||||
X58.436Y-104.094
|
||||
X58.436Y-111.714
|
||||
X60.801Y-120.378
|
||||
X60.801Y-145.778
|
||||
X63.341Y-120.378
|
||||
X63.341Y-145.778
|
||||
X65.881Y-120.378
|
||||
X65.881Y-145.778
|
||||
X68.421Y-120.378
|
||||
X68.421Y-145.778
|
||||
X79.846Y-159.238
|
||||
X79.846Y-161.778
|
||||
X79.846Y-164.318
|
||||
X79.846Y-166.858
|
||||
X79.846Y-169.398
|
||||
X79.846Y-171.938
|
||||
X79.846Y-174.478
|
||||
X79.846Y-177.018
|
||||
X87.249Y-120.715
|
||||
X89.789Y-120.715
|
||||
X92.329Y-120.715
|
||||
X94.869Y-120.715
|
||||
X120.146Y-71.653
|
||||
X120.146Y-74.193
|
||||
X120.206Y-94.767
|
||||
X120.206Y-99.847
|
||||
T5
|
||||
X86.714Y-174.755
|
||||
X86.714Y-179.755
|
||||
X99.214Y-174.755
|
||||
X99.214Y-179.755
|
||||
X106.903Y-174.755
|
||||
X106.903Y-179.755
|
||||
X119.403Y-174.755
|
||||
X119.403Y-179.755
|
||||
T6
|
||||
X77.07Y-66.414
|
||||
X77.07Y-78.414
|
||||
X77.07Y-90.544
|
||||
X77.07Y-102.544
|
||||
X89.27Y-66.414
|
||||
X89.27Y-78.414
|
||||
X89.27Y-90.544
|
||||
X89.27Y-102.544
|
||||
X91.27Y-72.414
|
||||
X91.27Y-96.544
|
||||
T7
|
||||
X26.976Y-37.14
|
||||
X36.476Y-37.14
|
||||
X45.976Y-37.14
|
||||
X55.476Y-37.14
|
||||
X106.423Y-37.14
|
||||
X115.923Y-37.14
|
||||
T8
|
||||
X26.976Y-48.507
|
||||
X43.486Y-48.507
|
||||
X67.616Y-66.414
|
||||
X67.616Y-90.544
|
||||
T5
|
||||
G00X92.381Y-154.438
|
||||
M15
|
||||
G01X93.571Y-154.438
|
||||
M16
|
||||
G05
|
||||
G00X92.381Y-159.238
|
||||
M15
|
||||
G01X93.571Y-159.238
|
||||
M16
|
||||
G05
|
||||
G00X92.381Y-164.038
|
||||
M15
|
||||
G01X93.571Y-164.038
|
||||
M16
|
||||
G05
|
||||
G00X112.133Y-154.438
|
||||
M15
|
||||
G01X113.323Y-154.438
|
||||
M16
|
||||
G05
|
||||
G00X112.133Y-159.238
|
||||
M15
|
||||
G01X113.323Y-159.238
|
||||
M16
|
||||
G05
|
||||
G00X112.133Y-164.038
|
||||
M15
|
||||
G01X113.323Y-164.038
|
||||
M16
|
||||
G05
|
||||
M30
|
||||
@@ -1,127 +0,0 @@
|
||||
{
|
||||
"Header": {
|
||||
"GenerationSoftware": {
|
||||
"Vendor": "KiCad",
|
||||
"Application": "Pcbnew",
|
||||
"Version": "10.0.1"
|
||||
},
|
||||
"CreationDate": "2026-04-17T01:40:59+08:00"
|
||||
},
|
||||
"GeneralSpecs": {
|
||||
"ProjectId": {
|
||||
"Name": "HeliosDAONE",
|
||||
"GUID": "48656c69-6f73-4444-914f-4e452e6b6963",
|
||||
"Revision": "rev?"
|
||||
},
|
||||
"Size": {
|
||||
"X": 110.05,
|
||||
"Y": 175.05
|
||||
},
|
||||
"LayerNumber": 2,
|
||||
"BoardThickness": 1.6,
|
||||
"Finish": "None"
|
||||
},
|
||||
"DesignRules": [
|
||||
{
|
||||
"Layers": "Outer",
|
||||
"PadToPad": 0.254,
|
||||
"PadToTrack": 0.254,
|
||||
"TrackToTrack": -0.0,
|
||||
"MinLineWidth": 0.254,
|
||||
"TrackToRegion": 0.5,
|
||||
"RegionToRegion": 0.5
|
||||
}
|
||||
],
|
||||
"FilesAttributes": [
|
||||
{
|
||||
"Path": "HeliosDAONE-F_Cu.gbr",
|
||||
"FileFunction": "Copper,L1,Top",
|
||||
"FilePolarity": "Positive"
|
||||
},
|
||||
{
|
||||
"Path": "HeliosDAONE-B_Cu.gbr",
|
||||
"FileFunction": "Copper,L2,Bot",
|
||||
"FilePolarity": "Positive"
|
||||
},
|
||||
{
|
||||
"Path": "HeliosDAONE-F_Paste.gbr",
|
||||
"FileFunction": "SolderPaste,Top",
|
||||
"FilePolarity": "Positive"
|
||||
},
|
||||
{
|
||||
"Path": "HeliosDAONE-B_Paste.gbr",
|
||||
"FileFunction": "SolderPaste,Bot",
|
||||
"FilePolarity": "Positive"
|
||||
},
|
||||
{
|
||||
"Path": "HeliosDAONE-F_Silkscreen.gbr",
|
||||
"FileFunction": "Legend,Top",
|
||||
"FilePolarity": "Positive"
|
||||
},
|
||||
{
|
||||
"Path": "HeliosDAONE-B_Silkscreen.gbr",
|
||||
"FileFunction": "Legend,Bot",
|
||||
"FilePolarity": "Positive"
|
||||
},
|
||||
{
|
||||
"Path": "HeliosDAONE-F_Mask.gbr",
|
||||
"FileFunction": "SolderMask,Top",
|
||||
"FilePolarity": "Negative"
|
||||
},
|
||||
{
|
||||
"Path": "HeliosDAONE-B_Mask.gbr",
|
||||
"FileFunction": "SolderMask,Bot",
|
||||
"FilePolarity": "Negative"
|
||||
},
|
||||
{
|
||||
"Path": "HeliosDAONE-Edge_Cuts.gbr",
|
||||
"FileFunction": "Profile",
|
||||
"FilePolarity": "Positive"
|
||||
}
|
||||
],
|
||||
"MaterialStackup": [
|
||||
{
|
||||
"Type": "Legend",
|
||||
"Name": "Top Silk Screen"
|
||||
},
|
||||
{
|
||||
"Type": "SolderPaste",
|
||||
"Name": "Top Solder Paste"
|
||||
},
|
||||
{
|
||||
"Type": "SolderMask",
|
||||
"Thickness": 0.01,
|
||||
"Name": "Top Solder Mask"
|
||||
},
|
||||
{
|
||||
"Type": "Copper",
|
||||
"Thickness": 0.035,
|
||||
"Name": "F.Cu"
|
||||
},
|
||||
{
|
||||
"Type": "Dielectric",
|
||||
"Thickness": 1.51,
|
||||
"Material": "FR4",
|
||||
"Name": "F.Cu/B.Cu",
|
||||
"Notes": "Type: dielectric layer 1 (from F.Cu to B.Cu)"
|
||||
},
|
||||
{
|
||||
"Type": "Copper",
|
||||
"Thickness": 0.035,
|
||||
"Name": "B.Cu"
|
||||
},
|
||||
{
|
||||
"Type": "SolderMask",
|
||||
"Thickness": 0.01,
|
||||
"Name": "Bottom Solder Mask"
|
||||
},
|
||||
{
|
||||
"Type": "SolderPaste",
|
||||
"Name": "Bottom Solder Paste"
|
||||
},
|
||||
{
|
||||
"Type": "Legend",
|
||||
"Name": "Bottom Silk Screen"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,5 +0,0 @@
|
||||
(sym_lib_table
|
||||
(version 7)
|
||||
(lib (name "converted") (type "KiCad") (uri "${KIPRJMOD}/library/converted.kicad_sym") (options "") (descr ""))
|
||||
(lib (name "RayineComponents") (type "KiCad") (uri "${KIPRJMOD}/library/RayineComponents.kicad_sym") (options "") (descr ""))
|
||||
)
|
||||
@@ -1,11 +0,0 @@
|
||||
{
|
||||
"folders": [
|
||||
{
|
||||
"path": "."
|
||||
},
|
||||
{
|
||||
"name": "firmware",
|
||||
"path": "hardware/firmware"
|
||||
}
|
||||
]
|
||||
}
|
||||
Reference in New Issue
Block a user