This commit is contained in:
GitHub build-firmware Action 2021-10-13 21:43:10 -04:00
parent a06b536a2b
commit 42da244811
15 changed files with 8061 additions and 615 deletions

View File

@ -1,42 +1,547 @@
<!DOCTYPE html>
<html>
<head>
<title>pinouts/frankenso/</title>
<meta name="description" content="pinouts/frankenso/"/>
<style>
.pin-marker {
position: absolute;
z-index: 1;
border-radius: 50%;
background-color: white;
border: 0.21vw black solid;
cursor: pointer;
color: black;
text-align: center;
line-height: 200%;
}
[data-type*="12v"],
[data-type*="12V"] {
border-color: yellow;
}
[data-type*="5v"],
[data-type*="5V"] {
border-color: red;
}
[data-type*="at"] {
border-color: green;
}
[data-type*="av"] {
border-color: brown;
}
[data-type*="can"] {
border-color: blue;
}
[data-type*="din"] {
border-color: lime;
}
[data-type*="etb"] {
border-color: darkcyan;
}
[data-type*="gnd"] {
border-color: darkgreen;
}
[data-type*="gp_high"] {
border-color: aqua;
}
[data-type*="gp_low"] {
border-color: aquamarine;
}
[data-type*="gp_pp"] {
border-color: cyan;
}
[data-type*="hall"] {
border-color: darkolivegreen;
}
[data-type*="hl"] {
border-color: gold;
}
[data-type*="hs"] {
border-color: indigo;
}
[data-type*="ign"] {
border-color: magenta;
}
[data-type*="inj"] {
border-color: maroon;
}
[data-type*="ls"] {
border-color: lightgreen;
}
[data-type*="mr"] {
border-color: firebrick;
}
[data-type*="pgnd"] {
border-color: coral;
}
[data-type*="sgnd"] {
border-color: olive;
}
[data-type*="usb"] {
border-color: lightseagreen;
}
[data-type*="vr"] {
border-color: sienna;
}
.pin-marker:hover {
transform: scale(2);
z-index: 2;
}
.pin-marker.highlight {
background-color: #fc935a;
}
.pin-marker.selected {
background-color: #f15a24;
color: white;
}
.connector-container {
width: 100%;
overflow-x: scroll;
position: relative;
height: max(3in, 50vh);
}
.connector-div {
height: 100%;
position: relative;
z-index: 0;
width: max-content;
}
.connector-img {
height: 100%;
min-width: 100%;
}
table {
font-family: Arial, Helvetica, sans-serif;
border-collapse: collapse;
width: clamp(100%, 100%, 1000px);
text-align: left;
}
@media (min-width: 1000px) {
table {
font-size: 1rem;
}
}
@media (max-width: 1000px) {
table {
word-wrap: break-word;
font-size: 2.5rem;
}
}
table tbody tr {
cursor: pointer;
}
@media screen {
td.pin-data {
border-color: black;
}
}
table td, table th {
border: 1px solid black;
padding: 8px;
}
table tr:nth-child(even){
background-color: #fc935a;
}
table tr:hover {
background-color: #f15a24;
}
table th {
padding-top: 12px;
padding-bottom: 12px;
text-align: left;
background-color: #f15a24;
color: black;
}
.info-table {
display: none;
}
@media (prefers-color-scheme: dark) {
html {
background-color: black;
color: white;
}
td.pin-data {
border: 1px solid #ddd;
}
table td, table th {
border: 1px solid #ddd;
}
table th {
color: white;
}
table tr:nth-child(even){
background-color: #230c00;
color: white;
}
table tr:hover {
background-color: #f15a24;
}
}
@media print {
.container {
height: 99vh;
display: flex;
flex-direction: column;
}
.info-table, .ts-data, .ts-header, .type-data, .type-header, .color-data, .color-header, thead {
display: none;
}
.connector-container {
flex: 0 1 auto;
height: unset;
min-height: 2in;
}
.connector-div {
max-width: 100%;
height: unset;
}
.connector-img {
max-width: 100% !important;
max-height: 3in;
}
h2 {
font-size: 14px;
}
th {
font-size: 12px;
}
td {
font-size: 10px;
}
td:not(.pin-data) {
border: none !important;
}
td.pin-data {
border-width: 3px;
border-radius: 10px;
width: 10px;
margin: 0px;
padding: 0px;
}
html, tr {
background-color: white !important;
color: black !important;
}
table {
width: auto;
border-collapse: separate;
}
.table-wrapper {
column-count: 4;
}
table, tbody, tr {
display: block;
}
}
</style>
<script type="text/javascript">
var connectorData = [
`{ "pins": [ { "pin": 2, "function": "Power Ignition On (input)" }, { "pin": 6, "id": "GPIOC_9", "class": "outputs", "function": "Ignition Coil", "ts_name": "Coil 1F" }, { "pin": 7, "id": "GPIOE_14", "class": "outputs", "function": "Ignition Coil", "ts_name": "Coil 1G" }, { "pin": 8, "id": "GPIOC_7", "class": "outputs", "function": "Ignition Coil", "ts_name": "Coil 1H" }, { "pin": 9, "id": "GPIOE_10", "class": "outputs", "function": "Spare High", "ts_name": "Coil 1I" }, { "pin": 12, "id": "GPIOE_8", "class": "outputs", "function": "Spare High", "ts_name": "Coil 1L" }, { "pin": 13, "id": "GPIOE_12", "class": "outputs", "function": "Ignition Coil", "ts_name": "Coil 1M" }, { "pin": 15, "id": "GPIOD_8", "class": "outputs", "function": "Spare High", "ts_name": "Coil 1O" }, { "pin": 16, "id": "GPIOD_9", "class": "outputs", "function": "Spare High", "ts_name": "Coil 1P" }, { "pin": 23, "function": "Crank Pos/Trigger" }, { "pin": 24, "function": "Crank Neg/Trigger" }, { "pin": 25, "function": "Cam Pos/Trigger" }, { "pin": 26, "function": "Cam Neg/Trigger" }, { "pin": 29, "function": "Knock sensor" }, { "pin": 30, "function": "Knock sensor" }, { "pin": 33, "function": "CAN high" }, { "pin": 34, "function": "CAN low" }, { "pin": 35, "id": "GPIOC_13", "class": "outputs", "ts_name": "Injector 2M", "function": "Idle Valve Control Solenoid" }, { "pin": 36, "id": "GPIOD_7", "class": "outputs", "ts_name": "Injector 2N", "function": "Main Relay" }, { "pin": 37, "id": "GPIOE_5", "class": "outputs", "ts_name": "Injector 2O", "function": "Coolant Fan Relay" }, { "pin": 38, "id": "GPIOE_6", "class": "outputs", "ts_name": "Injector 2P", "function": "Spare low" }, { "pin": 39, "function": "Ground" }, { "pin": 40, "function": "Ground" }, { "pin": 41, "function": "Ground" }, { "pin": 42, "function": "Ground" }, { "pin": 43, "id": "EFI_ADC_15", "class": "analog_inputs", "ts_name": "Analog 3E" }, { "pin": 45, "id": "EFI_ADC_7", "class": "analog_inputs", "ts_name": "Analog 3G" }, { "pin": 46, "id": "EFI_ADC_6", "class": "analog_inputs", "ts_name": "Analog 3H" }, { "pin": 47, "id": "EFI_ADC_4", "class": "analog_inputs", "ts_name": "Analog 3I" }, { "pin": 48, "id": "EFI_ADC_3", "class": "analog_inputs", "ts_name": "Analog 3J" }, { "pin": 49, "function": "5V Sensor Power Supply Output" }, { "pin": 50, "id": "EFI_ADC_1", "class": "analog_inputs", "ts_name": "Analog 3L", "function": "Extra Input" }, { "pin": 51, "id": "EFI_ADC_2", "class": "analog_inputs", "ts_name": "Analog 3M", "function": "Throttle Position Sensor" }, { "pin": 52, "id": "EFI_ADC_13", "class": "analog_inputs", "ts_name": "Analog 3N", "function": "O2 Sensor" }, { "pin": 53, "id": "EFI_ADC_0", "class": "analog_inputs", "ts_name": "Analog 3O", "function": "MAP Sensor" }, { "pin": 54, "id": "EFI_ADC_11", "class": "analog_inputs", "ts_name": "Analog 3P", "function": "Intake air temp Sensor" }, { "pin": 55, "id": "EFI_ADC_12", "class": "analog_inputs", "ts_name": "Analog 3Q", "function": "Coolant Temp Sensor" }, { "pin": 57, "id": "GPIOE_3", "class": "outputs", "ts_name": "Injector 3S", "function": "Spare low" }, { "pin": 58, "id": "GPIOE_4", "class": "outputs", "ts_name": "Injector 3T", "function": "Fuel Pump Relay" }, { "pin": 59, "id": "GPIOD_3", "class": "outputs", "ts_name": "Injector 3U", "function": "Spare low" }, { "pin": 60, "id": "GPIOE_2", "class": "outputs", "ts_name": "Injector 3V", "function": "Injector" }, { "pin": 61, "id": "GPIOB_9", "class": "outputs", "ts_name": "Injector 3W", "function": "Injector" }, { "pin": 62, "id": "GPIOD_5", "class": "outputs", "ts_name": "Injector 3X", "function": "Spare low" }, { "pin": 63, "id": "GPIOB_8", "class": "outputs", "ts_name": "Injector 3Y", "function": "Injector" }, { "pin": 64, "id": "GPIOB_7", "class": "outputs", "ts_name": "Injector 3Z", "function": "Injector" } ] }`,
`{ "pins": [ { "id": "EFI_ADC_14", "class": "analog_inputs", "ts_name": "Analog VBatt" } ] } `,
`{ "pins": [ { "pin": 2, "function": "Power Ignition On (input)" }, { "pin": 6, "id": "GPIOC_9", "class": "outputs", "function": "Ignition Coil", "ts_name": "Coil 1F" }, { "pin": 7, "id": "GPIOE_14", "class": "outputs", "function": "Ignition Coil", "ts_name": "Coil 1G" }, { "pin": 8, "id": "GPIOC_7", "class": "outputs", "function": "Ignition Coil", "ts_name": "Coil 1H" }, { "pin": 9, "id": "GPIOE_10", "class": "outputs", "function": "Spare High", "ts_name": "Coil 1I" }, { "pin": 12, "id": "GPIOE_8", "class": "outputs", "function": "Spare High", "ts_name": "Coil 1L" }, { "pin": 13, "id": "GPIOE_12", "class": "outputs", "function": "Ignition Coil", "ts_name": "Coil 1M" }, { "pin": 15, "id": "GPIOD_8", "class": "outputs", "function": "Spare High", "ts_name": "Coil 1O" }, { "pin": 16, "id": "GPIOD_9", "class": "outputs", "function": "Spare High", "ts_name": "Coil 1P" }, { "pin": 23, "function": "Crank Pos/Trigger" }, { "pin": 24, "function": "Crank Neg/Trigger" }, { "pin": 25, "function": "Cam Pos/Trigger" }, { "pin": 26, "function": "Cam Neg/Trigger" }, { "pin": 29, "function": "Knock sensor" }, { "pin": 30, "function": "Knock sensor" }, { "pin": 33, "function": "CAN high" }, { "pin": 34, "function": "CAN low" }, { "pin": 35, "id": "GPIOC_13", "class": "outputs", "ts_name": "Injector 2M", "function": "Idle Valve Control Solenoid" }, { "pin": 36, "id": "GPIOD_7", "class": "outputs", "ts_name": "Injector 2N", "function": "Main Relay" }, { "pin": 37, "id": "GPIOE_5", "class": "outputs", "ts_name": "Injector 2O", "function": "Coolant Fan Relay" }, { "pin": 38, "id": "GPIOE_6", "class": "outputs", "ts_name": "Injector 2P", "function": "Spare low" }, { "pin": 39, "function": "Ground" }, { "pin": 40, "function": "Ground" }, { "pin": 41, "function": "Ground" }, { "pin": 42, "function": "Ground" }, { "pin": 43, "id": "EFI_ADC_15", "class": "analog_inputs", "ts_name": "Analog 3E" }, { "pin": 45, "id": "EFI_ADC_7", "class": "analog_inputs", "ts_name": "Analog 3G" }, { "pin": 46, "id": "EFI_ADC_6", "class": "analog_inputs", "ts_name": "Analog 3H" }, { "pin": 47, "id": "EFI_ADC_4", "class": "analog_inputs", "ts_name": "Analog 3I" }, { "pin": 48, "id": "EFI_ADC_3", "class": "analog_inputs", "ts_name": "Analog 3J" }, { "pin": 49, "function": "5V Sensor Power Supply Output" }, { "pin": 50, "id": "EFI_ADC_1", "class": "analog_inputs", "ts_name": "Analog 3L", "function": "Extra Input" }, { "pin": 51, "id": "EFI_ADC_2", "class": "analog_inputs", "ts_name": "Analog 3M", "function": "Throttle Position Sensor" }, { "pin": 52, "id": "EFI_ADC_13", "class": "analog_inputs", "ts_name": "Analog 3N", "function": "O2 Sensor" }, { "pin": 53, "id": "EFI_ADC_0", "class": "analog_inputs", "ts_name": "Analog 3O", "function": "MAP Sensor" }, { "pin": 54, "id": "EFI_ADC_11", "class": "analog_inputs", "ts_name": "Analog 3P", "function": "Intake air temp Sensor" }, { "pin": 55, "id": "EFI_ADC_12", "class": "analog_inputs", "ts_name": "Analog 3Q", "function": "Coolant Temp Sensor" }, { "pin": 57, "id": "GPIOE_3", "class": "outputs", "ts_name": "Injector 3S", "function": "Spare low" }, { "pin": 58, "id": "GPIOE_4", "class": "outputs", "ts_name": "Injector 3T", "function": "Fuel Pump Relay" }, { "pin": 59, "id": "GPIOD_3", "class": "outputs", "ts_name": "Injector 3U", "function": "Spare low" }, { "pin": 60, "id": "GPIOE_2", "class": "outputs", "ts_name": "Injector 3V", "function": "Injector" }, { "pin": 61, "id": "GPIOB_9", "class": "outputs", "ts_name": "Injector 3W", "function": "Injector" }, { "pin": 62, "id": "GPIOD_5", "class": "outputs", "ts_name": "Injector 3X", "function": "Spare low" }, { "pin": 63, "id": "GPIOB_8", "class": "outputs", "ts_name": "Injector 3Y", "function": "Injector" }, { "pin": 64, "id": "GPIOB_7", "class": "outputs", "ts_name": "Injector 3Z", "function": "Injector" } ] } `,
`{ "pins": [ { "id": "EFI_ADC_14", "class": "analog_inputs", "ts_name": "Analog VBatt" } ] } `,
///DATA///
];
function hideEmptyColumns(table) {
var rows = table.querySelector('tbody').children;
var tableHead = table.querySelector("thead>tr")
var cols = tableHead.children
for (var i = 0; i < cols.length; i++) {
var empty = true;
for (var ii = 0; ii < rows.length; ii++) {
empty = rows[ii].children[i].textContent.length > 0 ? false : empty;
}
if (empty) {
tableHead.querySelectorAll('th')[i].style.display = 'none';
for (var ii = 0; ii < rows.length; ii++) {
rows[ii].children[i].style.display = 'none';
}
} else {
tableHead.querySelectorAll('th')[i].style.display = '';
for (var ii = 0; ii < rows.length; ii++) {
rows[ii].children[i].style.display = '';
}
}
}
}
function addRow(table, pin, cid) {
var template = document.getElementById("table-template");
var clone = template.content.cloneNode(true);
var row = clone.querySelector(".data");
var cells = row.children;
for (var i = 0; i < cells.length; i++) {
var cell = cells[i];
cell.textContent = Array.isArray(pin[cell.dataset.field]) ? pin[cell.dataset.field].join(", ") : pin[cell.dataset.field];
}
clone.querySelector(".pin-data").dataset.type = pin.type;
if (pin.pdiv) {
row.addEventListener('click', function(table, pin, cid) {
var container;
for (var elem = table; elem && elem !== document; elem = elem.parentNode) {
if (elem.matches(".container")) {
var container = elem;
};
}
clickPin(container.querySelector(".info-table tbody"), pin, cid);
container.scrollIntoView()
}.bind(null, table, pin, cid));
}
table.appendChild(clone);
}
function clickPin(table, pin, cid) {
table.parentElement.style.display = "table";
table.innerHTML = "";
addRow(table, pin, cid);
var pins = document.querySelectorAll(".pin-marker");
for (var i = 0; i < pins.length; i++) {
if (pins[i].dataset.type == pin.type) {
pins[i].classList.add("highlight");
} else {
pins[i].classList.remove("highlight");
}
pins[i].classList.remove("selected");
}
pin.pdiv.classList.add("selected");
hideEmptyColumns(table.parentElement);
if (typeof(cid) != "undefined") {
var url = new URL(window.location);
url.searchParams.set("connector", cid);
url.searchParams.set("pin", pin.pin);
window.history.pushState({}, "", url)
} else {
var url = new URL(window.location);
url.search = "";
window.history.pushState({}, "", url)
}
}
function checkparams() {
var params = new URLSearchParams(window.location.search);
var connector = params.get("connector");
var pin = params.get("pin");
for (var i = 0; i < connectorData.length; i++) {
var c = connectorData[i];
if (c.info.id == connector) {
var table = document.querySelectorAll(".info-table tbody")[i];
for (var iii = 0; iii < c.pins.length; iii++) {
if (c.pins[iii].pin == pin) {
clickPin(table, c.pins[iii], c.info.id);
return;
}
}
return;
}
}
}
var images = 0;
function checkImagesLoaded() {
images -= 1;
if (images == 0) {
checkparams();
}
}
window.addEventListener('load', function() {
window.onpopstate = function(ev) {
if (event.state) {
checkparams();
}
};
for (var c = 0; c < connectorData.length; c++) {
connectorData[c] = JSON.parse(connectorData[c]);
var connector = connectorData[c];
var template = document.getElementById("connector-template");
var clone = template.content.cloneNode(true);
document.body.appendChild(clone);
var sdiv = document.body.lastChild.previousSibling;
var img = sdiv.querySelector(".connector-img");
images += 1;
img.addEventListener('load', function(connector, sdiv, img) {
var cdiv = sdiv.querySelector(".connector-div");
var cid = connector.info.id;
var ptemplate = document.getElementById("pin-template");
var imgHeight = img.naturalHeight;
var imgWidth = img.naturalWidth;
var table = sdiv.querySelector(".info-table").querySelector("tbody");
var fullTable = sdiv.querySelector(".pinout-table").querySelector("tbody");
for (var i = 0; i < connector.pins.length; i++) {
var pin = connector.pins[i];
if (!pin.pin) {
continue;
}
var pinfo = {};
for (var ii = 0; ii < connector.info.pins.length; ii++) {
if (connector.info.pins[ii].pin == pin.pin) {
pinfo = connector.info.pins[ii];
break;
}
}
if (!pinfo.x) {
addRow(fullTable, connector.pins[i], cid);
continue;
}
var closest = 1000000;
for (var ii = 0; ii < connector.info.pins.length; ii++) {
var tinfo = connector.info.pins[ii];
var distance = Math.pow((tinfo.x - pinfo.x), 2) + Math.pow((tinfo.y - pinfo.y), 2);
if (tinfo.pin != pin.pin && (!closest || distance < closest)) {
closest = distance;
}
}
var pclone = ptemplate.content.cloneNode(true);
var pdiv = pclone.querySelector("div");
pdiv.textContent = pinfo.pin;
pdiv.style.top = ((pinfo.y / imgHeight) * 100) + "%";
pdiv.style.left = ((pinfo.x / imgWidth) * 100) + "%";
pdiv.dataset.type = pin.type;
pin.pdiv = pdiv;
pdiv.addEventListener("click", function(table, pin, cid) {
clickPin(table, pin, cid);
}.bind(null, table, pin, cid));
closest = Math.sqrt(closest);
var divheight = cdiv.clientHeight;
var divwidth = cdiv.clientWidth;
var mult = cdiv.querySelector("img").naturalHeight / divheight;
var newheight = (closest / mult)
var pxheight = divheight * 0.08;
if (newheight < pxheight) {
pxheight = newheight;
}
var height = (pxheight / divheight) * 100;
var width = (pxheight / divwidth) * 100;
pdiv.style.height = "calc(" + height + "% - 0.21vw)";
pdiv.style.width = "calc(" + width + "% - 0.21vw)";
pdiv.style.marginTop = "-" + (width / 2) + "%";
pdiv.style.marginLeft = "-" + (width / 2) + "%";
pdiv.style.fontSize = (height * 1.8) + "px";
pdiv.style.fontSize = (pxheight * 0.5) + "px";
window.addEventListener('beforeprint', function(pdiv, width, divwidth, event) {
pdiv.style.fontSize = "calc(calc(" + width + "px * min(640, " + divwidth + ")) * 0.0055)";
}.bind(null, pdiv, width, divwidth));
window.addEventListener('afterprint', function(pdiv, pxheight, event) {
pdiv.style.fontSize = (pxheight * 0.5) + "px";
}.bind(null, pdiv, pxheight));
cdiv.appendChild(pdiv);
addRow(fullTable, pin, cid);
}
hideEmptyColumns(sdiv.querySelector('.pinout-table'));
checkImagesLoaded();
}.bind(null, connector, sdiv, img));
img.src = connector.info.image.file;
if (document.title.length == 0 && typeof(connector.info.title) != "undefined") {
document.title = connector.info.title;
}
if (typeof(connector.info.name) != "undefined") {
sdiv.querySelector(".connector-name").innerText = connector.info.name;
}
}
});
</script>
</head>
<body>
<h2>Index of pinouts/frankenso/</h2>
<p>
<table>
<tbody>
<tr>
<th valign="top"><img src="../../images/blank.gif"
alt="[ICO]"></th>
<th><a href="?C=N;O=D">Name</a></th>
<th><a href="?C=M;O=A">Last modified</a></th>
<th><a href="?C=S;O=A">Size</a></th>
<th><a href="?C=D;O=A">Description</a></th>
</tr>
<tr>
<th colspan="5"><hr></th>
</tr>
<tr>
<td valign="top"><img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAmlJREFUeNpsU0toU0EUPfPysx/tTxuDH9SCWhUDooIbd7oRUUTMouqi2iIoCO6lceHWhegy4EJFinWjrlQUpVm0IIoFpVDEIthm0dpikpf3ZuZ6Z94nrXhhMjM3c8895977BBHB2PznK8WPtDgyWH5q77cPH8PpdXuhpQT4ifR9u5sfJb1bmw6VivahATDrxcRZ2njfoaMv+2j7mLDn93MPiNRMvGbL18L9IpF8h9/TN+EYkMffSiOXJ5+hkD+PdqcLpICWHOHc2CC+LEyA/K+cKQMnlQHJX8wqYG3MAJy88Wa4OLDvEqAEOpJd0LxHIMdHBziowSwVlF8D6QaicK01krw/JynwcKoEwZczewroTvZirlKJs5CqQ5CG8pb57FnJUA0LYCXMX5fibd+p8LWDDemcPZbzQyjvH+Ki1TlIciElA7ghwLKV4kRZstt2sANWRjYTAGzuP2hXZFpJ/GsxgGJ0ox1aoFWsDXyyxqCs26+ydmagFN/rRjymJ1898bzGzmQE0HCZpmk5A0RFIv8Pn0WYPsiu6t/Rsj6PauVTwffTSzGAGZhUG2F06hEc9ibS7OPMNp6ErYFlKavo7MkhmTqCxZ/jwzGA9Hx82H2BZSw1NTN9Gx8ycHkajU/7M+jInsDC7DiaEmo1bNl1AMr9ASFgqVu9MCTIzoGUimXVAnnaN0PdBBDCCYbEtMk6wkpQwIG0sn0PQIUF4GsTwLSIFKNqF6DVrQq+IWVrQDxAYQC/1SsYOI4pOxKZrfifiUSbDUisif7XlpGIPufXd/uvdvZm760M0no1FZcnrzUdjw7au3vu/BVgAFLXeuTxhTXVAAAAAElFTkSuQmCC "
alt="[PARENTDIR]"></td>
<td><a href="../">Parent Directory</a></td>
<td>&nbsp;</td>
<td align="right">-</td>
<td>&nbsp;</td>
</tr>
<tr>
<th colspan="5"><hr></th>
</tr>
</p>
</tbody>
<template id="pin-template">
<div class="pin-marker"></div>
</template>
<template id="table-template">
<tr class="data">
<td class="pin-data" data-field="pin"></td>
<td class="ts-data" data-field="ts_name"></td>
<td class="type-data" data-field="type"</td>
<td class="function-data" data-field="function"></td>
<td class="color-data" data-field="color"></td>
</tr>
</template>
<template id="connector-template">
<div class="container">
<h2 class="connector-name"></h2>
<div class="connector-container">
<div class="connector-div">
<img class="connector-img"></img>
</div>
</div>
<table class="info-table">
<thead>
<tr>
<th class="pin-header" data-field="pin">Pin Number</th>
<th class="ts-header" data-field="ts_name">TS Name</th>
<th class="type-header" data-field="type">Type</th>
<th class="function-header" data-field="function">Typical Function</th>
<th class="color-header" data-field="color">Pigtail Color</th>
</tr>
</thead>
<tbody>
</tbody>
</table>
<h2>Full Pinout Table</h2>
<div class="table-wrapper">
<table class="pinout-table">
<thead>
<tr>
<th class="pin-header" data-field="pin">Pin Number</th>
<th class="ts-header" data-field="ts_name">TS Name</th>
<th class="type-header" data-field="type">Type</th>
<th class="function-header" data-field="function">Typical Function</th>
<th class="color-header" data-field="color">Pigtail Color</th>
</tr>
</thead>
<tbody>
</tbody>
</table>
</div>
</div>
</template>
</body>
</html>

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,42 +1,545 @@
<!DOCTYPE html>
<html>
<head>
<title>pinouts/hellen/hellen88bmw/</title>
<meta name="description" content="pinouts/hellen/hellen88bmw/"/>
<style>
.pin-marker {
position: absolute;
z-index: 1;
border-radius: 50%;
background-color: white;
border: 0.21vw black solid;
cursor: pointer;
color: black;
text-align: center;
line-height: 200%;
}
[data-type*="12v"],
[data-type*="12V"] {
border-color: yellow;
}
[data-type*="5v"],
[data-type*="5V"] {
border-color: red;
}
[data-type*="at"] {
border-color: green;
}
[data-type*="av"] {
border-color: brown;
}
[data-type*="can"] {
border-color: blue;
}
[data-type*="din"] {
border-color: lime;
}
[data-type*="etb"] {
border-color: darkcyan;
}
[data-type*="gnd"] {
border-color: darkgreen;
}
[data-type*="gp_high"] {
border-color: aqua;
}
[data-type*="gp_low"] {
border-color: aquamarine;
}
[data-type*="gp_pp"] {
border-color: cyan;
}
[data-type*="hall"] {
border-color: darkolivegreen;
}
[data-type*="hl"] {
border-color: gold;
}
[data-type*="hs"] {
border-color: indigo;
}
[data-type*="ign"] {
border-color: magenta;
}
[data-type*="inj"] {
border-color: maroon;
}
[data-type*="ls"] {
border-color: lightgreen;
}
[data-type*="mr"] {
border-color: firebrick;
}
[data-type*="pgnd"] {
border-color: coral;
}
[data-type*="sgnd"] {
border-color: olive;
}
[data-type*="usb"] {
border-color: lightseagreen;
}
[data-type*="vr"] {
border-color: sienna;
}
.pin-marker:hover {
transform: scale(2);
z-index: 2;
}
.pin-marker.highlight {
background-color: #fc935a;
}
.pin-marker.selected {
background-color: #f15a24;
color: white;
}
.connector-container {
width: 100%;
overflow-x: scroll;
position: relative;
height: max(3in, 50vh);
}
.connector-div {
height: 100%;
position: relative;
z-index: 0;
width: max-content;
}
.connector-img {
height: 100%;
min-width: 100%;
}
table {
font-family: Arial, Helvetica, sans-serif;
border-collapse: collapse;
width: clamp(100%, 100%, 1000px);
text-align: left;
}
@media (min-width: 1000px) {
table {
font-size: 1rem;
}
}
@media (max-width: 1000px) {
table {
word-wrap: break-word;
font-size: 2.5rem;
}
}
table tbody tr {
cursor: pointer;
}
@media screen {
td.pin-data {
border-color: black;
}
}
table td, table th {
border: 1px solid black;
padding: 8px;
}
table tr:nth-child(even){
background-color: #fc935a;
}
table tr:hover {
background-color: #f15a24;
}
table th {
padding-top: 12px;
padding-bottom: 12px;
text-align: left;
background-color: #f15a24;
color: black;
}
.info-table {
display: none;
}
@media (prefers-color-scheme: dark) {
html {
background-color: black;
color: white;
}
td.pin-data {
border: 1px solid #ddd;
}
table td, table th {
border: 1px solid #ddd;
}
table th {
color: white;
}
table tr:nth-child(even){
background-color: #230c00;
color: white;
}
table tr:hover {
background-color: #f15a24;
}
}
@media print {
.container {
height: 99vh;
display: flex;
flex-direction: column;
}
.info-table, .ts-data, .ts-header, .type-data, .type-header, .color-data, .color-header, thead {
display: none;
}
.connector-container {
flex: 0 1 auto;
height: unset;
min-height: 2in;
}
.connector-div {
max-width: 100%;
height: unset;
}
.connector-img {
max-width: 100% !important;
max-height: 3in;
}
h2 {
font-size: 14px;
}
th {
font-size: 12px;
}
td {
font-size: 10px;
}
td:not(.pin-data) {
border: none !important;
}
td.pin-data {
border-width: 3px;
border-radius: 10px;
width: 10px;
margin: 0px;
padding: 0px;
}
html, tr {
background-color: white !important;
color: black !important;
}
table {
width: auto;
border-collapse: separate;
}
.table-wrapper {
column-count: 4;
}
table, tbody, tr {
display: block;
}
}
</style>
<script type="text/javascript">
var connectorData = [
`{ "pins": [ { "pin": 1, "id": "GPIOG_14", "class": "outputs", "function": "Fuel Pump Relay Output (low)", "ts_name": "1 - OUT_PUMP" }, { "pin": 3, "id": "GPIOD_9", "function": "Injector 5 Output", "class": "outputs", "ts_name": "3 - INJ_5", "type": "inj" }, { "pin": 4, "id": "GPIOF_12", "function": "Injector 6 Output", "class": "outputs", "ts_name": "4 - INJ_6", "type": "inj" }, { "pin": 5, "id": "GPIOD_10", "function": "Injector 4 Output", "class": "outputs", "ts_name": "5 - INJ_4", "type": "inj" }, { "pin": 8, "ts_name": "CEL" }, { "pin": 16, "id": [ "GPIOB_1", "EFI_ADC_9" ], "class": [ "event_inputs", "analog_inputs" ], "ts_name": "16 - CRANK", "function": "Crankshaft Sensor" }, { "pin": 17, "id": [ "GPIOA_6", "EFI_ADC_6" ], "class": [ "event_inputs", "analog_inputs" ], "ts_name": "17 - CAM", "function": "Camshaft Sensor" }, { "pin": 23, "id": "GPIOE_3", "class": "outputs", "ts_name": "23 - Coil 4", "function": "Coil 4", "type": "ign" }, { "pin": 24, "id": "GPIOB_8", "class": "outputs", "ts_name": "24 - Coil 6", "function": "Coil 6", "type": "ign" }, { "pin": 25, "id": "GPIOE_2", "class": "outputs", "ts_name": "25 - Coil 5", "function": "Coil 5", "type": "ign" }, { "pin": 27, "id": "GPIOD_3", "class": "outputs", "ts_name": "27 - MAIN", "function": "Main relay control", "type": "ls" }, { "pin": 31, "id": "GPIOD_11", "function": "Injector 3 Output", "class": "outputs", "ts_name": "31 - INJ_3", "type": "inj" }, { "pin": 32, "id": "GPIOG_8", "function": "Injector 2 Output", "class": "outputs", "ts_name": "32 - INJ_2", "type": "inj" }, { "pin": 33, "id": "GPIOG_7", "function": "Injector 1 Output", "class": "outputs", "ts_name": "33 - INJ_1", "type": "inj" }, { "pin": 50, "id": "GPIOC_13", "class": "outputs", "ts_name": "50 - Coil 1", "function": "Coil 1", "type": "ign" }, { "pin": 51, "id": "GPIOE_5", "class": "outputs", "ts_name": "51 - Coil 2", "function": "Coil 2", "type": "ign" }, { "pin": 52, "id": "GPIOE_4", "class": "outputs", "ts_name": "52 - Coil 3", "function": "Coil 3", "type": "ign" } ], "info": { "title": "Hellen 88 BMW", "pins": null } }`,
`{ "pins": [ { "pin": 1, "id": "GPIOG_14", "class": "outputs", "function": "Fuel Pump Relay Output (low)", "ts_name": "1 - OUT_PUMP" }, { "pin": 3, "id": "GPIOD_9", "function": "Injector 5 Output", "class": "outputs", "ts_name": "3 - INJ_5", "type": "inj" }, { "pin": 4, "id": "GPIOF_12", "function": "Injector 6 Output", "class": "outputs", "ts_name": "4 - INJ_6", "type": "inj" }, { "pin": 5, "id": "GPIOD_10", "function": "Injector 4 Output", "class": "outputs", "ts_name": "5 - INJ_4", "type": "inj" }, { "pin": 8, "ts_name": "CEL" }, { "pin": 16, "id": [ "GPIOB_1", "EFI_ADC_9" ], "class": [ "event_inputs", "analog_inputs" ], "ts_name": "16 - CRANK", "function": "Crankshaft Sensor" }, { "pin": 17, "id": [ "GPIOA_6", "EFI_ADC_6" ], "class": [ "event_inputs", "analog_inputs" ], "ts_name": "17 - CAM", "function": "Camshaft Sensor" }, { "pin": 23, "id": "GPIOE_3", "class": "outputs", "ts_name": "23 - Coil 4", "function": "Coil 4", "type": "ign" }, { "pin": 24, "id": "GPIOB_8", "class": "outputs", "ts_name": "24 - Coil 6", "function": "Coil 6", "type": "ign" }, { "pin": 25, "id": "GPIOE_2", "class": "outputs", "ts_name": "25 - Coil 5", "function": "Coil 5", "type": "ign" }, { "pin": 27, "id": "GPIOD_3", "class": "outputs", "ts_name": "27 - MAIN", "function": "Main relay control", "type": "ls" }, { "pin": 31, "id": "GPIOD_11", "function": "Injector 3 Output", "class": "outputs", "ts_name": "31 - INJ_3", "type": "inj" }, { "pin": 32, "id": "GPIOG_8", "function": "Injector 2 Output", "class": "outputs", "ts_name": "32 - INJ_2", "type": "inj" }, { "pin": 33, "id": "GPIOG_7", "function": "Injector 1 Output", "class": "outputs", "ts_name": "33 - INJ_1", "type": "inj" }, { "pin": 50, "id": "GPIOC_13", "class": "outputs", "ts_name": "50 - Coil 1", "function": "Coil 1", "type": "ign" }, { "pin": 51, "id": "GPIOE_5", "class": "outputs", "ts_name": "51 - Coil 2", "function": "Coil 2", "type": "ign" }, { "pin": 52, "id": "GPIOE_4", "class": "outputs", "ts_name": "52 - Coil 3", "function": "Coil 3", "type": "ign" } ], "info": { "title": "Hellen 88 BMW", "pins": null } } `,
///DATA///
];
function hideEmptyColumns(table) {
var rows = table.querySelector('tbody').children;
var tableHead = table.querySelector("thead>tr")
var cols = tableHead.children
for (var i = 0; i < cols.length; i++) {
var empty = true;
for (var ii = 0; ii < rows.length; ii++) {
empty = rows[ii].children[i].textContent.length > 0 ? false : empty;
}
if (empty) {
tableHead.querySelectorAll('th')[i].style.display = 'none';
for (var ii = 0; ii < rows.length; ii++) {
rows[ii].children[i].style.display = 'none';
}
} else {
tableHead.querySelectorAll('th')[i].style.display = '';
for (var ii = 0; ii < rows.length; ii++) {
rows[ii].children[i].style.display = '';
}
}
}
}
function addRow(table, pin, cid) {
var template = document.getElementById("table-template");
var clone = template.content.cloneNode(true);
var row = clone.querySelector(".data");
var cells = row.children;
for (var i = 0; i < cells.length; i++) {
var cell = cells[i];
cell.textContent = Array.isArray(pin[cell.dataset.field]) ? pin[cell.dataset.field].join(", ") : pin[cell.dataset.field];
}
clone.querySelector(".pin-data").dataset.type = pin.type;
if (pin.pdiv) {
row.addEventListener('click', function(table, pin, cid) {
var container;
for (var elem = table; elem && elem !== document; elem = elem.parentNode) {
if (elem.matches(".container")) {
var container = elem;
};
}
clickPin(container.querySelector(".info-table tbody"), pin, cid);
container.scrollIntoView()
}.bind(null, table, pin, cid));
}
table.appendChild(clone);
}
function clickPin(table, pin, cid) {
table.parentElement.style.display = "table";
table.innerHTML = "";
addRow(table, pin, cid);
var pins = document.querySelectorAll(".pin-marker");
for (var i = 0; i < pins.length; i++) {
if (pins[i].dataset.type == pin.type) {
pins[i].classList.add("highlight");
} else {
pins[i].classList.remove("highlight");
}
pins[i].classList.remove("selected");
}
pin.pdiv.classList.add("selected");
hideEmptyColumns(table.parentElement);
if (typeof(cid) != "undefined") {
var url = new URL(window.location);
url.searchParams.set("connector", cid);
url.searchParams.set("pin", pin.pin);
window.history.pushState({}, "", url)
} else {
var url = new URL(window.location);
url.search = "";
window.history.pushState({}, "", url)
}
}
function checkparams() {
var params = new URLSearchParams(window.location.search);
var connector = params.get("connector");
var pin = params.get("pin");
for (var i = 0; i < connectorData.length; i++) {
var c = connectorData[i];
if (c.info.id == connector) {
var table = document.querySelectorAll(".info-table tbody")[i];
for (var iii = 0; iii < c.pins.length; iii++) {
if (c.pins[iii].pin == pin) {
clickPin(table, c.pins[iii], c.info.id);
return;
}
}
return;
}
}
}
var images = 0;
function checkImagesLoaded() {
images -= 1;
if (images == 0) {
checkparams();
}
}
window.addEventListener('load', function() {
window.onpopstate = function(ev) {
if (event.state) {
checkparams();
}
};
for (var c = 0; c < connectorData.length; c++) {
connectorData[c] = JSON.parse(connectorData[c]);
var connector = connectorData[c];
var template = document.getElementById("connector-template");
var clone = template.content.cloneNode(true);
document.body.appendChild(clone);
var sdiv = document.body.lastChild.previousSibling;
var img = sdiv.querySelector(".connector-img");
images += 1;
img.addEventListener('load', function(connector, sdiv, img) {
var cdiv = sdiv.querySelector(".connector-div");
var cid = connector.info.id;
var ptemplate = document.getElementById("pin-template");
var imgHeight = img.naturalHeight;
var imgWidth = img.naturalWidth;
var table = sdiv.querySelector(".info-table").querySelector("tbody");
var fullTable = sdiv.querySelector(".pinout-table").querySelector("tbody");
for (var i = 0; i < connector.pins.length; i++) {
var pin = connector.pins[i];
if (!pin.pin) {
continue;
}
var pinfo = {};
for (var ii = 0; ii < connector.info.pins.length; ii++) {
if (connector.info.pins[ii].pin == pin.pin) {
pinfo = connector.info.pins[ii];
break;
}
}
if (!pinfo.x) {
addRow(fullTable, connector.pins[i], cid);
continue;
}
var closest = 1000000;
for (var ii = 0; ii < connector.info.pins.length; ii++) {
var tinfo = connector.info.pins[ii];
var distance = Math.pow((tinfo.x - pinfo.x), 2) + Math.pow((tinfo.y - pinfo.y), 2);
if (tinfo.pin != pin.pin && (!closest || distance < closest)) {
closest = distance;
}
}
var pclone = ptemplate.content.cloneNode(true);
var pdiv = pclone.querySelector("div");
pdiv.textContent = pinfo.pin;
pdiv.style.top = ((pinfo.y / imgHeight) * 100) + "%";
pdiv.style.left = ((pinfo.x / imgWidth) * 100) + "%";
pdiv.dataset.type = pin.type;
pin.pdiv = pdiv;
pdiv.addEventListener("click", function(table, pin, cid) {
clickPin(table, pin, cid);
}.bind(null, table, pin, cid));
closest = Math.sqrt(closest);
var divheight = cdiv.clientHeight;
var divwidth = cdiv.clientWidth;
var mult = cdiv.querySelector("img").naturalHeight / divheight;
var newheight = (closest / mult)
var pxheight = divheight * 0.08;
if (newheight < pxheight) {
pxheight = newheight;
}
var height = (pxheight / divheight) * 100;
var width = (pxheight / divwidth) * 100;
pdiv.style.height = "calc(" + height + "% - 0.21vw)";
pdiv.style.width = "calc(" + width + "% - 0.21vw)";
pdiv.style.marginTop = "-" + (width / 2) + "%";
pdiv.style.marginLeft = "-" + (width / 2) + "%";
pdiv.style.fontSize = (height * 1.8) + "px";
pdiv.style.fontSize = (pxheight * 0.5) + "px";
window.addEventListener('beforeprint', function(pdiv, width, divwidth, event) {
pdiv.style.fontSize = "calc(calc(" + width + "px * min(640, " + divwidth + ")) * 0.0055)";
}.bind(null, pdiv, width, divwidth));
window.addEventListener('afterprint', function(pdiv, pxheight, event) {
pdiv.style.fontSize = (pxheight * 0.5) + "px";
}.bind(null, pdiv, pxheight));
cdiv.appendChild(pdiv);
addRow(fullTable, pin, cid);
}
hideEmptyColumns(sdiv.querySelector('.pinout-table'));
checkImagesLoaded();
}.bind(null, connector, sdiv, img));
img.src = connector.info.image.file;
if (document.title.length == 0 && typeof(connector.info.title) != "undefined") {
document.title = connector.info.title;
}
if (typeof(connector.info.name) != "undefined") {
sdiv.querySelector(".connector-name").innerText = connector.info.name;
}
}
});
</script>
</head>
<body>
<h2>Index of pinouts/hellen/hellen88bmw/</h2>
<p>
<table>
<tbody>
<tr>
<th valign="top"><img src="../../../images/blank.gif"
alt="[ICO]"></th>
<th><a href="?C=N;O=D">Name</a></th>
<th><a href="?C=M;O=A">Last modified</a></th>
<th><a href="?C=S;O=A">Size</a></th>
<th><a href="?C=D;O=A">Description</a></th>
</tr>
<tr>
<th colspan="5"><hr></th>
</tr>
<tr>
<td valign="top"><img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAmlJREFUeNpsU0toU0EUPfPysx/tTxuDH9SCWhUDooIbd7oRUUTMouqi2iIoCO6lceHWhegy4EJFinWjrlQUpVm0IIoFpVDEIthm0dpikpf3ZuZ6Z94nrXhhMjM3c8895977BBHB2PznK8WPtDgyWH5q77cPH8PpdXuhpQT4ifR9u5sfJb1bmw6VivahATDrxcRZ2njfoaMv+2j7mLDn93MPiNRMvGbL18L9IpF8h9/TN+EYkMffSiOXJ5+hkD+PdqcLpICWHOHc2CC+LEyA/K+cKQMnlQHJX8wqYG3MAJy88Wa4OLDvEqAEOpJd0LxHIMdHBziowSwVlF8D6QaicK01krw/JynwcKoEwZczewroTvZirlKJs5CqQ5CG8pb57FnJUA0LYCXMX5fibd+p8LWDDemcPZbzQyjvH+Ki1TlIciElA7ghwLKV4kRZstt2sANWRjYTAGzuP2hXZFpJ/GsxgGJ0ox1aoFWsDXyyxqCs26+ydmagFN/rRjymJ1898bzGzmQE0HCZpmk5A0RFIv8Pn0WYPsiu6t/Rsj6PauVTwffTSzGAGZhUG2F06hEc9ibS7OPMNp6ErYFlKavo7MkhmTqCxZ/jwzGA9Hx82H2BZSw1NTN9Gx8ycHkajU/7M+jInsDC7DiaEmo1bNl1AMr9ASFgqVu9MCTIzoGUimXVAnnaN0PdBBDCCYbEtMk6wkpQwIG0sn0PQIUF4GsTwLSIFKNqF6DVrQq+IWVrQDxAYQC/1SsYOI4pOxKZrfifiUSbDUisif7XlpGIPufXd/uvdvZm760M0no1FZcnrzUdjw7au3vu/BVgAFLXeuTxhTXVAAAAAElFTkSuQmCC "
alt="[PARENTDIR]"></td>
<td><a href="../">Parent Directory</a></td>
<td>&nbsp;</td>
<td align="right">-</td>
<td>&nbsp;</td>
</tr>
<tr>
<th colspan="5"><hr></th>
</tr>
</p>
</tbody>
<template id="pin-template">
<div class="pin-marker"></div>
</template>
<template id="table-template">
<tr class="data">
<td class="pin-data" data-field="pin"></td>
<td class="ts-data" data-field="ts_name"></td>
<td class="type-data" data-field="type"</td>
<td class="function-data" data-field="function"></td>
<td class="color-data" data-field="color"></td>
</tr>
</template>
<template id="connector-template">
<div class="container">
<h2 class="connector-name"></h2>
<div class="connector-container">
<div class="connector-div">
<img class="connector-img"></img>
</div>
</div>
<table class="info-table">
<thead>
<tr>
<th class="pin-header" data-field="pin">Pin Number</th>
<th class="ts-header" data-field="ts_name">TS Name</th>
<th class="type-header" data-field="type">Type</th>
<th class="function-header" data-field="function">Typical Function</th>
<th class="color-header" data-field="color">Pigtail Color</th>
</tr>
</thead>
<tbody>
</tbody>
</table>
<h2>Full Pinout Table</h2>
<div class="table-wrapper">
<table class="pinout-table">
<thead>
<tr>
<th class="pin-header" data-field="pin">Pin Number</th>
<th class="ts-header" data-field="ts_name">TS Name</th>
<th class="type-header" data-field="type">Type</th>
<th class="function-header" data-field="function">Typical Function</th>
<th class="color-header" data-field="color">Pigtail Color</th>
</tr>
</thead>
<tbody>
</tbody>
</table>
</div>
</div>
</template>
</body>
</html>

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,42 +1,553 @@
<!DOCTYPE html>
<html>
<head>
<title>pinouts/subaru_eg33/</title>
<meta name="description" content="pinouts/subaru_eg33/"/>
<style>
.pin-marker {
position: absolute;
z-index: 1;
border-radius: 50%;
background-color: white;
border: 0.21vw black solid;
cursor: pointer;
color: black;
text-align: center;
line-height: 200%;
}
[data-type*="12v"],
[data-type*="12V"] {
border-color: yellow;
}
[data-type*="5v"],
[data-type*="5V"] {
border-color: red;
}
[data-type*="at"] {
border-color: green;
}
[data-type*="av"] {
border-color: brown;
}
[data-type*="can"] {
border-color: blue;
}
[data-type*="din"] {
border-color: lime;
}
[data-type*="etb"] {
border-color: darkcyan;
}
[data-type*="gnd"] {
border-color: darkgreen;
}
[data-type*="gp_high"] {
border-color: aqua;
}
[data-type*="gp_low"] {
border-color: aquamarine;
}
[data-type*="gp_pp"] {
border-color: cyan;
}
[data-type*="hall"] {
border-color: darkolivegreen;
}
[data-type*="hl"] {
border-color: gold;
}
[data-type*="hs"] {
border-color: indigo;
}
[data-type*="ign"] {
border-color: magenta;
}
[data-type*="inj"] {
border-color: maroon;
}
[data-type*="ls"] {
border-color: lightgreen;
}
[data-type*="mr"] {
border-color: firebrick;
}
[data-type*="pgnd"] {
border-color: coral;
}
[data-type*="sgnd"] {
border-color: olive;
}
[data-type*="usb"] {
border-color: lightseagreen;
}
[data-type*="vr"] {
border-color: sienna;
}
.pin-marker:hover {
transform: scale(2);
z-index: 2;
}
.pin-marker.highlight {
background-color: #fc935a;
}
.pin-marker.selected {
background-color: #f15a24;
color: white;
}
.connector-container {
width: 100%;
overflow-x: scroll;
position: relative;
height: max(3in, 50vh);
}
.connector-div {
height: 100%;
position: relative;
z-index: 0;
width: max-content;
}
.connector-img {
height: 100%;
min-width: 100%;
}
table {
font-family: Arial, Helvetica, sans-serif;
border-collapse: collapse;
width: clamp(100%, 100%, 1000px);
text-align: left;
}
@media (min-width: 1000px) {
table {
font-size: 1rem;
}
}
@media (max-width: 1000px) {
table {
word-wrap: break-word;
font-size: 2.5rem;
}
}
table tbody tr {
cursor: pointer;
}
@media screen {
td.pin-data {
border-color: black;
}
}
table td, table th {
border: 1px solid black;
padding: 8px;
}
table tr:nth-child(even){
background-color: #fc935a;
}
table tr:hover {
background-color: #f15a24;
}
table th {
padding-top: 12px;
padding-bottom: 12px;
text-align: left;
background-color: #f15a24;
color: black;
}
.info-table {
display: none;
}
@media (prefers-color-scheme: dark) {
html {
background-color: black;
color: white;
}
td.pin-data {
border: 1px solid #ddd;
}
table td, table th {
border: 1px solid #ddd;
}
table th {
color: white;
}
table tr:nth-child(even){
background-color: #230c00;
color: white;
}
table tr:hover {
background-color: #f15a24;
}
}
@media print {
.container {
height: 99vh;
display: flex;
flex-direction: column;
}
.info-table, .ts-data, .ts-header, .type-data, .type-header, .color-data, .color-header, thead {
display: none;
}
.connector-container {
flex: 0 1 auto;
height: unset;
min-height: 2in;
}
.connector-div {
max-width: 100%;
height: unset;
}
.connector-img {
max-width: 100% !important;
max-height: 3in;
}
h2 {
font-size: 14px;
}
th {
font-size: 12px;
}
td {
font-size: 10px;
}
td:not(.pin-data) {
border: none !important;
}
td.pin-data {
border-width: 3px;
border-radius: 10px;
width: 10px;
margin: 0px;
padding: 0px;
}
html, tr {
background-color: white !important;
color: black !important;
}
table {
width: auto;
border-collapse: separate;
}
.table-wrapper {
column-count: 4;
}
table, tbody, tr {
display: block;
}
}
</style>
<script type="text/javascript">
var connectorData = [
`{ "pins": [ { "pin": 12, "function": "Sensors Analog supply (+5)", "type": "5v" }, { "pin": 13, "function": "Sensors GND", "type": "sgnd" }, { "pin": 14, "id": "TLE6240_PIN_14", "class": "outputs", "function": "AUX OD output 1", "ts_name": "AUX0_14 - AUX0 OD output 1", "type": "gp_low" }, { "pin": 17, "id": "TLE6240_PIN_13", "class": "outputs", "function": "AUX OD output 0", "ts_name": "AUX0_17 - AUX0 OD output 0", "type": "gp_low" }, { "pin": 18, "id": "EFI_ADC_0", "class": "analog_inputs", "function": "MAP input", "ts_name": "AUX0_18 - MAP Ain", "type": "av" }, { "pin": 19, "id": "EFI_ADC_5", "class": "analog_inputs", "function": "MAP input", "ts_name": "AUX0_19 - IAT Ain", "type": "av" } ] }`,
`{ "pins": [ { "pin": 1, "id": "MC33810_0_OUT_2", "class": "outputs", "function": "Injector 5", "ts_name": "A01 - Injector 5", "type": "inj" }, { "pin": 2, "id": "EFI_ADC_6", "class": "analog_inputs", "function": "12V supply from Main Relay", "ts_name": "A02 - VBat", "type": "at" }, { "pin": 3, "id": "EFI_ADC_14", "class": "analog_inputs", "function": "CLT sensor", "ts_name": "A03 - Coolant t Ain", "type": "at" }, { "pin": 4, "id": "EFI_ADC_9", "class": "analog_inputs", "function": "CLT sensor", "ts_name": "A04 - EGR t Ain", "type": "at" }, { "pin": 5, "id": "EFI_ADC_8", "class": "analog_inputs", "function": "Narrow AFR Bank 2", "ts_name": "A06 - Oxyg 2 Ain", "type": "av" }, { "pin": 6, "id": "EFI_ADC_15", "class": "analog_inputs", "function": "Narrow AFR Bank 1", "ts_name": "A06 - Oxyg 1 Ain", "type": "av" }, { "pin": 7, "id": "GPIOH_12", "class": "event_inputs", "function": "Cam VR+", "ts_name": "A07 - Cam VR+", "type": "vr" }, { "pin": 8, "id": "GPIOE_9", "class": "event_inputs", "function": "Crank 2 VR+", "ts_name": "A08 - Crank 2 VR+", "type": "vr" }, { "pin": 9, "function": "Cam and Crank 2 VR sensor GND", "type": "sgnd" }, { "pin": 10, "function": "Cam and Crank 2 VR sensors shield", "type": "sgnd" }, { "pin": 11, "function": "Power GND", "type": "pgnd" }, { "pin": 12, "id": "MC33810_1_OUT_2", "class": "outputs", "function": "Injector 6", "ts_name": "A12 - Injector 6", "type": "inj" }, { "pin": 13, "function": "12V supply from Main Relay", "type": "12V" }, { "pin": 14, "function": "Ground (Body)", "type": "pgnd" }, { "pin": 15, "function": "Backup 12V supply (always on)", "type": "12V" }, { "pin": 16, "id": "EFI_ADC3_10", "class": "analog_inputs", "function": "Atm Pressure Sensor output to TCU", "ts_name": "(BUG!) A16 - Atm Pressure Sensor Ain", "type": "av" }, { "pin": 17, "function": "AFR sensors shield", "type": "sgnd" }, { "pin": 18, "id": "EFI_ADC_11", "class": "analog_inputs", "function": "AUX0 Ain", "ts_name": "A18 - AUX0 Ain", "type": "av" }, { "pin": 19, "id": "MC33972_PIN_22", "class": "switch_inputs", "function": "AC Ctrl Din", "ts_name": "A19 - AC Ctrl Din", "type": "av" }, { "pin": 20, "id": "MC33972_PIN_21", "class": "switch_inputs", "function": "Torque Ctrl Din", "ts_name": "A20 - Torque Ctrl Din", "type": "av" }, { "pin": 11, "function": "Sensors GND", "type": "sgnd" }, { "pin": 22, "function": "Power GND", "type": "pgnd" } ] } `,
`{ "pins": [ { "pin": 1, "id": "TLE6240_PIN_12", "class": "outputs", "function": "IDLE close", "ts_name": "D01 - IDLE close", "type": "gp_low" }, { "pin": 2, "id": "TLE6240_PIN_11", "class": "outputs", "function": "IDLE open", "ts_name": "D02 - IDLE open", "type": "gp_low" }, { "pin": 3, "id": "TLE6240_PIN_2", "class": "outputs", "function": "FAN 2 relay", "ts_name": "D03 - FAN 2 relay", "type": "gp_low" }, { "pin": 4, "id": "MC33972_PIN_8", "class": "switch_inputs", "function": "California ID Din", "ts_name": "D04 - California ID Din", "type": "av" }, { "pin": 5, "id": "GPIOH_7", "class": "outputs", "function": "Self Shutdown", "ts_name": "D05 - Self Shutdown", "type": "gp_high" }, { "pin": 6, "id": "TLE6240_PIN_10", "class": "outputs", "function": "Absorber purge valve", "ts_name": "D06 - Absorber purge valve", "type": "gp_low" }, { "pin": 7, "id": "MC33810_0_GD_0", "class": "outputs", "function": "Ignition 4", "ts_name": "D07 - Ignition Cyl 4", "type": "ign" }, { "pin": 8, "id": "MC33810_1_GD_2", "class": "outputs", "function": "Ignition 2", "ts_name": "D08 - Ignition Cyl 2", "type": "ign" }, { "pin": 9, "id": "MC33810_0_GD_1", "class": "outputs", "function": "Ignition 3", "ts_name": "D09 - Ignition Cyl 3", "type": "ign" }, { "pin": 10, "id": "MC33810_1_GD_3", "class": "outputs", "function": "Ignition 1", "ts_name": "D10 - Ignition Cyl 1", "type": "ign" }, { "pin": 11, "id": "MC33810_0_OUT_1", "class": "outputs", "function": "Injector 3", "ts_name": "D11 - Injector 3", "type": "inj" }, { "pin": 12, "id": "MC33810_1_OUT_0", "class": "outputs", "function": "Injector 2", "ts_name": "D12 - Injector 2", "type": "inj" }, { "pin": 13, "id": "MC33810_0_OUT_0", "class": "outputs", "function": "Injector 1", "ts_name": "D13 - Injector 1", "type": "inj" }, { "pin": 14, "function": "Power GND", "type": "pgnd" }, { "pin": 15, "function": "Ignition GND", "type": "pgnd" }, { "pin": 16, "id": "MC33810_1_GD_1", "class": "outputs", "function": "Ignition 6", "ts_name": "D16 - Ignition Cyl 6", "type": "ign" }, { "pin": 17, "id": "TLE6240_PIN_1", "class": "outputs", "function": "FAN 1 relay", "ts_name": "D17 - FAN 1 relay", "type": "gp_low" }, { "pin": 18, "id": "TLE6240_PIN_9", "class": "outputs", "function": "Auxillary air valve", "ts_name": "D18 - Auxillary air valve", "type": "gp_low" }, { "pin": 19, "id": "TLE6240_PIN_7", "class": "outputs", "function": "Check Engine indicator", "ts_name": "D19 - Check Engine indicator", "type": "gp_low" }, { "pin": 20, "id": "TLE6240_PIN_16", "class": "outputs", "function": "Inertia-Resonance Super-Charger control", "ts_name": "D20 - Inertia-Resonance Super-Charger control", "type": "gp_low" }, { "pin": 21, "id": "MC33810_0_GD_3", "class": "outputs", "function": "Ignition 5", "ts_name": "D21 - Ignition Cyl 5", "type": "ign" }, { "pin": 22, "id": "TLE6240_PIN_6", "class": "outputs", "function": "EGR control", "ts_name": "D22 - EGR control", "type": "gp_low" }, { "pin": 23, "id": "TLE6240_PIN_5", "class": "outputs", "function": "Fuel Pump relay", "ts_name": "D23 - Fuel Pump relay", "type": "gp_low" }, { "pin": 24, "function": "Injector GND", "type": "pgnd" }, { "pin": 25, "function": "Injector GND", "type": "pgnd" }, { "pin": 26, "id": "MC33810_1_OUT_1", "class": "outputs", "function": "Injector 4", "ts_name": "D26 - Injector 4", "type": "inj" } ] } `,
`{ "pins": [ { "pin": 1, "color": null, "function": "TPS sensor GND", "type": "sgnd" }, { "pin": 2, "id": "EFI_ADC_12", "class": "analog_inputs", "function": "TPS Ain", "ts_name": "B02 - TPS Ain", "type": "av" }, { "pin": 3, "function": "TPS Analog supply (+5)", "type": "5v" }, { "pin": 4, "function": "MAP Supply (+12)", "type": "5v" }, { "pin": 5, "id": "EFI_ADC_3", "class": "analog_inputs", "function": "MAF Ain", "ts_name": "B05 - MAF Ain", "type": "av" }, { "pin": 6, "color": null, "function": "MAF sensor GND", "type": "sgnd" }, { "pin": 7, "id": "GPIO_UNASSIGNED", "class": "switch_inputs", "function": "Power Steering Switch", "ts_name": "B07 - Power Steering Switch", "type": "av" }, { "pin": 8, "id": "TLE6240_PIN_15", "class": "outputs", "function": "AC clutch", "ts_name": "B08 - AC clutch", "type": "gp_low" }, { "pin": 9, "id": "MC33972_PIN_20", "class": "switch_inputs", "function": "P pos Din", "ts_name": "B09 - P pos Din", "type": "av" }, { "pin": 10, "id": "MC33972_PIN_19", "class": "switch_inputs", "function": "N pos Din", "ts_name": "B10 - N pos Din", "type": "av" }, { "pin": 11, "id": "GPIOD_14", "class": "event_inputs", "function": "Speed Din", "ts_name": "B11 - Speed Din", "type": "din" }, { "pin": 12, "id": "MC33972_PIN_17", "class": "switch_inputs", "function": "IGN Din", "ts_name": "B12 - IGN Din", "type": "av" } ] } `,
`{ "pins": [ { "pin": 1, "id": "GPIOH_10", "class": "event_inputs", "function": "Crank 1 VR+", "ts_name": "A08 - Crank 1 VR+", "type": "vr" }, { "pin": 2, "function": "Crank 1 VR sensors GND", "type": "sgnd" }, { "pin": 3, "function": "Crank 1 VR sensors shield", "type": "sgnd" }, { "pin": 4, "function": "Knock sensors shield", "type": "sgnd" }, { "pin": 5, "function": "Knock input 1" }, { "pin": 6, "function": "Knock input 1" }, { "pin": 7, "function": "SSM Tx (5V UART)" }, { "pin": 8, "function": "SSM Rx (5V UART)" }, { "pin": 9, "id": "MC33972_PIN_16", "class": "switch_inputs", "function": "Air Condition request Din", "ts_name": "C09 - Air Condition request Din", "type": "av" }, { "pin": 10, "id": "MC33972_PIN_5", "class": "switch_inputs", "function": "Starter Din", "ts_name": "C10 - Starter Din", "type": "av" }, { "pin": 11, "function": "Opt Supply (+12)", "type": "5v" }, { "pin": 12, "id": "MC33972_PIN_6", "class": "switch_inputs", "function": "Memory SW Din", "ts_name": "C12 - Memory SW Din", "type": "av" }, { "pin": 13, "id": "MC33972_PIN_7", "class": "switch_inputs", "function": "Test SW Din", "ts_name": "C13 - Test SW Din", "type": "av" }, { "pin": 14, "id": "TLE6240_PIN_4", "class": "outputs", "function": "FPump modulator (low = high flow)", "ts_name": "C14 - FPump modulator", "type": "gp_low" }, { "pin": 15, "id": "TLE6240_PIN_8", "class": "outputs", "function": "AUX1 OD out", "ts_name": "C15 - AUX1 OD out", "type": "gp_low" }, { "pin": 16, "id": "TLE6240_PIN_3", "class": "outputs", "function": "Tacho out", "ts_name": "C16 - Tacho out", "type": "gp_low" } ] } `,
`{ "pins": [ { "pin": 12, "function": "Sensors Analog supply (+5)", "type": "5v" }, { "pin": 13, "function": "Sensors GND", "type": "sgnd" }, { "pin": 14, "id": "TLE6240_PIN_14", "class": "outputs", "function": "AUX OD output 1", "ts_name": "AUX0_14 - AUX0 OD output 1", "type": "gp_low" }, { "pin": 17, "id": "TLE6240_PIN_13", "class": "outputs", "function": "AUX OD output 0", "ts_name": "AUX0_17 - AUX0 OD output 0", "type": "gp_low" }, { "pin": 18, "id": "EFI_ADC_0", "class": "analog_inputs", "function": "MAP input", "ts_name": "AUX0_18 - MAP Ain", "type": "av" }, { "pin": 19, "id": "EFI_ADC_5", "class": "analog_inputs", "function": "MAP input", "ts_name": "AUX0_19 - IAT Ain", "type": "av" } ] } `,
`{ "pins": [ { "pin": 1, "id": "MC33810_0_OUT_2", "class": "outputs", "function": "Injector 5", "ts_name": "A01 - Injector 5", "type": "inj" }, { "pin": 2, "id": "EFI_ADC_6", "class": "analog_inputs", "function": "12V supply from Main Relay", "ts_name": "A02 - VBat", "type": "at" }, { "pin": 3, "id": "EFI_ADC_14", "class": "analog_inputs", "function": "CLT sensor", "ts_name": "A03 - Coolant t Ain", "type": "at" }, { "pin": 4, "id": "EFI_ADC_9", "class": "analog_inputs", "function": "CLT sensor", "ts_name": "A04 - EGR t Ain", "type": "at" }, { "pin": 5, "id": "EFI_ADC_8", "class": "analog_inputs", "function": "Narrow AFR Bank 2", "ts_name": "A06 - Oxyg 2 Ain", "type": "av" }, { "pin": 6, "id": "EFI_ADC_15", "class": "analog_inputs", "function": "Narrow AFR Bank 1", "ts_name": "A06 - Oxyg 1 Ain", "type": "av" }, { "pin": 7, "id": "GPIOH_12", "class": "event_inputs", "function": "Cam VR+", "ts_name": "A07 - Cam VR+", "type": "vr" }, { "pin": 8, "id": "GPIOE_9", "class": "event_inputs", "function": "Crank 2 VR+", "ts_name": "A08 - Crank 2 VR+", "type": "vr" }, { "pin": 9, "function": "Cam and Crank 2 VR sensor GND", "type": "sgnd" }, { "pin": 10, "function": "Cam and Crank 2 VR sensors shield", "type": "sgnd" }, { "pin": 11, "function": "Power GND", "type": "pgnd" }, { "pin": 12, "id": "MC33810_1_OUT_2", "class": "outputs", "function": "Injector 6", "ts_name": "A12 - Injector 6", "type": "inj" }, { "pin": 13, "function": "12V supply from Main Relay", "type": "12V" }, { "pin": 14, "function": "Ground (Body)", "type": "pgnd" }, { "pin": 15, "function": "Backup 12V supply (always on)", "type": "12V" }, { "pin": 16, "id": "EFI_ADC3_10", "class": "analog_inputs", "function": "Atm Pressure Sensor output to TCU", "ts_name": "(BUG!) A16 - Atm Pressure Sensor Ain", "type": "av" }, { "pin": 17, "function": "AFR sensors shield", "type": "sgnd" }, { "pin": 18, "id": "EFI_ADC_11", "class": "analog_inputs", "function": "AUX0 Ain", "ts_name": "A18 - AUX0 Ain", "type": "av" }, { "pin": 19, "id": "MC33972_PIN_22", "class": "switch_inputs", "function": "AC Ctrl Din", "ts_name": "A19 - AC Ctrl Din", "type": "av" }, { "pin": 20, "id": "MC33972_PIN_21", "class": "switch_inputs", "function": "Torque Ctrl Din", "ts_name": "A20 - Torque Ctrl Din", "type": "av" }, { "pin": 11, "function": "Sensors GND", "type": "sgnd" }, { "pin": 22, "function": "Power GND", "type": "pgnd" } ] } `,
`{ "pins": [ { "pin": 1, "id": "TLE6240_PIN_12", "class": "outputs", "function": "IDLE close", "ts_name": "D01 - IDLE close", "type": "gp_low" }, { "pin": 2, "id": "TLE6240_PIN_11", "class": "outputs", "function": "IDLE open", "ts_name": "D02 - IDLE open", "type": "gp_low" }, { "pin": 3, "id": "TLE6240_PIN_2", "class": "outputs", "function": "FAN 2 relay", "ts_name": "D03 - FAN 2 relay", "type": "gp_low" }, { "pin": 4, "id": "MC33972_PIN_8", "class": "switch_inputs", "function": "California ID Din", "ts_name": "D04 - California ID Din", "type": "av" }, { "pin": 5, "id": "GPIOH_7", "class": "outputs", "function": "Self Shutdown", "ts_name": "D05 - Self Shutdown", "type": "gp_high" }, { "pin": 6, "id": "TLE6240_PIN_10", "class": "outputs", "function": "Absorber purge valve", "ts_name": "D06 - Absorber purge valve", "type": "gp_low" }, { "pin": 7, "id": "MC33810_0_GD_0", "class": "outputs", "function": "Ignition 4", "ts_name": "D07 - Ignition Cyl 4", "type": "ign" }, { "pin": 8, "id": "MC33810_1_GD_2", "class": "outputs", "function": "Ignition 2", "ts_name": "D08 - Ignition Cyl 2", "type": "ign" }, { "pin": 9, "id": "MC33810_0_GD_1", "class": "outputs", "function": "Ignition 3", "ts_name": "D09 - Ignition Cyl 3", "type": "ign" }, { "pin": 10, "id": "MC33810_1_GD_3", "class": "outputs", "function": "Ignition 1", "ts_name": "D10 - Ignition Cyl 1", "type": "ign" }, { "pin": 11, "id": "MC33810_0_OUT_1", "class": "outputs", "function": "Injector 3", "ts_name": "D11 - Injector 3", "type": "inj" }, { "pin": 12, "id": "MC33810_1_OUT_0", "class": "outputs", "function": "Injector 2", "ts_name": "D12 - Injector 2", "type": "inj" }, { "pin": 13, "id": "MC33810_0_OUT_0", "class": "outputs", "function": "Injector 1", "ts_name": "D13 - Injector 1", "type": "inj" }, { "pin": 14, "function": "Power GND", "type": "pgnd" }, { "pin": 15, "function": "Ignition GND", "type": "pgnd" }, { "pin": 16, "id": "MC33810_1_GD_1", "class": "outputs", "function": "Ignition 6", "ts_name": "D16 - Ignition Cyl 6", "type": "ign" }, { "pin": 17, "id": "TLE6240_PIN_1", "class": "outputs", "function": "FAN 1 relay", "ts_name": "D17 - FAN 1 relay", "type": "gp_low" }, { "pin": 18, "id": "TLE6240_PIN_9", "class": "outputs", "function": "Auxillary air valve", "ts_name": "D18 - Auxillary air valve", "type": "gp_low" }, { "pin": 19, "id": "TLE6240_PIN_7", "class": "outputs", "function": "Check Engine indicator", "ts_name": "D19 - Check Engine indicator", "type": "gp_low" }, { "pin": 20, "id": "TLE6240_PIN_16", "class": "outputs", "function": "Inertia-Resonance Super-Charger control", "ts_name": "D20 - Inertia-Resonance Super-Charger control", "type": "gp_low" }, { "pin": 21, "id": "MC33810_0_GD_3", "class": "outputs", "function": "Ignition 5", "ts_name": "D21 - Ignition Cyl 5", "type": "ign" }, { "pin": 22, "id": "TLE6240_PIN_6", "class": "outputs", "function": "EGR control", "ts_name": "D22 - EGR control", "type": "gp_low" }, { "pin": 23, "id": "TLE6240_PIN_5", "class": "outputs", "function": "Fuel Pump relay", "ts_name": "D23 - Fuel Pump relay", "type": "gp_low" }, { "pin": 24, "function": "Injector GND", "type": "pgnd" }, { "pin": 25, "function": "Injector GND", "type": "pgnd" }, { "pin": 26, "id": "MC33810_1_OUT_1", "class": "outputs", "function": "Injector 4", "ts_name": "D26 - Injector 4", "type": "inj" } ] } `,
`{ "pins": [ { "pin": 1, "color": null, "function": "TPS sensor GND", "type": "sgnd" }, { "pin": 2, "id": "EFI_ADC_12", "class": "analog_inputs", "function": "TPS Ain", "ts_name": "B02 - TPS Ain", "type": "av" }, { "pin": 3, "function": "TPS Analog supply (+5)", "type": "5v" }, { "pin": 4, "function": "MAP Supply (+12)", "type": "5v" }, { "pin": 5, "id": "EFI_ADC_3", "class": "analog_inputs", "function": "MAF Ain", "ts_name": "B05 - MAF Ain", "type": "av" }, { "pin": 6, "color": null, "function": "MAF sensor GND", "type": "sgnd" }, { "pin": 7, "id": "GPIO_UNASSIGNED", "class": "switch_inputs", "function": "Power Steering Switch", "ts_name": "B07 - Power Steering Switch", "type": "av" }, { "pin": 8, "id": "TLE6240_PIN_15", "class": "outputs", "function": "AC clutch", "ts_name": "B08 - AC clutch", "type": "gp_low" }, { "pin": 9, "id": "MC33972_PIN_20", "class": "switch_inputs", "function": "P pos Din", "ts_name": "B09 - P pos Din", "type": "av" }, { "pin": 10, "id": "MC33972_PIN_19", "class": "switch_inputs", "function": "N pos Din", "ts_name": "B10 - N pos Din", "type": "av" }, { "pin": 11, "id": "GPIOD_14", "class": "event_inputs", "function": "Speed Din", "ts_name": "B11 - Speed Din", "type": "din" }, { "pin": 12, "id": "MC33972_PIN_17", "class": "switch_inputs", "function": "IGN Din", "ts_name": "B12 - IGN Din", "type": "av" } ] } `,
`{ "pins": [ { "pin": 1, "id": "GPIOH_10", "class": "event_inputs", "function": "Crank 1 VR+", "ts_name": "A08 - Crank 1 VR+", "type": "vr" }, { "pin": 2, "function": "Crank 1 VR sensors GND", "type": "sgnd" }, { "pin": 3, "function": "Crank 1 VR sensors shield", "type": "sgnd" }, { "pin": 4, "function": "Knock sensors shield", "type": "sgnd" }, { "pin": 5, "function": "Knock input 1" }, { "pin": 6, "function": "Knock input 1" }, { "pin": 7, "function": "SSM Tx (5V UART)" }, { "pin": 8, "function": "SSM Rx (5V UART)" }, { "pin": 9, "id": "MC33972_PIN_16", "class": "switch_inputs", "function": "Air Condition request Din", "ts_name": "C09 - Air Condition request Din", "type": "av" }, { "pin": 10, "id": "MC33972_PIN_5", "class": "switch_inputs", "function": "Starter Din", "ts_name": "C10 - Starter Din", "type": "av" }, { "pin": 11, "function": "Opt Supply (+12)", "type": "5v" }, { "pin": 12, "id": "MC33972_PIN_6", "class": "switch_inputs", "function": "Memory SW Din", "ts_name": "C12 - Memory SW Din", "type": "av" }, { "pin": 13, "id": "MC33972_PIN_7", "class": "switch_inputs", "function": "Test SW Din", "ts_name": "C13 - Test SW Din", "type": "av" }, { "pin": 14, "id": "TLE6240_PIN_4", "class": "outputs", "function": "FPump modulator (low = high flow)", "ts_name": "C14 - FPump modulator", "type": "gp_low" }, { "pin": 15, "id": "TLE6240_PIN_8", "class": "outputs", "function": "AUX1 OD out", "ts_name": "C15 - AUX1 OD out", "type": "gp_low" }, { "pin": 16, "id": "TLE6240_PIN_3", "class": "outputs", "function": "Tacho out", "ts_name": "C16 - Tacho out", "type": "gp_low" } ] } `,
///DATA///
];
function hideEmptyColumns(table) {
var rows = table.querySelector('tbody').children;
var tableHead = table.querySelector("thead>tr")
var cols = tableHead.children
for (var i = 0; i < cols.length; i++) {
var empty = true;
for (var ii = 0; ii < rows.length; ii++) {
empty = rows[ii].children[i].textContent.length > 0 ? false : empty;
}
if (empty) {
tableHead.querySelectorAll('th')[i].style.display = 'none';
for (var ii = 0; ii < rows.length; ii++) {
rows[ii].children[i].style.display = 'none';
}
} else {
tableHead.querySelectorAll('th')[i].style.display = '';
for (var ii = 0; ii < rows.length; ii++) {
rows[ii].children[i].style.display = '';
}
}
}
}
function addRow(table, pin, cid) {
var template = document.getElementById("table-template");
var clone = template.content.cloneNode(true);
var row = clone.querySelector(".data");
var cells = row.children;
for (var i = 0; i < cells.length; i++) {
var cell = cells[i];
cell.textContent = Array.isArray(pin[cell.dataset.field]) ? pin[cell.dataset.field].join(", ") : pin[cell.dataset.field];
}
clone.querySelector(".pin-data").dataset.type = pin.type;
if (pin.pdiv) {
row.addEventListener('click', function(table, pin, cid) {
var container;
for (var elem = table; elem && elem !== document; elem = elem.parentNode) {
if (elem.matches(".container")) {
var container = elem;
};
}
clickPin(container.querySelector(".info-table tbody"), pin, cid);
container.scrollIntoView()
}.bind(null, table, pin, cid));
}
table.appendChild(clone);
}
function clickPin(table, pin, cid) {
table.parentElement.style.display = "table";
table.innerHTML = "";
addRow(table, pin, cid);
var pins = document.querySelectorAll(".pin-marker");
for (var i = 0; i < pins.length; i++) {
if (pins[i].dataset.type == pin.type) {
pins[i].classList.add("highlight");
} else {
pins[i].classList.remove("highlight");
}
pins[i].classList.remove("selected");
}
pin.pdiv.classList.add("selected");
hideEmptyColumns(table.parentElement);
if (typeof(cid) != "undefined") {
var url = new URL(window.location);
url.searchParams.set("connector", cid);
url.searchParams.set("pin", pin.pin);
window.history.pushState({}, "", url)
} else {
var url = new URL(window.location);
url.search = "";
window.history.pushState({}, "", url)
}
}
function checkparams() {
var params = new URLSearchParams(window.location.search);
var connector = params.get("connector");
var pin = params.get("pin");
for (var i = 0; i < connectorData.length; i++) {
var c = connectorData[i];
if (c.info.id == connector) {
var table = document.querySelectorAll(".info-table tbody")[i];
for (var iii = 0; iii < c.pins.length; iii++) {
if (c.pins[iii].pin == pin) {
clickPin(table, c.pins[iii], c.info.id);
return;
}
}
return;
}
}
}
var images = 0;
function checkImagesLoaded() {
images -= 1;
if (images == 0) {
checkparams();
}
}
window.addEventListener('load', function() {
window.onpopstate = function(ev) {
if (event.state) {
checkparams();
}
};
for (var c = 0; c < connectorData.length; c++) {
connectorData[c] = JSON.parse(connectorData[c]);
var connector = connectorData[c];
var template = document.getElementById("connector-template");
var clone = template.content.cloneNode(true);
document.body.appendChild(clone);
var sdiv = document.body.lastChild.previousSibling;
var img = sdiv.querySelector(".connector-img");
images += 1;
img.addEventListener('load', function(connector, sdiv, img) {
var cdiv = sdiv.querySelector(".connector-div");
var cid = connector.info.id;
var ptemplate = document.getElementById("pin-template");
var imgHeight = img.naturalHeight;
var imgWidth = img.naturalWidth;
var table = sdiv.querySelector(".info-table").querySelector("tbody");
var fullTable = sdiv.querySelector(".pinout-table").querySelector("tbody");
for (var i = 0; i < connector.pins.length; i++) {
var pin = connector.pins[i];
if (!pin.pin) {
continue;
}
var pinfo = {};
for (var ii = 0; ii < connector.info.pins.length; ii++) {
if (connector.info.pins[ii].pin == pin.pin) {
pinfo = connector.info.pins[ii];
break;
}
}
if (!pinfo.x) {
addRow(fullTable, connector.pins[i], cid);
continue;
}
var closest = 1000000;
for (var ii = 0; ii < connector.info.pins.length; ii++) {
var tinfo = connector.info.pins[ii];
var distance = Math.pow((tinfo.x - pinfo.x), 2) + Math.pow((tinfo.y - pinfo.y), 2);
if (tinfo.pin != pin.pin && (!closest || distance < closest)) {
closest = distance;
}
}
var pclone = ptemplate.content.cloneNode(true);
var pdiv = pclone.querySelector("div");
pdiv.textContent = pinfo.pin;
pdiv.style.top = ((pinfo.y / imgHeight) * 100) + "%";
pdiv.style.left = ((pinfo.x / imgWidth) * 100) + "%";
pdiv.dataset.type = pin.type;
pin.pdiv = pdiv;
pdiv.addEventListener("click", function(table, pin, cid) {
clickPin(table, pin, cid);
}.bind(null, table, pin, cid));
closest = Math.sqrt(closest);
var divheight = cdiv.clientHeight;
var divwidth = cdiv.clientWidth;
var mult = cdiv.querySelector("img").naturalHeight / divheight;
var newheight = (closest / mult)
var pxheight = divheight * 0.08;
if (newheight < pxheight) {
pxheight = newheight;
}
var height = (pxheight / divheight) * 100;
var width = (pxheight / divwidth) * 100;
pdiv.style.height = "calc(" + height + "% - 0.21vw)";
pdiv.style.width = "calc(" + width + "% - 0.21vw)";
pdiv.style.marginTop = "-" + (width / 2) + "%";
pdiv.style.marginLeft = "-" + (width / 2) + "%";
pdiv.style.fontSize = (height * 1.8) + "px";
pdiv.style.fontSize = (pxheight * 0.5) + "px";
window.addEventListener('beforeprint', function(pdiv, width, divwidth, event) {
pdiv.style.fontSize = "calc(calc(" + width + "px * min(640, " + divwidth + ")) * 0.0055)";
}.bind(null, pdiv, width, divwidth));
window.addEventListener('afterprint', function(pdiv, pxheight, event) {
pdiv.style.fontSize = (pxheight * 0.5) + "px";
}.bind(null, pdiv, pxheight));
cdiv.appendChild(pdiv);
addRow(fullTable, pin, cid);
}
hideEmptyColumns(sdiv.querySelector('.pinout-table'));
checkImagesLoaded();
}.bind(null, connector, sdiv, img));
img.src = connector.info.image.file;
if (document.title.length == 0 && typeof(connector.info.title) != "undefined") {
document.title = connector.info.title;
}
if (typeof(connector.info.name) != "undefined") {
sdiv.querySelector(".connector-name").innerText = connector.info.name;
}
}
});
</script>
</head>
<body>
<h2>Index of pinouts/subaru_eg33/</h2>
<p>
<table>
<tbody>
<tr>
<th valign="top"><img src="../../images/blank.gif"
alt="[ICO]"></th>
<th><a href="?C=N;O=D">Name</a></th>
<th><a href="?C=M;O=A">Last modified</a></th>
<th><a href="?C=S;O=A">Size</a></th>
<th><a href="?C=D;O=A">Description</a></th>
</tr>
<tr>
<th colspan="5"><hr></th>
</tr>
<tr>
<td valign="top"><img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAmlJREFUeNpsU0toU0EUPfPysx/tTxuDH9SCWhUDooIbd7oRUUTMouqi2iIoCO6lceHWhegy4EJFinWjrlQUpVm0IIoFpVDEIthm0dpikpf3ZuZ6Z94nrXhhMjM3c8895977BBHB2PznK8WPtDgyWH5q77cPH8PpdXuhpQT4ifR9u5sfJb1bmw6VivahATDrxcRZ2njfoaMv+2j7mLDn93MPiNRMvGbL18L9IpF8h9/TN+EYkMffSiOXJ5+hkD+PdqcLpICWHOHc2CC+LEyA/K+cKQMnlQHJX8wqYG3MAJy88Wa4OLDvEqAEOpJd0LxHIMdHBziowSwVlF8D6QaicK01krw/JynwcKoEwZczewroTvZirlKJs5CqQ5CG8pb57FnJUA0LYCXMX5fibd+p8LWDDemcPZbzQyjvH+Ki1TlIciElA7ghwLKV4kRZstt2sANWRjYTAGzuP2hXZFpJ/GsxgGJ0ox1aoFWsDXyyxqCs26+ydmagFN/rRjymJ1898bzGzmQE0HCZpmk5A0RFIv8Pn0WYPsiu6t/Rsj6PauVTwffTSzGAGZhUG2F06hEc9ibS7OPMNp6ErYFlKavo7MkhmTqCxZ/jwzGA9Hx82H2BZSw1NTN9Gx8ycHkajU/7M+jInsDC7DiaEmo1bNl1AMr9ASFgqVu9MCTIzoGUimXVAnnaN0PdBBDCCYbEtMk6wkpQwIG0sn0PQIUF4GsTwLSIFKNqF6DVrQq+IWVrQDxAYQC/1SsYOI4pOxKZrfifiUSbDUisif7XlpGIPufXd/uvdvZm760M0no1FZcnrzUdjw7au3vu/BVgAFLXeuTxhTXVAAAAAElFTkSuQmCC "
alt="[PARENTDIR]"></td>
<td><a href="../">Parent Directory</a></td>
<td>&nbsp;</td>
<td align="right">-</td>
<td>&nbsp;</td>
</tr>
<tr>
<th colspan="5"><hr></th>
</tr>
</p>
</tbody>
<template id="pin-template">
<div class="pin-marker"></div>
</template>
<template id="table-template">
<tr class="data">
<td class="pin-data" data-field="pin"></td>
<td class="ts-data" data-field="ts_name"></td>
<td class="type-data" data-field="type"</td>
<td class="function-data" data-field="function"></td>
<td class="color-data" data-field="color"></td>
</tr>
</template>
<template id="connector-template">
<div class="container">
<h2 class="connector-name"></h2>
<div class="connector-container">
<div class="connector-div">
<img class="connector-img"></img>
</div>
</div>
<table class="info-table">
<thead>
<tr>
<th class="pin-header" data-field="pin">Pin Number</th>
<th class="ts-header" data-field="ts_name">TS Name</th>
<th class="type-header" data-field="type">Type</th>
<th class="function-header" data-field="function">Typical Function</th>
<th class="color-header" data-field="color">Pigtail Color</th>
</tr>
</thead>
<tbody>
</tbody>
</table>
<h2>Full Pinout Table</h2>
<div class="table-wrapper">
<table class="pinout-table">
<thead>
<tr>
<th class="pin-header" data-field="pin">Pin Number</th>
<th class="ts-header" data-field="ts_name">TS Name</th>
<th class="type-header" data-field="type">Type</th>
<th class="function-header" data-field="function">Typical Function</th>
<th class="color-header" data-field="color">Pigtail Color</th>
</tr>
</thead>
<tbody>
</tbody>
</table>
</div>
</div>
</template>
</body>
</html>