42 Commits

Author SHA1 Message Date
abb9851b60 merged the MVBMS repos, prob fucked both 2025-02-22 15:14:28 +01:00
2b73443e07 V1.0 2024-08-02 05:17:17 +03:00
9e78573dbe fixed balancing (allegedly) 2024-08-02 00:16:36 +03:00
eae0400190 fixed a typo 2024-07-28 15:58:19 +03:00
3844636225 V1.16 2024-07-24 21:02:50 +03:00
035ca511f6 V1.16 2024-07-24 21:00:27 +03:00
3edafc58cc V1.15 2024-07-21 23:53:48 +03:00
7dd742af22 V1.15 2024-07-19 21:51:19 +03:00
e33579318e V1.14 2024-07-19 17:40:53 +03:00
a8d8b6d696 V1.13 2024-07-14 16:42:54 +03:00
ebd149bbe5 V1.12 2024-07-14 13:18:37 +03:00
0bc4a59480 V1.12 2024-07-14 11:42:05 +03:00
7b4fc940d3 V1.11 2024-07-13 23:57:38 +03:00
aea84c620b fix PWM_control 2024-07-11 21:13:35 +03:00
cc496b1140 updated eeprom.h 2024-07-11 01:17:36 +03:00
662faed1fe V1.10 2024-07-10 09:59:34 +03:00
4e33934b15 V1.9 2024-07-10 09:37:43 +03:00
5b26f8d12b V1.9 2024-07-10 09:37:19 +03:00
a86985bfc9 V1.8 2024-07-10 01:39:38 +03:00
4375bfce48 V1.7 2024-07-08 23:43:41 +03:00
73194c86ae balancing 2024-07-08 17:53:49 +02:00
1a6728f7c0 V1.7 2024-07-08 18:52:09 +03:00
17e8cee0ac V1.6 2024-07-08 14:44:01 +03:00
39f124efc6 . 2024-07-07 21:16:47 +03:00
b5410639eb V1.5 2024-07-07 21:16:36 +03:00
5a84a349d9 . 2024-07-07 18:52:57 +03:00
a4a856eb31 V1.4 2024-07-07 18:52:54 +03:00
e7b5054e02 changing the cell number breaks aux voltage measurment 2024-07-07 02:39:43 +03:00
879464e587 . 2024-07-07 01:57:00 +03:00
dfad2fee02 changed MAX CELL Voltages to 13 2024-07-07 01:56:58 +03:00
5b1854a3ab removed common_defs.h 2024-07-06 23:31:18 +03:00
2dfb9c4cac updated some values in TMP1075 2024-07-06 23:31:04 +03:00
16824744e7 V1.3 2024-07-06 13:23:12 +03:00
f50643cc84 V1.2 2024-07-05 12:46:52 +03:00
676b5bb8d1 fixed pins settings for ESC_R/L_PWM 2024-07-05 07:50:26 +03:00
5f848861cf CHANGLOG -> CHANGELOG.txt 2024-07-05 07:49:06 +03:00
79f69333a5 cleanup, some error handling 2024-07-04 20:01:30 +02:00
b86d165c41 Merge branch 'mvbms-test' 2024-07-04 18:22:50 +02:00
dae660d8f2 V1.0 2024-07-02 23:01:26 +03:00
9e80b90fd4 Merge branch 'mvbms-test' 2024-07-02 17:54:30 +03:00
44d911f2c5 can halal added to inc and src , includes included 2024-05-23 19:15:57 +02:00
7d7276d126 MVBMS - pwm generation code added 2024-05-23 19:07:05 +02:00
1149 changed files with 881496 additions and 11971 deletions

54
.gitignore vendored
View File

@ -1,9 +1,45 @@
/.vscode/
/build/
/Debug
/.cache/
.clangd
compile_commands.json
STM32Make.make
/.metadata/
openocd.cfg
# ---> KiCad
# For PCBs designed using KiCad: https://www.kicad.org/
# Format documentation: https://kicad.org/help/file-formats/
# Temporary files
*.000
*.bak
*.bck
*.kicad_pcb-bak
*.kicad_sch-bak
*-backups
*.kicad_prl
*.sch-bak
*~
_autosave-*
*.tmp
*-save.pro
*-save.kicad_pcb
fp-info-cache
# Netlist files (exported from Eeschema)
*.net
# Autorouter files (exported from Pcbnew)
*.dsn
*.ses
# Exported BOM files
*.xml
*.csv
# ---> VisualStudioCode
.vscode/*
!.vscode/settings.json
!.vscode/tasks.json
!.vscode/launch.json
!.vscode/extensions.json
!.vscode/*.code-snippets
# Local History for Visual Studio Code
.history/
# Built Visual Studio Code Extensions
*.vsix

4
.gitmodules vendored
View File

@ -1,3 +1,3 @@
[submodule "Core/Lib/can-halal"]
path = Core/Lib/can-halal
[submodule "Software/Core/Lib/can-halal"]
path = Software/Core/Lib/can-halal
url = ssh://git@git.fasttube.de:313/FaSTTUBe/can-halal.git

File diff suppressed because one or more lines are too long

View File

@ -1,14 +0,0 @@
/*
* common_defs.h
*
* Created on: 23 Mar 2022
* Author: Jasper
*/
#ifndef INC_COMMON_DEFS_H_
#define INC_COMMON_DEFS_H_
#define N_CELLS 12
#define N_TEMP_SENSORS 12
#endif /* INC_COMMON_DEFS_H_ */

View File

@ -1,313 +0,0 @@
/*
* AMS_HighLevel.c
*
* Created on: 20.07.2022
* Author: max
*/
#include "AMS_HighLevel.h"
Cell_Module module = {};
uint32_t balancedCells = 0;
uint8_t BalancingActive = 0;
uint8_t stateofcharge = 100;
int64_t currentintegrator = 0;
uint32_t lastticks = 0;
uint32_t currenttick = 0;
uint8_t eepromconfigured = 0;
uint8_t internalbalancingalgo = 1;
uint16_t startbalancingthreshold = 41000;
uint16_t stopbalancingthreshold = 30000;
uint16_t balancingvoltagedelta = 10;
uint16_t amsuv = 0;
uint16_t amsov = 0;
uint8_t amserrorcode = 0;
uint8_t amswarningcode = 0;
uint8_t numberofCells = 14;
uint8_t numberofAux = 0;
uint8_t packetChecksumFails = 0;
#define MAX_PACKET_CHECKSUM_FAILS 5
uint8_t deviceSleeps = 0;
#define MAX_DEVICE_SLEEP 3 //TODO: change to correct value
amsState currentAMSState = AMSDEACTIVE;
amsState lastAMSState = AMSDEACTIVE;
struct pollingTimes {
uint32_t S_ADC_OW_CHECK;
uint32_t TMP1075;
};
struct pollingTimes pollingTimes = {0, 0};
void AMS_Init(SPI_HandleTypeDef* hspi) {
if (eepromconfigured == 1) {
/*amsov = eepromcellovervoltage>>4;
amsuv = (eepromcellundervoltage-1)>>4;
numberofCells = eepromnumofcells;
numberofAux = eepromnumofaux;
initAMS(hspi, eepromnumofcells, eepromnumofaux);*/
amsConfigOverUnderVoltage(amsov, amsuv);
} else {
initAMS(hspi, numberofCells, numberofAux);
amsov = DEFAULT_OV;
amsuv = DEFAULT_UV;
}
pollingTimes = (struct pollingTimes) {HAL_GetTick(), HAL_GetTick()};
currentAMSState = AMSIDLE;
}
void AMS_Loop() {
// On Transition Functions called ones if the State Changed
if (currentAMSState != lastAMSState) {
switch (currentAMSState) {
case AMSIDLE:
break;
case AMSDEACTIVE:
break;
case AMSCHARGING:
break;
case AMSIDLEBALANCING:
break;
case AMSDISCHARGING:
break;
case AMSWARNING:
writeWarningLog(0x01);
break;
case AMSERROR:
writeErrorLog(amserrorcode);
break;
}
lastAMSState = currentAMSState;
}
// Main Loops for different AMS States
switch (currentAMSState) {
case AMSIDLE:
AMS_Idle_Loop();
break;
case AMSDEACTIVE:
break;
case AMSCHARGING:
break;
case AMSIDLEBALANCING:
AMS_Idle_Loop();
break;
case AMSDISCHARGING:
break;
case AMSWARNING:
AMS_Warning_Loop();
break;
case AMSERROR:
break;
}
}
uint8_t AMS_Idle_Loop() {
if (!amsWakeUp()) {
//error_data.data_kind = SEK_INTERNAL_BMS_TIMEOUT;
//set_error_source(ERROR_SOURCE_INTERNAL);
}
packetChecksumFails += amsAuxAndStatusMeasurement(&module);
if (module.status.SLEEP) {
deviceSleeps++;
if (deviceSleeps > MAX_DEVICE_SLEEP) {
error_data.data_kind = SEK_INTERNAL_BMS_TIMEOUT;
set_error_source(ERROR_SOURCE_INTERNAL);
} else {
amsReset();
}
}
if (module.status.CS_FLT || module.status.SPIFLT || module.status.CMED ||
module.status.SMED || module.status.VDE || module.status.VDEL ||
module.status.OSCCHK || module.status.TMODCHK) {
error_data.data_kind = SEK_INTERNAL_BMS_FAULT;
set_error_source(ERROR_SOURCE_INTERNAL);
}
if (module.status.THSD) {
error_data.data_kind = SEK_INTERNAL_BMS_OVERTEMP;
set_error_source(ERROR_SOURCE_INTERNAL);
}
packetChecksumFails += amsCellMeasurement(&module);
packetChecksumFails += amsCheckUnderOverVoltage(&module);
packetChecksumFails += integrateCurrent();
if (packetChecksumFails > MAX_PACKET_CHECKSUM_FAILS) {
error_data.data_kind = SEK_INTERNAL_BMS_CHECKSUM_FAIL;
set_error_source(ERROR_SOURCE_INTERNAL);
}
tmp1075_measure();
int any_voltage_error = 0;
for (size_t i = 0; i < numberofCells; i++) {
if (module.cellVoltages[i] < 2500) {
any_voltage_error = 1;
error_data.data_kind = SEK_UNDERVOLT;
error_data.data[0] = i;
uint8_t* ptr = &error_data.data[1];
ptr = ftcan_marshal_unsigned(ptr, module.cellVoltages[i], 2);
} else if (module.cellVoltages[i] > 4200) {
any_voltage_error = 1;
error_data.data_kind = SEK_OVERVOLT;
error_data.data[0] = i;
uint8_t* ptr = &error_data.data[1];
ptr = ftcan_marshal_unsigned(ptr, module.cellVoltages[i], 2);
}
}
if (module.internalDieTemp > 28000) { //TODO: change to correct value
error_data.data_kind = SEK_INTERNAL_BMS_OVERTEMP;
uint8_t* ptr = &error_data.data[0];
ptr = ftcan_marshal_unsigned(ptr, module.internalDieTemp, 2);
set_error_source(ERROR_SOURCE_INTERNAL);
} else {
clear_error_source(ERROR_SOURCE_INTERNAL);
}
if (any_voltage_error) {
set_error_source(ERROR_SOURCE_VOLTAGES);
} else {
clear_error_source(ERROR_SOURCE_VOLTAGES);
}
mcuDelay(10);
return 0;
}
uint8_t AMS_Warning_Loop() {
amsWakeUp();
amsConfigOverUnderVoltage(amsov, amsuv);
amsClearAux();
amsCellMeasurement(&module);
amsAuxAndStatusMeasurement(&module);
amsCheckUnderOverVoltage(&module);
if (!(module.overVoltage | module.underVoltage)) {
currentAMSState = AMSIDLE;
// amsClearWarning();
}
amsStopBalancing();
return 0;
}
uint8_t AMS_Error_Loop() { return 0; }
uint8_t AMS_Charging_Loop() { return 0; }
uint8_t AMS_Discharging_Loop() { return 0; }
uint8_t AMS_Balancing_Loop() {
uint8_t balancingdone = 1;
if ((eepromconfigured == 1) && (internalbalancingalgo == 1) &&
(module.internalDieTemp <
28000 /*Thermal Protection 93°C*/)) // If the EEPROM is configured and
// the internal Balancing Algorithm
// should be used
{
uint16_t highestcellvoltage = module.cellVoltages[0];
uint16_t lowestcellvoltage = module.cellVoltages[0];
uint8_t highestcell = 0;
uint8_t lowestcell = 0;
for (uint8_t n = 0; n < numberofCells; n++) {
if (module.cellVoltages[n] > highestcellvoltage) {
highestcellvoltage = module.cellVoltages[n];
highestcell = n;
}
if (module.cellVoltages[n] < lowestcellvoltage) {
lowestcellvoltage = module.cellVoltages[n];
lowestcell = n;
}
}
if (currentAMSState ==
AMSCHARGING) // Balancing is only Active if the BMS is in Charging Mode
{
uint32_t channelstobalance = 0;
if (highestcellvoltage > startbalancingthreshold) {
for (uint8_t n = 0; n < numberofCells; n++) {
if (module.cellVoltages[n] > stopbalancingthreshold) {
uint16_t dv = module.cellVoltages[n] - lowestcellvoltage;
if (dv > (balancingvoltagedelta * 1000)) {
balancingdone = 0;
channelstobalance |= 1 << n;
}
}
}
}
amsConfigBalancing(channelstobalance, 0x0F);
amsStartBalancing(100);
}
else if (currentAMSState == AMSIDLEBALANCING) {
uint32_t channelstobalance = 0;
if (lowestcellvoltage <
stopbalancingthreshold) // If under Voltage of one Cell is reached
{
amsStopBalancing();
balancingdone = 1;
} else // otherwise continue with regular Balancing Algorithm
{
for (uint8_t n = 0; n < numberofCells; n++) {
uint16_t dv = module.cellVoltages[n] - lowestcellvoltage;
if (dv > balancingvoltagedelta) {
balancingdone = 0;
channelstobalance |= 1 << n;
}
}
amsConfigBalancing(channelstobalance, 0x0F);
amsStartBalancing(100);
}
}
} else {
amsStopBalancing();
balancingdone = 1;
}
return balancingdone;
}
uint8_t writeWarningLog(uint8_t warningCode) {
// eepromWriteWarningLog(warningCode);
return 0;
}
uint8_t writeErrorLog(uint8_t errorCode) {
// eepromWriteErrorLog(errorCode);
return 0;
}
uint8_t integrateCurrent() {
lastticks = currenttick;
currenttick = HAL_GetTick();
if (currenttick < lastticks) {
currentintegrator += (module.auxVoltages[0] - module.auxVoltages[2]) *
(currenttick - lastticks);
}
return 0;
}

View File

@ -1,63 +0,0 @@
#include "PWM_control.h"
#include "stm32f3xx_hal.h"
#include <stdint.h>
uint8_t battery_cooling_status;
//uint32_t powerground1_CCR, powerground2_CCR, battery_cooling_CCR;
TIM_HandleTypeDef* powerground, *battery_cooling;
/*
Pulse width modulation mode allows for generating a signal with a frequency determined by
the value of the TIMx_ARR register and a duty cycle determined by the value of the TIMx_CCRx register.
*/
void PWM_control_init(TIM_HandleTypeDef* pg, TIM_HandleTypeDef* bat_cool){
powerground_status = 0;
battery_cooling_status = 0;
powerground = pg;
battery_cooling = bat_cool;
HAL_TIM_PWM_Start(pg, TIM_CHANNEL_1); //TIM15CH1
HAL_TIM_PWM_Start(pg, TIM_CHANNEL_2); //TIM15CH2
HAL_TIM_PWM_Start(bat_cool, TIM_CHANNEL_3); //TIM1CH3
__HAL_TIM_SET_COMPARE(powerground, TIM_CHANNEL_1, 0);
__HAL_TIM_SET_COMPARE(powerground, TIM_CHANNEL_2, 0);
//PWM_powerground_control(0);
//__HAL_TIM_SET_COMPARE(battery_cooling, TIM_CHANNEL_3, 2000);
}
/*
controls the duty cycle of the fans by setting the CCR of the channel percent/100 = x/ARR
DUTYCYCLE = 40000 * X/100
*/
void PWM_powerground_control(uint8_t percent){
if (percent > 100) //something went wrong
return;
powerground_status = percent;
int ccr = 2000 + ((2000) * (percent/100.0));
__HAL_TIM_SET_COMPARE(powerground, TIM_CHANNEL_1, ccr);
__HAL_TIM_SET_COMPARE(powerground, TIM_CHANNEL_2, ccr);
//TIM15->CCR1 = (TIM15->ARR*POWERGROUND_MAX_DUTY_CYCLE-TIM15->ARR*POWERGROUND_MIN_DUTY_CYCLE) * (percent/100.0) + TIM15->ARR*POWERGROUND_MIN_DUTY_CYCLE;
}
void PWM_set_throttle(){
uint32_t timestamp = HAL_GetTick() + 5000;
while (timestamp > HAL_GetTick()) {}
__HAL_TIM_SET_COMPARE(powerground, TIM_CHANNEL_1, 4000);
__HAL_TIM_SET_COMPARE(powerground, TIM_CHANNEL_2, 4000);
timestamp = HAL_GetTick() + 2000;
while (timestamp > HAL_GetTick()) {}
__HAL_TIM_SET_COMPARE(powerground, TIM_CHANNEL_1, 2000);
__HAL_TIM_SET_COMPARE(powerground, TIM_CHANNEL_2, 2000);
timestamp = HAL_GetTick() + 1000;
while (timestamp > HAL_GetTick()) {}
}
void PWM_battery_cooling_control(uint8_t percent){}

View File

@ -1,150 +0,0 @@
/*
* can.c
* Created on: Mai 23, 2024
* Author: Hamza
*/
#include "can.h"
//#define CAN_ID_IN 0x501
//#define CAN_ID_OUT 0x502
int can_delay_manager = 0;
void can_init(CAN_HandleTypeDef* hcan) {
ftcan_init(hcan);
ftcan_add_filter(CAN_ID_IN, 0xFFF);
}
/*
This function sends the status of the mvbms, the battery and of powerground.
once every 1s in states: INACTIVE, PRECHARGE, DISCHARGE, CHARGING, ERROR.
once every 0.5s in states: READY, ACTIVE.
with format of:
CAN Messages:
Error bit
MVBMS state
Powerground Status 0-100%
Errors
Battery state of charge
Pack Voltage
Current
Battery temperature (12 bit)
Min/Max. Cell Temp (ID, Min Temp, ID, Max Temp)(3B),
Min/Max Cell Voltage (ID, Min Voltage, ID, Max Voltage)(3B)
bit 0 (1b): empty
bit 1-3 (3b): state
bit 4-11 (8b): powerground status
bit 12-19 (8b): error
bit 20-27 (8b): state of charge from 0-100%
bit 28-39 (12b): battery voltage
bit 40-51 (12b): current measurement
bit 52-63 (12b): temperature of the cell with highest temperature
bit 0-3 (4b): ID of the sensor with highest temperature
bit 4-7 (4b): ID of the sensor with lowest temperataure
bit 8-19 (12b): temperature of the coldest cell
bit 20-23 (4b): ID of the cell with the lowest voltage
bit 24-35 (12b): lowest cell voltage
bit 36-39 (4b): ID of the cell the the highest voltage
bit 40-51 (12b): highest cell voltage
bit 52-63 (12b): empty
*/
void can_handle_send_status() {
if (can_delay_manager > HAL_GetTick())
return;
else
can_delay_manager = HAL_GetTick() + CAN_STATUS_FREQ;
uint8_t data[8] = {};
int8_t id_highest_temp = -1;
int16_t highest_temp = INT16_MIN;
sm_check_battery_temperature(&id_highest_temp, &highest_temp);
data[0] = ((state.current_state << 4) | (powerground_status >> 4)); // 1 bit emptyy | 3 bit state | 4 bit powerground
data[1] = ((powerground_status << 4) | (state.error_source >> 4)); // 4 bit powerground | 4 bit error
data[2] = ((state.error_source << 4) | (0)); // 4 bit error | 4 bit state of charge
data[3] = ((0) + (RELAY_BAT_SIDE_VOLTAGE >> 12)); // 4 bit state of charge | 4 bit battery voltage
data[4] = ((RELAY_BAT_SIDE_VOLTAGE >> 4));
data[5] = ((CURRENT_MEASUREMENT >> 8));
data[6] = ((CURRENT_MEASUREMENT & 0x00F0) | (highest_temp >> 12));
data[7] = ((highest_temp) >> 4);
ftcan_transmit(CAN_ID_OUT, data, sizeof(data));
int8_t id_lowest_temp = -1;
int16_t lowest_temp = INT16_MIN;
for (int i = 0; i < N_TEMP_SENSORS; i++) {
if (tmp1075_temps[i] < lowest_temp){
id_lowest_temp = i;
lowest_temp = tmp1075_temps[i];
}
}
int8_t id_lowest_volt = -1;
int16_t lowest_volt = INT16_MIN;
int8_t id_highest_volt = -1;
int16_t highest_volt = INT16_MIN;
for (int i = 0; i < module.sumOfCellMeasurements; i++) {
if (sm_return_cell_voltage(i) < lowest_temp){
id_lowest_volt = i;
lowest_volt = sm_return_cell_voltage(i);
}
if (sm_return_cell_voltage(i) > highest_temp){
id_highest_volt = i;
highest_volt = sm_return_cell_voltage(i);
}
}
data[0] = ((id_highest_temp & 0x0F) << 4 | (id_lowest_temp & 0x0F));
data[1] = ((lowest_temp) >> 8);
data[2] = ((lowest_temp & 0x00F0) | (id_lowest_volt & 0x0F));
data[3] = (lowest_volt >> 8);
data[4] = ((lowest_volt & 0x00F0) | (id_highest_volt & 0x0F));
data[5] = ((highest_volt >> 8));
data[6] = ((highest_volt & 0x00F0));
data[7] = 0;
ftcan_transmit(CAN_ID_OUT, data, sizeof(data));
}
/*
can_handle_recieve_command() should only check if the message is valid and then hand it
to the sm_handle_ams_in() which handles the state machine transition.
This function recieves a command from the Autobox with the CAN ID of 0x501.
with format of:
data[0] = target state
0x0 STATE_INACTIVE | disconnect power to the ESC of powerground. Send it to return the mvbms to idle/monitoring mode. If data[1] != 0 -> assume bad CAN message.
0x1 STATE_READY | conneect power to the ESC of powerground and but with no PWM signal. If data[1] != 0 -> assume bad CAN message.
0x2 STATE_ACTIVE | activate powerground at (data[1]) percent. If data[1] > 100 -> assume bad CAN message.
allowed transitions:
STATE_INACTIVE -> STATE_READY
STATE_READY -> STATE_INACTIVE, STATE_ACTIVE
STATE_ACTIVE -> STATE_INACTIVE, STATE_READY
*/
void can_handle_recieve_command(const uint8_t *data){
if (data[0] == 0x00 && data[1] == 0x00){
sm_handle_ams_in(data);
} else if (data[0] == 0x01 && data[1] == 0x00){
sm_handle_ams_in(data);
} else if (data[0] == 0x02 && data[1] <= 100) {
sm_handle_ams_in(data);
}
}
/*
implements the _weak method ftcan_msg_recieved_cb() which throws an interrupt when a CAN message is recieved.
it only checks if the id is and datalen is correct thans hands data over to can_handle_recieve_command().
in MXCUBE under CAN NVIC settings "USB low priority or CAN_RX0 interrupts" has to be on
*/
void ftcan_msg_received_cb(uint16_t id, size_t datalen, const uint8_t *data){
if (id == 0x501 && datalen == 2){
can_handle_recieve_command(data);
}
}

View File

@ -1,13 +0,0 @@
#include "errors.h"
#include "stm32f3xx_hal.h"
SlaveErrorData error_data;
void set_error_source(int source) {
if (!error_data.error_sources) {
error_data.errors_since = HAL_GetTick();
}
error_data.error_sources |= source;
}
void clear_error_source(int source) { error_data.error_sources &= ~source; }

View File

@ -1,325 +0,0 @@
#include "state_machine.h"
#include "AMS_HighLevel.h"
#include "TMP1075.h"
#include "errors.h"
#include "stm32f3xx_hal.h"
#include <stdint.h>
#include <stdio.h>
StateHandle state;
int16_t RELAY_BAT_SIDE_VOLTAGE;
int16_t RELAY_ESC_SIDE_VOLTAGE;
int16_t CURRENT_MEASUREMENT;
uint8_t powerground_status;
uint32_t timestamp;
void sm_init(){
state.current_state = STATE_INACTIVE;
state.target_state = STATE_INACTIVE;
state.error_source = 0;
}
void sm_update(){
sm_check_errors();
RELAY_BAT_SIDE_VOLTAGE = module.auxVoltages[0] * 12.42; // the calculation says the factor is 11.989. 12.42 yields the better result
RELAY_ESC_SIDE_VOLTAGE = module.auxVoltages[1] * 12.42;
CURRENT_MEASUREMENT = (module.auxVoltages[2] - 2496) * 300;
switch (state.current_state) {
case STATE_INACTIVE:
state.current_state = sm_update_inactive(); // monitor only
break;
case STATE_PRECHARGE:
state.current_state = sm_update_precharge(); // set PRECHARGE and turn on cooling at 50% or such
break;
case STATE_READY:
state.current_state = sm_update_ready(); // keep cooling at 50%, get ready to turn on powerground
break;
case STATE_ACTIVE:
state.current_state = sm_update_active(); // set PRECHARGE and turn on cooling at 50% or such
break;
case STATE_DISCHARGE:
state.current_state = sm_update_discharge(); // open the main relay, keep PRECHARGE closed
break;
case STATE_CHARGING_PRECHARGE:
state.current_state = sm_update_charging_precharge();
break;
case STATE_CHARGING:
state.current_state = sm_update_charging(); // monitor and turn on cooling if needed.
break;
case STATE_ERROR:
state.current_state = sm_update_error(); // enter the correct ERROR state
break;
}
sm_set_relay_positions(state.current_state);
state.target_state = state.current_state;
}
State sm_update_inactive(){
switch (state.target_state) {
case STATE_PRECHARGE:
return STATE_PRECHARGE;
case STATE_CHARGING_PRECHARGE:
return STATE_CHARGING_PRECHARGE;
default:
return STATE_INACTIVE;
}
}
State sm_update_precharge(){
switch (state.target_state) {
case STATE_INACTIVE: // if CAN Signal 0000 0000 then immidiete shutdown
return STATE_DISCHARGE;
case STATE_PRECHARGE:
if (RELAY_BAT_SIDE_VOLTAGE-RELAY_ESC_SIDE_VOLTAGE < 100){
PWM_set_throttle();
return STATE_READY;
}
break;
case STATE_DISCHARGE:
return STATE_DISCHARGE;
default:
return STATE_PRECHARGE;
}
}
State sm_update_ready(){
switch (state.target_state) {
case STATE_ACTIVE: // if CAN Signal 1100 0000 then turn on powerground
return STATE_ACTIVE;
case STATE_DISCHARGE: // if CAN Signal 0000 0000 then shutdown
return STATE_DISCHARGE;
default:
return STATE_READY;
}
}
State sm_update_active(){
switch (state.target_state) {
case STATE_READY: // if CAN Signal 1000 0000 then turn oof powerground but stay ready
return STATE_READY;
case STATE_DISCHARGE: // if CAN Signal 0000 0000 then shutdown
return STATE_DISCHARGE;
default:
return STATE_ACTIVE;
}
}
State sm_update_discharge(){
switch (state.target_state) {
case STATE_DISCHARGE:
if (RELAY_ESC_SIDE_VOLTAGE < 5000)
return STATE_INACTIVE;
case STATE_PRECHARGE: // if CAN Signal 1000 0000 then get ready
return STATE_PRECHARGE;
default:
return STATE_DISCHARGE;
}
}
State sm_update_charging_precharge(){
switch (state.target_state) {
case STATE_CHARGING:
return STATE_CHARGING;
case STATE_DISCHARGE:
return STATE_DISCHARGE;
default:
return STATE_CHARGING_PRECHARGE;
}
}
State sm_update_charging(){
switch (state.target_state) {
case STATE_DISCHARGE:
return STATE_DISCHARGE;
default:
return STATE_CHARGING;
}
}
State sm_update_error(){
switch (state.target_state) {
case STATE_DISCHARGE:
return STATE_DISCHARGE;
default:
return STATE_ERROR;
}
}
void sm_set_relay_positions(State current_state){
switch (state.current_state) {
case STATE_INACTIVE:
sm_set_relay(RELAY_MAIN, 0);
sm_set_relay(RELAY_PRECHARGE, 0);
break;
case STATE_PRECHARGE:
sm_set_relay(RELAY_MAIN, 0);
sm_set_relay(RELAY_PRECHARGE, 1);
break;
case STATE_READY:
sm_set_relay(RELAY_MAIN, 1);
sm_set_relay(RELAY_PRECHARGE, 0);
break;
case STATE_ACTIVE:
sm_set_relay(RELAY_MAIN, 1);
sm_set_relay(RELAY_PRECHARGE, 0);
break;
case STATE_DISCHARGE:
sm_set_relay(RELAY_MAIN, 0);
sm_set_relay(RELAY_PRECHARGE, 0);
break;
case STATE_CHARGING_PRECHARGE:
sm_set_relay(RELAY_MAIN, 0);
sm_set_relay(RELAY_PRECHARGE, 1);
break;
case STATE_CHARGING:
sm_set_relay(RELAY_MAIN, 1);
sm_set_relay(RELAY_PRECHARGE, 0);
break;
case STATE_ERROR:
sm_set_relay(RELAY_MAIN, 0);
sm_set_relay(RELAY_PRECHARGE, 0);
break;
}
}
void sm_set_relay(Relay relay, bool closed){
GPIO_PinState state = closed ? GPIO_PIN_SET : GPIO_PIN_RESET;
switch (relay) {
case RELAY_MAIN:
HAL_GPIO_WritePin(RELAY_EN_GPIO_Port, RELAY_EN_Pin, state);
relay_closed = closed;
break;
case RELAY_PRECHARGE:
HAL_GPIO_WritePin(PRECHARGE_EN_GPIO_Port, PRECHARGE_EN_Pin, state);
precharge_closed = closed;
break;
}
}
void sm_check_charging(){
if (RELAY_BAT_SIDE_VOLTAGE < RELAY_ESC_SIDE_VOLTAGE && timestamp == 0)
timestamp = HAL_GetTick() + 5000;
if (timestamp < HAL_GetTick())
state.target_state = STATE_CHARGING_PRECHARGE;
}
/* returns the ID and temperature of the hottest cell */
void sm_check_battery_temperature(int8_t *id, int16_t *temp){
for (int i = 0; i < N_TEMP_SENSORS; i++) {
if (tmp1075_temps[i] > *temp){
*id = i;
*temp = tmp1075_temps[i];
}
}
}
int16_t sm_return_cell_temperature(int id){
return tmp1075_temps[id];
}
int16_t sm_return_cell_voltage(int id){
return module.cellVoltages[id];
}
void sm_handle_ams_in(const uint8_t *data){
switch (data[0]) {
case 0x00:
if (state.current_state != STATE_INACTIVE){
state.target_state = STATE_DISCHARGE;
}
break;
case 0x01:
if (state.target_state == STATE_INACTIVE || state.target_state == STATE_DISCHARGE){
state.target_state = STATE_PRECHARGE;
} else if (state.target_state == STATE_ACTIVE){
state.target_state = STATE_READY;
}
break;
case 0x02:
if (state.current_state == STATE_READY || state.current_state == STATE_ACTIVE){
PWM_powerground_control(data[1]);
state.target_state = STATE_ACTIVE; // READY -> ACTIVE
}
break;
}
}
void sm_set_error(ErrorKind error_kind, bool is_errored){}
#warning TODO: add error checking for everything here
void sm_check_errors(){
switch (error_data.data_kind) {
case SEK_OVERTEMP:
case SEK_UNDERTEMP:
case SEK_TOO_FEW_TEMPS:
state.error_type.temperature_error = 1;
case SEK_OVERVOLT:
case SEK_UNDERVOLT:
case SEK_OPENWIRE:
case SEK_EEPROM_ERR:
case SEK_INTERNAL_BMS_TIMEOUT:
state.error_type.bms_timeout = 1;
case SEK_INTERNAL_BMS_CHECKSUM_FAIL:
case SEK_INTERNAL_BMS_OVERTEMP:
case SEK_INTERNAL_BMS_FAULT:
state.error_type.bms_fault = 1;
break;
}
if (1){
state.error_type.current_error = 1;
}
if (1){
state.error_type.current_sensor_missing = 1;
}
if (RELAY_BAT_SIDE_VOLTAGE < 30000){
state.error_type.voltage_error = 1;
}
if (1){
state.error_type.voltage_missing = 1;
}
}
void sm_test_cycle_states(){
RELAY_BAT_SIDE_VOLTAGE = module.auxVoltages[0];
RELAY_ESC_SIDE_VOLTAGE = module.auxVoltages[1];
CURRENT_MEASUREMENT = module.auxVoltages[2];
sm_set_relay_positions(state.current_state);
if (timestamp > HAL_GetTick())
return;
switch (state.current_state) {
case STATE_INACTIVE:
state.current_state = STATE_PRECHARGE;
timestamp = HAL_GetTick() + 30000;
PWM_powerground_control(0);
break;
case STATE_PRECHARGE:
state.current_state = STATE_READY;
timestamp = HAL_GetTick() + 10000;
break;
case STATE_READY:
state.current_state = STATE_ACTIVE;
timestamp = HAL_GetTick() + 10000;
break;
case STATE_ACTIVE:
state.current_state = STATE_DISCHARGE;
timestamp = HAL_GetTick() + 10000;
PWM_powerground_control(1);
break;
case STATE_DISCHARGE:
state.current_state = STATE_INACTIVE;
timestamp = HAL_GetTick() + 10000;
break;
}
state.target_state = state.current_state;
}

File diff suppressed because it is too large Load Diff

View File

@ -1,513 +0,0 @@
/**
******************************************************************************
* @file stm32f3xx_hal_uart_ex.h
* @author MCD Application Team
* @brief Header file of UART HAL Extended module.
******************************************************************************
* @attention
*
* Copyright (c) 2016 STMicroelectronics.
* All rights reserved.
*
* This software is licensed under terms that can be found in the LICENSE file
* in the root directory of this software component.
* If no LICENSE file comes with this software, it is provided AS-IS.
*
******************************************************************************
*/
/* Define to prevent recursive inclusion -------------------------------------*/
#ifndef STM32F3xx_HAL_UART_EX_H
#define STM32F3xx_HAL_UART_EX_H
#ifdef __cplusplus
extern "C" {
#endif
/* Includes ------------------------------------------------------------------*/
#include "stm32f3xx_hal_def.h"
/** @addtogroup STM32F3xx_HAL_Driver
* @{
*/
/** @addtogroup UARTEx
* @{
*/
/* Exported types ------------------------------------------------------------*/
/** @defgroup UARTEx_Exported_Types UARTEx Exported Types
* @{
*/
/**
* @brief UART wake up from stop mode parameters
*/
typedef struct
{
uint32_t WakeUpEvent; /*!< Specifies which event will activate the Wakeup from Stop mode flag (WUF).
This parameter can be a value of @ref UART_WakeUp_from_Stop_Selection.
If set to UART_WAKEUP_ON_ADDRESS, the two other fields below must
be filled up. */
uint16_t AddressLength; /*!< Specifies whether the address is 4 or 7-bit long.
This parameter can be a value of @ref UARTEx_WakeUp_Address_Length. */
uint8_t Address; /*!< UART/USART node address (7-bit long max). */
} UART_WakeUpTypeDef;
/**
* @}
*/
/* Exported constants --------------------------------------------------------*/
/** @defgroup UARTEx_Exported_Constants UARTEx Exported Constants
* @{
*/
/** @defgroup UARTEx_Word_Length UARTEx Word Length
* @{
*/
#if defined(USART_CR1_M1)
#define UART_WORDLENGTH_7B USART_CR1_M1 /*!< 7-bit long UART frame */
#endif /* USART_CR1_M1 */
#define UART_WORDLENGTH_8B 0x00000000U /*!< 8-bit long UART frame */
#if defined (USART_CR1_M0)
#define UART_WORDLENGTH_9B USART_CR1_M0 /*!< 9-bit long UART frame */
#else
#define UART_WORDLENGTH_9B USART_CR1_M /*!< 9-bit long UART frame */
#endif /* USART_CR1_M0 */
/**
* @}
*/
/** @defgroup UARTEx_WakeUp_Address_Length UARTEx WakeUp Address Length
* @{
*/
#define UART_ADDRESS_DETECT_4B 0x00000000U /*!< 4-bit long wake-up address */
#define UART_ADDRESS_DETECT_7B USART_CR2_ADDM7 /*!< 7-bit long wake-up address */
/**
* @}
*/
/**
* @}
*/
/* Exported macros -----------------------------------------------------------*/
/* Exported functions --------------------------------------------------------*/
/** @addtogroup UARTEx_Exported_Functions
* @{
*/
/** @addtogroup UARTEx_Exported_Functions_Group1
* @{
*/
/* Initialization and de-initialization functions ****************************/
HAL_StatusTypeDef HAL_RS485Ex_Init(UART_HandleTypeDef *huart, uint32_t Polarity, uint32_t AssertionTime,
uint32_t DeassertionTime);
/**
* @}
*/
/** @addtogroup UARTEx_Exported_Functions_Group2
* @{
*/
void HAL_UARTEx_WakeupCallback(UART_HandleTypeDef *huart);
/**
* @}
*/
/** @addtogroup UARTEx_Exported_Functions_Group3
* @{
*/
/* Peripheral Control functions **********************************************/
HAL_StatusTypeDef HAL_UARTEx_StopModeWakeUpSourceConfig(UART_HandleTypeDef *huart, UART_WakeUpTypeDef WakeUpSelection);
HAL_StatusTypeDef HAL_UARTEx_EnableStopMode(UART_HandleTypeDef *huart);
HAL_StatusTypeDef HAL_UARTEx_DisableStopMode(UART_HandleTypeDef *huart);
HAL_StatusTypeDef HAL_MultiProcessorEx_AddressLength_Set(UART_HandleTypeDef *huart, uint32_t AddressLength);
HAL_StatusTypeDef HAL_UARTEx_ReceiveToIdle(UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size, uint16_t *RxLen,
uint32_t Timeout);
HAL_StatusTypeDef HAL_UARTEx_ReceiveToIdle_IT(UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size);
HAL_StatusTypeDef HAL_UARTEx_ReceiveToIdle_DMA(UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size);
HAL_UART_RxEventTypeTypeDef HAL_UARTEx_GetRxEventType(UART_HandleTypeDef *huart);
/**
* @}
*/
/**
* @}
*/
/* Private macros ------------------------------------------------------------*/
/** @defgroup UARTEx_Private_Macros UARTEx Private Macros
* @{
*/
/** @brief Report the UART clock source.
* @param __HANDLE__ specifies the UART Handle.
* @param __CLOCKSOURCE__ output variable.
* @retval UART clocking source, written in __CLOCKSOURCE__.
*/
#if defined(STM32F302xE) || defined(STM32F303xE) || defined(STM32F398xx) || defined(STM32F302xC) \
|| defined(STM32F303xC) || defined(STM32F358xx)
#define UART_GETCLOCKSOURCE(__HANDLE__,__CLOCKSOURCE__) \
do { \
if((__HANDLE__)->Instance == USART1) \
{ \
switch(__HAL_RCC_GET_USART1_SOURCE()) \
{ \
case RCC_USART1CLKSOURCE_PCLK2: \
(__CLOCKSOURCE__) = UART_CLOCKSOURCE_PCLK2; \
break; \
case RCC_USART1CLKSOURCE_HSI: \
(__CLOCKSOURCE__) = UART_CLOCKSOURCE_HSI; \
break; \
case RCC_USART1CLKSOURCE_SYSCLK: \
(__CLOCKSOURCE__) = UART_CLOCKSOURCE_SYSCLK; \
break; \
case RCC_USART1CLKSOURCE_LSE: \
(__CLOCKSOURCE__) = UART_CLOCKSOURCE_LSE; \
break; \
default: \
(__CLOCKSOURCE__) = UART_CLOCKSOURCE_UNDEFINED; \
break; \
} \
} \
else if((__HANDLE__)->Instance == USART2) \
{ \
switch(__HAL_RCC_GET_USART2_SOURCE()) \
{ \
case RCC_USART2CLKSOURCE_PCLK1: \
(__CLOCKSOURCE__) = UART_CLOCKSOURCE_PCLK1; \
break; \
case RCC_USART2CLKSOURCE_HSI: \
(__CLOCKSOURCE__) = UART_CLOCKSOURCE_HSI; \
break; \
case RCC_USART2CLKSOURCE_SYSCLK: \
(__CLOCKSOURCE__) = UART_CLOCKSOURCE_SYSCLK; \
break; \
case RCC_USART2CLKSOURCE_LSE: \
(__CLOCKSOURCE__) = UART_CLOCKSOURCE_LSE; \
break; \
default: \
(__CLOCKSOURCE__) = UART_CLOCKSOURCE_UNDEFINED; \
break; \
} \
} \
else if((__HANDLE__)->Instance == USART3) \
{ \
switch(__HAL_RCC_GET_USART3_SOURCE()) \
{ \
case RCC_USART3CLKSOURCE_PCLK1: \
(__CLOCKSOURCE__) = UART_CLOCKSOURCE_PCLK1; \
break; \
case RCC_USART3CLKSOURCE_HSI: \
(__CLOCKSOURCE__) = UART_CLOCKSOURCE_HSI; \
break; \
case RCC_USART3CLKSOURCE_SYSCLK: \
(__CLOCKSOURCE__) = UART_CLOCKSOURCE_SYSCLK; \
break; \
case RCC_USART3CLKSOURCE_LSE: \
(__CLOCKSOURCE__) = UART_CLOCKSOURCE_LSE; \
break; \
default: \
(__CLOCKSOURCE__) = UART_CLOCKSOURCE_UNDEFINED; \
break; \
} \
} \
else if((__HANDLE__)->Instance == UART4) \
{ \
switch(__HAL_RCC_GET_UART4_SOURCE()) \
{ \
case RCC_UART4CLKSOURCE_PCLK1: \
(__CLOCKSOURCE__) = UART_CLOCKSOURCE_PCLK1; \
break; \
case RCC_UART4CLKSOURCE_HSI: \
(__CLOCKSOURCE__) = UART_CLOCKSOURCE_HSI; \
break; \
case RCC_UART4CLKSOURCE_SYSCLK: \
(__CLOCKSOURCE__) = UART_CLOCKSOURCE_SYSCLK; \
break; \
case RCC_UART4CLKSOURCE_LSE: \
(__CLOCKSOURCE__) = UART_CLOCKSOURCE_LSE; \
break; \
default: \
(__CLOCKSOURCE__) = UART_CLOCKSOURCE_UNDEFINED; \
break; \
} \
} \
else if ((__HANDLE__)->Instance == UART5) \
{ \
switch(__HAL_RCC_GET_UART5_SOURCE()) \
{ \
case RCC_UART5CLKSOURCE_PCLK1: \
(__CLOCKSOURCE__) = UART_CLOCKSOURCE_PCLK1; \
break; \
case RCC_UART5CLKSOURCE_HSI: \
(__CLOCKSOURCE__) = UART_CLOCKSOURCE_HSI; \
break; \
case RCC_UART5CLKSOURCE_SYSCLK: \
(__CLOCKSOURCE__) = UART_CLOCKSOURCE_SYSCLK; \
break; \
case RCC_UART5CLKSOURCE_LSE: \
(__CLOCKSOURCE__) = UART_CLOCKSOURCE_LSE; \
break; \
default: \
(__CLOCKSOURCE__) = UART_CLOCKSOURCE_UNDEFINED; \
break; \
} \
} \
else \
{ \
(__CLOCKSOURCE__) = UART_CLOCKSOURCE_UNDEFINED; \
} \
} while(0U)
#elif defined(STM32F303x8) || defined(STM32F334x8) || defined(STM32F328xx) || defined(STM32F301x8) \
|| defined(STM32F302x8) || defined(STM32F318xx)
#define UART_GETCLOCKSOURCE(__HANDLE__,__CLOCKSOURCE__) \
do { \
if((__HANDLE__)->Instance == USART1) \
{ \
switch(__HAL_RCC_GET_USART1_SOURCE()) \
{ \
case RCC_USART1CLKSOURCE_PCLK1: \
(__CLOCKSOURCE__) = UART_CLOCKSOURCE_PCLK1; \
break; \
case RCC_USART1CLKSOURCE_HSI: \
(__CLOCKSOURCE__) = UART_CLOCKSOURCE_HSI; \
break; \
case RCC_USART1CLKSOURCE_SYSCLK: \
(__CLOCKSOURCE__) = UART_CLOCKSOURCE_SYSCLK; \
break; \
case RCC_USART1CLKSOURCE_LSE: \
(__CLOCKSOURCE__) = UART_CLOCKSOURCE_LSE; \
break; \
default: \
(__CLOCKSOURCE__) = UART_CLOCKSOURCE_UNDEFINED; \
break; \
} \
} \
else if((__HANDLE__)->Instance == USART2) \
{ \
(__CLOCKSOURCE__) = UART_CLOCKSOURCE_PCLK1; \
} \
else if((__HANDLE__)->Instance == USART3) \
{ \
(__CLOCKSOURCE__) = UART_CLOCKSOURCE_PCLK1; \
} \
else \
{ \
(__CLOCKSOURCE__) = UART_CLOCKSOURCE_UNDEFINED; \
} \
} while(0U)
#else
#define UART_GETCLOCKSOURCE(__HANDLE__,__CLOCKSOURCE__) \
do { \
if((__HANDLE__)->Instance == USART1) \
{ \
switch(__HAL_RCC_GET_USART1_SOURCE()) \
{ \
case RCC_USART1CLKSOURCE_PCLK2: \
(__CLOCKSOURCE__) = UART_CLOCKSOURCE_PCLK2; \
break; \
case RCC_USART1CLKSOURCE_HSI: \
(__CLOCKSOURCE__) = UART_CLOCKSOURCE_HSI; \
break; \
case RCC_USART1CLKSOURCE_SYSCLK: \
(__CLOCKSOURCE__) = UART_CLOCKSOURCE_SYSCLK; \
break; \
case RCC_USART1CLKSOURCE_LSE: \
(__CLOCKSOURCE__) = UART_CLOCKSOURCE_LSE; \
break; \
default: \
(__CLOCKSOURCE__) = UART_CLOCKSOURCE_UNDEFINED; \
break; \
} \
} \
else if((__HANDLE__)->Instance == USART2) \
{ \
switch(__HAL_RCC_GET_USART2_SOURCE()) \
{ \
case RCC_USART2CLKSOURCE_PCLK1: \
(__CLOCKSOURCE__) = UART_CLOCKSOURCE_PCLK1; \
break; \
case RCC_USART2CLKSOURCE_HSI: \
(__CLOCKSOURCE__) = UART_CLOCKSOURCE_HSI; \
break; \
case RCC_USART2CLKSOURCE_SYSCLK: \
(__CLOCKSOURCE__) = UART_CLOCKSOURCE_SYSCLK; \
break; \
case RCC_USART2CLKSOURCE_LSE: \
(__CLOCKSOURCE__) = UART_CLOCKSOURCE_LSE; \
break; \
default: \
(__CLOCKSOURCE__) = UART_CLOCKSOURCE_UNDEFINED; \
break; \
} \
} \
else if((__HANDLE__)->Instance == USART3) \
{ \
switch(__HAL_RCC_GET_USART3_SOURCE()) \
{ \
case RCC_USART3CLKSOURCE_PCLK1: \
(__CLOCKSOURCE__) = UART_CLOCKSOURCE_PCLK1; \
break; \
case RCC_USART3CLKSOURCE_HSI: \
(__CLOCKSOURCE__) = UART_CLOCKSOURCE_HSI; \
break; \
case RCC_USART3CLKSOURCE_SYSCLK: \
(__CLOCKSOURCE__) = UART_CLOCKSOURCE_SYSCLK; \
break; \
case RCC_USART3CLKSOURCE_LSE: \
(__CLOCKSOURCE__) = UART_CLOCKSOURCE_LSE; \
break; \
default: \
(__CLOCKSOURCE__) = UART_CLOCKSOURCE_UNDEFINED; \
break; \
} \
} \
else \
{ \
(__CLOCKSOURCE__) = UART_CLOCKSOURCE_UNDEFINED; \
} \
} while(0U)
#endif /* STM32F302xE || STM32F303xE || STM32F398xx || STM32F302xC || STM32F303xC || STM32F358xx */
/** @brief Report the UART mask to apply to retrieve the received data
* according to the word length and to the parity bits activation.
* @note If PCE = 1, the parity bit is not included in the data extracted
* by the reception API().
* This masking operation is not carried out in the case of
* DMA transfers.
* @param __HANDLE__ specifies the UART Handle.
* @retval None, the mask to apply to UART RDR register is stored in (__HANDLE__)->Mask field.
*/
#if defined (USART_CR1_M1)
#define UART_MASK_COMPUTATION(__HANDLE__) \
do { \
if ((__HANDLE__)->Init.WordLength == UART_WORDLENGTH_9B) \
{ \
if ((__HANDLE__)->Init.Parity == UART_PARITY_NONE) \
{ \
(__HANDLE__)->Mask = 0x01FFU ; \
} \
else \
{ \
(__HANDLE__)->Mask = 0x00FFU ; \
} \
} \
else if ((__HANDLE__)->Init.WordLength == UART_WORDLENGTH_8B) \
{ \
if ((__HANDLE__)->Init.Parity == UART_PARITY_NONE) \
{ \
(__HANDLE__)->Mask = 0x00FFU ; \
} \
else \
{ \
(__HANDLE__)->Mask = 0x007FU ; \
} \
} \
else if ((__HANDLE__)->Init.WordLength == UART_WORDLENGTH_7B) \
{ \
if ((__HANDLE__)->Init.Parity == UART_PARITY_NONE) \
{ \
(__HANDLE__)->Mask = 0x007FU ; \
} \
else \
{ \
(__HANDLE__)->Mask = 0x003FU ; \
} \
} \
else \
{ \
(__HANDLE__)->Mask = 0x0000U; \
} \
} while(0U)
#else
#define UART_MASK_COMPUTATION(__HANDLE__) \
do { \
if ((__HANDLE__)->Init.WordLength == UART_WORDLENGTH_9B) \
{ \
if ((__HANDLE__)->Init.Parity == UART_PARITY_NONE) \
{ \
(__HANDLE__)->Mask = 0x01FFU ; \
} \
else \
{ \
(__HANDLE__)->Mask = 0x00FFU ; \
} \
} \
else if ((__HANDLE__)->Init.WordLength == UART_WORDLENGTH_8B) \
{ \
if ((__HANDLE__)->Init.Parity == UART_PARITY_NONE) \
{ \
(__HANDLE__)->Mask = 0x00FFU ; \
} \
else \
{ \
(__HANDLE__)->Mask = 0x007FU ; \
} \
} \
else \
{ \
(__HANDLE__)->Mask = 0x0000U; \
} \
} while(0U)
#endif /* USART_CR1_M1 */
/**
* @brief Ensure that UART frame length is valid.
* @param __LENGTH__ UART frame length.
* @retval SET (__LENGTH__ is valid) or RESET (__LENGTH__ is invalid)
*/
#if defined (USART_CR1_M1)
#define IS_UART_WORD_LENGTH(__LENGTH__) (((__LENGTH__) == UART_WORDLENGTH_7B) || \
((__LENGTH__) == UART_WORDLENGTH_8B) || \
((__LENGTH__) == UART_WORDLENGTH_9B))
#else
#define IS_UART_WORD_LENGTH(__LENGTH__) (((__LENGTH__) == UART_WORDLENGTH_8B) || \
((__LENGTH__) == UART_WORDLENGTH_9B))
#endif /* USART_CR1_M1 */
/**
* @brief Ensure that UART wake-up address length is valid.
* @param __ADDRESS__ UART wake-up address length.
* @retval SET (__ADDRESS__ is valid) or RESET (__ADDRESS__ is invalid)
*/
#define IS_UART_ADDRESSLENGTH_DETECT(__ADDRESS__) (((__ADDRESS__) == UART_ADDRESS_DETECT_4B) || \
((__ADDRESS__) == UART_ADDRESS_DETECT_7B))
/**
* @}
*/
/* Private functions ---------------------------------------------------------*/
/**
* @}
*/
/**
* @}
*/
#ifdef __cplusplus
}
#endif
#endif /* STM32F3xx_HAL_UART_EX_H */

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,775 +0,0 @@
/**
******************************************************************************
* @file stm32f3xx_hal_uart_ex.c
* @author MCD Application Team
* @brief Extended UART HAL module driver.
* This file provides firmware functions to manage the following extended
* functionalities of the Universal Asynchronous Receiver Transmitter Peripheral (UART).
* + Initialization and de-initialization functions
* + Peripheral Control functions
*
*
******************************************************************************
* @attention
*
* Copyright (c) 2016 STMicroelectronics.
* All rights reserved.
*
* This software is licensed under terms that can be found in the LICENSE file
* in the root directory of this software component.
* If no LICENSE file comes with this software, it is provided AS-IS.
*
******************************************************************************
@verbatim
==============================================================================
##### UART peripheral extended features #####
==============================================================================
(#) Declare a UART_HandleTypeDef handle structure.
(#) For the UART RS485 Driver Enable mode, initialize the UART registers
by calling the HAL_RS485Ex_Init() API.
@endverbatim
******************************************************************************
*/
/* Includes ------------------------------------------------------------------*/
#include "stm32f3xx_hal.h"
/** @addtogroup STM32F3xx_HAL_Driver
* @{
*/
/** @defgroup UARTEx UARTEx
* @brief UART Extended HAL module driver
* @{
*/
#ifdef HAL_UART_MODULE_ENABLED
/* Private typedef -----------------------------------------------------------*/
/* Private define ------------------------------------------------------------*/
/* Private macros ------------------------------------------------------------*/
/* Private variables ---------------------------------------------------------*/
/* Private function prototypes -----------------------------------------------*/
/** @defgroup UARTEx_Private_Functions UARTEx Private Functions
* @{
*/
static void UARTEx_Wakeup_AddressConfig(UART_HandleTypeDef *huart, UART_WakeUpTypeDef WakeUpSelection);
/**
* @}
*/
/* Exported functions --------------------------------------------------------*/
/** @defgroup UARTEx_Exported_Functions UARTEx Exported Functions
* @{
*/
/** @defgroup UARTEx_Exported_Functions_Group1 Initialization and de-initialization functions
* @brief Extended Initialization and Configuration Functions
*
@verbatim
===============================================================================
##### Initialization and Configuration functions #####
===============================================================================
[..]
This subsection provides a set of functions allowing to initialize the USARTx or the UARTy
in asynchronous mode.
(+) For the asynchronous mode the parameters below can be configured:
(++) Baud Rate
(++) Word Length
(++) Stop Bit
(++) Parity: If the parity is enabled, then the MSB bit of the data written
in the data register is transmitted but is changed by the parity bit.
(++) Hardware flow control
(++) Receiver/transmitter modes
(++) Over Sampling Method
(++) One-Bit Sampling Method
(+) For the asynchronous mode, the following advanced features can be configured as well:
(++) TX and/or RX pin level inversion
(++) data logical level inversion
(++) RX and TX pins swap
(++) RX overrun detection disabling
(++) DMA disabling on RX error
(++) MSB first on communication line
(++) auto Baud rate detection
[..]
The HAL_RS485Ex_Init() API follows the UART RS485 mode configuration
procedures (details for the procedures are available in reference manual).
@endverbatim
Depending on the frame length defined by the M1 and M0 bits (7-bit,
8-bit or 9-bit), the possible UART formats are listed in the
following table.
Table 1. UART frame format.
+-----------------------------------------------------------------------+
| M1 bit | M0 bit | PCE bit | UART frame |
|---------|---------|-----------|---------------------------------------|
| 0 | 0 | 0 | | SB | 8 bit data | STB | |
|---------|---------|-----------|---------------------------------------|
| 0 | 0 | 1 | | SB | 7 bit data | PB | STB | |
|---------|---------|-----------|---------------------------------------|
| 0 | 1 | 0 | | SB | 9 bit data | STB | |
|---------|---------|-----------|---------------------------------------|
| 0 | 1 | 1 | | SB | 8 bit data | PB | STB | |
|---------|---------|-----------|---------------------------------------|
| 1 | 0 | 0 | | SB | 7 bit data | STB | |
|---------|---------|-----------|---------------------------------------|
| 1 | 0 | 1 | | SB | 6 bit data | PB | STB | |
+-----------------------------------------------------------------------+
* @{
*/
/**
* @brief Initialize the RS485 Driver enable feature according to the specified
* parameters in the UART_InitTypeDef and creates the associated handle.
* @param huart UART handle.
* @param Polarity Select the driver enable polarity.
* This parameter can be one of the following values:
* @arg @ref UART_DE_POLARITY_HIGH DE signal is active high
* @arg @ref UART_DE_POLARITY_LOW DE signal is active low
* @param AssertionTime Driver Enable assertion time:
* 5-bit value defining the time between the activation of the DE (Driver Enable)
* signal and the beginning of the start bit. It is expressed in sample time
* units (1/8 or 1/16 bit time, depending on the oversampling rate)
* @param DeassertionTime Driver Enable deassertion time:
* 5-bit value defining the time between the end of the last stop bit, in a
* transmitted message, and the de-activation of the DE (Driver Enable) signal.
* It is expressed in sample time units (1/8 or 1/16 bit time, depending on the
* oversampling rate).
* @retval HAL status
*/
HAL_StatusTypeDef HAL_RS485Ex_Init(UART_HandleTypeDef *huart, uint32_t Polarity, uint32_t AssertionTime,
uint32_t DeassertionTime)
{
uint32_t temp;
/* Check the UART handle allocation */
if (huart == NULL)
{
return HAL_ERROR;
}
/* Check the Driver Enable UART instance */
assert_param(IS_UART_DRIVER_ENABLE_INSTANCE(huart->Instance));
/* Check the Driver Enable polarity */
assert_param(IS_UART_DE_POLARITY(Polarity));
/* Check the Driver Enable assertion time */
assert_param(IS_UART_ASSERTIONTIME(AssertionTime));
/* Check the Driver Enable deassertion time */
assert_param(IS_UART_DEASSERTIONTIME(DeassertionTime));
if (huart->gState == HAL_UART_STATE_RESET)
{
/* Allocate lock resource and initialize it */
huart->Lock = HAL_UNLOCKED;
#if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
UART_InitCallbacksToDefault(huart);
if (huart->MspInitCallback == NULL)
{
huart->MspInitCallback = HAL_UART_MspInit;
}
/* Init the low level hardware */
huart->MspInitCallback(huart);
#else
/* Init the low level hardware : GPIO, CLOCK, CORTEX */
HAL_UART_MspInit(huart);
#endif /* (USE_HAL_UART_REGISTER_CALLBACKS) */
}
huart->gState = HAL_UART_STATE_BUSY;
/* Disable the Peripheral */
__HAL_UART_DISABLE(huart);
/* Set the UART Communication parameters */
if (UART_SetConfig(huart) == HAL_ERROR)
{
return HAL_ERROR;
}
if (huart->AdvancedInit.AdvFeatureInit != UART_ADVFEATURE_NO_INIT)
{
UART_AdvFeatureConfig(huart);
}
/* Enable the Driver Enable mode by setting the DEM bit in the CR3 register */
SET_BIT(huart->Instance->CR3, USART_CR3_DEM);
/* Set the Driver Enable polarity */
MODIFY_REG(huart->Instance->CR3, USART_CR3_DEP, Polarity);
/* Set the Driver Enable assertion and deassertion times */
temp = (AssertionTime << UART_CR1_DEAT_ADDRESS_LSB_POS);
temp |= (DeassertionTime << UART_CR1_DEDT_ADDRESS_LSB_POS);
MODIFY_REG(huart->Instance->CR1, (USART_CR1_DEDT | USART_CR1_DEAT), temp);
/* Enable the Peripheral */
__HAL_UART_ENABLE(huart);
/* TEACK and/or REACK to check before moving huart->gState and huart->RxState to Ready */
return (UART_CheckIdleState(huart));
}
/**
* @}
*/
/** @defgroup UARTEx_Exported_Functions_Group2 IO operation functions
* @brief Extended functions
*
@verbatim
===============================================================================
##### IO operation functions #####
===============================================================================
This subsection provides a set of Wakeup and FIFO mode related callback functions.
(#) Wakeup from Stop mode Callback:
(+) HAL_UARTEx_WakeupCallback()
@endverbatim
* @{
*/
/**
* @brief UART wakeup from Stop mode callback.
* @param huart UART handle.
* @retval None
*/
__weak void HAL_UARTEx_WakeupCallback(UART_HandleTypeDef *huart)
{
/* Prevent unused argument(s) compilation warning */
UNUSED(huart);
/* NOTE : This function should not be modified, when the callback is needed,
the HAL_UARTEx_WakeupCallback can be implemented in the user file.
*/
}
/**
* @}
*/
/** @defgroup UARTEx_Exported_Functions_Group3 Peripheral Control functions
* @brief Extended Peripheral Control functions
*
@verbatim
===============================================================================
##### Peripheral Control functions #####
===============================================================================
[..] This section provides the following functions:
(+) HAL_MultiProcessorEx_AddressLength_Set() API optionally sets the UART node address
detection length to more than 4 bits for multiprocessor address mark wake up.
(+) HAL_UARTEx_StopModeWakeUpSourceConfig() API defines the wake-up from stop mode
trigger: address match, Start Bit detection or RXNE bit status.
(+) HAL_UARTEx_EnableStopMode() API enables the UART to wake up the MCU from stop mode
(+) HAL_UARTEx_DisableStopMode() API disables the above functionality
[..] This subsection also provides a set of additional functions providing enhanced reception
services to user. (For example, these functions allow application to handle use cases
where number of data to be received is unknown).
(#) Compared to standard reception services which only consider number of received
data elements as reception completion criteria, these functions also consider additional events
as triggers for updating reception status to caller :
(+) Detection of inactivity period (RX line has not been active for a given period).
(++) RX inactivity detected by IDLE event, i.e. RX line has been in idle state (normally high state)
for 1 frame time, after last received byte.
(++) RX inactivity detected by RTO, i.e. line has been in idle state
for a programmable time, after last received byte.
(+) Detection that a specific character has been received.
(#) There are two mode of transfer:
(+) Blocking mode: The reception is performed in polling mode, until either expected number of data is received,
or till IDLE event occurs. Reception is handled only during function execution.
When function exits, no data reception could occur. HAL status and number of actually received data elements,
are returned by function after finishing transfer.
(+) Non-Blocking mode: The reception is performed using Interrupts or DMA.
These API's return the HAL status.
The end of the data processing will be indicated through the
dedicated UART IRQ when using Interrupt mode or the DMA IRQ when using DMA mode.
The HAL_UARTEx_RxEventCallback() user callback will be executed during Receive process
The HAL_UART_ErrorCallback()user callback will be executed when a reception error is detected.
(#) Blocking mode API:
(+) HAL_UARTEx_ReceiveToIdle()
(#) Non-Blocking mode API with Interrupt:
(+) HAL_UARTEx_ReceiveToIdle_IT()
(#) Non-Blocking mode API with DMA:
(+) HAL_UARTEx_ReceiveToIdle_DMA()
@endverbatim
* @{
*/
/**
* @brief By default in multiprocessor mode, when the wake up method is set
* to address mark, the UART handles only 4-bit long addresses detection;
* this API allows to enable longer addresses detection (6-, 7- or 8-bit
* long).
* @note Addresses detection lengths are: 6-bit address detection in 7-bit data mode,
* 7-bit address detection in 8-bit data mode, 8-bit address detection in 9-bit data mode.
* @param huart UART handle.
* @param AddressLength This parameter can be one of the following values:
* @arg @ref UART_ADDRESS_DETECT_4B 4-bit long address
* @arg @ref UART_ADDRESS_DETECT_7B 6-, 7- or 8-bit long address
* @retval HAL status
*/
HAL_StatusTypeDef HAL_MultiProcessorEx_AddressLength_Set(UART_HandleTypeDef *huart, uint32_t AddressLength)
{
/* Check the UART handle allocation */
if (huart == NULL)
{
return HAL_ERROR;
}
/* Check the address length parameter */
assert_param(IS_UART_ADDRESSLENGTH_DETECT(AddressLength));
huart->gState = HAL_UART_STATE_BUSY;
/* Disable the Peripheral */
__HAL_UART_DISABLE(huart);
/* Set the address length */
MODIFY_REG(huart->Instance->CR2, USART_CR2_ADDM7, AddressLength);
/* Enable the Peripheral */
__HAL_UART_ENABLE(huart);
/* TEACK and/or REACK to check before moving huart->gState to Ready */
return (UART_CheckIdleState(huart));
}
/**
* @brief Set Wakeup from Stop mode interrupt flag selection.
* @note It is the application responsibility to enable the interrupt used as
* usart_wkup interrupt source before entering low-power mode.
* @param huart UART handle.
* @param WakeUpSelection Address match, Start Bit detection or RXNE/RXFNE bit status.
* This parameter can be one of the following values:
* @arg @ref UART_WAKEUP_ON_ADDRESS
* @arg @ref UART_WAKEUP_ON_STARTBIT
* @arg @ref UART_WAKEUP_ON_READDATA_NONEMPTY
* @retval HAL status
*/
HAL_StatusTypeDef HAL_UARTEx_StopModeWakeUpSourceConfig(UART_HandleTypeDef *huart, UART_WakeUpTypeDef WakeUpSelection)
{
HAL_StatusTypeDef status = HAL_OK;
uint32_t tickstart;
/* check the wake-up from stop mode UART instance */
assert_param(IS_UART_WAKEUP_FROMSTOP_INSTANCE(huart->Instance));
/* check the wake-up selection parameter */
assert_param(IS_UART_WAKEUP_SELECTION(WakeUpSelection.WakeUpEvent));
/* Process Locked */
__HAL_LOCK(huart);
huart->gState = HAL_UART_STATE_BUSY;
/* Disable the Peripheral */
__HAL_UART_DISABLE(huart);
/* Set the wake-up selection scheme */
MODIFY_REG(huart->Instance->CR3, USART_CR3_WUS, WakeUpSelection.WakeUpEvent);
if (WakeUpSelection.WakeUpEvent == UART_WAKEUP_ON_ADDRESS)
{
UARTEx_Wakeup_AddressConfig(huart, WakeUpSelection);
}
/* Enable the Peripheral */
__HAL_UART_ENABLE(huart);
/* Init tickstart for timeout management */
tickstart = HAL_GetTick();
/* Wait until REACK flag is set */
if (UART_WaitOnFlagUntilTimeout(huart, USART_ISR_REACK, RESET, tickstart, HAL_UART_TIMEOUT_VALUE) != HAL_OK)
{
status = HAL_TIMEOUT;
}
else
{
/* Initialize the UART State */
huart->gState = HAL_UART_STATE_READY;
}
/* Process Unlocked */
__HAL_UNLOCK(huart);
return status;
}
/**
* @brief Enable UART Stop Mode.
* @note The UART is able to wake up the MCU from Stop 1 mode as long as UART clock is HSI or LSE.
* @param huart UART handle.
* @retval HAL status
*/
HAL_StatusTypeDef HAL_UARTEx_EnableStopMode(UART_HandleTypeDef *huart)
{
/* Process Locked */
__HAL_LOCK(huart);
/* Set UESM bit */
ATOMIC_SET_BIT(huart->Instance->CR1, USART_CR1_UESM);
/* Process Unlocked */
__HAL_UNLOCK(huart);
return HAL_OK;
}
/**
* @brief Disable UART Stop Mode.
* @param huart UART handle.
* @retval HAL status
*/
HAL_StatusTypeDef HAL_UARTEx_DisableStopMode(UART_HandleTypeDef *huart)
{
/* Process Locked */
__HAL_LOCK(huart);
/* Clear UESM bit */
ATOMIC_CLEAR_BIT(huart->Instance->CR1, USART_CR1_UESM);
/* Process Unlocked */
__HAL_UNLOCK(huart);
return HAL_OK;
}
/**
* @brief Receive an amount of data in blocking mode till either the expected number of data
* is received or an IDLE event occurs.
* @note HAL_OK is returned if reception is completed (expected number of data has been received)
* or if reception is stopped after IDLE event (less than the expected number of data has been received)
* In this case, RxLen output parameter indicates number of data available in reception buffer.
* @note When UART parity is not enabled (PCE = 0), and Word Length is configured to 9 bits (M1-M0 = 01),
* the received data is handled as a set of uint16_t. In this case, Size must indicate the number
* of uint16_t available through pData.
* @param huart UART handle.
* @param pData Pointer to data buffer (uint8_t or uint16_t data elements).
* @param Size Amount of data elements (uint8_t or uint16_t) to be received.
* @param RxLen Number of data elements finally received
* (could be lower than Size, in case reception ends on IDLE event)
* @param Timeout Timeout duration expressed in ms (covers the whole reception sequence).
* @retval HAL status
*/
HAL_StatusTypeDef HAL_UARTEx_ReceiveToIdle(UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size, uint16_t *RxLen,
uint32_t Timeout)
{
uint8_t *pdata8bits;
uint16_t *pdata16bits;
uint16_t uhMask;
uint32_t tickstart;
/* Check that a Rx process is not already ongoing */
if (huart->RxState == HAL_UART_STATE_READY)
{
if ((pData == NULL) || (Size == 0U))
{
return HAL_ERROR;
}
huart->ErrorCode = HAL_UART_ERROR_NONE;
huart->RxState = HAL_UART_STATE_BUSY_RX;
huart->ReceptionType = HAL_UART_RECEPTION_TOIDLE;
huart->RxEventType = HAL_UART_RXEVENT_TC;
/* Init tickstart for timeout management */
tickstart = HAL_GetTick();
huart->RxXferSize = Size;
huart->RxXferCount = Size;
/* Computation of UART mask to apply to RDR register */
UART_MASK_COMPUTATION(huart);
uhMask = huart->Mask;
/* In case of 9bits/No Parity transfer, pRxData needs to be handled as a uint16_t pointer */
if ((huart->Init.WordLength == UART_WORDLENGTH_9B) && (huart->Init.Parity == UART_PARITY_NONE))
{
pdata8bits = NULL;
pdata16bits = (uint16_t *) pData;
}
else
{
pdata8bits = pData;
pdata16bits = NULL;
}
/* Initialize output number of received elements */
*RxLen = 0U;
/* as long as data have to be received */
while (huart->RxXferCount > 0U)
{
/* Check if IDLE flag is set */
if (__HAL_UART_GET_FLAG(huart, UART_FLAG_IDLE))
{
/* Clear IDLE flag in ISR */
__HAL_UART_CLEAR_FLAG(huart, UART_CLEAR_IDLEF);
/* If Set, but no data ever received, clear flag without exiting loop */
/* If Set, and data has already been received, this means Idle Event is valid : End reception */
if (*RxLen > 0U)
{
huart->RxEventType = HAL_UART_RXEVENT_IDLE;
huart->RxState = HAL_UART_STATE_READY;
return HAL_OK;
}
}
/* Check if RXNE flag is set */
if (__HAL_UART_GET_FLAG(huart, UART_FLAG_RXNE))
{
if (pdata8bits == NULL)
{
*pdata16bits = (uint16_t)(huart->Instance->RDR & uhMask);
pdata16bits++;
}
else
{
*pdata8bits = (uint8_t)(huart->Instance->RDR & (uint8_t)uhMask);
pdata8bits++;
}
/* Increment number of received elements */
*RxLen += 1U;
huart->RxXferCount--;
}
/* Check for the Timeout */
if (Timeout != HAL_MAX_DELAY)
{
if (((HAL_GetTick() - tickstart) > Timeout) || (Timeout == 0U))
{
huart->RxState = HAL_UART_STATE_READY;
return HAL_TIMEOUT;
}
}
}
/* Set number of received elements in output parameter : RxLen */
*RxLen = huart->RxXferSize - huart->RxXferCount;
/* At end of Rx process, restore huart->RxState to Ready */
huart->RxState = HAL_UART_STATE_READY;
return HAL_OK;
}
else
{
return HAL_BUSY;
}
}
/**
* @brief Receive an amount of data in interrupt mode till either the expected number of data
* is received or an IDLE event occurs.
* @note Reception is initiated by this function call. Further progress of reception is achieved thanks
* to UART interrupts raised by RXNE and IDLE events. Callback is called at end of reception indicating
* number of received data elements.
* @note When UART parity is not enabled (PCE = 0), and Word Length is configured to 9 bits (M1-M0 = 01),
* the received data is handled as a set of uint16_t. In this case, Size must indicate the number
* of uint16_t available through pData.
* @param huart UART handle.
* @param pData Pointer to data buffer (uint8_t or uint16_t data elements).
* @param Size Amount of data elements (uint8_t or uint16_t) to be received.
* @retval HAL status
*/
HAL_StatusTypeDef HAL_UARTEx_ReceiveToIdle_IT(UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size)
{
HAL_StatusTypeDef status;
/* Check that a Rx process is not already ongoing */
if (huart->RxState == HAL_UART_STATE_READY)
{
if ((pData == NULL) || (Size == 0U))
{
return HAL_ERROR;
}
/* Set Reception type to reception till IDLE Event*/
huart->ReceptionType = HAL_UART_RECEPTION_TOIDLE;
huart->RxEventType = HAL_UART_RXEVENT_TC;
status = UART_Start_Receive_IT(huart, pData, Size);
/* Check Rx process has been successfully started */
if (status == HAL_OK)
{
if (huart->ReceptionType == HAL_UART_RECEPTION_TOIDLE)
{
__HAL_UART_CLEAR_FLAG(huart, UART_CLEAR_IDLEF);
ATOMIC_SET_BIT(huart->Instance->CR1, USART_CR1_IDLEIE);
}
else
{
/* In case of errors already pending when reception is started,
Interrupts may have already been raised and lead to reception abortion.
(Overrun error for instance).
In such case Reception Type has been reset to HAL_UART_RECEPTION_STANDARD. */
status = HAL_ERROR;
}
}
return status;
}
else
{
return HAL_BUSY;
}
}
/**
* @brief Receive an amount of data in DMA mode till either the expected number
* of data is received or an IDLE event occurs.
* @note Reception is initiated by this function call. Further progress of reception is achieved thanks
* to DMA services, transferring automatically received data elements in user reception buffer and
* calling registered callbacks at half/end of reception. UART IDLE events are also used to consider
* reception phase as ended. In all cases, callback execution will indicate number of received data elements.
* @note When the UART parity is enabled (PCE = 1), the received data contain
* the parity bit (MSB position).
* @note When UART parity is not enabled (PCE = 0), and Word Length is configured to 9 bits (M1-M0 = 01),
* the received data is handled as a set of uint16_t. In this case, Size must indicate the number
* of uint16_t available through pData.
* @param huart UART handle.
* @param pData Pointer to data buffer (uint8_t or uint16_t data elements).
* @param Size Amount of data elements (uint8_t or uint16_t) to be received.
* @retval HAL status
*/
HAL_StatusTypeDef HAL_UARTEx_ReceiveToIdle_DMA(UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size)
{
HAL_StatusTypeDef status;
/* Check that a Rx process is not already ongoing */
if (huart->RxState == HAL_UART_STATE_READY)
{
if ((pData == NULL) || (Size == 0U))
{
return HAL_ERROR;
}
/* Set Reception type to reception till IDLE Event*/
huart->ReceptionType = HAL_UART_RECEPTION_TOIDLE;
huart->RxEventType = HAL_UART_RXEVENT_TC;
status = UART_Start_Receive_DMA(huart, pData, Size);
/* Check Rx process has been successfully started */
if (status == HAL_OK)
{
if (huart->ReceptionType == HAL_UART_RECEPTION_TOIDLE)
{
__HAL_UART_CLEAR_FLAG(huart, UART_CLEAR_IDLEF);
ATOMIC_SET_BIT(huart->Instance->CR1, USART_CR1_IDLEIE);
}
else
{
/* In case of errors already pending when reception is started,
Interrupts may have already been raised and lead to reception abortion.
(Overrun error for instance).
In such case Reception Type has been reset to HAL_UART_RECEPTION_STANDARD. */
status = HAL_ERROR;
}
}
return status;
}
else
{
return HAL_BUSY;
}
}
/**
* @brief Provide Rx Event type that has lead to RxEvent callback execution.
* @note When HAL_UARTEx_ReceiveToIdle_IT() or HAL_UARTEx_ReceiveToIdle_DMA() API are called, progress
* of reception process is provided to application through calls of Rx Event callback (either default one
* HAL_UARTEx_RxEventCallback() or user registered one). As several types of events could occur (IDLE event,
* Half Transfer, or Transfer Complete), this function allows to retrieve the Rx Event type that has lead
* to Rx Event callback execution.
* @note This function is expected to be called within the user implementation of Rx Event Callback,
* in order to provide the accurate value :
* In Interrupt Mode :
* - HAL_UART_RXEVENT_TC : when Reception has been completed (expected nb of data has been received)
* - HAL_UART_RXEVENT_IDLE : when Idle event occurred prior reception has been completed (nb of
* received data is lower than expected one)
* In DMA Mode :
* - HAL_UART_RXEVENT_TC : when Reception has been completed (expected nb of data has been received)
* - HAL_UART_RXEVENT_HT : when half of expected nb of data has been received
* - HAL_UART_RXEVENT_IDLE : when Idle event occurred prior reception has been completed (nb of
* received data is lower than expected one).
* In DMA mode, RxEvent callback could be called several times;
* When DMA is configured in Normal Mode, HT event does not stop Reception process;
* When DMA is configured in Circular Mode, HT, TC or IDLE events don't stop Reception process;
* @param huart UART handle.
* @retval Rx Event Type (return vale will be a value of @ref UART_RxEvent_Type_Values)
*/
HAL_UART_RxEventTypeTypeDef HAL_UARTEx_GetRxEventType(UART_HandleTypeDef *huart)
{
/* Return Rx Event type value, as stored in UART handle */
return (huart->RxEventType);
}
/**
* @}
*/
/**
* @}
*/
/** @addtogroup UARTEx_Private_Functions
* @{
*/
/**
* @brief Initialize the UART wake-up from stop mode parameters when triggered by address detection.
* @param huart UART handle.
* @param WakeUpSelection UART wake up from stop mode parameters.
* @retval None
*/
static void UARTEx_Wakeup_AddressConfig(UART_HandleTypeDef *huart, UART_WakeUpTypeDef WakeUpSelection)
{
assert_param(IS_UART_ADDRESSLENGTH_DETECT(WakeUpSelection.AddressLength));
/* Set the USART address length */
MODIFY_REG(huart->Instance->CR2, USART_CR2_ADDM7, WakeUpSelection.AddressLength);
/* Set the USART address node */
MODIFY_REG(huart->Instance->CR2, USART_CR2_ADD, ((uint32_t)WakeUpSelection.Address << UART_CR2_ADDRESS_LSB_POS));
}
/**
* @}
*/
#endif /* HAL_UART_MODULE_ENABLED */
/**
* @}
*/
/**
* @}
*/

149
Hardware/CHANGELOG.txt Normal file
View File

@ -0,0 +1,149 @@
V0.7.1
MVBMS:
- new outline
- removed UART
- added resistance to DNP resistors for V_{ref}
- LEDs are controlled by PWM
- added PWM for inverters with PWM_INV_COOLING
- added many testpoints
V0.7.2
MV_Abnehmerplatine:
- new outline
- added a second GND and 3V3 pin to the connector
- made sure the pin layout of the connector is equivalent to the one on the MVBMS
- kept the 14 tmp1075 sensors
- finished the layout of the MV-Abnehmerplatine
V0.7.3
MV_Abnehmerplatine:
- rechecked the distance between the traces leading to the battery cells and moved them around accordingly
MVBMS:
- moved RGB LED pins to TIM4 from TIM3
- moved PWM_BAT_COOLING to TIM3CH3
- moved PWM_INV_COOLING to TIM15CH1
- moved 60V_ENABLE to TIM2CH1
- PMEG3015EJ for the CURRENT_MEASUREMENT to prevent reverse voltage
- add an extra connector for the cooling fans that cool the ESCs/inverters
- fixed some traces and some zones
V0.7.4
- added more documentation
MV_Abnehmerplatine:
- aligned the connectors to the MVBMS connector
- slight changes to the outline for the connector
- fixed some zones
MVBMS
- new outline
V0.8.1
new outlines for the MVBMS and Abnehmerplatine
added more photos under documentation
MV_Abnehmerplatine:
- the right side of the PCB is now smaller
MVBMS:
- added a 1MBit I2C EEPROM to save data of the battery#
- combined everything that goes to the ESC into one connector
- both battery cooling fans are now on one connector
- ESC cooling and battery cooling fans can be controlled pwm or voltage controlled
- PRECHARGE and RELAY connectors are now one connector
- renamed PWM_BAT_COOLING to BAT_COOING_PWM
- renamed 60V_ENABLE to BAT_COOING_ENABLE
- renamed PWM_PG_Fan_1/2 to ESC1/2_PWM
- renamed PWM_INV_COOLING to ESC_COOLING_PWM
- added ESC_COOLING_ENABLE for voltage contol of the ESC cooling fans
- connected V_{ref} to GPIO 2 of the ADBMS. With this, it can be detected if the current sensor is recieving enough voltage
- layout:
- Container layout is now better, the connectors have meaningful positions
- moved all connectors to the front including the debug header
V0.9-cable
MV_Abnehmerplatine:
- switch from pads to through holes
- extended the layout to the middle of the busbars for the through holes
V0.9-pogo
MV_Abnehmerplatine:
- first sketch is done
V0.9.1-pogo
- deleted V0.9-cable because the PCB for pogo could also be used with a cable
- fixed up the zones
- 2->4 layers with 2.4mm core and 0.188mm prepreg (increasing the thickness of the copper layers is taken from thickness of the core)
- created a proper symbol and footrint for the 0921-1-15-20-75-14-11-0 which is the one I have decided on
V0.9.2
- added dip switch for open wire detection
- added PMEG3015EJ Diodes to RELAY_ESC/BAT_SIDE to pretect against funny business
V0.9.3
MV_Abnehmerplatine
- new layout: recentered the temperature sensors and pogo pins.
V0.9.4
MVBMS:
- removed screw holes next to the MV_Abnehmerplatine connector
V0.9.5
PCB_review
Schematic:
-MVBMS
- Thermische Berechnung ist worst case scenario, habe da das max von alles genommen für eine Schätzung was da passieren könnte. Die Zahl ist für die PDU.
- WC kann man auf jeden Fall sparen, da werden nur Temperaturen und Spannungen geloggt. keine wichtige Daten
- 1uF auf 100nF für NRST
- für das BMS auf jeden Fall. Für LED vllt schon aber wir haben auch ganz viele bestellt.
- Die Platine sollte da eigentlich da terminieren. DNP ist falsch für alles da
- Kapatizitätberechnung ist auch alt. Bei Balancingwiderstand kann jetzt nichts machen, im Notfall mit Software was machen.
- C19 60V tag ist eher zur orientierun, ich bezweifle das wir überhaupt <100V 10n haben
- R46 sollte entweder 0 ohm oder 1M sein. DNP macht das nicht klar eigentlich
- Serienwiderstand und Pulldown an die Gates eingefügt.
-- Meine Gedanke war schon das etwas Rückwärts fließt bei D20/21. PMEG -> RB751S40T5G Schottky diode
- Strom Sensor kann falcsh gemountet werden und dann geht V_{out} in minus, hier auch schottky
- CURRENT_SENSOR_ON is V_{ref}, geplant war ein offset aber da wirds nix. man könnte es weglassen
- der Precharge Widerstand wird das auf keinem Fall überleben. Das ist nicht so durchgedacht.
Layout:
-MVBMS:
- 3V3 jetzt auf die innere Seite. Nach kurze Überlegung macht es schon Sinn.
- Der Deckel ist viel zu tief hinten bei dem MCU, man kann keine Stecker da packen.
- RGB LED werde ich näher zum MCU bringen man herumschieben.
- Es gibt kein Grund für den L, sieht halt gut aus ig
- Der NRST Kondensator ist jetzt neben dem Quartz
- Die Traces unten werden um 1mm nach oben geschoben
- Lage wechsel wird da gemacht um zu vermeiden, dass die Frontlage zu oft zu trennen. aber jetzt könnt man das machen wenn nur 3V3 auf front und back sind
- Die Traces für Balancingwiderstand auf die Rückseite zu bringen wird jetzt sehr lang dauern. Das hätte ich jetzt ungern gemacht wenn der Unterschied nicht groß ist.
- mit dem LDO und EEPROM auf die linke Seite hat man mehr Platz auf die rechte Seite.
-MV_Abnehmer:
- Beschriftung der Pogopins vergößert
- 2 Lagen habe ich schon hinbekommen, aber um mehr Steifigkeit zu erzielen habe ich 4 Lagen mit fetten Prepregs gemacht.
- Wir werden den PCB mit einem 3D-Teil, was den PCB runten druckt, befestigen. Schrauben sind nicht möglich.
- Die Pogopins sollen mit ~100g runter drucken, man hofft, dass das genug Kraft ist. Filtern werde ich noch in software mal angucken
- Wegen DIP switch: Johnny meinte das Regel macht das explizit, dass wir ein Sensor und ein Spannungabnehmer trennen werden können. Der DIP-Switch sollte zu diesem Zweck passen.
- DIP switch footprint habe ich in mit dem Datenblatt verglichen, das passt. ein richtiges 3D-Model sollte man noch einfügen aber das reicht für die stp export
- Abstand zwischen SDA/SCL und 60V vergrößert
- Planeabstand von Pogopins ist jetzt 1mm
- noch 3V3 vias gestreut. Die muss man aber coaten dann oder?
V0.9.6
MVBMS:
- removed diode from CURRENT_MEASUREMENT
- removed diodes to RELAY_ESC/BAT_SIDE
- 3V3 on Back side, all other layers are GND
MV_Abnehmerplatine:
- Teardrops to the Pogopins
- 2 Layers instead of 4
V1.0.0
MVBMS:
- final touches to the MVBMS
MV_Abnehmerplatine:
- final touches to the MV_Abnehmerplatine

Binary file not shown.

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 94 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 252 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 108 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 37 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 50 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,10 @@
(kicad_sch (version 20230121) (generator eeschema)
(uuid b71f62d6-c9e2-447b-8be5-9a3876817e84)
(paper "A4")
(lib_symbols
)
)

Binary file not shown.

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,55 @@
%TF.GenerationSoftware,KiCad,Pcbnew,8.0.2*%
%TF.CreationDate,2024-06-27T20:49:00+03:00*%
%TF.ProjectId,MVBMS,4d56424d-532e-46b6-9963-61645f706362,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 8.0.2) date 2024-06-27 20:49:00*
%MOMM*%
%LPD*%
G01*
G04 APERTURE LIST*
%ADD10R,1.700000X1.700000*%
%ADD11O,1.700000X1.700000*%
%ADD12C,0.850000*%
%ADD13R,0.550000X1.500000*%
G04 APERTURE END LIST*
D10*
%TO.C,J0*%
X272500000Y-121150000D03*
D11*
X272500000Y-123690000D03*
X272500000Y-126229999D03*
X272500000Y-128770000D03*
X272500000Y-131310000D03*
X272500000Y-133850000D03*
%TD*%
D12*
%TO.C,J1*%
X196510000Y-107700000D03*
X187510000Y-107700000D03*
D13*
X188410000Y-110900000D03*
X188410000Y-107100000D03*
X189210000Y-110900000D03*
X189210000Y-107100000D03*
X190010000Y-110900000D03*
X190010000Y-107100000D03*
X190810000Y-110900000D03*
X190810000Y-107100000D03*
X191610000Y-110900000D03*
X191610000Y-107100000D03*
X192410000Y-110900000D03*
X192410000Y-107100000D03*
X193210000Y-110900000D03*
X193210000Y-107100000D03*
X194010000Y-110900000D03*
X194010000Y-107100000D03*
X194810000Y-110900000D03*
X194810000Y-107100000D03*
X195610000Y-110900000D03*
X195610000Y-107100000D03*
%TD*%
M02*

View File

@ -0,0 +1,39 @@
%TF.GenerationSoftware,KiCad,Pcbnew,8.0.2*%
%TF.CreationDate,2024-06-27T20:49:00+03:00*%
%TF.ProjectId,MVBMS,4d56424d-532e-46b6-9963-61645f706362,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 8.0.2) date 2024-06-27 20:49:00*
%MOMM*%
%LPD*%
G01*
G04 APERTURE LIST*
%ADD10R,0.550000X1.500000*%
G04 APERTURE END LIST*
D10*
%TO.C,J1*%
X188410000Y-110900000D03*
X188410000Y-107100000D03*
X189210000Y-110900000D03*
X189210000Y-107100000D03*
X190010000Y-110900000D03*
X190010000Y-107100000D03*
X190810000Y-110900000D03*
X190810000Y-107100000D03*
X191610000Y-110900000D03*
X191610000Y-107100000D03*
X192410000Y-110900000D03*
X192410000Y-107100000D03*
X193210000Y-110900000D03*
X193210000Y-107100000D03*
X194010000Y-110900000D03*
X194010000Y-107100000D03*
X194810000Y-110900000D03*
X194810000Y-107100000D03*
X195610000Y-110900000D03*
X195610000Y-107100000D03*
%TD*%
M02*

View File

@ -0,0 +1,109 @@
%TF.GenerationSoftware,KiCad,Pcbnew,8.0.2*%
%TF.CreationDate,2024-06-27T20:49:00+03:00*%
%TF.ProjectId,MVBMS,4d56424d-532e-46b6-9963-61645f706362,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 8.0.2) date 2024-06-27 20:49:00*
%MOMM*%
%LPD*%
G01*
G04 APERTURE LIST*
%ADD10C,0.254000*%
%ADD11C,0.100000*%
%ADD12C,0.200000*%
%ADD13R,1.700000X1.700000*%
%ADD14O,1.700000X1.700000*%
%ADD15C,0.850000*%
%ADD16R,0.550000X1.500000*%
G04 APERTURE END LIST*
D10*
X192433332Y-108579318D02*
X192433332Y-109486461D01*
X192433332Y-109486461D02*
X192493809Y-109667889D01*
X192493809Y-109667889D02*
X192614761Y-109788842D01*
X192614761Y-109788842D02*
X192796190Y-109849318D01*
X192796190Y-109849318D02*
X192917142Y-109849318D01*
X191163332Y-109849318D02*
X191889047Y-109849318D01*
X191526190Y-109849318D02*
X191526190Y-108579318D01*
X191526190Y-108579318D02*
X191647142Y-108760746D01*
X191647142Y-108760746D02*
X191768094Y-108881699D01*
X191768094Y-108881699D02*
X191889047Y-108942175D01*
D11*
%TO.C,J1*%
X187210000Y-108500000D02*
X187210000Y-110000000D01*
X187210000Y-110000000D02*
X188010000Y-110600000D01*
D12*
X187710000Y-111100000D02*
X187710000Y-111100000D01*
X187710000Y-111300000D02*
X187710000Y-111300000D01*
D11*
X196510000Y-110600000D02*
X196810000Y-110600000D01*
X196810000Y-110600000D02*
X196810000Y-108500000D01*
D12*
X187710000Y-111100000D02*
G75*
G02*
X187710000Y-111300000I0J-100000D01*
G01*
X187710000Y-111300000D02*
G75*
G02*
X187710000Y-111100000I0J100000D01*
G01*
%TD*%
%LPC*%
D13*
%TO.C,J0*%
X272500000Y-121150000D03*
D14*
X272500000Y-123690000D03*
X272500000Y-126229999D03*
X272500000Y-128770000D03*
X272500000Y-131310000D03*
X272500000Y-133850000D03*
%TD*%
D15*
%TO.C,J1*%
X196510000Y-107700000D03*
X187510000Y-107700000D03*
D16*
X188410000Y-110900000D03*
X188410000Y-107100000D03*
X189210000Y-110900000D03*
X189210000Y-107100000D03*
X190010000Y-110900000D03*
X190010000Y-107100000D03*
X190810000Y-110900000D03*
X190810000Y-107100000D03*
X191610000Y-110900000D03*
X191610000Y-107100000D03*
X192410000Y-110900000D03*
X192410000Y-107100000D03*
X193210000Y-110900000D03*
X193210000Y-107100000D03*
X194010000Y-110900000D03*
X194010000Y-107100000D03*
X194810000Y-110900000D03*
X194810000Y-107100000D03*
X195610000Y-110900000D03*
X195610000Y-107100000D03*
%TD*%
%LPD*%
M02*

View File

@ -0,0 +1,182 @@
%TF.GenerationSoftware,KiCad,Pcbnew,8.0.2*%
%TF.CreationDate,2024-06-27T20:49:00+03:00*%
%TF.ProjectId,MVBMS,4d56424d-532e-46b6-9963-61645f706362,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 8.0.2) date 2024-06-27 20:49:00*
%MOMM*%
%LPD*%
G01*
G04 APERTURE LIST*
%TA.AperFunction,Profile*%
%ADD10C,0.200000*%
%TD*%
G04 APERTURE END LIST*
D10*
X287172645Y-145792153D02*
G75*
G02*
X288192538Y-143538462I2999855J53D01*
G01*
X284416395Y-181667352D02*
G75*
G02*
X281416395Y-184667395I-2999995J-48D01*
G01*
X287516397Y-167500686D02*
G75*
G02*
X284116395Y-167500686I-1700001J0D01*
G01*
X284116395Y-167500686D02*
G75*
G02*
X287516397Y-167500686I1700001J0D01*
G01*
X173732961Y-113288711D02*
G75*
G02*
X171616080Y-114157778I-2107761J2121411D01*
G01*
X288192532Y-164796250D02*
G75*
G02*
X287172658Y-162542553I1980268J2253750D01*
G01*
X286689122Y-137341406D02*
G75*
G02*
X288192512Y-143538432I-872722J-3492594D01*
G01*
X104416394Y-140834020D02*
G75*
G02*
X101016394Y-140834020I-1700000J0D01*
G01*
X101016394Y-140834020D02*
G75*
G02*
X104416394Y-140834020I1700000J0D01*
G01*
X104116396Y-181667352D02*
X104116394Y-173903811D01*
X104416299Y-167500735D02*
G75*
G02*
X101016299Y-167500735I-1700000J0D01*
G01*
X101016299Y-167500735D02*
G75*
G02*
X104416299Y-167500735I1700000J0D01*
G01*
X212410000Y-114167398D02*
G75*
G02*
X210289730Y-113284466I5300J2999998D01*
G01*
X284416396Y-134430895D02*
X284416396Y-117167352D01*
X173732962Y-113288712D02*
X181395596Y-105626078D01*
X281416394Y-114167353D02*
G75*
G02*
X284416347Y-117167354I6J-2999947D01*
G01*
X100207211Y-143415630D02*
G75*
G02*
X101843574Y-137341451I2509069J2581570D01*
G01*
X104116394Y-134430895D02*
G75*
G02*
X101843686Y-137341480I-3000094J-5D01*
G01*
X104116395Y-117167352D02*
X104116394Y-134430895D01*
X200510000Y-104747401D02*
X183510000Y-104747401D01*
X101116301Y-145566931D02*
X101116301Y-162767956D01*
X200510000Y-104747401D02*
G75*
G02*
X202631297Y-105626116I-100J-3000099D01*
G01*
X287516397Y-140834019D02*
G75*
G02*
X284116395Y-140834019I-1700001J0D01*
G01*
X284116395Y-140834019D02*
G75*
G02*
X287516397Y-140834019I1700001J0D01*
G01*
X181395596Y-105626078D02*
G75*
G02*
X183510000Y-104747389I2121304J-2121222D01*
G01*
X171616080Y-114157741D02*
X107116395Y-114167353D01*
X104116396Y-117167353D02*
G75*
G02*
X107116395Y-114167396I2999904J53D01*
G01*
X101843668Y-170993299D02*
G75*
G02*
X104116410Y-173903811I-727368J-2910601D01*
G01*
X284416396Y-173903810D02*
G75*
G02*
X286689137Y-170993360I2999904J10D01*
G01*
X281416394Y-114167353D02*
X212410000Y-114167399D01*
X210289718Y-113284478D02*
X202631328Y-105626085D01*
X107116395Y-184667351D02*
G75*
G02*
X104116449Y-181667352I5J2999951D01*
G01*
X107116395Y-184667353D02*
X281416395Y-184667353D01*
X287172645Y-162542553D02*
X287172645Y-145792153D01*
X286689122Y-137341407D02*
G75*
G02*
X284416381Y-134430895I727378J2910607D01*
G01*
X100207211Y-143415630D02*
G75*
G02*
X101116309Y-145566931I-2090811J-2151270D01*
G01*
X101843668Y-170993299D02*
G75*
G02*
X100207322Y-164919143I872732J3492599D01*
G01*
X284416395Y-181667352D02*
X284416396Y-173903810D01*
X101116301Y-162767956D02*
G75*
G02*
X100207203Y-164919166I-2999901J56D01*
G01*
X288192532Y-164796250D02*
G75*
G02*
X286689117Y-170993280I-2376032J-2704450D01*
G01*
M02*

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

View File

@ -0,0 +1,17 @@
M48
; DRILL file {KiCad 8.0.2} date 2024-06-27T20:49:01+0300
; FORMAT={-:-/ absolute / inch / decimal}
; #@! TF.CreationDate,2024-06-27T20:49:01+03:00
; #@! TF.GenerationSoftware,Kicad,Pcbnew,8.0.2
; #@! TF.FileFunction,NonPlated,1,4,NPTH
FMAT,2
INCH
; #@! TA.AperFunction,NonPlated,NPTH,ComponentDrill
T1C0.0335
%
G90
G05
T1
X7.3823Y-4.2402
X7.7366Y-4.2402
M30

View File

@ -0,0 +1,400 @@
M48
; DRILL file {KiCad 8.0.2} date 2024-06-27T20:49:01+0300
; FORMAT={-:-/ absolute / inch / decimal}
; #@! TF.CreationDate,2024-06-27T20:49:01+03:00
; #@! TF.GenerationSoftware,Kicad,Pcbnew,8.0.2
; #@! TF.FileFunction,Plated,1,4,PTH
FMAT,2
INCH
; #@! TA.AperFunction,Plated,PTH,ViaDrill
T1C0.0157
; #@! TA.AperFunction,Plated,PTH,ComponentDrill
T2C0.0157
; #@! TA.AperFunction,Plated,PTH,ComponentDrill
T3C0.0394
%
G90
G05
T1
X4.1339Y-4.7244
X4.1339Y-5.1181
X4.1339Y-5.5118
X4.1339Y-5.9055
X4.1339Y-6.2992
X4.1339Y-7.0866
X4.3268Y-4.6811
X4.3307Y-4.5276
X4.3307Y-4.9213
X4.3307Y-5.315
X4.3307Y-5.7087
X4.3307Y-6.1024
X4.3307Y-6.4961
X4.3307Y-6.8898
X4.4193Y-4.8438
X4.5276Y-4.7244
X4.5276Y-5.1181
X4.5276Y-5.5118
X4.5276Y-5.9055
X4.5276Y-6.2992
X4.5276Y-6.6929
X4.5276Y-7.0866
X4.6063Y-4.6831
X4.6181Y-5.2965
X4.7244Y-4.5276
X4.7244Y-4.9213
X4.7244Y-5.315
X4.7244Y-5.7087
X4.7244Y-6.1024
X4.7244Y-6.4961
X4.7244Y-6.8898
X4.7574Y-4.7398
X4.8831Y-5.1972
X4.9213Y-5.5118
X4.9213Y-5.9055
X4.9213Y-6.2992
X4.9213Y-6.6929
X4.9213Y-7.0866
X5.019Y-4.8841
X5.0865Y-5.2243
X5.1181Y-4.5276
X5.1181Y-5.315
X5.1181Y-5.7087
X5.1181Y-6.1024
X5.1181Y-6.4961
X5.1181Y-6.8898
X5.1657Y-5.1544
X5.2173Y-4.7252
X5.315Y-5.9055
X5.315Y-6.2992
X5.315Y-6.6929
X5.315Y-7.0866
X5.3323Y-5.3897
X5.3949Y-4.7953
X5.5118Y-4.5276
X5.5118Y-5.7087
X5.5118Y-6.1024
X5.5118Y-6.4961
X5.5118Y-6.8898
X5.5141Y-5.3897
X5.5547Y-5.15
X5.5548Y-5.1969
X5.5717Y-4.7685
X5.7087Y-5.5118
X5.7087Y-5.9055
X5.7087Y-6.2992
X5.7087Y-6.6929
X5.7087Y-7.0866
X5.7472Y-5.6433
X5.7729Y-4.8841
X5.8866Y-5.3693
X5.9055Y-4.5276
X5.9055Y-5.7087
X5.9055Y-6.1024
X5.9055Y-6.4961
X5.9055Y-6.8898
X5.9792Y-4.9084
X5.9921Y-5.2575
X6.1024Y-5.5118
X6.1024Y-5.9055
X6.1024Y-6.2992
X6.1024Y-6.6929
X6.1024Y-7.0866
X6.1398Y-5.6815
X6.1972Y-5.912
X6.252Y-5.1496
X6.252Y-5.1972
X6.2543Y-5.9706
X6.2598Y-5.4797
X6.2992Y-4.5276
X6.2992Y-5.315
X6.2992Y-5.7087
X6.2992Y-6.1024
X6.2992Y-6.4961
X6.2992Y-6.8898
X6.365Y-7.1358
X6.3855Y-7.1694
X6.4245Y-7.1644
X6.4299Y-5.6902
X6.435Y-4.7764
X6.4698Y-7.1289
X6.4961Y-4.7244
X6.4961Y-6.2992
X6.4961Y-6.6929
X6.4961Y-7.0866
X6.5718Y-5.3749
X6.659Y-5.747
X6.6708Y-5.7095
X6.6929Y-4.5276
X6.7696Y-5.4665
X6.8898Y-7.0866
X6.9059Y-6.3484
X6.9124Y-6.4813
X6.9183Y-6.1614
X6.9488Y-6.0807
X6.9498Y-6.753
X6.9764Y-4.9213
X6.9902Y-6.7815
X7.0098Y-5.9685
X7.0098Y-6.0837
X7.0406Y-4.4037
X7.0807Y-5.8366
X7.0866Y-4.5276
X7.0866Y-4.9213
X7.0866Y-6.8898
X7.125Y-6.4833
X7.1634Y-6.5394
X7.1644Y-6.2963
X7.1722Y-6.3789
X7.1722Y-6.4498
X7.1758Y-6.8742
X7.1758Y-6.9146
X7.1758Y-6.9549
X7.2067Y-6.8244
X7.2195Y-6.4154
X7.2234Y-6.2884
X7.2352Y-6.7327
X7.2531Y-6.1996
X7.2835Y-4.185
X7.2972Y-6.872
X7.3413Y-6.6776
X7.3445Y-6.0522
X7.3457Y-5.7917
X7.3476Y-4.622
X7.3573Y-6.3848
X7.376Y-6.5029
X7.3815Y-6.5614
X7.3848Y-6.3553
X7.3886Y-4.663
X7.3927Y-6.875
X7.3953Y-6.2457
X7.3965Y-6.2042
X7.3983Y-6.0837
X7.4268Y-5.9616
X7.4291Y-4.7034
X7.4327Y-4.2709
X7.4335Y-4.4189
X7.4698Y-4.7442
X7.4713Y-5.7898
X7.4807Y-4.305
X7.4862Y-6.0915
X7.4968Y-6.2136
X7.4971Y-6.6083
X7.5101Y-4.7845
X7.5122Y-4.2724
X7.5362Y-6.2136
X7.5437Y-4.1626
X7.5669Y-6.0449
X7.5752Y-4.2724
X7.6067Y-4.1626
X7.6225Y-4.8971
X7.6287Y-6.8752
X7.6348Y-6.2136
X7.6382Y-4.2728
X7.6604Y-5.7963
X7.6693Y-4.8504
X7.6697Y-4.1626
X7.6939Y-6.1964
X7.6993Y-5.9379
X7.7121Y-4.8076
X7.7234Y-5.7963
X7.7279Y-5.9902
X7.7357Y-6.8312
X7.7358Y-4.1626
X7.7564Y-5.9278
X7.7657Y-6.2274
X7.7701Y-6.8597
X7.8504Y-5.7963
X7.864Y-6.1291
X7.8701Y-4.185
X7.874Y-4.5276
X7.874Y-6.8898
X7.9154Y-5.7963
X7.9754Y-6.0443
X7.9973Y-6.3767
X8.0069Y-6.4341
X8.0098Y-5.939
X8.0187Y-6.4931
X8.0541Y-6.3474
X8.0551Y-6.2961
X8.0709Y-4.3307
X8.1152Y-6.5659
X8.2589Y-6.3474
X8.2598Y-6.4102
X8.2677Y-4.5276
X8.2677Y-5.315
X8.2677Y-6.4951
X8.2677Y-6.8898
X8.2969Y-4.7929
X8.3209Y-6.4146
X8.4453Y-6.6846
X8.4646Y-4.7244
X8.4646Y-5.5118
X8.528Y-5.6138
X8.6283Y-6.2512
X8.6496Y-5.3898
X8.6614Y-4.5276
X8.6614Y-6.8898
X8.6969Y-4.8339
X8.7146Y-5.8622
X8.7823Y-6.5583
X8.8094Y-6.2945
X8.815Y-5.6142
X8.8583Y-5.9055
X8.8583Y-6.6929
X8.929Y-5.5698
X9.0551Y-4.5276
X9.0551Y-6.1024
X9.0551Y-6.4961
X9.0551Y-6.8898
X9.076Y-5.5807
X9.0939Y-4.9797
X9.0941Y-5.0376
X9.1764Y-4.7766
X9.252Y-5.9055
X9.252Y-6.2992
X9.252Y-6.6929
X9.253Y-5.806
X9.2967Y-5.1368
X9.3012Y-5.6935
X9.3213Y-5.5768
X9.3724Y-5.598
X9.4Y-5.1803
X9.4488Y-4.5276
X9.4488Y-5.7087
X9.4488Y-6.1024
X9.4488Y-6.4961
X9.4488Y-6.8898
X9.4498Y-5.2541
X9.4508Y-4.8339
X9.4551Y-4.9102
X9.5079Y-6.4409
X9.5154Y-5.4264
X9.5414Y-6.4124
X9.5449Y-6.8242
X9.5527Y-5.1445
X9.6457Y-5.1181
X9.6457Y-5.5118
X9.6457Y-5.9055
X9.6457Y-6.2992
X9.7139Y-6.6113
X9.7385Y-6.2924
X9.764Y-5.9954
X9.8096Y-5.5677
X9.8096Y-5.6071
X9.8425Y-4.5276
X9.8425Y-5.315
X9.8425Y-6.1024
X9.8425Y-6.4961
X9.8425Y-6.8898
X9.8528Y-4.978
X9.8701Y-6.6112
X9.8852Y-6.8242
X9.8856Y-6.7742
X9.89Y-6.7242
X10.0301Y-5.5677
X10.0301Y-5.6071
X10.0394Y-4.7244
X10.0394Y-5.1181
X10.0394Y-5.5118
X10.0394Y-6.8898
X10.1073Y-4.7892
X10.1091Y-5.9406
X10.1191Y-6.1764
X10.1323Y-6.6535
X10.135Y-6.4124
X10.151Y-6.2049
X10.1545Y-4.7892
X10.1791Y-6.3661
X10.2362Y-4.5276
X10.2362Y-5.315
X10.2362Y-5.7087
X10.2362Y-6.1024
X10.2362Y-6.4961
X10.2362Y-6.8898
X10.2528Y-4.9122
X10.3281Y-6.645
X10.3425Y-4.7953
X10.3516Y-6.4593
X10.3618Y-6.1719
X10.3957Y-5.8799
X10.4037Y-6.8307
X10.4117Y-6.2292
X10.4331Y-4.7244
X10.4331Y-5.1181
X10.4346Y-6.5579
X10.4602Y-6.1343
X10.4646Y-6.2644
X10.4681Y-6.3154
X10.5023Y-6.4686
X10.505Y-6.4294
X10.5066Y-6.2484
X10.5085Y-5.9291
X10.524Y-6.3664
X10.5339Y-5.3224
X10.5339Y-5.7308
X10.5811Y-6.7421
X10.585Y-6.3602
X10.6136Y-6.4531
X10.6299Y-4.5276
X10.6299Y-4.9213
X10.6299Y-5.315
X10.6366Y-6.2622
X10.6492Y-6.4364
X10.656Y-5.8422
X10.6564Y-5.9446
X10.6827Y-6.4697
X10.6834Y-6.2506
X10.6926Y-6.293
X10.7112Y-6.813
X10.7134Y-6.5445
X10.7632Y-6.0896
X10.7902Y-6.3126
X10.8242Y-6.0906
X10.8252Y-6.2736
X10.8268Y-4.7244
X10.8268Y-5.1181
X10.8268Y-5.5118
X10.8268Y-5.9055
X11.0236Y-4.5276
X11.0236Y-4.9213
X11.0236Y-5.315
X11.0236Y-5.7087
X11.0236Y-6.1024
X11.0236Y-6.4961
X11.0236Y-6.8898
X11.2205Y-5.9055
X11.2205Y-6.2992
T2
X7.4715Y-6.3199
X7.4715Y-6.3671
X7.4715Y-6.4144
X7.4715Y-6.4616
X7.4715Y-6.5089
X7.5187Y-6.3199
X7.5187Y-6.3671
X7.5187Y-6.4144
X7.5187Y-6.4616
X7.5187Y-6.5089
X7.5659Y-6.3199
X7.5659Y-6.3671
X7.5659Y-6.4144
X7.5659Y-6.4616
X7.5659Y-6.5089
X7.6132Y-6.3199
X7.6132Y-6.3671
X7.6132Y-6.4144
X7.6132Y-6.4616
X7.6132Y-6.5089
X7.6604Y-6.3199
X7.6604Y-6.3671
X7.6604Y-6.4144
X7.6604Y-6.4616
X7.6604Y-6.5089
T3
X10.7283Y-4.7697
X10.7283Y-4.8697
X10.7283Y-4.9697
X10.7283Y-5.0697
X10.7283Y-5.1697
X10.7283Y-5.2697
M30

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

82584
Hardware/MVBMS/MVBMS.kicad_pcb Normal file

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,854 @@
{
"board": {
"3dviewports": [],
"design_settings": {
"defaults": {
"apply_defaults_to_fp_fields": false,
"apply_defaults_to_fp_shapes": false,
"apply_defaults_to_fp_text": false,
"board_outline_line_width": 0.1,
"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": false,
"text_position": 0,
"units_format": 1
},
"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.15,
"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": 0.0,
"height": 5.2,
"width": 1.15
},
"silk_line_width": 0.15,
"silk_text_italic": false,
"silk_text_size_h": 1.0,
"silk_text_size_v": 1.0,
"silk_text_thickness": 0.15,
"silk_text_upright": false,
"zones": {
"min_clearance": 0.5
}
},
"diff_pair_dimensions": [
{
"gap": 0.0,
"via_gap": 0.0,
"width": 0.0
}
],
"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",
"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_symbol_mismatch": "warning",
"footprint_type_mismatch": "ignore",
"hole_clearance": "error",
"hole_near_hole": "error",
"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",
"missing_courtyard": "ignore",
"missing_footprint": "warning",
"net_conflict": "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_thickness": "warning",
"through_hole_pad_without_hole": "error",
"too_many_vias": "error",
"track_dangling": "warning",
"track_width": "error",
"tracks_crossing": "error",
"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.3,
"min_hole_clearance": 0.25,
"min_hole_to_hole": 0.25,
"min_microvia_diameter": 0.2,
"min_microvia_drill": 0.1,
"min_resolved_spokes": 1,
"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_clearance": 0.0,
"solder_mask_min_width": 0.0,
"solder_mask_to_copper_clearance": 0.0,
"use_height_for_length_calcs": true
},
"teardrop_options": [
{
"td_onpadsmd": true,
"td_onroundshapesonly": false,
"td_ontrackend": false,
"td_onviapad": 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.25,
0.5,
1.0,
1.5
],
"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
},
"ipc2581": {
"dist": "",
"distpn": "",
"internal_id": "",
"mfg": "",
"mpn": ""
},
"layer_presets": [],
"viewports": []
},
"boards": [],
"cvpcb": {
"equivalence_files": []
},
"erc": {
"erc_exclusions": [],
"meta": {
"version": 0
},
"pin_map": [
[
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
2
],
[
0,
2,
0,
1,
0,
0,
1,
0,
2,
2,
2,
2
],
[
0,
0,
0,
0,
0,
0,
1,
0,
1,
0,
1,
2
],
[
0,
1,
0,
0,
0,
0,
1,
1,
2,
1,
1,
2
],
[
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
2
],
[
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2
],
[
1,
1,
1,
1,
1,
0,
1,
1,
1,
1,
1,
2
],
[
0,
0,
0,
1,
0,
0,
1,
0,
0,
0,
0,
2
],
[
0,
2,
1,
2,
0,
0,
1,
0,
2,
2,
2,
2
],
[
0,
2,
0,
1,
0,
0,
1,
0,
2,
0,
0,
2
],
[
0,
2,
1,
1,
0,
0,
1,
0,
2,
0,
0,
2
],
[
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2
]
],
"rule_severities": {
"bus_definition_conflict": "error",
"bus_entry_needed": "error",
"bus_to_bus_conflict": "error",
"bus_to_net_conflict": "error",
"conflicting_netclasses": "error",
"different_unit_footprint": "error",
"different_unit_net": "error",
"duplicate_reference": "error",
"duplicate_sheet_names": "error",
"endpoint_off_grid": "warning",
"extra_units": "error",
"global_label_dangling": "warning",
"hier_label_mismatch": "error",
"label_dangling": "error",
"lib_symbol_issues": "warning",
"missing_bidi_pin": "warning",
"missing_input_pin": "warning",
"missing_power_pin": "error",
"missing_unit": "warning",
"multiple_net_names": "warning",
"net_not_bus_member": "warning",
"no_connect_connected": "warning",
"no_connect_dangling": "warning",
"pin_not_connected": "error",
"pin_not_driven": "error",
"pin_to_pin": "error",
"power_pin_not_driven": "error",
"similar_labels": "warning",
"simulation_model_issue": "ignore",
"unannotated": "error",
"unit_value_mismatch": "error",
"unresolved_variable": "error",
"wire_dangling": "error"
}
},
"libraries": {
"pinned_footprint_libs": [
"MVBMS",
"ADBMS6830",
"FaSTTUBe_connectors",
"FaSTTUBe_logos",
"FaSTTUBe_connectors_3dmodels"
],
"pinned_symbol_libs": [
"ADBMS6830B",
"FaSTTUBe_connectors",
"Miro-Mate-N-Lok ",
"MVBMS"
]
},
"meta": {
"filename": "MVBMS.kicad_pro",
"version": 1
},
"net_settings": {
"classes": [
{
"bus_width": 12,
"clearance": 0.2,
"diff_pair_gap": 0.25,
"diff_pair_via_gap": 0.25,
"diff_pair_width": 0.2,
"line_style": 0,
"microvia_diameter": 0.3,
"microvia_drill": 0.1,
"name": "Default",
"pcb_color": "rgba(0, 0, 0, 0.000)",
"schematic_color": "rgba(0, 0, 0, 0.000)",
"track_width": 0.25,
"via_diameter": 0.8,
"via_drill": 0.4,
"wire_width": 6
},
{
"bus_width": 12,
"clearance": 0.2,
"diff_pair_gap": 0.25,
"diff_pair_via_gap": 0.25,
"diff_pair_width": 0.2,
"line_style": 0,
"microvia_diameter": 0.3,
"microvia_drill": 0.1,
"name": "+12V",
"pcb_color": "rgba(0, 0, 0, 0.000)",
"schematic_color": "rgb(0, 0, 132)",
"track_width": 0.25,
"via_diameter": 0.8,
"via_drill": 0.4,
"wire_width": 6
},
{
"bus_width": 12,
"clearance": 0.2,
"diff_pair_gap": 0.25,
"diff_pair_via_gap": 0.25,
"diff_pair_width": 0.2,
"line_style": 0,
"microvia_diameter": 0.3,
"microvia_drill": 0.1,
"name": "+3V3",
"pcb_color": "rgba(0, 0, 0, 0.000)",
"schematic_color": "rgb(0, 255, 255)",
"track_width": 0.25,
"via_diameter": 0.8,
"via_drill": 0.4,
"wire_width": 6
},
{
"bus_width": 12,
"clearance": 0.2,
"diff_pair_gap": 0.25,
"diff_pair_via_gap": 0.25,
"diff_pair_width": 0.2,
"line_style": 0,
"microvia_diameter": 0.3,
"microvia_drill": 0.1,
"name": "+5V",
"pcb_color": "rgba(0, 0, 0, 0.000)",
"schematic_color": "rgb(0, 0, 255)",
"track_width": 0.25,
"via_diameter": 0.8,
"via_drill": 0.4,
"wire_width": 6
},
{
"bus_width": 12,
"clearance": 0.6,
"diff_pair_gap": 0.25,
"diff_pair_via_gap": 0.25,
"diff_pair_width": 0.2,
"line_style": 0,
"microvia_diameter": 0.3,
"microvia_drill": 0.1,
"name": "+60V",
"pcb_color": "rgba(0, 0, 0, 0.000)",
"schematic_color": "rgb(255, 0, 0)",
"track_width": 1.0,
"via_diameter": 0.8,
"via_drill": 0.4,
"wire_width": 20
}
],
"meta": {
"version": 3
},
"net_colors": null,
"netclass_assignments": {
"+12V": "+12V",
"/Battery_Management_System_Right/Filter_Balancing_Block_6/C(n+1)_in": "+60V",
"/Input_Output/60V_INV": "+60V",
"/Input_Output/BATT_FAN_POWER": "+60V",
"/Input_Output/BAT_FAN_POWER": "+60V",
"/Input_Output/BAT_PWR": "+60V",
"/Input_Output/INV_PWR": "+60V",
"/Input_Output/RELAY_BATT_SIDE": "+60V",
"/Input_Output/RELAY_BAT_SIDE": "+60V",
"/Input_Output/RELAY_DRAIN": "+12V",
"/Input_Output/RELAY_ESC_SIDE": "+60V",
"Net-(D1-K)": "+12V",
"Net-(D2-K)": "+12V",
"Net-(D301-K)": "+12V",
"Net-(J3-Pin_1)": "+60V",
"Net-(J3-Pin_19)": "+60V",
"Net-(Q0-C)": "+60V",
"Net-(Q1-C)": "+60V",
"Net-(Q501-C)": "+60V",
"Net-(R30-Pad2)": "+60V",
"Net-(R38-Pad2)": "+60V",
"Net-(R41-Pad2)": "+60V",
"Net-(R45-Pad2)": "+60V",
"Net-(R619-Pad2)": "+60V"
},
"netclass_patterns": [
{
"netclass": "+60V",
"pattern": "/Battery_Management_System/60V_Battery_Cooling"
},
{
"netclass": "+12V",
"pattern": "+12V"
},
{
"netclass": "+3V3",
"pattern": "+3V3"
},
{
"netclass": "+60V",
"pattern": "+BATT"
},
{
"netclass": "+5V",
"pattern": "+5V"
},
{
"netclass": "+60V",
"pattern": "/Input_Output/RELAY+"
},
{
"netclass": "+60V",
"pattern": "/Input_Output/RELAY-"
}
]
},
"pcbnew": {
"last_paths": {
"gencad": "",
"idf": "",
"netlist": "../../../",
"plot": "./FT24_MVBMS_V1",
"pos_files": "",
"specctra_dsn": "",
"step": "../stp/MVBMS.step",
"svg": "../../03 Modul und Praktikum Anforderungen/AMS Master/",
"vrml": ""
},
"page_layout_descr_file": ""
},
"schematic": {
"annotate_start_num": -1,
"bom_export_filename": "",
"bom_fmt_presets": [],
"bom_fmt_settings": {
"field_delimiter": ",",
"keep_line_breaks": false,
"keep_tabs": false,
"name": "CSV",
"ref_delimiter": ",",
"ref_range_delimiter": "",
"string_delimiter": "\""
},
"bom_presets": [],
"bom_settings": {
"exclude_dnp": false,
"fields_ordered": [
{
"group_by": false,
"label": "Reference",
"name": "Reference",
"show": true
},
{
"group_by": false,
"label": "Value",
"name": "Value",
"show": true
},
{
"group_by": true,
"label": "Datasheet",
"name": "Datasheet",
"show": true
},
{
"group_by": true,
"label": "Footprint",
"name": "Footprint",
"show": true
},
{
"group_by": false,
"label": "Qty",
"name": "${QUANTITY}",
"show": true
},
{
"group_by": true,
"label": "DNP",
"name": "${DNP}",
"show": true
},
{
"group_by": false,
"label": "#",
"name": "${ITEM_NUMBER}",
"show": false
},
{
"group_by": false,
"label": "Silkscreen",
"name": "Silkscreen",
"show": false
},
{
"group_by": false,
"label": "Voltage",
"name": "Voltage",
"show": false
},
{
"group_by": true,
"label": "Description",
"name": "Description",
"show": true
},
{
"group_by": false,
"label": "Siklscreen",
"name": "Siklscreen",
"show": false
},
{
"group_by": false,
"label": "Silkscreen ",
"name": "Silkscreen ",
"show": false
},
{
"group_by": false,
"label": "Mouser Part Number",
"name": "Mouser Part Number",
"show": false
},
{
"group_by": false,
"label": "Height",
"name": "Height",
"show": false
},
{
"group_by": false,
"label": "Mouser Price/Stock",
"name": "Mouser Price/Stock",
"show": false
},
{
"group_by": false,
"label": "Manufacturer_Name",
"name": "Manufacturer_Name",
"show": false
},
{
"group_by": false,
"label": "Manufacturer_Part_Number",
"name": "Manufacturer_Part_Number",
"show": false
}
],
"filter_string": "",
"group_symbols": true,
"name": "",
"sort_asc": true,
"sort_field": "Reference"
},
"connection_grid_size": 25.0,
"drawing": {
"dashed_lines_dash_length_ratio": 12.0,
"dashed_lines_gap_length_ratio": 3.0,
"default_line_thickness": 6.0,
"default_text_size": 50.0,
"field_names": [],
"intersheets_ref_own_page": false,
"intersheets_ref_prefix": "",
"intersheets_ref_short": false,
"intersheets_ref_show": false,
"intersheets_ref_suffix": "",
"junction_size_choice": 3,
"label_size_ratio": 0.375,
"operating_point_overlay_i_precision": 3,
"operating_point_overlay_i_range": "~A",
"operating_point_overlay_v_precision": 3,
"operating_point_overlay_v_range": "~V",
"overbar_offset_ratio": 1.23,
"pin_symbol_size": 25.0,
"text_offset_ratio": 0.15
},
"legacy_lib_dir": "",
"legacy_lib_list": [],
"meta": {
"version": 1
},
"net_format_name": "",
"ngspice": {
"fix_include_paths": true,
"meta": {
"version": 0
},
"model_mode": 4,
"workbook_filename": ""
},
"page_layout_descr_file": "",
"plot_directory": "/home/h/FASTTUBE/03 Modul und Praktikum Anforderungen/MVBMS/",
"spice_current_sheet_as_root": false,
"spice_external_command": "spice \"%I\"",
"spice_model_current_sheet_as_root": true,
"spice_save_all_currents": false,
"spice_save_all_dissipations": false,
"spice_save_all_voltages": false,
"subpart_first_id": 65,
"subpart_id_separator": 0
},
"sheets": [
[
"7e6153c6-9bda-478e-a814-ab2130d6c479",
"Root"
],
[
"c9c61e68-b415-4cd1-882c-ffe913533997",
"Microcontroller"
],
[
"a15ada93-d3d4-4dc4-a3e7-664c5bba6d41",
"Power_Supply"
],
[
"f78e2f7e-5dea-4de6-be8c-813a31e136da",
"CAN_Transciever"
],
[
"5c4ab000-5b73-458c-85e4-49b563e24c72",
"Battery_Management_System"
],
[
"230d2be7-f68c-4d0a-bb36-39424b7f609b",
"Input_Output"
],
[
"ef122dd3-ec3a-4fe5-98d9-bbcf7a17067b",
"Filter_Balancing_Block_0"
],
[
"b088ead5-22e9-445a-897b-39fbed6139f6",
"Filter_Balancing_Block_1"
],
[
"458d4207-fefc-4779-95b1-966ac10aface",
"Filter_Balancing_Block_2"
],
[
"790887f9-2db8-4013-85b9-20f4a01af52f",
"Filter_Balancing_Block_3"
],
[
"799f3587-c9a7-4979-9015-70b92dd94513",
"Filter_Balancing_Block_4"
],
[
"75e7db4d-fdfc-42ae-8d7d-3c3b4b4021b1",
"Filter_Balancing_Block_5"
]
],
"text_variables": {}
}

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

View File

@ -0,0 +1,10 @@
(kicad_sch (version 20230121) (generator eeschema)
(uuid eb0f9da5-42ca-4076-a8ed-09f8a8ae8445)
(paper "A4")
(lib_symbols
)
)

View File

@ -0,0 +1,10 @@
(kicad_sch (version 20230121) (generator eeschema)
(uuid cfc34414-6c5e-4e59-bab1-4170779e2a4b)
(paper "A5")
(lib_symbols
)
)

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

View File

@ -0,0 +1,124 @@
(footprint "M8_718_4pin_horizontal"
(version 20240108)
(generator "pcbnew")
(generator_version "8.0")
(layer "F.Cu")
(property "Reference" "REF**"
(at 0 3.81 0)
(layer "F.SilkS")
(uuid "b680b4a7-6cb0-40b5-a7ec-a02910a0daa4")
(effects
(font
(size 1 1)
(thickness 0.15)
)
)
)
(property "Value" "M8_718_4pin"
(at 0 -7.62 0)
(layer "F.Fab")
(uuid "c5a1761e-3391-4e74-90c9-947fd66e1fc6")
(effects
(font
(size 1 1)
(thickness 0.15)
)
)
)
(property "Footprint" ""
(at 0 0 0)
(unlocked yes)
(layer "F.Fab")
(hide yes)
(uuid "b99bb331-fb03-45a0-930b-51b6a76e7ba2")
(effects
(font
(size 1.27 1.27)
)
)
)
(property "Datasheet" ""
(at 0 0 0)
(unlocked yes)
(layer "F.Fab")
(hide yes)
(uuid "007486ef-8ad2-4acc-8abc-19996656f634")
(effects
(font
(size 1.27 1.27)
)
)
)
(property "Description" ""
(at 0 0 0)
(unlocked yes)
(layer "F.Fab")
(hide yes)
(uuid "0d043c7b-bf31-40d9-9a1f-ee2ddc28fae9")
(effects
(font
(size 1.27 1.27)
)
)
)
(attr through_hole)
(pad "1" thru_hole circle
(at 1.7 0)
(size 1.8 1.8)
(drill 1.3)
(layers "*.Cu" "*.Mask")
(remove_unused_layers no)
(uuid "a1c7b1f5-f895-4192-9484-2357882c73e0")
)
(pad "2" thru_hole circle
(at 1.075 -1.95)
(size 1.8 1.8)
(drill 1.3)
(layers "*.Cu" "*.Mask")
(remove_unused_layers no)
(uuid "681bd495-c396-44ce-92bd-4b397cd48c04")
)
(pad "3" thru_hole circle
(at -1.7 0)
(size 1.8 1.8)
(drill 1.3)
(layers "*.Cu" "*.Mask")
(remove_unused_layers no)
(uuid "be0953c0-632d-4dd2-85e9-4d41239f22d2")
)
(pad "4" thru_hole circle
(at -1.075 -1.95)
(size 1.8 1.8)
(drill 1.3)
(layers "*.Cu" "*.Mask")
(remove_unused_layers no)
(uuid "a3668681-09b1-48f0-a7b1-f6b24183a469")
)
(pad "5" thru_hole circle
(at -6.25 -0.5)
(size 4 4)
(drill 3)
(layers "*.Cu" "*.Mask")
(remove_unused_layers no)
(uuid "563c12e4-8f8c-446c-a11f-94f5aa93b994")
)
(pad "5" thru_hole circle
(at 6.25 -0.5)
(size 4 4)
(drill 3)
(layers "*.Cu" "*.Mask")
(remove_unused_layers no)
(uuid "3451168c-3c76-4628-aee4-7c231bd100c3")
)
(model "${KIPRJMOD}/Symbol_Libraries/FaSTTUBe_connectors_3dmodels/M8_718_4pin_horizontal.stp"
(offset
(xyz 0 -2.65 6.3)
)
(scale
(xyz 1 1 1)
)
(rotate
(xyz 90 0 90)
)
)
)

View File

@ -0,0 +1,157 @@
(footprint "M8_718_4pin_vertical"
(version 20240108)
(generator "pcbnew")
(generator_version "8.0")
(layer "F.Cu")
(property "Reference" "REF**"
(at 0 8 0)
(layer "F.SilkS")
(uuid "b680b4a7-6cb0-40b5-a7ec-a02910a0daa4")
(effects
(font
(size 1 1)
(thickness 0.15)
)
)
)
(property "Value" "M8_718_4pin"
(at 0 -7.62 0)
(layer "F.Fab")
(uuid "c5a1761e-3391-4e74-90c9-947fd66e1fc6")
(effects
(font
(size 1 1)
(thickness 0.15)
)
)
)
(property "Footprint" ""
(at 0 0 0)
(unlocked yes)
(layer "F.Fab")
(hide yes)
(uuid "dcaf2f58-7535-4c16-a965-c0b08929320b")
(effects
(font
(size 1.27 1.27)
)
)
)
(property "Datasheet" ""
(at 0 0 0)
(unlocked yes)
(layer "F.Fab")
(hide yes)
(uuid "23c79916-6723-4a1f-a564-a37aa3cd420c")
(effects
(font
(size 1.27 1.27)
)
)
)
(property "Description" ""
(at 0 0 0)
(unlocked yes)
(layer "F.Fab")
(hide yes)
(uuid "967d72d7-8798-4823-a439-fc04a483d4ab")
(effects
(font
(size 1.27 1.27)
)
)
)
(attr through_hole)
(fp_arc
(start -6 -2.5)
(mid 0 -6.5)
(end 6 -2.5)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "b287f145-851e-45cc-b200-e62677b551d5")
)
(fp_arc
(start 6 2.5)
(mid 0 6.5)
(end -6 2.5)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "a7f25f41-0b4c-4430-b6cd-b2160b2db099")
)
(fp_circle
(center 0 0)
(end 8.5 0)
(stroke
(width 0.05)
(type solid)
)
(fill none)
(layer "F.CrtYd")
(uuid "422b10b9-e829-44a2-8808-05edd8cb3050")
)
(pad "1" thru_hole circle
(at 1.7 0.5)
(size 1.8 1.8)
(drill 1.3)
(layers "*.Cu" "*.Mask")
(remove_unused_layers no)
(uuid "a1c7b1f5-f895-4192-9484-2357882c73e0")
)
(pad "2" thru_hole circle
(at 1.075 -1.45)
(size 1.8 1.8)
(drill 1.3)
(layers "*.Cu" "*.Mask")
(remove_unused_layers no)
(uuid "681bd495-c396-44ce-92bd-4b397cd48c04")
)
(pad "3" thru_hole circle
(at -1.7 0.5)
(size 1.8 1.8)
(drill 1.3)
(layers "*.Cu" "*.Mask")
(remove_unused_layers no)
(uuid "be0953c0-632d-4dd2-85e9-4d41239f22d2")
)
(pad "4" thru_hole circle
(at -1.075 -1.45)
(size 1.8 1.8)
(drill 1.3)
(layers "*.Cu" "*.Mask")
(remove_unused_layers no)
(uuid "a3668681-09b1-48f0-a7b1-f6b24183a469")
)
(pad "5" thru_hole circle
(at -6.25 0)
(size 4 4)
(drill 3)
(layers "*.Cu" "*.Mask")
(remove_unused_layers no)
(uuid "563c12e4-8f8c-446c-a11f-94f5aa93b994")
)
(pad "5" thru_hole circle
(at 6.25 0)
(size 4 4)
(drill 3)
(layers "*.Cu" "*.Mask")
(remove_unused_layers no)
(uuid "3451168c-3c76-4628-aee4-7c231bd100c3")
)
(model "${KIPRJMOD}/Symbol_Libraries/FaSTTUBe_connectors_3dmodels/M8_718_4pin_vertical.stp"
(offset
(xyz 0 0 0.6)
)
(scale
(xyz 1 1 1)
)
(rotate
(xyz 90 90 90)
)
)
)

View File

@ -0,0 +1,48 @@
(module "214450876" (layer F.Cu)
(descr "2-1445087-6-1")
(tags "Connector")
(attr smd)
(fp_text reference J** (at 0.000 -1.27) (layer F.SilkS)
(effects (font (size 1.27 1.27) (thickness 0.254)))
)
(fp_text user %R (at 0.000 -1.27) (layer F.Fab)
(effects (font (size 1.27 1.27) (thickness 0.254)))
)
(fp_text value "214450876" (at 0.000 -1.27) (layer F.SilkS) hide
(effects (font (size 1.27 1.27) (thickness 0.254)))
)
(fp_line (start -11 1.93) (end 11 1.93) (layer F.Fab) (width 0.1))
(fp_line (start 11 1.93) (end 11 -1.93) (layer F.Fab) (width 0.1))
(fp_line (start 11 -1.93) (end -11 -1.93) (layer F.Fab) (width 0.1))
(fp_line (start -11 -1.93) (end -11 1.93) (layer F.Fab) (width 0.1))
(fp_line (start -13.92 -5.47) (end 13.92 -5.47) (layer F.CrtYd) (width 0.1))
(fp_line (start 13.92 -5.47) (end 13.92 2.93) (layer F.CrtYd) (width 0.1))
(fp_line (start 13.92 2.93) (end -13.92 2.93) (layer F.CrtYd) (width 0.1))
(fp_line (start -13.92 2.93) (end -13.92 -5.47) (layer F.CrtYd) (width 0.1))
(fp_line (start 11 1.3) (end 11 1.93) (layer F.SilkS) (width 0.2))
(fp_line (start 11 1.93) (end -11 1.93) (layer F.SilkS) (width 0.2))
(fp_line (start -11 1.93) (end -11 1.3) (layer F.SilkS) (width 0.2))
(fp_line (start -11 -1.4) (end -11 -1.93) (layer F.SilkS) (width 0.2))
(fp_line (start -11 -1.93) (end -8.77 -1.93) (layer F.SilkS) (width 0.2))
(fp_line (start 8.63 -1.93) (end 11 -1.93) (layer F.SilkS) (width 0.2))
(fp_line (start 11 -1.93) (end 11 -1.1) (layer F.SilkS) (width 0.2))
(fp_line (start 7.43 -5.1) (end 7.43 -5.1) (layer F.SilkS) (width 0.2))
(fp_line (start 7.43 -5) (end 7.43 -5) (layer F.SilkS) (width 0.2))
(fp_line (start 7.43 -5.1) (end 7.43 -5.1) (layer F.SilkS) (width 0.2))
(fp_arc (start 7.43 -5.05) (end 7.430 -5.1) (angle -180) (layer F.SilkS) (width 0.2))
(fp_arc (start 7.43 -5.05) (end 7.430 -5) (angle -180) (layer F.SilkS) (width 0.2))
(fp_arc (start 7.43 -5.05) (end 7.430 -5.1) (angle -180) (layer F.SilkS) (width 0.2))
(pad 1 smd rect (at 7.430 -3.2 0) (size 1.270 2.540) (layers F.Cu F.Paste F.Mask))
(pad 2 smd rect (at 4.430 -3.2 0) (size 1.270 2.540) (layers F.Cu F.Paste F.Mask))
(pad 3 smd rect (at 1.430 -3.2 0) (size 1.270 2.540) (layers F.Cu F.Paste F.Mask))
(pad 4 smd rect (at -1.570 -3.2 0) (size 1.270 2.540) (layers F.Cu F.Paste F.Mask))
(pad 5 smd rect (at -4.570 -3.2 0) (size 1.270 2.540) (layers F.Cu F.Paste F.Mask))
(pad 6 smd rect (at -7.570 -3.2 0) (size 1.270 2.540) (layers F.Cu F.Paste F.Mask))
(pad MP1 smd rect (at 11.205 -0 90) (size 1.650 3.430) (layers F.Cu F.Paste F.Mask))
(pad MP2 smd rect (at -11.205 -0 90) (size 1.650 3.430) (layers F.Cu F.Paste F.Mask))
(model 2-1445087-6.stp
(at (xyz -0.0023622046716101 0 0.36732283164197))
(scale (xyz 1 1 1))
(rotate (xyz 0 0 -180))
)
)

View File

@ -0,0 +1,150 @@
(footprint "Micro_Mate-N-Lok_2p_horizontal"
(version 20240108)
(generator "pcbnew")
(generator_version "8.0")
(layer "F.Cu")
(property "Reference" "REF**"
(at 0 7.6 0)
(layer "F.SilkS")
(uuid "b3717aae-6e72-4c5e-8a33-b309bc4120fe")
(effects
(font
(size 1 1)
(thickness 0.15)
)
)
)
(property "Value" "Micro Mate-N-Lok 2-Pol"
(at 0 -6.22 0)
(layer "F.Fab")
(uuid "36e4278e-3a17-4a30-b25f-b47e619d8e54")
(effects
(font
(size 1 1)
(thickness 0.15)
)
)
)
(property "Footprint" ""
(at 0 0 0)
(unlocked yes)
(layer "F.Fab")
(hide yes)
(uuid "4afde509-61aa-4495-bea4-931c6d300cdc")
(effects
(font
(size 1.27 1.27)
)
)
)
(property "Datasheet" ""
(at 0 0 0)
(unlocked yes)
(layer "F.Fab")
(hide yes)
(uuid "e13156ef-c15d-4d24-b178-c187d3564ad3")
(effects
(font
(size 1.27 1.27)
)
)
)
(property "Description" ""
(at 0 0 0)
(unlocked yes)
(layer "F.Fab")
(hide yes)
(uuid "d7224dbc-1065-41b6-82a1-ff9de5b98743")
(effects
(font
(size 1.27 1.27)
)
)
)
(attr through_hole)
(fp_line
(start -5 -5.4)
(end 0 -5.4)
(stroke
(width 0.15)
(type solid)
)
(layer "F.CrtYd")
(uuid "1c02454f-e74b-4db5-89ce-8549d76c156b")
)
(fp_line
(start -5 6.2)
(end -5 -5.4)
(stroke
(width 0.15)
(type solid)
)
(layer "F.CrtYd")
(uuid "79b7e7a7-54a5-4f04-ada0-5a78f329fb69")
)
(fp_line
(start 0 -5.4)
(end 5 -5.4)
(stroke
(width 0.15)
(type solid)
)
(layer "F.CrtYd")
(uuid "a3f5f53b-a0a9-4632-9850-54b7a6125d67")
)
(fp_line
(start 5 -5.4)
(end 5 6.2)
(stroke
(width 0.15)
(type solid)
)
(layer "F.CrtYd")
(uuid "52aa1cc1-965b-412c-a19e-6434cee1a6e3")
)
(fp_line
(start 5 6.2)
(end -5 6.2)
(stroke
(width 0.15)
(type solid)
)
(layer "F.CrtYd")
(uuid "e50755df-05fe-403a-adf5-a2d6e7cc5677")
)
(pad "" smd rect
(at -5.2 1.6)
(size 3.43 1.65)
(layers "F.Cu" "F.Paste" "F.Mask")
(uuid "c98ad03f-45fb-4c08-925c-a798f952439a")
)
(pad "" smd rect
(at 5.21 1.6)
(size 3.43 1.65)
(layers "F.Cu" "F.Paste" "F.Mask")
(uuid "1d1a1370-ddd7-4bd7-8fbf-a91b362cb160")
)
(pad "1" smd rect
(at -1.5 -3.88)
(size 1.27 3)
(layers "F.Cu" "F.Paste" "F.Mask")
(uuid "2291a95f-cda2-4dc8-88fc-a9b0f19ba741")
)
(pad "2" smd rect
(at 1.5 -3.88)
(size 1.27 3)
(layers "F.Cu" "F.Paste" "F.Mask")
(uuid "6df97d6c-664b-46c7-9be8-e97b286ece26")
)
(model "${KIPRJMOD}/Symbol_Library/FaSTTUBe_connectors_3dmodels/Micro_Mate-N-Lok_2p_horizontal.stp"
(offset
(xyz 0 -6.2 2.5)
)
(scale
(xyz 1 1 1)
)
(rotate
(xyz -90 0 0)
)
)
)

View File

@ -0,0 +1,240 @@
(footprint "Micro_Mate-N-Lok_2p_vertical"
(version 20240108)
(generator "pcbnew")
(generator_version "8.0")
(layer "F.Cu")
(property "Reference" "REF**"
(at 0 3.81 0)
(unlocked yes)
(layer "F.SilkS")
(uuid "42713045-fffd-4b2d-ae1e-7232d705fb12")
(effects
(font
(size 1 1)
(thickness 0.15)
)
)
)
(property "Value" "Micro_Mate-N-Lok_2p_vertical"
(at 0 1 0)
(unlocked yes)
(layer "F.Fab")
(uuid "c0515cd2-cdaa-467e-8354-0f6eadfa35c9")
(effects
(font
(size 1 1)
(thickness 0.15)
)
)
)
(property "Footprint" ""
(at 0 0 0)
(unlocked yes)
(layer "F.Fab")
(hide yes)
(uuid "b898cf0a-05f1-4c3b-be4e-d91efa4940f9")
(effects
(font
(size 1.27 1.27)
)
)
)
(property "Datasheet" ""
(at 0 0 0)
(unlocked yes)
(layer "F.Fab")
(hide yes)
(uuid "a88b67c9-ac78-4a8c-859a-d3187554084d")
(effects
(font
(size 1.27 1.27)
)
)
)
(property "Description" ""
(at 0 0 0)
(unlocked yes)
(layer "F.Fab")
(hide yes)
(uuid "5a17c508-2162-46c6-99ef-5ad462d1b667")
(effects
(font
(size 1.27 1.27)
)
)
)
(attr smd)
(fp_line
(start -3.81 -2.54)
(end -2.54 -2.54)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "3742a313-c63e-4807-a7bf-be5a0ae2c781")
)
(fp_line
(start -3.81 -1.27)
(end -3.81 -2.54)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "5e27f565-c85a-4f3b-9862-58c0accdd5e3")
)
(fp_line
(start -3.81 2.54)
(end -3.81 1.27)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "d35d7027-ac1b-44b2-9664-3d8a37ee0f4e")
)
(fp_line
(start -3.81 2.54)
(end 3.81 2.54)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "1c052668-6749-425a-9a77-35f046c8aa39")
)
(fp_line
(start -0.508 -3.302)
(end 0.508 -3.302)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "4ba06b66-7669-4c70-b585-f5d4c9c33527")
)
(fp_line
(start 2.54 -2.54)
(end 3.81 -2.54)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "e8558fbd-ea42-43a6-966a-7bd304bdfaad")
)
(fp_line
(start 3.81 -2.54)
(end 3.81 -1.27)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "2b894b8a-c098-4d9d-be0f-2ef41dea274e")
)
(fp_line
(start 3.81 2.54)
(end 3.81 1.27)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "25ca9482-069d-43de-b77e-6f2ad77fa017")
)
(fp_circle
(center -5.08 -3.81)
(end -4.58 -3.81)
(stroke
(width 0.12)
(type solid)
)
(fill solid)
(layer "F.SilkS")
(uuid "63489ebf-0f52-43a6-a0ab-158b1a7d4988")
)
(fp_rect
(start -7.62 -5.08)
(end 7.62 2.54)
(stroke
(width 0.05)
(type solid)
)
(fill none)
(layer "F.CrtYd")
(uuid "312474c5-a081-4cd1-b2e6-730f0718514a")
)
(fp_line
(start 4.318 1.27)
(end 5.08 1.27)
(stroke
(width 0.1)
(type solid)
)
(layer "F.Fab")
(uuid "c6462399-f2e4-4f1a-b34a-b49a04c8bdb9")
)
(fp_line
(start 4.318 1.778)
(end 4.318 1.27)
(stroke
(width 0.1)
(type solid)
)
(layer "F.Fab")
(uuid "f284b1e2-75a4-4a3f-a5f4-6f05f15fb4f5")
)
(fp_text user "${REFERENCE}"
(at 0 0 0)
(unlocked yes)
(layer "F.Fab")
(uuid "1bf544e3-5940-4576-9291-2464e95c0ee2")
(effects
(font
(size 1 1)
(thickness 0.15)
)
)
)
(pad "" smd roundrect
(at -5.2 0)
(size 3.43 1.65)
(layers "F.Cu" "F.Paste" "F.Mask")
(roundrect_rratio 0.25)
(uuid "1f3003e6-dce5-420f-906b-3f1e92b67249")
)
(pad "" smd roundrect
(at 5.2 0)
(size 3.43 1.65)
(layers "F.Cu" "F.Paste" "F.Mask")
(roundrect_rratio 0.25)
(uuid "378af8b4-af3d-46e7-89ae-deff12ca9067")
)
(pad "1" smd roundrect
(at -1.5 -3.2)
(size 1.27 2.54)
(layers "F.Cu" "F.Paste" "F.Mask")
(roundrect_rratio 0.25)
(uuid "ebd06df3-d52b-4cff-99a2-a771df6d3733")
)
(pad "2" smd roundrect
(at 1.5 -3.2)
(size 1.27 2.54)
(layers "F.Cu" "F.Paste" "F.Mask")
(roundrect_rratio 0.25)
(uuid "8c0807a7-765b-4fa5-baaa-e09a2b610e6b")
)
(model "${KIPRJMOD}/Symbol_Library/FaSTTUBe_connectors_3dmodels/Micro_Mate-N-Lok_2p_vertical.stp"
(offset
(xyz 0 0 9.24)
)
(scale
(xyz 1 1 1)
)
(rotate
(xyz 0 0 180)
)
)
)

View File

@ -0,0 +1,303 @@
(footprint "Micro_Mate-N-Lok_2x2p_vertical"
(version 20240108)
(generator "pcbnew")
(generator_version "8.0")
(layer "F.Cu")
(descr "3-794636-4-1")
(tags "Connector")
(property "Reference" "J**"
(at 0 0 0)
(layer "F.SilkS")
(uuid "de6dbf15-ae79-4d66-abac-08480863616c")
(effects
(font
(size 1.27 1.27)
(thickness 0.254)
)
)
)
(property "Value" "37946364"
(at 0 0 0)
(layer "F.SilkS")
(hide yes)
(uuid "73454dd1-5b2b-42e4-bdce-e925fb2d75ff")
(effects
(font
(size 1.27 1.27)
(thickness 0.254)
)
)
)
(property "Footprint" ""
(at 0 0 0)
(unlocked yes)
(layer "F.Fab")
(hide yes)
(uuid "cbbc4c1f-3081-4dd1-81b7-f4ecaef03a43")
(effects
(font
(size 1.27 1.27)
)
)
)
(property "Datasheet" ""
(at 0 0 0)
(unlocked yes)
(layer "F.Fab")
(hide yes)
(uuid "528b1c21-4a35-4c57-82fa-edba6a13d68d")
(effects
(font
(size 1.27 1.27)
)
)
)
(property "Description" ""
(at 0 0 0)
(unlocked yes)
(layer "F.Fab")
(hide yes)
(uuid "5b010323-38c7-4528-9cd8-28fa4ecbcf87")
(effects
(font
(size 1.27 1.27)
)
)
)
(attr smd)
(fp_line
(start -3.43 -3.43)
(end -3.43 -1.5)
(stroke
(width 0.1)
(type solid)
)
(layer "F.SilkS")
(uuid "3919c0b8-6dc3-4513-a330-0a8e3b796879")
)
(fp_line
(start -3.43 1.5)
(end -3.43 3.43)
(stroke
(width 0.1)
(type solid)
)
(layer "F.SilkS")
(uuid "e3e68613-03be-4857-8287-eb53d4cf9588")
)
(fp_line
(start -3.43 3.43)
(end -2.5 3.43)
(stroke
(width 0.1)
(type solid)
)
(layer "F.SilkS")
(uuid "dcf44124-9aed-4edf-b196-d989bdbd713f")
)
(fp_line
(start -2.5 -3.43)
(end -3.43 -3.43)
(stroke
(width 0.1)
(type solid)
)
(layer "F.SilkS")
(uuid "a588c100-9eca-40d6-8abd-e0275b930252")
)
(fp_line
(start 2.5 -3.43)
(end 3.43 -3.43)
(stroke
(width 0.1)
(type solid)
)
(layer "F.SilkS")
(uuid "556702ed-84d9-4a47-8332-8821b9cc612a")
)
(fp_line
(start 2.5 3.43)
(end 3.43 3.43)
(stroke
(width 0.1)
(type solid)
)
(layer "F.SilkS")
(uuid "9dc23f8e-47a7-4a21-bc6c-32ab048af2b4")
)
(fp_line
(start 3.43 -3.43)
(end 3.43 -1.5)
(stroke
(width 0.1)
(type solid)
)
(layer "F.SilkS")
(uuid "1af06253-8ae9-4f4f-8dfe-1d65d2498836")
)
(fp_line
(start 3.43 3.43)
(end 3.43 1.5)
(stroke
(width 0.1)
(type solid)
)
(layer "F.SilkS")
(uuid "5d70b46a-35e1-4fbe-a3be-0ff620fe9f5f")
)
(fp_circle
(center 4 5)
(end 4.5 5)
(stroke
(width 0.12)
(type solid)
)
(fill solid)
(layer "F.SilkS")
(uuid "1d1c915d-d05a-49d2-98a2-39f7b79b9eed")
)
(fp_line
(start -7.85 -6.97)
(end 7.85 -6.97)
(stroke
(width 0.1)
(type solid)
)
(layer "F.CrtYd")
(uuid "46c86f80-ccb8-42ef-a07e-87ae7e134f6b")
)
(fp_line
(start -7.85 6.97)
(end -7.85 -6.97)
(stroke
(width 0.1)
(type solid)
)
(layer "F.CrtYd")
(uuid "06f3ff96-1ab8-4145-8420-bff1d8501e6d")
)
(fp_line
(start 7.85 -6.97)
(end 7.85 6.97)
(stroke
(width 0.1)
(type solid)
)
(layer "F.CrtYd")
(uuid "845cc01b-b5e3-40a0-ab45-c48320a01ad9")
)
(fp_line
(start 7.85 6.97)
(end -7.85 6.97)
(stroke
(width 0.1)
(type solid)
)
(layer "F.CrtYd")
(uuid "1229a783-aa67-4fe4-b14d-11556dfd076d")
)
(fp_line
(start -3.43 -3.43)
(end 3.43 -3.43)
(stroke
(width 0.2)
(type solid)
)
(layer "F.Fab")
(uuid "202aafd5-7f0f-467b-9759-31af9730614e")
)
(fp_line
(start -3.43 3.43)
(end -3.43 -3.43)
(stroke
(width 0.2)
(type solid)
)
(layer "F.Fab")
(uuid "a068ed0e-d660-403e-b910-b1c022a00a69")
)
(fp_line
(start 3.43 -3.43)
(end 3.43 3.43)
(stroke
(width 0.2)
(type solid)
)
(layer "F.Fab")
(uuid "d5ad8bbd-4dd2-495b-b849-ac6d164ceb16")
)
(fp_line
(start 3.43 3.43)
(end -3.43 3.43)
(stroke
(width 0.2)
(type solid)
)
(layer "F.Fab")
(uuid "aac6c8a0-a060-4f96-a728-2df7576b52d6")
)
(fp_text user "${REFERENCE}"
(at 0 0 0)
(layer "F.Fab")
(uuid "d7049f25-a0b9-4b2a-a477-c08baaf2a2f1")
(effects
(font
(size 1.27 1.27)
(thickness 0.254)
)
)
)
(pad "" smd roundrect
(at -5.135 0 90)
(size 1.65 3.43)
(layers "F.Cu" "F.Paste" "F.Mask")
(roundrect_rratio 0.25)
(uuid "f1fd847b-553f-4793-8589-45a8fa16a3ce")
)
(pad "" smd roundrect
(at 5.135 0 90)
(size 1.65 3.43)
(layers "F.Cu" "F.Paste" "F.Mask")
(roundrect_rratio 0.25)
(uuid "cfed0ea5-fd39-4247-8b3a-bf5d16127b8b")
)
(pad "1" smd roundrect
(at 1.5 4.7)
(size 1.27 2.54)
(layers "F.Cu" "F.Paste" "F.Mask")
(roundrect_rratio 0.25)
(uuid "853f8b0a-b990-4a1e-9c7c-c95aa5b7e1c3")
)
(pad "2" smd roundrect
(at 1.5 -4.7)
(size 1.27 2.54)
(layers "F.Cu" "F.Paste" "F.Mask")
(roundrect_rratio 0.25)
(uuid "2daa1bc9-0082-4d28-a4bb-9c0be7c8ce3e")
)
(pad "3" smd roundrect
(at -1.5 4.7)
(size 1.27 2.54)
(layers "F.Cu" "F.Paste" "F.Mask")
(roundrect_rratio 0.25)
(uuid "751511a8-2e16-45eb-9dfa-a168babcfa59")
)
(pad "4" smd roundrect
(at -1.5 -4.7)
(size 1.27 2.54)
(layers "F.Cu" "F.Paste" "F.Mask")
(roundrect_rratio 0.25)
(uuid "ced13875-cb54-4df8-8bea-b4199d3c0768")
)
(model "${KIPRJMOD}/Symbol_Library/FaSTTUBe_connectors_3dmodels/Micro_Mate-N-Lok_2x2p_vertical.stp"
(offset
(xyz 0 0 9.25)
)
(scale
(xyz 1 1 1)
)
(rotate
(xyz 0 0 180)
)
)
)

View File

@ -0,0 +1,345 @@
(footprint "Micro_Mate-N-Lok_2x7p_vertical"
(version 20240108)
(generator "pcbnew")
(generator_version "8.0")
(layer "F.Cu")
(descr "3-794636-4-1")
(tags "Connector")
(property "Reference" "J**"
(at 0 0 0)
(layer "F.SilkS")
(uuid "de6dbf15-ae79-4d66-abac-08480863616c")
(effects
(font
(size 1.27 1.27)
(thickness 0.254)
)
)
)
(property "Value" "37946364"
(at 0 0 0)
(layer "F.SilkS")
(hide yes)
(uuid "73454dd1-5b2b-42e4-bdce-e925fb2d75ff")
(effects
(font
(size 1.27 1.27)
(thickness 0.254)
)
)
)
(property "Footprint" ""
(at 0 0 0)
(unlocked yes)
(layer "F.Fab")
(hide yes)
(uuid "4d4239b2-334b-4b6d-b0b3-49d03cf2e1b6")
(effects
(font
(size 1.27 1.27)
)
)
)
(property "Datasheet" ""
(at 0 0 0)
(unlocked yes)
(layer "F.Fab")
(hide yes)
(uuid "f4ce087b-561e-46b0-a753-5e32ef7f3234")
(effects
(font
(size 1.27 1.27)
)
)
)
(property "Description" ""
(at 0 0 0)
(unlocked yes)
(layer "F.Fab")
(hide yes)
(uuid "a4009e04-a02f-4133-941e-7ebdcaf7ac26")
(effects
(font
(size 1.27 1.27)
)
)
)
(attr smd)
(fp_line
(start -11 -3.5)
(end -10.5 -3.5)
(stroke
(width 0.1)
(type solid)
)
(layer "F.SilkS")
(uuid "1c3816c9-1ab2-442e-a37d-1fa89b99ef20")
)
(fp_line
(start -11 -1.5)
(end -11 -3.5)
(stroke
(width 0.1)
(type solid)
)
(layer "F.SilkS")
(uuid "c50f8af2-5d6f-4d3f-a2f8-fd554ddabeab")
)
(fp_line
(start -11 1.5)
(end -11 3.5)
(stroke
(width 0.1)
(type solid)
)
(layer "F.SilkS")
(uuid "5ae35a22-004a-4c7e-b216-2b2dfba0dbbc")
)
(fp_line
(start -11 3.5)
(end -10.5 3.5)
(stroke
(width 0.1)
(type solid)
)
(layer "F.SilkS")
(uuid "fc2cb4fe-ca3f-4542-9560-61d4474c8b02")
)
(fp_line
(start -1.5 -7)
(end 1.5 -7)
(stroke
(width 0.12)
(type default)
)
(layer "F.SilkS")
(uuid "69b740c7-5940-445d-bc9f-c8d087095d12")
)
(fp_line
(start -1.5 -5.5)
(end -1.5 -7)
(stroke
(width 0.12)
(type default)
)
(layer "F.SilkS")
(uuid "8fcbd669-0c29-4bfe-8b8e-03f456fdd863")
)
(fp_line
(start 1.5 -7)
(end 1.5 -5.5)
(stroke
(width 0.12)
(type default)
)
(layer "F.SilkS")
(uuid "6e52454f-a4d6-449d-8ebd-6cd913a5a917")
)
(fp_line
(start 11 -3.5)
(end 10.5 -3.5)
(stroke
(width 0.1)
(type solid)
)
(layer "F.SilkS")
(uuid "e5d87176-e66e-495c-ac35-552ca54cd269")
)
(fp_line
(start 11 -1.5)
(end 11 -3.5)
(stroke
(width 0.1)
(type solid)
)
(layer "F.SilkS")
(uuid "cb23f404-a40e-47c9-9c77-accca23f0fca")
)
(fp_line
(start 11 1.5)
(end 11 3.5)
(stroke
(width 0.1)
(type solid)
)
(layer "F.SilkS")
(uuid "57e12c2a-918f-4dbf-8176-f8f0a70168e6")
)
(fp_line
(start 11 3.5)
(end 10.5 3.5)
(stroke
(width 0.1)
(type solid)
)
(layer "F.SilkS")
(uuid "d87a040c-ea93-47db-a367-d4cf8b02004b")
)
(fp_circle
(center -11.5 -5.5)
(end -11 -5.5)
(stroke
(width 0.12)
(type solid)
)
(fill solid)
(layer "F.SilkS")
(uuid "ab878989-630e-4841-8563-9a196bac4b6b")
)
(fp_rect
(start -15 -7)
(end 15 7)
(stroke
(width 0.05)
(type default)
)
(fill none)
(layer "F.CrtYd")
(uuid "aa6fb2d3-a1b1-4b14-9351-5b2e789571d8")
)
(fp_rect
(start -10.93 -3.43)
(end 10.93 3.43)
(stroke
(width 0.1)
(type default)
)
(fill none)
(layer "F.Fab")
(uuid "3d4cb86e-70a3-4db7-a644-c739816fba05")
)
(fp_text user "${REFERENCE}"
(at 0 0 0)
(layer "F.Fab")
(uuid "d7049f25-a0b9-4b2a-a477-c08baaf2a2f1")
(effects
(font
(size 1.27 1.27)
(thickness 0.254)
)
)
)
(pad "" smd roundrect
(at -12.635 0 90)
(size 1.65 3.43)
(layers "F.Cu" "F.Paste" "F.Mask")
(roundrect_rratio 0.25)
(uuid "f1fd847b-553f-4793-8589-45a8fa16a3ce")
)
(pad "" smd roundrect
(at 12.635 0 90)
(size 1.65 3.43)
(layers "F.Cu" "F.Paste" "F.Mask")
(roundrect_rratio 0.25)
(uuid "cfed0ea5-fd39-4247-8b3a-bf5d16127b8b")
)
(pad "1" smd roundrect
(at -9 -4.7 180)
(size 1.27 2.54)
(layers "F.Cu" "F.Paste" "F.Mask")
(roundrect_rratio 0.25)
(uuid "13ae4d4f-9d65-408a-88d3-c1027bd0f239")
)
(pad "2" smd roundrect
(at -9 4.7 180)
(size 1.27 2.54)
(layers "F.Cu" "F.Paste" "F.Mask")
(roundrect_rratio 0.25)
(uuid "8b516d46-5072-4874-85fa-eb9a17379a1c")
)
(pad "3" smd roundrect
(at -6 -4.7 180)
(size 1.27 2.54)
(layers "F.Cu" "F.Paste" "F.Mask")
(roundrect_rratio 0.25)
(uuid "9e57dcaf-5541-4b80-b13a-e843bd2d19cc")
)
(pad "4" smd roundrect
(at -6 4.7 180)
(size 1.27 2.54)
(layers "F.Cu" "F.Paste" "F.Mask")
(roundrect_rratio 0.25)
(uuid "21e2f832-26b9-4cf7-9608-5c55a1923e80")
)
(pad "5" smd roundrect
(at -3 -4.7 180)
(size 1.27 2.54)
(layers "F.Cu" "F.Paste" "F.Mask")
(roundrect_rratio 0.25)
(uuid "2de4fb7f-3783-4a40-ae45-63734e55c9d0")
)
(pad "6" smd roundrect
(at -3 4.7 180)
(size 1.27 2.54)
(layers "F.Cu" "F.Paste" "F.Mask")
(roundrect_rratio 0.25)
(uuid "eab4589e-73cb-4069-9242-a95ca593b423")
)
(pad "7" smd roundrect
(at 0 -4.7 180)
(size 1.27 2.54)
(layers "F.Cu" "F.Paste" "F.Mask")
(roundrect_rratio 0.25)
(uuid "f672e036-75cd-43ba-a95b-1ab8be664d16")
)
(pad "8" smd roundrect
(at 0 4.7 180)
(size 1.27 2.54)
(layers "F.Cu" "F.Paste" "F.Mask")
(roundrect_rratio 0.25)
(uuid "3cf7efe1-bc26-43b7-ac75-50cb26b5ab3d")
)
(pad "9" smd roundrect
(at 3 -4.7 180)
(size 1.27 2.54)
(layers "F.Cu" "F.Paste" "F.Mask")
(roundrect_rratio 0.25)
(uuid "3148770a-c28f-43a5-acf5-a3f822d5144f")
)
(pad "10" smd roundrect
(at 3 4.7 180)
(size 1.27 2.54)
(layers "F.Cu" "F.Paste" "F.Mask")
(roundrect_rratio 0.25)
(uuid "28b48210-c1ad-4859-bbd7-4448f3c8dd1d")
)
(pad "11" smd roundrect
(at 6 -4.7 180)
(size 1.27 2.54)
(layers "F.Cu" "F.Paste" "F.Mask")
(roundrect_rratio 0.25)
(uuid "a4514241-16b5-4170-a3ae-bb18e5df7fbd")
)
(pad "12" smd roundrect
(at 6 4.7 180)
(size 1.27 2.54)
(layers "F.Cu" "F.Paste" "F.Mask")
(roundrect_rratio 0.25)
(uuid "b796d4ac-2db7-4038-befe-5db96b995d33")
)
(pad "13" smd roundrect
(at 9 -4.7 180)
(size 1.27 2.54)
(layers "F.Cu" "F.Paste" "F.Mask")
(roundrect_rratio 0.25)
(uuid "feb75515-353a-45d1-a1bc-82b614a271b5")
)
(pad "14" smd roundrect
(at 9 4.7 180)
(size 1.27 2.54)
(layers "F.Cu" "F.Paste" "F.Mask")
(roundrect_rratio 0.25)
(uuid "170c8784-240a-4e5a-bfbf-27ce184ffe94")
)
(model "${KIPRJMOD}/Symbol_Library/FaSTTUBe_connectors_3dmodels/Micro_Mate-N-Lok_2x7p_vertical.stp"
(offset
(xyz 0 0 9.25)
)
(scale
(xyz 1 1 1)
)
(rotate
(xyz 0 0 0)
)
)
)

View File

@ -0,0 +1,297 @@
(footprint "Micro_Mate-N-Lok_3p_horizontal"
(version 20240108)
(generator "pcbnew")
(generator_version "8.0")
(layer "F.Cu")
(property "Reference" "REF**"
(at 0 -8.25 0)
(unlocked yes)
(layer "F.SilkS")
(uuid "42713045-fffd-4b2d-ae1e-7232d705fb12")
(effects
(font
(size 1 1)
(thickness 0.15)
)
)
)
(property "Value" "Micro_Mate-N-Lok_3p_horizontal"
(at 0 1 0)
(unlocked yes)
(layer "F.Fab")
(uuid "c0515cd2-cdaa-467e-8354-0f6eadfa35c9")
(effects
(font
(size 1 1)
(thickness 0.15)
)
)
)
(property "Footprint" ""
(at 0 0 0)
(unlocked yes)
(layer "F.Fab")
(hide yes)
(uuid "5b7137ad-53aa-4da5-84c0-0d4e39ccc37a")
(effects
(font
(size 1.27 1.27)
)
)
)
(property "Datasheet" ""
(at 0 0 0)
(unlocked yes)
(layer "F.Fab")
(hide yes)
(uuid "d1954af9-e372-403e-b95e-35cb9266f88f")
(effects
(font
(size 1.27 1.27)
)
)
)
(property "Description" ""
(at 0 0 0)
(unlocked yes)
(layer "F.Fab")
(hide yes)
(uuid "cf4eed8f-287d-4bab-8df2-c9aabff6b6e0")
(effects
(font
(size 1.27 1.27)
)
)
)
(attr smd)
(fp_line
(start -6.5 1.25)
(end -5.5 1.25)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "908ce94b-b837-4c84-b759-ec4fbb006eea")
)
(fp_line
(start -5.5 -4.5)
(end -4 -4.5)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "2923d83c-3334-4b85-acfa-e9f2eb6f5eb5")
)
(fp_line
(start -5.5 -1.25)
(end -6.5 -1.25)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "721eced1-7601-448b-b032-57ae840a5bc6")
)
(fp_line
(start -5.5 -1.25)
(end -5.5 -4.5)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "68d14432-223b-47bb-bd26-18873cfb3df2")
)
(fp_line
(start -5.5 1.25)
(end -5.5 4.75)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "75ada5c7-eed3-466b-a900-bb7cf3da6f9e")
)
(fp_line
(start -5.5 4.75)
(end 5.5 4.75)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "d9b138bc-0203-4547-9bd8-5f8e532ba1ac")
)
(fp_line
(start -2 -4.5)
(end -1 -4.5)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "d0583253-7f1c-498c-afba-93bf9b28c781")
)
(fp_line
(start 1 -4.5)
(end 2 -4.5)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "853b4aa5-bf64-4f10-b1c5-492731c47e3b")
)
(fp_line
(start 4 -4.5)
(end 5.5 -4.5)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "ba3030b2-37eb-4eb2-b7ee-c2f135251592")
)
(fp_line
(start 5.5 -1.25)
(end 5.5 -4.5)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "f1084b0d-b992-4d4c-9074-1c148a908ad5")
)
(fp_line
(start 5.5 1.25)
(end 6.5 1.25)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "8e73e860-7df5-47ee-9d85-a51cffff4073")
)
(fp_line
(start 5.5 4.75)
(end 5.5 1.25)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "3836c63d-ca60-4e8e-a339-40980bdccc31")
)
(fp_line
(start 6.5 -1.25)
(end 5.5 -1.25)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "e7987f0c-e4c6-4aae-a5d6-e1cfea057719")
)
(fp_circle
(center 6.25 -5.5)
(end 6.75 -5.5)
(stroke
(width 0.12)
(type solid)
)
(fill solid)
(layer "F.SilkS")
(uuid "63489ebf-0f52-43a6-a0ab-158b1a7d4988")
)
(fp_rect
(start -8.5 -7)
(end 8.5 4.75)
(stroke
(width 0.05)
(type solid)
)
(fill none)
(layer "F.CrtYd")
(uuid "312474c5-a081-4cd1-b2e6-730f0718514a")
)
(fp_line
(start 4.318 1.27)
(end 5.08 1.27)
(stroke
(width 0.1)
(type solid)
)
(layer "F.Fab")
(uuid "c6462399-f2e4-4f1a-b34a-b49a04c8bdb9")
)
(fp_line
(start 4.318 1.778)
(end 4.318 1.27)
(stroke
(width 0.1)
(type solid)
)
(layer "F.Fab")
(uuid "f284b1e2-75a4-4a3f-a5f4-6f05f15fb4f5")
)
(fp_text user "${REFERENCE}"
(at 0 0 0)
(unlocked yes)
(layer "F.Fab")
(uuid "1bf544e3-5940-4576-9291-2464e95c0ee2")
(effects
(font
(size 1 1)
(thickness 0.15)
)
)
)
(pad "" smd roundrect
(at -6.7 0)
(size 3.43 1.65)
(layers "F.Cu" "F.Paste" "F.Mask")
(roundrect_rratio 0.25)
(uuid "1f3003e6-dce5-420f-906b-3f1e92b67249")
)
(pad "" smd roundrect
(at 6.7 0)
(size 3.43 1.65)
(layers "F.Cu" "F.Paste" "F.Mask")
(roundrect_rratio 0.25)
(uuid "378af8b4-af3d-46e7-89ae-deff12ca9067")
)
(pad "1" smd roundrect
(at 3 -5.48)
(size 1.27 2.92)
(layers "F.Cu" "F.Paste" "F.Mask")
(roundrect_rratio 0.25)
(uuid "ebd06df3-d52b-4cff-99a2-a771df6d3733")
)
(pad "2" smd roundrect
(at 0 -5.48)
(size 1.27 2.92)
(layers "F.Cu" "F.Paste" "F.Mask")
(roundrect_rratio 0.25)
(uuid "8c0807a7-765b-4fa5-baaa-e09a2b610e6b")
)
(pad "3" smd roundrect
(at -3 -5.48)
(size 1.27 2.92)
(layers "F.Cu" "F.Paste" "F.Mask")
(roundrect_rratio 0.25)
(uuid "23e32b5c-4ca6-4614-a426-44d605a7d8fd")
)
(model "${KIPRJMOD}/Symbol_Library/FaSTTUBe_connectors_3dmodels/Micro_Mate-N-Lok_3p_horizontal.stp"
(offset
(xyz 0 -4.6 2.5)
)
(scale
(xyz 1 1 1)
)
(rotate
(xyz -90 0 0)
)
)
)

View File

@ -0,0 +1,277 @@
(footprint "Micro_Mate-N-Lok_3p_vertical"
(version 20240108)
(generator "pcbnew")
(generator_version "8.0")
(layer "F.Cu")
(property "Reference" "REF**"
(at 0 3.81 0)
(unlocked yes)
(layer "F.SilkS")
(uuid "42713045-fffd-4b2d-ae1e-7232d705fb12")
(effects
(font
(size 1 1)
(thickness 0.15)
)
)
)
(property "Value" "Micro_Mate-N-Lok_3p_vertical"
(at 0 1 0)
(unlocked yes)
(layer "F.Fab")
(uuid "c0515cd2-cdaa-467e-8354-0f6eadfa35c9")
(effects
(font
(size 1 1)
(thickness 0.15)
)
)
)
(property "Footprint" ""
(at 0 0 0)
(unlocked yes)
(layer "F.Fab")
(hide yes)
(uuid "9faea814-d577-4b6a-96f0-f26618a13cf8")
(effects
(font
(size 1.27 1.27)
)
)
)
(property "Datasheet" ""
(at 0 0 0)
(unlocked yes)
(layer "F.Fab")
(hide yes)
(uuid "045ca890-2c18-45a6-ad61-80ba2409b768")
(effects
(font
(size 1.27 1.27)
)
)
)
(property "Description" ""
(at 0 0 0)
(unlocked yes)
(layer "F.Fab")
(hide yes)
(uuid "fa1475f6-69b0-42d0-a755-6e7e721f0573")
(effects
(font
(size 1.27 1.27)
)
)
)
(attr smd)
(fp_line
(start -5.588 -2.54)
(end -4.064 -2.54)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "6d26d68f-1ca7-4ff3-b058-272f1c399047")
)
(fp_line
(start -5.588 -1.27)
(end -5.588 -2.54)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "378af8b4-af3d-46e7-89ae-deff12ca9067")
)
(fp_line
(start -5.588 2.54)
(end -5.588 1.27)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "c830e3bc-dc64-4f65-8f47-3b106bae2807")
)
(fp_line
(start -2.032 -2.54)
(end -1.016 -2.54)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "b7199d9b-bebb-4100-9ad3-c2bd31e21d65")
)
(fp_line
(start -1.016 -2.54)
(end -1.016 -3.048)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "5114c7bf-b955-49f3-a0a8-4b954c81bde0")
)
(fp_line
(start 1.016 -3.048)
(end 1.016 -2.54)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "5ca4be1c-537e-4a4a-b344-d0c8ffde8546")
)
(fp_line
(start 1.016 -2.54)
(end 2.032 -2.54)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "aa2ea573-3f20-43c1-aa99-1f9c6031a9aa")
)
(fp_line
(start 4.064 -2.54)
(end 5.588 -2.54)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "31e08896-1992-4725-96d9-9d2728bca7a3")
)
(fp_line
(start 5.588 -2.54)
(end 5.588 -1.27)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "f2c93195-af12-4d3e-acdf-bdd0ff675c24")
)
(fp_line
(start 5.588 1.27)
(end 5.588 2.54)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "1d9cdadc-9036-4a95-b6db-fa7b3b74c869")
)
(fp_line
(start 5.588 2.54)
(end -5.588 2.54)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "12422a89-3d0c-485c-9386-f77121fd68fd")
)
(fp_circle
(center -6.35 -3.81)
(end -5.85 -3.81)
(stroke
(width 0.12)
(type solid)
)
(fill solid)
(layer "F.SilkS")
(uuid "63489ebf-0f52-43a6-a0ab-158b1a7d4988")
)
(fp_rect
(start -8.89 -5.08)
(end 8.89 2.54)
(stroke
(width 0.05)
(type solid)
)
(fill none)
(layer "F.CrtYd")
(uuid "312474c5-a081-4cd1-b2e6-730f0718514a")
)
(fp_line
(start 4.318 1.27)
(end 5.08 1.27)
(stroke
(width 0.1)
(type solid)
)
(layer "F.Fab")
(uuid "c6462399-f2e4-4f1a-b34a-b49a04c8bdb9")
)
(fp_line
(start 4.318 1.778)
(end 4.318 1.27)
(stroke
(width 0.1)
(type solid)
)
(layer "F.Fab")
(uuid "f284b1e2-75a4-4a3f-a5f4-6f05f15fb4f5")
)
(fp_text user "${REFERENCE}"
(at 0 0 0)
(unlocked yes)
(layer "F.Fab")
(uuid "1bf544e3-5940-4576-9291-2464e95c0ee2")
(effects
(font
(size 1 1)
(thickness 0.15)
)
)
)
(pad "" smd roundrect
(at -6.7 0)
(size 3.43 1.65)
(layers "F.Cu" "F.Paste" "F.Mask")
(roundrect_rratio 0.25)
(uuid "1f3003e6-dce5-420f-906b-3f1e92b67249")
)
(pad "" smd roundrect
(at 6.7 0)
(size 3.43 1.65)
(layers "F.Cu" "F.Paste" "F.Mask")
(roundrect_rratio 0.25)
(uuid "378af8b4-af3d-46e7-89ae-deff12ca9067")
)
(pad "1" smd roundrect
(at -3 -3.2)
(size 1.27 2.54)
(layers "F.Cu" "F.Paste" "F.Mask")
(roundrect_rratio 0.25)
(uuid "ebd06df3-d52b-4cff-99a2-a771df6d3733")
)
(pad "2" smd roundrect
(at 0 -3.2)
(size 1.27 2.54)
(layers "F.Cu" "F.Paste" "F.Mask")
(roundrect_rratio 0.25)
(uuid "8c0807a7-765b-4fa5-baaa-e09a2b610e6b")
)
(pad "3" smd roundrect
(at 3 -3.2)
(size 1.27 2.54)
(layers "F.Cu" "F.Paste" "F.Mask")
(roundrect_rratio 0.25)
(uuid "23e32b5c-4ca6-4614-a426-44d605a7d8fd")
)
(model "${KIPRJMOD}/Symbol_Library/FaSTTUBe_connectors_3dmodels/Micro_Mate-N-Lok_3p_vertical.stp"
(offset
(xyz 0 0 9.24)
)
(scale
(xyz 1 1 1)
)
(rotate
(xyz 0 0 180)
)
)
)

View File

@ -0,0 +1,162 @@
(footprint "Micro_Mate-N-Lok_4p_horizontal"
(version 20240108)
(generator "pcbnew")
(generator_version "8.0")
(layer "F.Cu")
(property "Reference" "REF**"
(at 0 6 0)
(layer "F.SilkS")
(uuid "ef50d2c1-0e62-4706-8b68-e2452d9c5fd4")
(effects
(font
(size 1 1)
(thickness 0.15)
)
)
)
(property "Value" "Micro Mate-N-Lok 4-Pol"
(at 0 -8 0)
(layer "F.Fab")
(uuid "bb457229-68b4-4b83-945a-637be1401348")
(effects
(font
(size 1 1)
(thickness 0.15)
)
)
)
(property "Footprint" "Micro_Mate-N-Lok_4p_horizontal"
(at 0 0 0)
(unlocked yes)
(layer "F.Fab")
(hide yes)
(uuid "079d8040-4210-4d42-adbf-78df5555486a")
(effects
(font
(size 1.27 1.27)
)
)
)
(property "Datasheet" ""
(at 0 0 0)
(unlocked yes)
(layer "F.Fab")
(hide yes)
(uuid "fcf75b4d-cf31-4938-8d91-98c96913608b")
(effects
(font
(size 1.27 1.27)
)
)
)
(property "Description" ""
(at 0 0 0)
(unlocked yes)
(layer "F.Fab")
(hide yes)
(uuid "02b7c0b7-f2bc-4c4a-bbb9-ee95bd4e13a4")
(effects
(font
(size 1.27 1.27)
)
)
)
(attr through_hole)
(fp_line
(start -8 -6.6)
(end 0 -6.6)
(stroke
(width 0.15)
(type solid)
)
(layer "F.CrtYd")
(uuid "f4cd1fce-b403-45a3-a92a-3857709cb56c")
)
(fp_line
(start -8 4.6)
(end -8 -6.6)
(stroke
(width 0.15)
(type solid)
)
(layer "F.CrtYd")
(uuid "3526fd5d-a8e6-4a27-aa45-32fef10ed55f")
)
(fp_line
(start 0 -6.6)
(end 8 -6.6)
(stroke
(width 0.15)
(type solid)
)
(layer "F.CrtYd")
(uuid "03f4dd16-8a03-420f-8a68-36191a32ffe4")
)
(fp_line
(start 8 -6.6)
(end 8 4.6)
(stroke
(width 0.15)
(type solid)
)
(layer "F.CrtYd")
(uuid "d49171d5-f3c7-45c1-9821-1d65b3ba6318")
)
(fp_line
(start 8 4.6)
(end -8 4.6)
(stroke
(width 0.15)
(type solid)
)
(layer "F.CrtYd")
(uuid "e8c1a284-6a9b-4d71-98eb-f0dd08599d22")
)
(pad "" smd rect
(at -8.2 0.4)
(size 3.43 1.65)
(layers "F.Cu" "F.Paste" "F.Mask")
(uuid "0a7c31da-37e8-4b35-b91e-598647bff19a")
)
(pad "" smd rect
(at 8.21 0.4)
(size 3.43 1.65)
(layers "F.Cu" "F.Paste" "F.Mask")
(uuid "7ef71d41-fba9-437b-be73-fcee65569b67")
)
(pad "1" smd rect
(at -4.5 -5.08)
(size 1.27 3)
(layers "F.Cu" "F.Paste" "F.Mask")
(uuid "0a9dc2f2-40cc-4fe5-91eb-a00b39df41b5")
)
(pad "2" smd rect
(at -1.5 -5.08)
(size 1.27 3)
(layers "F.Cu" "F.Paste" "F.Mask")
(uuid "cc7d6477-c8fd-4981-8d4d-d9bb40027ea3")
)
(pad "3" smd rect
(at 1.5 -5.08)
(size 1.27 3)
(layers "F.Cu" "F.Paste" "F.Mask")
(uuid "cf4238fc-03a7-4d24-8e80-fbb9fbba7c6c")
)
(pad "4" smd rect
(at 4.5 -5.08)
(size 1.27 3)
(layers "F.Cu" "F.Paste" "F.Mask")
(uuid "b087509a-c9dc-41f9-aa80-5f770222a1d3")
)
(model "${KIPRJMOD}/Symbol_Library/FaSTTUBe_connectors_3dmodels/Micro_Mate-N-Lok_4p_horizontal.stp"
(offset
(xyz 0 -5 2.5)
)
(scale
(xyz 1 1 1)
)
(rotate
(xyz -90 0 0)
)
)
)

View File

@ -0,0 +1,280 @@
(footprint "Micro_Mate-N-Lok_4p_vertical"
(version 20240108)
(generator "pcbnew")
(generator_version "8.0")
(layer "F.Cu")
(property "Reference" "REF**"
(at 0 6 0)
(layer "F.SilkS")
(uuid "28c42959-8e72-4709-83e0-fbb99eade23c")
(effects
(font
(size 1 1)
(thickness 0.15)
)
)
)
(property "Value" "Micro_Mate-N-Lok_4p_vertical"
(at 0 -5.75 0)
(layer "F.Fab")
(uuid "83616a1b-53cb-4bc4-bfc7-a340c75ffaa4")
(effects
(font
(size 1 1)
(thickness 0.15)
)
)
)
(property "Footprint" ""
(at 0 0 0)
(unlocked yes)
(layer "F.Fab")
(hide yes)
(uuid "12aa2db0-bc7b-4277-a5be-0abf3a4d6178")
(effects
(font
(size 1.27 1.27)
)
)
)
(property "Datasheet" ""
(at 0 0 0)
(unlocked yes)
(layer "F.Fab")
(hide yes)
(uuid "e5a4c798-7965-4741-8a86-fa6aead0c885")
(effects
(font
(size 1.27 1.27)
)
)
)
(property "Description" ""
(at 0 0 0)
(unlocked yes)
(layer "F.Fab")
(hide yes)
(uuid "3dd0da33-bff9-4bb1-b9fe-1d3c96531efc")
(effects
(font
(size 1.27 1.27)
)
)
)
(attr smd)
(fp_line
(start -8.25 1.25)
(end -7 1.25)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "ce87f310-f0ba-406a-b736-4ce38509611a")
)
(fp_line
(start -7 -2.5)
(end -5.5 -2.5)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "9d599c6e-ce87-40a6-8808-1c09f41e6d87")
)
(fp_line
(start -7 -1.25)
(end -8.25 -1.25)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "f47134a4-be82-4ad4-a1ad-bf72ff4ae546")
)
(fp_line
(start -7 -1.25)
(end -7 -2.5)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "7867b632-d2fd-4db9-9675-d8279a64bbd8")
)
(fp_line
(start -7 1.25)
(end -7 2.5)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "f2227206-4c84-434c-b85d-b3d50163b425")
)
(fp_line
(start -7 2.5)
(end 7 2.5)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "c48a8f6a-aabd-46bb-b189-6c52e59ce28e")
)
(fp_line
(start -3.5 -2.5)
(end -2.5 -2.5)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "9264500c-9af3-4dc7-9fd6-bcf2403182e5")
)
(fp_line
(start -0.5 -3.25)
(end 0.5 -3.25)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "9eb142f5-c818-4799-9b6e-f56193c12346")
)
(fp_line
(start 2.5 -2.5)
(end 3.5 -2.5)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "f744641e-4674-436f-97f8-bda7558362c2")
)
(fp_line
(start 5.5 -2.5)
(end 7 -2.5)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "6d0c9227-9fa4-4fdd-a7a1-f5cf102ac4cd")
)
(fp_line
(start 7 -2.5)
(end 7 -1.25)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "ca04d088-9d6e-44be-a42b-87756ac6b0e4")
)
(fp_line
(start 7 1.25)
(end 8.25 1.25)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "23416e5d-9e80-4232-bc36-57f7ae89601a")
)
(fp_line
(start 7 2.5)
(end 7 1.25)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "08f73a32-8b79-4586-8a34-9772d25ce1d2")
)
(fp_line
(start 8.25 -1.25)
(end 7 -1.25)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "b102087c-eb25-4b44-aa8b-3c782cbfd9bc")
)
(fp_circle
(center 8 -3.5)
(end 8.5 -3.5)
(stroke
(width 0.12)
(type solid)
)
(fill solid)
(layer "F.SilkS")
(uuid "89197813-1f34-412e-b0f2-543175929a5d")
)
(fp_rect
(start -10 -4.75)
(end 10 2.5)
(stroke
(width 0.12)
(type solid)
)
(fill none)
(layer "F.CrtYd")
(uuid "2e955124-6939-410c-81be-086896fd0cd7")
)
(pad "" smd roundrect
(at -8.2 0)
(size 3.43 1.65)
(layers "F.Cu" "F.Paste" "F.Mask")
(roundrect_rratio 0.25)
(uuid "5f7505cc-53a6-463b-b397-33ff845b1ac0")
)
(pad "" smd roundrect
(at 8.2 0)
(size 3.43 1.65)
(layers "F.Cu" "F.Paste" "F.Mask")
(roundrect_rratio 0.25)
(uuid "a1223b95-aa11-427a-b201-9190a86a68be")
)
(pad "1" smd roundrect
(at 4.5 -3.2)
(size 1.27 2.54)
(layers "F.Cu" "F.Paste" "F.Mask")
(roundrect_rratio 0.25)
(uuid "e7f989f7-95da-4be3-9e33-743523ae1ee0")
)
(pad "2" smd roundrect
(at 1.5 -3.2)
(size 1.27 2.54)
(layers "F.Cu" "F.Paste" "F.Mask")
(roundrect_rratio 0.25)
(uuid "35e13391-5257-46f3-93a5-87ffd4e862a4")
)
(pad "3" smd roundrect
(at -1.5 -3.2)
(size 1.27 2.54)
(layers "F.Cu" "F.Paste" "F.Mask")
(roundrect_rratio 0.25)
(uuid "8a3381a5-19d1-47f5-85b0-cf20b0f3bb61")
)
(pad "4" smd roundrect
(at -4.5 -3.2)
(size 1.27 2.54)
(layers "F.Cu" "F.Paste" "F.Mask")
(roundrect_rratio 0.25)
(uuid "cc93ecb4-fd7b-48b7-868d-89f294f07c27")
)
(model "${KIPRJMOD}/Symbol_Library/FaSTTUBe_connectors_3dmodels/Micro_Mate-N-Lok_4p_vertical.stp"
(offset
(xyz 0 0 9.25)
)
(scale
(xyz 1 1 1)
)
(rotate
(xyz 0 0 180)
)
)
)

View File

@ -0,0 +1,37 @@
(footprint "Micro_Mate-N-Lok_5p_horizontal" (version 20211014) (generator pcbnew)
(layer "F.Cu")
(tedit 6222BCDB)
(attr smd)
(fp_text reference "REF**" (at 0 6) (layer "F.SilkS")
(effects (font (size 1 1) (thickness 0.15)))
(tstamp 28c42959-8e72-4709-83e0-fbb99eade23c)
)
(fp_text value "Micro_Mate-N-Lok_5p_horizontal" (at 0 -8) (layer "F.Fab")
(effects (font (size 1 1) (thickness 0.15)))
(tstamp 83616a1b-53cb-4bc4-bfc7-a340c75ffaa4)
)
(fp_line (start 1 -4.5) (end 2 -4.5) (layer "F.SilkS") (width 0.12) (tstamp 0c2378e7-98b6-4341-a606-7013471a0b87))
(fp_line (start 8.5 -1.25) (end 8.5 -4.5) (layer "F.SilkS") (width 0.12) (tstamp 0f77f43f-3a88-4d2e-98b4-1d0b86a7bc90))
(fp_line (start -2 -4.5) (end -1 -4.5) (layer "F.SilkS") (width 0.12) (tstamp 1009eeb8-4be8-49ff-871d-1e30079ffe54))
(fp_line (start 8.5 1.25) (end 9.75 1.25) (layer "F.SilkS") (width 0.12) (tstamp 23416e5d-9e80-4232-bc36-57f7ae89601a))
(fp_line (start -8.5 4.75) (end 8.5 4.75) (layer "F.SilkS") (width 0.12) (tstamp 279041df-5701-40f8-b43b-c55f9f224924))
(fp_line (start -8.5 -1.25) (end -8.5 -4.5) (layer "F.SilkS") (width 0.12) (tstamp 68d357fe-ef13-4a8c-b5b7-37c38f47c25e))
(fp_line (start 4 -4.5) (end 5 -4.5) (layer "F.SilkS") (width 0.12) (tstamp 706b9dd2-3531-464e-accb-a6626ab67dbc))
(fp_line (start 7 -4.5) (end 8.5 -4.5) (layer "F.SilkS") (width 0.12) (tstamp 84172753-dc4b-4e2f-8009-fedcb93b8b2e))
(fp_line (start -5 -4.5) (end -4 -4.5) (layer "F.SilkS") (width 0.12) (tstamp afc5f493-e4c7-4a7e-91ca-7829b912a44e))
(fp_line (start 9.75 -1.25) (end 8.5 -1.25) (layer "F.SilkS") (width 0.12) (tstamp b102087c-eb25-4b44-aa8b-3c782cbfd9bc))
(fp_line (start -8.5 -4.5) (end -7 -4.5) (layer "F.SilkS") (width 0.12) (tstamp b5b9cc39-57c4-4b34-9753-47ab693cf9f1))
(fp_line (start -9.75 1.25) (end -8.5 1.25) (layer "F.SilkS") (width 0.12) (tstamp ce87f310-f0ba-406a-b736-4ce38509611a))
(fp_line (start 8.5 4.75) (end 8.5 1.25) (layer "F.SilkS") (width 0.12) (tstamp de13e0f2-e58c-4cc2-84c5-b6bd1aedd8ac))
(fp_line (start -8.5 1.25) (end -8.5 4.75) (layer "F.SilkS") (width 0.12) (tstamp e10569ca-2487-43d7-a8dd-e670b1d7b741))
(fp_line (start -8.5 -1.25) (end -9.75 -1.25) (layer "F.SilkS") (width 0.12) (tstamp f47134a4-be82-4ad4-a1ad-bf72ff4ae546))
(fp_circle (center 9.5 -5.5) (end 10 -5.5) (layer "F.SilkS") (width 0.12) (fill solid) (tstamp dd4a80cf-aed1-4f7b-aa49-7e5204dd2cc9))
(fp_rect (start -11.5 -7) (end 11.5 4.75) (layer "Margin") (width 0.12) (fill none) (tstamp 2e955124-6939-410c-81be-086896fd0cd7))
(pad "" smd roundrect (at -9.7 0) (size 3.43 1.65) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (tstamp 5f7505cc-53a6-463b-b397-33ff845b1ac0))
(pad "" smd roundrect (at 9.7 0) (size 3.43 1.65) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (tstamp a1223b95-aa11-427a-b201-9190a86a68be))
(pad "1" smd roundrect (at 6 -5.48) (size 1.27 2.92) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (tstamp e7f989f7-95da-4be3-9e33-743523ae1ee0))
(pad "2" smd roundrect (at 3 -5.48) (size 1.27 2.92) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (tstamp 35e13391-5257-46f3-93a5-87ffd4e862a4))
(pad "3" smd roundrect (at 0 -5.48) (size 1.27 2.92) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (tstamp 8a3381a5-19d1-47f5-85b0-cf20b0f3bb61))
(pad "4" smd roundrect (at -3 -5.48) (size 1.27 2.92) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (tstamp cc93ecb4-fd7b-48b7-868d-89f294f07c27))
(pad "5" smd roundrect (at -6 -5.48) (size 1.27 2.92) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (tstamp e8d050f3-37eb-408d-9e54-fd52bfb37550))
)

View File

@ -0,0 +1,387 @@
(footprint "Micro_Mate-N-Lok_6p_horizontal"
(version 20240108)
(generator "pcbnew")
(generator_version "8.0")
(layer "F.Cu")
(tags "2-1445057-6 ")
(property "Reference" "REF**"
(at 7.499998 0 0)
(unlocked yes)
(layer "F.SilkS")
(uuid "adce82a1-4557-4717-8313-a84e8b6fcb1e")
(effects
(font
(size 1 1)
(thickness 0.15)
)
)
)
(property "Value" "CONN_2-1445057-6_TYCO"
(at 7.499998 0 0)
(unlocked yes)
(layer "F.Fab")
(uuid "a65e54e2-08a9-4969-8fd8-8520b41b0215")
(effects
(font
(size 1 1)
(thickness 0.15)
)
)
)
(property "Footprint" "Micro_Mate-N-Lok_6p_horizontal"
(at 0 0 0)
(unlocked yes)
(layer "F.Fab")
(hide yes)
(uuid "dba17554-0e94-4434-873d-7da76c6b2195")
(effects
(font
(size 1.27 1.27)
)
)
)
(property "Datasheet" ""
(at 0 0 0)
(unlocked yes)
(layer "F.Fab")
(hide yes)
(uuid "2eb90e3e-5c62-4db8-8068-709f9f757f48")
(effects
(font
(size 1.27 1.27)
)
)
)
(property "Description" ""
(at 0 0 0)
(unlocked yes)
(layer "F.Fab")
(hide yes)
(uuid "aeeddb8f-5f2d-473a-98c7-721ae995929d")
(effects
(font
(size 1.27 1.27)
)
)
)
(attr smd)
(fp_line
(start -3.828402 -9.5758)
(end -3.828402 -6.68274)
(stroke
(width 0.1524)
(type solid)
)
(layer "F.SilkS")
(uuid "08d3c1fe-0825-4f75-b162-534b9ccde19d")
)
(fp_line
(start -3.828402 -4.29006)
(end -3.828402 -1.3716)
(stroke
(width 0.1524)
(type solid)
)
(layer "F.SilkS")
(uuid "147351cc-1ec0-4458-b9fd-5393e27be230")
)
(fp_line
(start -3.828402 -1.3716)
(end -1.00584 -1.3716)
(stroke
(width 0.1524)
(type solid)
)
(layer "F.SilkS")
(uuid "51824d62-2351-49b8-9ea0-e07a1c212c18")
)
(fp_line
(start 1.00584 -1.3716)
(end 1.994159 -1.3716)
(stroke
(width 0.1524)
(type solid)
)
(layer "F.SilkS")
(uuid "9a10a972-21f8-4698-a82f-3e7b48a348fa")
)
(fp_line
(start 4.005839 -1.3716)
(end 4.994158 -1.3716)
(stroke
(width 0.1524)
(type solid)
)
(layer "F.SilkS")
(uuid "95ae1fdb-0f27-4465-a7de-b22e97558c17")
)
(fp_line
(start 7.005838 -1.3716)
(end 7.994158 -1.3716)
(stroke
(width 0.1524)
(type solid)
)
(layer "F.SilkS")
(uuid "e48f9111-b0f6-419b-b2cd-ff880cf1f045")
)
(fp_line
(start 10.005838 -1.3716)
(end 10.994157 -1.3716)
(stroke
(width 0.1524)
(type solid)
)
(layer "F.SilkS")
(uuid "520d98a1-e0b1-4c22-93a4-62c6669a5512")
)
(fp_line
(start 13.005837 -1.3716)
(end 13.994156 -1.3716)
(stroke
(width 0.1524)
(type solid)
)
(layer "F.SilkS")
(uuid "e073b891-1403-4840-b2d8-15f35c22eab2")
)
(fp_line
(start 16.005836 -1.3716)
(end 18.828398 -1.3716)
(stroke
(width 0.1524)
(type solid)
)
(layer "F.SilkS")
(uuid "dc11d689-1a72-4de5-9f48-3ef6d05f8d57")
)
(fp_line
(start 18.828398 -9.5758)
(end -3.828402 -9.5758)
(stroke
(width 0.1524)
(type solid)
)
(layer "F.SilkS")
(uuid "57d8fe9b-e720-4c5c-ab0b-f83c41aff34c")
)
(fp_line
(start 18.828398 -6.68274)
(end 18.828398 -9.5758)
(stroke
(width 0.1524)
(type solid)
)
(layer "F.SilkS")
(uuid "b5ff2e0f-af9f-41a1-a1ba-6948d88d41c6")
)
(fp_line
(start 18.828398 -1.3716)
(end 18.828398 -4.29006)
(stroke
(width 0.1524)
(type solid)
)
(layer "F.SilkS")
(uuid "e51fca39-9df8-4ac6-94b2-dd909d8f42a0")
)
(fp_line
(start -5.708002 -9.7028)
(end -5.708002 1.7526)
(stroke
(width 0.1524)
(type solid)
)
(layer "F.CrtYd")
(uuid "bfd9501e-aa61-45eb-959e-bc3f8f756ae8")
)
(fp_line
(start -5.708002 1.7526)
(end 20.707998 1.7526)
(stroke
(width 0.1524)
(type solid)
)
(layer "F.CrtYd")
(uuid "72916b73-0392-47ba-ab46-881c49d0dbb8")
)
(fp_line
(start 20.707998 -9.7028)
(end -5.708002 -9.7028)
(stroke
(width 0.1524)
(type solid)
)
(layer "F.CrtYd")
(uuid "0c2723e2-2ac3-47c2-9f08-4597faba3174")
)
(fp_line
(start 20.707998 1.7526)
(end 20.707998 -9.7028)
(stroke
(width 0.1524)
(type solid)
)
(layer "F.CrtYd")
(uuid "4fa3fef6-116a-48eb-b2dd-dd42c11e3699")
)
(fp_line
(start -3.701402 -9.4488)
(end -3.701402 -1.4986)
(stroke
(width 0.0254)
(type solid)
)
(layer "F.Fab")
(uuid "443c5350-501a-449c-8088-077d11b49ab4")
)
(fp_line
(start -3.701402 -1.4986)
(end 18.701398 -1.4986)
(stroke
(width 0.0254)
(type solid)
)
(layer "F.Fab")
(uuid "83a90569-63a8-45f0-8e5b-d32cd4ab7816")
)
(fp_line
(start 18.701398 -9.4488)
(end -3.701402 -9.4488)
(stroke
(width 0.0254)
(type solid)
)
(layer "F.Fab")
(uuid "aaf3da72-c5e7-47b5-b346-45752c02f32a")
)
(fp_line
(start 18.701398 -1.4986)
(end 18.701398 -9.4488)
(stroke
(width 0.0254)
(type solid)
)
(layer "F.Fab")
(uuid "d1ff721d-2c8c-44d5-a4fb-8da902aac061")
)
(fp_text user "1"
(at -1.3462 0 0)
(unlocked yes)
(layer "F.Fab")
(uuid "1c4e9561-fa21-45ae-bad5-3d4b582ded44")
(effects
(font
(size 1 1)
(thickness 0.15)
)
)
)
(fp_text user "${REFERENCE}"
(at 7.499998 0 0)
(unlocked yes)
(layer "F.Fab")
(uuid "8f66538d-f674-4992-8459-fe890a15a67c")
(effects
(font
(size 1 1)
(thickness 0.15)
)
)
)
(fp_text user "1"
(at -1.3462 0 0)
(unlocked yes)
(layer "F.Fab")
(uuid "b0bc78c1-7bfb-43dd-8135-84a990e8ab0f")
(effects
(font
(size 1 1)
(thickness 0.15)
)
)
)
(fp_text user "6"
(at 16.346196 0 0)
(unlocked yes)
(layer "F.Fab")
(uuid "c980427e-4c42-4fac-9b94-a0c5b0f6176a")
(effects
(font
(size 1 1)
(thickness 0.15)
)
)
)
(fp_text user "6"
(at 16.346196 0 0)
(unlocked yes)
(layer "F.Fab")
(uuid "e3289544-2d60-4fcb-810a-b872d9ca0e0c")
(effects
(font
(size 1 1)
(thickness 0.15)
)
)
)
(pad "1" smd rect
(at 0 0)
(size 1.3462 2.9972)
(layers "F.Cu" "F.Paste" "F.Mask")
(uuid "34d5bfc4-d64b-4021-89ab-d340bf923c22")
)
(pad "2" smd rect
(at 2.999999 0)
(size 1.3462 2.9972)
(layers "F.Cu" "F.Paste" "F.Mask")
(uuid "20aedafe-9165-46e0-ae0d-f83bcf98dfe8")
)
(pad "3" smd rect
(at 5.999998 0)
(size 1.3462 2.9972)
(layers "F.Cu" "F.Paste" "F.Mask")
(uuid "ee0efc5e-6d32-47d5-a253-cc6f2dd1794b")
)
(pad "4" smd rect
(at 8.999998 0)
(size 1.3462 2.9972)
(layers "F.Cu" "F.Paste" "F.Mask")
(uuid "d30f3a05-6553-4fac-b3a3-8e36be4346cb")
)
(pad "5" smd rect
(at 11.999997 0)
(size 1.3462 2.9972)
(layers "F.Cu" "F.Paste" "F.Mask")
(uuid "ed6b2703-8877-4666-9450-31b83d311c9a")
)
(pad "6" smd rect
(at 14.999996 0)
(size 1.3462 2.9972)
(layers "F.Cu" "F.Paste" "F.Mask")
(uuid "0cb0af59-dbba-474c-9c6a-b3e292d889e5")
)
(pad "11" smd rect
(at -3.701402 -5.4864)
(size 3.5052 1.7272)
(layers "F.Cu" "F.Paste" "F.Mask")
(uuid "544222b5-ecf8-4091-b919-39738dde14be")
)
(pad "12" smd rect
(at 18.701398 -5.4864)
(size 3.5052 1.7272)
(layers "F.Cu" "F.Paste" "F.Mask")
(uuid "0fb20c6e-8602-4166-b2a3-9505b3ed67e9")
)
(model "${KIPRJMOD}/Symbol_Library/FaSTTUBe_connectors_3dmodels/Micro_Mate-N-Lok_6p_horizontal.stp"
(offset
(xyz 7.5 10 2.5)
)
(scale
(xyz 1 1 1)
)
(rotate
(xyz -90 0 180)
)
)
)

View File

@ -0,0 +1,24 @@
(footprint "M8_718_4pin_horizontal" (version 20211014) (generator pcbnew)
(layer "F.Cu")
(tedit 62012B89)
(attr through_hole)
(fp_text reference "REF**" (at 0 3.81) (layer "F.SilkS")
(effects (font (size 1 1) (thickness 0.15)))
(tstamp b680b4a7-6cb0-40b5-a7ec-a02910a0daa4)
)
(fp_text value "M8_718_4pin" (at 0 -7.62) (layer "F.Fab")
(effects (font (size 1 1) (thickness 0.15)))
(tstamp c5a1761e-3391-4e74-90c9-947fd66e1fc6)
)
(pad "1" thru_hole circle (at 1.7 0) (size 1.8 1.8) (drill 1.3) (layers *.Cu *.Mask) (tstamp a1c7b1f5-f895-4192-9484-2357882c73e0))
(pad "2" thru_hole circle (at 1.075 -1.95) (size 1.8 1.8) (drill 1.3) (layers *.Cu *.Mask) (tstamp 681bd495-c396-44ce-92bd-4b397cd48c04))
(pad "3" thru_hole circle (at -1.7 0) (size 1.8 1.8) (drill 1.3) (layers *.Cu *.Mask) (tstamp be0953c0-632d-4dd2-85e9-4d41239f22d2))
(pad "4" thru_hole circle (at -1.075 -1.95) (size 1.8 1.8) (drill 1.3) (layers *.Cu *.Mask) (tstamp a3668681-09b1-48f0-a7b1-f6b24183a469))
(pad "5" thru_hole circle (at 6.25 -0.5) (size 4 4) (drill 3) (layers *.Cu *.Mask) (tstamp 3451168c-3c76-4628-aee4-7c231bd100c3))
(pad "5" thru_hole circle (at -6.25 -0.5) (size 4 4) (drill 3) (layers *.Cu *.Mask) (tstamp 563c12e4-8f8c-446c-a11f-94f5aa93b994))
(model "${KIPRJMOD}/libraries/FaSTTUBe_connectors_3dmodels/M8_718_4pin_horizontal.stp"
(offset (xyz 0 -2.65 6.3))
(scale (xyz 1 1 1))
(rotate (xyz 90 0 90))
)
)

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,27 @@
(footprint "M8_718_4pin_vertical" (version 20211014) (generator pcbnew)
(layer "F.Cu")
(tedit 620DC4C4)
(attr through_hole)
(fp_text reference "REF**" (at 0 8) (layer "F.SilkS")
(effects (font (size 1 1) (thickness 0.15)))
(tstamp b680b4a7-6cb0-40b5-a7ec-a02910a0daa4)
)
(fp_text value "M8_718_4pin" (at 0 -7.62) (layer "F.Fab")
(effects (font (size 1 1) (thickness 0.15)))
(tstamp c5a1761e-3391-4e74-90c9-947fd66e1fc6)
)
(fp_arc (start 6 2.5) (mid 0 6.5) (end -6 2.5) (layer "F.SilkS") (width 0.12) (tstamp a7f25f41-0b4c-4430-b6cd-b2160b2db099))
(fp_arc (start -6 -2.5) (mid 0 -6.5) (end 6 -2.5) (layer "F.SilkS") (width 0.12) (tstamp b287f145-851e-45cc-b200-e62677b551d5))
(fp_circle (center 0 0) (end 8.5 0) (layer "F.CrtYd") (width 0.05) (fill none) (tstamp 422b10b9-e829-44a2-8808-05edd8cb3050))
(pad "1" thru_hole circle (at 1.7 0.5) (size 1.8 1.8) (drill 1.3) (layers *.Cu *.Mask) (tstamp a1c7b1f5-f895-4192-9484-2357882c73e0))
(pad "2" thru_hole circle (at 1.075 -1.45) (size 1.8 1.8) (drill 1.3) (layers *.Cu *.Mask) (tstamp 681bd495-c396-44ce-92bd-4b397cd48c04))
(pad "3" thru_hole circle (at -1.7 0.5) (size 1.8 1.8) (drill 1.3) (layers *.Cu *.Mask) (tstamp be0953c0-632d-4dd2-85e9-4d41239f22d2))
(pad "4" thru_hole circle (at -1.075 -1.45) (size 1.8 1.8) (drill 1.3) (layers *.Cu *.Mask) (tstamp a3668681-09b1-48f0-a7b1-f6b24183a469))
(pad "5" thru_hole circle (at 6.25 0) (size 4 4) (drill 3) (layers *.Cu *.Mask) (tstamp 3451168c-3c76-4628-aee4-7c231bd100c3))
(pad "5" thru_hole circle (at -6.25 0) (size 4 4) (drill 3) (layers *.Cu *.Mask) (tstamp 563c12e4-8f8c-446c-a11f-94f5aa93b994))
(model "${KIPRJMOD}/libraries/FaSTTUBe_connectors_3dmodels/M8_718_4pin_vertical.stp"
(offset (xyz 0 0 0.6))
(scale (xyz 1 1 1))
(rotate (xyz 90 90 90))
)
)

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,17 @@
(module "Micro Mate-N-Lok 2-Pol" (layer F.Cu) (tedit 5CE9F075)
(fp_text reference REF** (at 0 7.6) (layer F.SilkS)
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_text value "Micro Mate-N-Lok 2-Pol" (at 0 -6.22) (layer F.Fab)
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_line (start 0 -5.4) (end 5 -5.4) (layer F.CrtYd) (width 0.15))
(fp_line (start 5 -5.4) (end 5 6.2) (layer F.CrtYd) (width 0.15))
(fp_line (start 5 6.2) (end -5 6.2) (layer F.CrtYd) (width 0.15))
(fp_line (start -5 6.2) (end -5 -5.4) (layer F.CrtYd) (width 0.15))
(fp_line (start -5 -5.4) (end 0 -5.4) (layer F.CrtYd) (width 0.15))
(pad 1 smd rect (at -1.5 -3.88) (size 1.27 3) (layers F.Cu F.Paste F.Mask))
(pad 2 smd rect (at 1.5 -3.88) (size 1.27 3) (layers F.Cu F.Paste F.Mask))
(pad "" smd rect (at -5.2 1.6) (size 3.43 1.65) (layers F.Cu F.Paste F.Mask))
(pad "" smd rect (at 5.21 1.6) (size 3.43 1.65) (layers F.Cu F.Paste F.Mask))
)

View File

@ -0,0 +1,38 @@
(footprint "Micro_Mate-N-Lok_2p_vertical" (version 20211014) (generator pcbnew)
(layer "F.Cu")
(tedit 62086176)
(attr smd)
(fp_text reference "REF**" (at 0 3.81 unlocked) (layer "F.SilkS")
(effects (font (size 1 1) (thickness 0.15)))
(tstamp 42713045-fffd-4b2d-ae1e-7232d705fb12)
)
(fp_text value "Micro_Mate-N-Lok_2p_vertical" (at 0 1 unlocked) (layer "F.Fab")
(effects (font (size 1 1) (thickness 0.15)))
(tstamp c0515cd2-cdaa-467e-8354-0f6eadfa35c9)
)
(fp_text user "${REFERENCE}" (at 0 0 unlocked) (layer "F.Fab")
(effects (font (size 1 1) (thickness 0.15)))
(tstamp 1bf544e3-5940-4576-9291-2464e95c0ee2)
)
(fp_line (start -3.81 2.54) (end 3.81 2.54) (layer "F.SilkS") (width 0.12) (tstamp 1c052668-6749-425a-9a77-35f046c8aa39))
(fp_line (start 3.81 2.54) (end 3.81 1.27) (layer "F.SilkS") (width 0.12) (tstamp 25ca9482-069d-43de-b77e-6f2ad77fa017))
(fp_line (start 3.81 -2.54) (end 3.81 -1.27) (layer "F.SilkS") (width 0.12) (tstamp 2b894b8a-c098-4d9d-be0f-2ef41dea274e))
(fp_line (start -3.81 -2.54) (end -2.54 -2.54) (layer "F.SilkS") (width 0.12) (tstamp 3742a313-c63e-4807-a7bf-be5a0ae2c781))
(fp_line (start -0.508 -3.302) (end 0.508 -3.302) (layer "F.SilkS") (width 0.12) (tstamp 4ba06b66-7669-4c70-b585-f5d4c9c33527))
(fp_line (start -3.81 -1.27) (end -3.81 -2.54) (layer "F.SilkS") (width 0.12) (tstamp 5e27f565-c85a-4f3b-9862-58c0accdd5e3))
(fp_line (start -3.81 2.54) (end -3.81 1.27) (layer "F.SilkS") (width 0.12) (tstamp d35d7027-ac1b-44b2-9664-3d8a37ee0f4e))
(fp_line (start 2.54 -2.54) (end 3.81 -2.54) (layer "F.SilkS") (width 0.12) (tstamp e8558fbd-ea42-43a6-966a-7bd304bdfaad))
(fp_circle (center -5.08 -3.81) (end -4.58 -3.81) (layer "F.SilkS") (width 0.12) (fill solid) (tstamp 63489ebf-0f52-43a6-a0ab-158b1a7d4988))
(fp_rect (start -7.62 -5.08) (end 7.62 2.54) (layer "F.CrtYd") (width 0.05) (fill none) (tstamp 312474c5-a081-4cd1-b2e6-730f0718514a))
(fp_line (start 4.318 1.27) (end 5.08 1.27) (layer "F.Fab") (width 0.1) (tstamp c6462399-f2e4-4f1a-b34a-b49a04c8bdb9))
(fp_line (start 4.318 1.778) (end 4.318 1.27) (layer "F.Fab") (width 0.1) (tstamp f284b1e2-75a4-4a3f-a5f4-6f05f15fb4f5))
(pad "" smd roundrect (at -5.2 0) (size 3.43 1.65) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (tstamp 1f3003e6-dce5-420f-906b-3f1e92b67249))
(pad "" smd roundrect (at 5.2 0) (size 3.43 1.65) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (tstamp 378af8b4-af3d-46e7-89ae-deff12ca9067))
(pad "1" smd roundrect (at -1.5 -3.2) (size 1.27 2.54) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (tstamp ebd06df3-d52b-4cff-99a2-a771df6d3733))
(pad "2" smd roundrect (at 1.5 -3.2) (size 1.27 2.54) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (tstamp 8c0807a7-765b-4fa5-baaa-e09a2b610e6b))
(model "${KIPRJMOD}/libraries/FaSTTUBe_connectors_3dmodels/Micro_Mate-N-Lok_2p_vertical.stp"
(offset (xyz 0 0 9.24))
(scale (xyz 1 1 1))
(rotate (xyz 0 0 180))
)
)

View File

@ -0,0 +1,63 @@
(footprint "Micro_Mate-N-Lok_2x2p_vertical" (version 20221018) (generator pcbnew)
(layer "F.Cu")
(descr "3-794636-4-1")
(tags "Connector")
(attr smd)
(fp_text reference "J**" (at 0 0) (layer "F.SilkS")
(effects (font (size 1.27 1.27) (thickness 0.254)))
(tstamp de6dbf15-ae79-4d66-abac-08480863616c)
)
(fp_text value "37946364" (at 0 0) (layer "F.SilkS") hide
(effects (font (size 1.27 1.27) (thickness 0.254)))
(tstamp 73454dd1-5b2b-42e4-bdce-e925fb2d75ff)
)
(fp_text user "${REFERENCE}" (at 0 0) (layer "F.Fab")
(effects (font (size 1.27 1.27) (thickness 0.254)))
(tstamp d7049f25-a0b9-4b2a-a477-c08baaf2a2f1)
)
(fp_line (start -3.43 -3.43) (end -3.43 -1.5)
(stroke (width 0.1) (type solid)) (layer "F.SilkS") (tstamp 3919c0b8-6dc3-4513-a330-0a8e3b796879))
(fp_line (start -3.43 1.5) (end -3.43 3.43)
(stroke (width 0.1) (type solid)) (layer "F.SilkS") (tstamp e3e68613-03be-4857-8287-eb53d4cf9588))
(fp_line (start -3.43 3.43) (end -2.5 3.43)
(stroke (width 0.1) (type solid)) (layer "F.SilkS") (tstamp dcf44124-9aed-4edf-b196-d989bdbd713f))
(fp_line (start -2.5 -3.43) (end -3.43 -3.43)
(stroke (width 0.1) (type solid)) (layer "F.SilkS") (tstamp a588c100-9eca-40d6-8abd-e0275b930252))
(fp_line (start 2.5 -3.43) (end 3.43 -3.43)
(stroke (width 0.1) (type solid)) (layer "F.SilkS") (tstamp 556702ed-84d9-4a47-8332-8821b9cc612a))
(fp_line (start 2.5 3.43) (end 3.43 3.43)
(stroke (width 0.1) (type solid)) (layer "F.SilkS") (tstamp 9dc23f8e-47a7-4a21-bc6c-32ab048af2b4))
(fp_line (start 3.43 -3.43) (end 3.43 -1.5)
(stroke (width 0.1) (type solid)) (layer "F.SilkS") (tstamp 1af06253-8ae9-4f4f-8dfe-1d65d2498836))
(fp_line (start 3.43 3.43) (end 3.43 1.5)
(stroke (width 0.1) (type solid)) (layer "F.SilkS") (tstamp 5d70b46a-35e1-4fbe-a3be-0ff620fe9f5f))
(fp_circle (center 4 5) (end 4.5 5)
(stroke (width 0.12) (type solid)) (fill solid) (layer "F.SilkS") (tstamp 1d1c915d-d05a-49d2-98a2-39f7b79b9eed))
(fp_line (start -7.85 -6.97) (end 7.85 -6.97)
(stroke (width 0.1) (type solid)) (layer "F.CrtYd") (tstamp 46c86f80-ccb8-42ef-a07e-87ae7e134f6b))
(fp_line (start -7.85 6.97) (end -7.85 -6.97)
(stroke (width 0.1) (type solid)) (layer "F.CrtYd") (tstamp 06f3ff96-1ab8-4145-8420-bff1d8501e6d))
(fp_line (start 7.85 -6.97) (end 7.85 6.97)
(stroke (width 0.1) (type solid)) (layer "F.CrtYd") (tstamp 845cc01b-b5e3-40a0-ab45-c48320a01ad9))
(fp_line (start 7.85 6.97) (end -7.85 6.97)
(stroke (width 0.1) (type solid)) (layer "F.CrtYd") (tstamp 1229a783-aa67-4fe4-b14d-11556dfd076d))
(fp_line (start -3.43 -3.43) (end 3.43 -3.43)
(stroke (width 0.2) (type solid)) (layer "F.Fab") (tstamp 202aafd5-7f0f-467b-9759-31af9730614e))
(fp_line (start -3.43 3.43) (end -3.43 -3.43)
(stroke (width 0.2) (type solid)) (layer "F.Fab") (tstamp a068ed0e-d660-403e-b910-b1c022a00a69))
(fp_line (start 3.43 -3.43) (end 3.43 3.43)
(stroke (width 0.2) (type solid)) (layer "F.Fab") (tstamp d5ad8bbd-4dd2-495b-b849-ac6d164ceb16))
(fp_line (start 3.43 3.43) (end -3.43 3.43)
(stroke (width 0.2) (type solid)) (layer "F.Fab") (tstamp aac6c8a0-a060-4f96-a728-2df7576b52d6))
(pad "" smd roundrect (at -5.135 0 90) (size 1.65 3.43) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (tstamp f1fd847b-553f-4793-8589-45a8fa16a3ce))
(pad "" smd roundrect (at 5.135 0 90) (size 1.65 3.43) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (tstamp cfed0ea5-fd39-4247-8b3a-bf5d16127b8b))
(pad "1" smd roundrect (at 1.5 4.7) (size 1.27 2.54) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (tstamp 853f8b0a-b990-4a1e-9c7c-c95aa5b7e1c3))
(pad "2" smd roundrect (at 1.5 -4.7) (size 1.27 2.54) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (tstamp 2daa1bc9-0082-4d28-a4bb-9c0be7c8ce3e))
(pad "3" smd roundrect (at -1.5 4.7) (size 1.27 2.54) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (tstamp 751511a8-2e16-45eb-9dfa-a168babcfa59))
(pad "4" smd roundrect (at -1.5 -4.7) (size 1.27 2.54) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (tstamp ced13875-cb54-4df8-8bea-b4199d3c0768))
(model "${KIPRJMOD}/libraries/FaSTTUBe_connectors_3dmodels/Micro_Mate-N-Lok_2x2p_vertical.stp"
(offset (xyz 0 0 9.25))
(scale (xyz 1 1 1))
(rotate (xyz 0 0 180))
)
)

View File

@ -0,0 +1,67 @@
(footprint "Micro_Mate-N-Lok_2x7p_vertical" (version 20221018) (generator pcbnew)
(layer "F.Cu")
(descr "3-794636-4-1")
(tags "Connector")
(attr smd)
(fp_text reference "J**" (at 0 0) (layer "F.SilkS")
(effects (font (size 1.27 1.27) (thickness 0.254)))
(tstamp de6dbf15-ae79-4d66-abac-08480863616c)
)
(fp_text value "37946364" (at 0 0) (layer "F.SilkS") hide
(effects (font (size 1.27 1.27) (thickness 0.254)))
(tstamp 73454dd1-5b2b-42e4-bdce-e925fb2d75ff)
)
(fp_text user "${REFERENCE}" (at 0 0) (layer "F.Fab")
(effects (font (size 1.27 1.27) (thickness 0.254)))
(tstamp d7049f25-a0b9-4b2a-a477-c08baaf2a2f1)
)
(fp_line (start -11 -3.5) (end -10.5 -3.5)
(stroke (width 0.1) (type solid)) (layer "F.SilkS") (tstamp 1c3816c9-1ab2-442e-a37d-1fa89b99ef20))
(fp_line (start -11 -1.5) (end -11 -3.5)
(stroke (width 0.1) (type solid)) (layer "F.SilkS") (tstamp c50f8af2-5d6f-4d3f-a2f8-fd554ddabeab))
(fp_line (start -11 1.5) (end -11 3.5)
(stroke (width 0.1) (type solid)) (layer "F.SilkS") (tstamp 5ae35a22-004a-4c7e-b216-2b2dfba0dbbc))
(fp_line (start -11 3.5) (end -10.5 3.5)
(stroke (width 0.1) (type solid)) (layer "F.SilkS") (tstamp fc2cb4fe-ca3f-4542-9560-61d4474c8b02))
(fp_line (start -1.5 -7) (end 1.5 -7)
(stroke (width 0.12) (type default)) (layer "F.SilkS") (tstamp 69b740c7-5940-445d-bc9f-c8d087095d12))
(fp_line (start -1.5 -5.5) (end -1.5 -7)
(stroke (width 0.12) (type default)) (layer "F.SilkS") (tstamp 8fcbd669-0c29-4bfe-8b8e-03f456fdd863))
(fp_line (start 1.5 -7) (end 1.5 -5.5)
(stroke (width 0.12) (type default)) (layer "F.SilkS") (tstamp 6e52454f-a4d6-449d-8ebd-6cd913a5a917))
(fp_line (start 11 -3.5) (end 10.5 -3.5)
(stroke (width 0.1) (type solid)) (layer "F.SilkS") (tstamp e5d87176-e66e-495c-ac35-552ca54cd269))
(fp_line (start 11 -1.5) (end 11 -3.5)
(stroke (width 0.1) (type solid)) (layer "F.SilkS") (tstamp cb23f404-a40e-47c9-9c77-accca23f0fca))
(fp_line (start 11 1.5) (end 11 3.5)
(stroke (width 0.1) (type solid)) (layer "F.SilkS") (tstamp 57e12c2a-918f-4dbf-8176-f8f0a70168e6))
(fp_line (start 11 3.5) (end 10.5 3.5)
(stroke (width 0.1) (type solid)) (layer "F.SilkS") (tstamp d87a040c-ea93-47db-a367-d4cf8b02004b))
(fp_circle (center -11.5 -5.5) (end -11 -5.5)
(stroke (width 0.12) (type solid)) (fill solid) (layer "F.SilkS") (tstamp ab878989-630e-4841-8563-9a196bac4b6b))
(fp_rect (start -15 -7) (end 15 7)
(stroke (width 0.05) (type default)) (fill none) (layer "F.CrtYd") (tstamp aa6fb2d3-a1b1-4b14-9351-5b2e789571d8))
(fp_rect (start -10.93 -3.43) (end 10.93 3.43)
(stroke (width 0.1) (type default)) (fill none) (layer "F.Fab") (tstamp 3d4cb86e-70a3-4db7-a644-c739816fba05))
(pad "" smd roundrect (at -12.635 0 90) (size 1.65 3.43) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (tstamp f1fd847b-553f-4793-8589-45a8fa16a3ce))
(pad "" smd roundrect (at 12.635 0 90) (size 1.65 3.43) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (tstamp cfed0ea5-fd39-4247-8b3a-bf5d16127b8b))
(pad "1" smd roundrect (at -9 -4.7 180) (size 1.27 2.54) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (tstamp 13ae4d4f-9d65-408a-88d3-c1027bd0f239))
(pad "2" smd roundrect (at -9 4.7 180) (size 1.27 2.54) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (tstamp 8b516d46-5072-4874-85fa-eb9a17379a1c))
(pad "3" smd roundrect (at -6 -4.7 180) (size 1.27 2.54) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (tstamp 9e57dcaf-5541-4b80-b13a-e843bd2d19cc))
(pad "4" smd roundrect (at -6 4.7 180) (size 1.27 2.54) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (tstamp 21e2f832-26b9-4cf7-9608-5c55a1923e80))
(pad "5" smd roundrect (at -3 -4.7 180) (size 1.27 2.54) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (tstamp 2de4fb7f-3783-4a40-ae45-63734e55c9d0))
(pad "6" smd roundrect (at -3 4.7 180) (size 1.27 2.54) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (tstamp eab4589e-73cb-4069-9242-a95ca593b423))
(pad "7" smd roundrect (at 0 -4.7 180) (size 1.27 2.54) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (tstamp f672e036-75cd-43ba-a95b-1ab8be664d16))
(pad "8" smd roundrect (at 0 4.7 180) (size 1.27 2.54) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (tstamp 3cf7efe1-bc26-43b7-ac75-50cb26b5ab3d))
(pad "9" smd roundrect (at 3 -4.7 180) (size 1.27 2.54) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (tstamp 3148770a-c28f-43a5-acf5-a3f822d5144f))
(pad "10" smd roundrect (at 3 4.7 180) (size 1.27 2.54) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (tstamp 28b48210-c1ad-4859-bbd7-4448f3c8dd1d))
(pad "11" smd roundrect (at 6 -4.7 180) (size 1.27 2.54) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (tstamp a4514241-16b5-4170-a3ae-bb18e5df7fbd))
(pad "12" smd roundrect (at 6 4.7 180) (size 1.27 2.54) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (tstamp b796d4ac-2db7-4038-befe-5db96b995d33))
(pad "13" smd roundrect (at 9 -4.7 180) (size 1.27 2.54) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (tstamp feb75515-353a-45d1-a1bc-82b614a271b5))
(pad "14" smd roundrect (at 9 4.7 180) (size 1.27 2.54) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (tstamp 170c8784-240a-4e5a-bfbf-27ce184ffe94))
(model "${KIPRJMOD}/libraries/FaSTTUBe_connectors_3dmodels/Micro_Mate-N-Lok_2x7p_vertical.stp"
(offset (xyz 0 0 9.25))
(scale (xyz 1 1 1))
(rotate (xyz 0 0 0))
)
)

View File

@ -0,0 +1,44 @@
(footprint "Micro_Mate-N-Lok_3p_horizontal" (version 20211014) (generator pcbnew)
(layer "F.Cu")
(tedit 6222B8A6)
(attr smd)
(fp_text reference "REF**" (at 0 -8.25 unlocked) (layer "F.SilkS")
(effects (font (size 1 1) (thickness 0.15)))
(tstamp 42713045-fffd-4b2d-ae1e-7232d705fb12)
)
(fp_text value "Micro_Mate-N-Lok_3p_horizontal" (at 0 1 unlocked) (layer "F.Fab")
(effects (font (size 1 1) (thickness 0.15)))
(tstamp c0515cd2-cdaa-467e-8354-0f6eadfa35c9)
)
(fp_text user "${REFERENCE}" (at 0 0 unlocked) (layer "F.Fab")
(effects (font (size 1 1) (thickness 0.15)))
(tstamp 1bf544e3-5940-4576-9291-2464e95c0ee2)
)
(fp_line (start -5.5 -4.5) (end -4 -4.5) (layer "F.SilkS") (width 0.12) (tstamp 2923d83c-3334-4b85-acfa-e9f2eb6f5eb5))
(fp_line (start 5.5 4.75) (end 5.5 1.25) (layer "F.SilkS") (width 0.12) (tstamp 3836c63d-ca60-4e8e-a339-40980bdccc31))
(fp_line (start -5.5 -1.25) (end -5.5 -4.5) (layer "F.SilkS") (width 0.12) (tstamp 68d14432-223b-47bb-bd26-18873cfb3df2))
(fp_line (start -5.5 -1.25) (end -6.5 -1.25) (layer "F.SilkS") (width 0.12) (tstamp 721eced1-7601-448b-b032-57ae840a5bc6))
(fp_line (start -5.5 1.25) (end -5.5 4.75) (layer "F.SilkS") (width 0.12) (tstamp 75ada5c7-eed3-466b-a900-bb7cf3da6f9e))
(fp_line (start 1 -4.5) (end 2 -4.5) (layer "F.SilkS") (width 0.12) (tstamp 853b4aa5-bf64-4f10-b1c5-492731c47e3b))
(fp_line (start 5.5 1.25) (end 6.5 1.25) (layer "F.SilkS") (width 0.12) (tstamp 8e73e860-7df5-47ee-9d85-a51cffff4073))
(fp_line (start -6.5 1.25) (end -5.5 1.25) (layer "F.SilkS") (width 0.12) (tstamp 908ce94b-b837-4c84-b759-ec4fbb006eea))
(fp_line (start 4 -4.5) (end 5.5 -4.5) (layer "F.SilkS") (width 0.12) (tstamp ba3030b2-37eb-4eb2-b7ee-c2f135251592))
(fp_line (start -2 -4.5) (end -1 -4.5) (layer "F.SilkS") (width 0.12) (tstamp d0583253-7f1c-498c-afba-93bf9b28c781))
(fp_line (start -5.5 4.75) (end 5.5 4.75) (layer "F.SilkS") (width 0.12) (tstamp d9b138bc-0203-4547-9bd8-5f8e532ba1ac))
(fp_line (start 6.5 -1.25) (end 5.5 -1.25) (layer "F.SilkS") (width 0.12) (tstamp e7987f0c-e4c6-4aae-a5d6-e1cfea057719))
(fp_line (start 5.5 -1.25) (end 5.5 -4.5) (layer "F.SilkS") (width 0.12) (tstamp f1084b0d-b992-4d4c-9074-1c148a908ad5))
(fp_circle (center 6.25 -5.5) (end 6.75 -5.5) (layer "F.SilkS") (width 0.12) (fill solid) (tstamp 63489ebf-0f52-43a6-a0ab-158b1a7d4988))
(fp_rect (start -8.5 -7) (end 8.5 4.75) (layer "F.CrtYd") (width 0.05) (fill none) (tstamp 312474c5-a081-4cd1-b2e6-730f0718514a))
(fp_line (start 4.318 1.27) (end 5.08 1.27) (layer "F.Fab") (width 0.1) (tstamp c6462399-f2e4-4f1a-b34a-b49a04c8bdb9))
(fp_line (start 4.318 1.778) (end 4.318 1.27) (layer "F.Fab") (width 0.1) (tstamp f284b1e2-75a4-4a3f-a5f4-6f05f15fb4f5))
(pad "" smd roundrect (at -6.7 0) (size 3.43 1.65) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (tstamp 1f3003e6-dce5-420f-906b-3f1e92b67249))
(pad "" smd roundrect (at 6.7 0) (size 3.43 1.65) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (tstamp 378af8b4-af3d-46e7-89ae-deff12ca9067))
(pad "1" smd roundrect (at 3 -5.48) (size 1.27 2.92) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (tstamp ebd06df3-d52b-4cff-99a2-a771df6d3733))
(pad "2" smd roundrect (at 0 -5.48) (size 1.27 2.92) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (tstamp 8c0807a7-765b-4fa5-baaa-e09a2b610e6b))
(pad "3" smd roundrect (at -3 -5.48) (size 1.27 2.92) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (tstamp 23e32b5c-4ca6-4614-a426-44d605a7d8fd))
(model "${KIPRJMOD}/libraries/FaSTTUBe_connectors_3dmodels/Micro_Mate-N-Lok_3p_horizontal.stp"
(offset (xyz 0 -4.6 2.5))
(scale (xyz 1 1 1))
(rotate (xyz -90 0 0))
)
)

View File

@ -0,0 +1,42 @@
(footprint "Micro_Mate-N-Lok_3p_vertical" (version 20211014) (generator pcbnew)
(layer "F.Cu")
(tedit 62086156)
(attr smd)
(fp_text reference "REF**" (at 0 3.81 unlocked) (layer "F.SilkS")
(effects (font (size 1 1) (thickness 0.15)))
(tstamp 42713045-fffd-4b2d-ae1e-7232d705fb12)
)
(fp_text value "Micro_Mate-N-Lok_3p_vertical" (at 0 1 unlocked) (layer "F.Fab")
(effects (font (size 1 1) (thickness 0.15)))
(tstamp c0515cd2-cdaa-467e-8354-0f6eadfa35c9)
)
(fp_text user "${REFERENCE}" (at 0 0 unlocked) (layer "F.Fab")
(effects (font (size 1 1) (thickness 0.15)))
(tstamp 1bf544e3-5940-4576-9291-2464e95c0ee2)
)
(fp_line (start 5.588 2.54) (end -5.588 2.54) (layer "F.SilkS") (width 0.12) (tstamp 12422a89-3d0c-485c-9386-f77121fd68fd))
(fp_line (start 5.588 1.27) (end 5.588 2.54) (layer "F.SilkS") (width 0.12) (tstamp 1d9cdadc-9036-4a95-b6db-fa7b3b74c869))
(fp_line (start 4.064 -2.54) (end 5.588 -2.54) (layer "F.SilkS") (width 0.12) (tstamp 31e08896-1992-4725-96d9-9d2728bca7a3))
(fp_line (start -5.588 -1.27) (end -5.588 -2.54) (layer "F.SilkS") (width 0.12) (tstamp 378af8b4-af3d-46e7-89ae-deff12ca9067))
(fp_line (start -1.016 -2.54) (end -1.016 -3.048) (layer "F.SilkS") (width 0.12) (tstamp 5114c7bf-b955-49f3-a0a8-4b954c81bde0))
(fp_line (start 1.016 -3.048) (end 1.016 -2.54) (layer "F.SilkS") (width 0.12) (tstamp 5ca4be1c-537e-4a4a-b344-d0c8ffde8546))
(fp_line (start -5.588 -2.54) (end -4.064 -2.54) (layer "F.SilkS") (width 0.12) (tstamp 6d26d68f-1ca7-4ff3-b058-272f1c399047))
(fp_line (start 1.016 -2.54) (end 2.032 -2.54) (layer "F.SilkS") (width 0.12) (tstamp aa2ea573-3f20-43c1-aa99-1f9c6031a9aa))
(fp_line (start -2.032 -2.54) (end -1.016 -2.54) (layer "F.SilkS") (width 0.12) (tstamp b7199d9b-bebb-4100-9ad3-c2bd31e21d65))
(fp_line (start -5.588 2.54) (end -5.588 1.27) (layer "F.SilkS") (width 0.12) (tstamp c830e3bc-dc64-4f65-8f47-3b106bae2807))
(fp_line (start 5.588 -2.54) (end 5.588 -1.27) (layer "F.SilkS") (width 0.12) (tstamp f2c93195-af12-4d3e-acdf-bdd0ff675c24))
(fp_circle (center -6.35 -3.81) (end -5.85 -3.81) (layer "F.SilkS") (width 0.12) (fill solid) (tstamp 63489ebf-0f52-43a6-a0ab-158b1a7d4988))
(fp_rect (start -8.89 -5.08) (end 8.89 2.54) (layer "F.CrtYd") (width 0.05) (fill none) (tstamp 312474c5-a081-4cd1-b2e6-730f0718514a))
(fp_line (start 4.318 1.27) (end 5.08 1.27) (layer "F.Fab") (width 0.1) (tstamp c6462399-f2e4-4f1a-b34a-b49a04c8bdb9))
(fp_line (start 4.318 1.778) (end 4.318 1.27) (layer "F.Fab") (width 0.1) (tstamp f284b1e2-75a4-4a3f-a5f4-6f05f15fb4f5))
(pad "" smd roundrect (at -6.7 0) (size 3.43 1.65) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (tstamp 1f3003e6-dce5-420f-906b-3f1e92b67249))
(pad "" smd roundrect (at 6.7 0) (size 3.43 1.65) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (tstamp 378af8b4-af3d-46e7-89ae-deff12ca9067))
(pad "1" smd roundrect (at -3 -3.2) (size 1.27 2.54) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (tstamp ebd06df3-d52b-4cff-99a2-a771df6d3733))
(pad "2" smd roundrect (at 0 -3.2) (size 1.27 2.54) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (tstamp 8c0807a7-765b-4fa5-baaa-e09a2b610e6b))
(pad "3" smd roundrect (at 3 -3.2) (size 1.27 2.54) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (tstamp 23e32b5c-4ca6-4614-a426-44d605a7d8fd))
(model "${KIPRJMOD}/libraries/FaSTTUBe_connectors_3dmodels/Micro_Mate-N-Lok_3p_vertical.stp"
(offset (xyz 0 0 9.24))
(scale (xyz 1 1 1))
(rotate (xyz 0 0 180))
)
)

View File

@ -0,0 +1,19 @@
(module "Micro Mate-N-Lok 4-Pol" (layer F.Cu) (tedit 5CE9F407)
(fp_text reference REF** (at 0 6) (layer F.SilkS)
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_text value "Micro Mate-N-Lok 4-Pol" (at 0 -8) (layer F.Fab)
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_line (start 0 -6.6) (end 8 -6.6) (layer F.CrtYd) (width 0.15))
(fp_line (start 8 -6.6) (end 8 4.6) (layer F.CrtYd) (width 0.15))
(fp_line (start 8 4.6) (end -8 4.6) (layer F.CrtYd) (width 0.15))
(fp_line (start -8 4.6) (end -8 -6.6) (layer F.CrtYd) (width 0.15))
(fp_line (start -8 -6.6) (end 0 -6.6) (layer F.CrtYd) (width 0.15))
(pad "" smd rect (at -8.2 0.4) (size 3.43 1.65) (layers F.Cu F.Paste F.Mask))
(pad 4 smd rect (at 4.5 -5.08) (size 1.27 3) (layers F.Cu F.Paste F.Mask))
(pad 3 smd rect (at 1.5 -5.08) (size 1.27 3) (layers F.Cu F.Paste F.Mask))
(pad 2 smd rect (at -1.5 -5.08) (size 1.27 3) (layers F.Cu F.Paste F.Mask))
(pad 1 smd rect (at -4.5 -5.08) (size 1.27 3) (layers F.Cu F.Paste F.Mask))
(pad "" smd rect (at 8.21 0.4) (size 3.43 1.65) (layers F.Cu F.Paste F.Mask))
)

View File

@ -0,0 +1,35 @@
(footprint "Micro_Mate-N-Lok_4p_vertical" (version 20211014) (generator pcbnew)
(layer "F.Cu")
(tedit 62D4A9FE)
(attr smd)
(fp_text reference "REF**" (at 0 6) (layer "F.SilkS")
(effects (font (size 1 1) (thickness 0.15)))
(tstamp 28c42959-8e72-4709-83e0-fbb99eade23c)
)
(fp_text value "Micro_Mate-N-Lok_4p_vertical" (at 0 -5.75) (layer "F.Fab")
(effects (font (size 1 1) (thickness 0.15)))
(tstamp 83616a1b-53cb-4bc4-bfc7-a340c75ffaa4)
)
(fp_line (start 7 2.5) (end 7 1.25) (layer "F.SilkS") (width 0.12) (tstamp 08f73a32-8b79-4586-8a34-9772d25ce1d2))
(fp_line (start 7 1.25) (end 8.25 1.25) (layer "F.SilkS") (width 0.12) (tstamp 23416e5d-9e80-4232-bc36-57f7ae89601a))
(fp_line (start 5.5 -2.5) (end 7 -2.5) (layer "F.SilkS") (width 0.12) (tstamp 6d0c9227-9fa4-4fdd-a7a1-f5cf102ac4cd))
(fp_line (start -7 -1.25) (end -7 -2.5) (layer "F.SilkS") (width 0.12) (tstamp 7867b632-d2fd-4db9-9675-d8279a64bbd8))
(fp_line (start -3.5 -2.5) (end -2.5 -2.5) (layer "F.SilkS") (width 0.12) (tstamp 9264500c-9af3-4dc7-9fd6-bcf2403182e5))
(fp_line (start -7 -2.5) (end -5.5 -2.5) (layer "F.SilkS") (width 0.12) (tstamp 9d599c6e-ce87-40a6-8808-1c09f41e6d87))
(fp_line (start -0.5 -3.25) (end 0.5 -3.25) (layer "F.SilkS") (width 0.12) (tstamp 9eb142f5-c818-4799-9b6e-f56193c12346))
(fp_line (start 8.25 -1.25) (end 7 -1.25) (layer "F.SilkS") (width 0.12) (tstamp b102087c-eb25-4b44-aa8b-3c782cbfd9bc))
(fp_line (start -7 2.5) (end 7 2.5) (layer "F.SilkS") (width 0.12) (tstamp c48a8f6a-aabd-46bb-b189-6c52e59ce28e))
(fp_line (start 7 -2.5) (end 7 -1.25) (layer "F.SilkS") (width 0.12) (tstamp ca04d088-9d6e-44be-a42b-87756ac6b0e4))
(fp_line (start -8.25 1.25) (end -7 1.25) (layer "F.SilkS") (width 0.12) (tstamp ce87f310-f0ba-406a-b736-4ce38509611a))
(fp_line (start -7 1.25) (end -7 2.5) (layer "F.SilkS") (width 0.12) (tstamp f2227206-4c84-434c-b85d-b3d50163b425))
(fp_line (start -7 -1.25) (end -8.25 -1.25) (layer "F.SilkS") (width 0.12) (tstamp f47134a4-be82-4ad4-a1ad-bf72ff4ae546))
(fp_line (start 2.5 -2.5) (end 3.5 -2.5) (layer "F.SilkS") (width 0.12) (tstamp f744641e-4674-436f-97f8-bda7558362c2))
(fp_circle (center 8 -3.5) (end 8.5 -3.5) (layer "F.SilkS") (width 0.12) (fill solid) (tstamp 89197813-1f34-412e-b0f2-543175929a5d))
(fp_rect (start -10 -4.75) (end 10 2.5) (layer "F.CrtYd") (width 0.12) (fill none) (tstamp 2e955124-6939-410c-81be-086896fd0cd7))
(pad "" smd roundrect (at -8.2 0) (size 3.43 1.65) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (tstamp 5f7505cc-53a6-463b-b397-33ff845b1ac0))
(pad "" smd roundrect (at 8.2 0) (size 3.43 1.65) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (tstamp a1223b95-aa11-427a-b201-9190a86a68be))
(pad "1" smd roundrect (at 4.5 -3.2) (size 1.27 2.54) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (tstamp e7f989f7-95da-4be3-9e33-743523ae1ee0))
(pad "2" smd roundrect (at 1.5 -3.2) (size 1.27 2.54) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (tstamp 35e13391-5257-46f3-93a5-87ffd4e862a4))
(pad "3" smd roundrect (at -1.5 -3.2) (size 1.27 2.54) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (tstamp 8a3381a5-19d1-47f5-85b0-cf20b0f3bb61))
(pad "4" smd roundrect (at -4.5 -3.2) (size 1.27 2.54) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (tstamp cc93ecb4-fd7b-48b7-868d-89f294f07c27))
)

View File

@ -0,0 +1,37 @@
(footprint "Micro_Mate-N-Lok_5p_horizontal" (version 20211014) (generator pcbnew)
(layer "F.Cu")
(tedit 6222BCDB)
(attr smd)
(fp_text reference "REF**" (at 0 6) (layer "F.SilkS")
(effects (font (size 1 1) (thickness 0.15)))
(tstamp 28c42959-8e72-4709-83e0-fbb99eade23c)
)
(fp_text value "Micro_Mate-N-Lok_5p_horizontal" (at 0 -8) (layer "F.Fab")
(effects (font (size 1 1) (thickness 0.15)))
(tstamp 83616a1b-53cb-4bc4-bfc7-a340c75ffaa4)
)
(fp_line (start 1 -4.5) (end 2 -4.5) (layer "F.SilkS") (width 0.12) (tstamp 0c2378e7-98b6-4341-a606-7013471a0b87))
(fp_line (start 8.5 -1.25) (end 8.5 -4.5) (layer "F.SilkS") (width 0.12) (tstamp 0f77f43f-3a88-4d2e-98b4-1d0b86a7bc90))
(fp_line (start -2 -4.5) (end -1 -4.5) (layer "F.SilkS") (width 0.12) (tstamp 1009eeb8-4be8-49ff-871d-1e30079ffe54))
(fp_line (start 8.5 1.25) (end 9.75 1.25) (layer "F.SilkS") (width 0.12) (tstamp 23416e5d-9e80-4232-bc36-57f7ae89601a))
(fp_line (start -8.5 4.75) (end 8.5 4.75) (layer "F.SilkS") (width 0.12) (tstamp 279041df-5701-40f8-b43b-c55f9f224924))
(fp_line (start -8.5 -1.25) (end -8.5 -4.5) (layer "F.SilkS") (width 0.12) (tstamp 68d357fe-ef13-4a8c-b5b7-37c38f47c25e))
(fp_line (start 4 -4.5) (end 5 -4.5) (layer "F.SilkS") (width 0.12) (tstamp 706b9dd2-3531-464e-accb-a6626ab67dbc))
(fp_line (start 7 -4.5) (end 8.5 -4.5) (layer "F.SilkS") (width 0.12) (tstamp 84172753-dc4b-4e2f-8009-fedcb93b8b2e))
(fp_line (start -5 -4.5) (end -4 -4.5) (layer "F.SilkS") (width 0.12) (tstamp afc5f493-e4c7-4a7e-91ca-7829b912a44e))
(fp_line (start 9.75 -1.25) (end 8.5 -1.25) (layer "F.SilkS") (width 0.12) (tstamp b102087c-eb25-4b44-aa8b-3c782cbfd9bc))
(fp_line (start -8.5 -4.5) (end -7 -4.5) (layer "F.SilkS") (width 0.12) (tstamp b5b9cc39-57c4-4b34-9753-47ab693cf9f1))
(fp_line (start -9.75 1.25) (end -8.5 1.25) (layer "F.SilkS") (width 0.12) (tstamp ce87f310-f0ba-406a-b736-4ce38509611a))
(fp_line (start 8.5 4.75) (end 8.5 1.25) (layer "F.SilkS") (width 0.12) (tstamp de13e0f2-e58c-4cc2-84c5-b6bd1aedd8ac))
(fp_line (start -8.5 1.25) (end -8.5 4.75) (layer "F.SilkS") (width 0.12) (tstamp e10569ca-2487-43d7-a8dd-e670b1d7b741))
(fp_line (start -8.5 -1.25) (end -9.75 -1.25) (layer "F.SilkS") (width 0.12) (tstamp f47134a4-be82-4ad4-a1ad-bf72ff4ae546))
(fp_circle (center 9.5 -5.5) (end 10 -5.5) (layer "F.SilkS") (width 0.12) (fill solid) (tstamp dd4a80cf-aed1-4f7b-aa49-7e5204dd2cc9))
(fp_rect (start -11.5 -7) (end 11.5 4.75) (layer "Margin") (width 0.12) (fill none) (tstamp 2e955124-6939-410c-81be-086896fd0cd7))
(pad "" smd roundrect (at -9.7 0) (size 3.43 1.65) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (tstamp 5f7505cc-53a6-463b-b397-33ff845b1ac0))
(pad "" smd roundrect (at 9.7 0) (size 3.43 1.65) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (tstamp a1223b95-aa11-427a-b201-9190a86a68be))
(pad "1" smd roundrect (at 6 -5.48) (size 1.27 2.92) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (tstamp e7f989f7-95da-4be3-9e33-743523ae1ee0))
(pad "2" smd roundrect (at 3 -5.48) (size 1.27 2.92) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (tstamp 35e13391-5257-46f3-93a5-87ffd4e862a4))
(pad "3" smd roundrect (at 0 -5.48) (size 1.27 2.92) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (tstamp 8a3381a5-19d1-47f5-85b0-cf20b0f3bb61))
(pad "4" smd roundrect (at -3 -5.48) (size 1.27 2.92) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (tstamp cc93ecb4-fd7b-48b7-868d-89f294f07c27))
(pad "5" smd roundrect (at -6 -5.48) (size 1.27 2.92) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (tstamp e8d050f3-37eb-408d-9e54-fd52bfb37550))
)

View File

@ -0,0 +1,81 @@
(footprint "CONN_2-1445057-6_TYCO" (version 20211014) (generator pcbnew)
(layer "F.Cu")
(tags "2-1445057-6 ")
(attr smd)
(fp_text reference "REF**" (at 7.499998 0 unlocked) (layer F.SilkS)
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_text value CONN_2-1445057-6_TYCO (at 7.499998 0 unlocked) (layer F.Fab)
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_text user "${REFERENCE}" (at 7.499998 0 unlocked) (layer F.Fab)
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_line (start -5.708002 -9.7028) (end -5.708002 1.7526) (layer "F.CrtYd") (width 0.1524))
(fp_line (start -5.708002 1.7526) (end 20.707998 1.7526) (layer "F.CrtYd") (width 0.1524))
(fp_line (start 20.707998 1.7526) (end 20.707998 -9.7028) (layer "F.CrtYd") (width 0.1524))
(fp_line (start 20.707998 -9.7028) (end -5.708002 -9.7028) (layer "F.CrtYd") (width 0.1524))
(fp_arc (start 0.366491 2.00914) (mid 0 2.286) (end -0.366491 2.00914) (layer "F.SilkS") (width 0.508))
(fp_circle (center 0 1.905) (end 0.381 1.905) (layer "B.SilkS") (width 0.508) (fill none))
(fp_circle (center 0 1.905) (end 0.381 1.905) (layer "F.Fab") (width 0.508) (fill none))
(fp_text user "1" (at -1.3462 0 unlocked) (layer "F.SilkS")
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_text user "1" (at -1.3462 0 unlocked) (layer "F.SilkS")
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_text user "6" (at 16.346196 0 unlocked) (layer "F.SilkS")
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_text user "6" (at 16.346196 0 unlocked) (layer "F.SilkS")
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_text user "1" (at -1.3462 0 unlocked) (layer "F.Fab")
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_text user "1" (at -1.3462 0 unlocked) (layer "F.Fab")
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_text user "6" (at 16.346196 0 unlocked) (layer "F.Fab")
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_text user "6" (at 16.346196 0 unlocked) (layer "F.Fab")
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_text user "1" (at -1.3462 0 unlocked) (layer "B.SilkS")
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_text user "1" (at -1.3462 0 unlocked) (layer "B.SilkS")
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_text user "6" (at 16.346196 0 unlocked) (layer "B.SilkS")
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_text user "6" (at 16.346196 0 unlocked) (layer "B.SilkS")
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_line (start -3.828402 -1.3716) (end -1.00584 -1.3716) (layer "F.SilkS") (width 0.1524))
(fp_line (start 18.828398 -1.3716) (end 18.828398 -4.29006) (layer "F.SilkS") (width 0.1524))
(fp_line (start 18.828398 -9.5758) (end -3.828402 -9.5758) (layer "F.SilkS") (width 0.1524))
(fp_line (start -3.828402 -9.5758) (end -3.828402 -6.68274) (layer "F.SilkS") (width 0.1524))
(fp_line (start -3.701402 -1.4986) (end 18.701398 -1.4986) (layer "F.Fab") (width 0.0254))
(fp_line (start 18.701398 -1.4986) (end 18.701398 -9.4488) (layer "F.Fab") (width 0.0254))
(fp_line (start 18.701398 -9.4488) (end -3.701402 -9.4488) (layer "F.Fab") (width 0.0254))
(fp_line (start -3.701402 -9.4488) (end -3.701402 -1.4986) (layer "F.Fab") (width 0.0254))
(fp_line (start 1.00584 -1.3716) (end 1.994159 -1.3716) (layer "F.SilkS") (width 0.1524))
(fp_line (start 4.005839 -1.3716) (end 4.994158 -1.3716) (layer "F.SilkS") (width 0.1524))
(fp_line (start 7.005838 -1.3716) (end 7.994158 -1.3716) (layer "F.SilkS") (width 0.1524))
(fp_line (start 10.005838 -1.3716) (end 10.994157 -1.3716) (layer "F.SilkS") (width 0.1524))
(fp_line (start 13.005837 -1.3716) (end 13.994156 -1.3716) (layer "F.SilkS") (width 0.1524))
(fp_line (start 16.005836 -1.3716) (end 18.828398 -1.3716) (layer "F.SilkS") (width 0.1524))
(fp_line (start -3.828402 -4.29006) (end -3.828402 -1.3716) (layer "F.SilkS") (width 0.1524))
(fp_line (start 18.828398 -6.68274) (end 18.828398 -9.5758) (layer "F.SilkS") (width 0.1524))
(pad "1" smd rect (at 0 0) (size 1.3462 2.9972) (layers "F.Cu" "F.Paste" "F.Mask"))
(pad "2" smd rect (at 2.999999 0) (size 1.3462 2.9972) (layers "F.Cu" "F.Paste" "F.Mask"))
(pad "3" smd rect (at 5.999998 0) (size 1.3462 2.9972) (layers "F.Cu" "F.Paste" "F.Mask"))
(pad "4" smd rect (at 8.999998 0) (size 1.3462 2.9972) (layers "F.Cu" "F.Paste" "F.Mask"))
(pad "5" smd rect (at 11.999997 0) (size 1.3462 2.9972) (layers "F.Cu" "F.Paste" "F.Mask"))
(pad "6" smd rect (at 14.999996 0) (size 1.3462 2.9972) (layers "F.Cu" "F.Paste" "F.Mask"))
(pad "11" smd rect (at -3.701402 -5.4864) (size 3.5052 1.7272) (layers "F.Cu" "F.Paste" "F.Mask"))
(pad "12" smd rect (at 18.701398 -5.4864) (size 3.5052 1.7272) (layers "F.Cu" "F.Paste" "F.Mask"))
)

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,244 @@
(module LOGO (layer F.Cu)
(at 0 0)
(fp_text reference "G***" (at 0 0) (layer F.SilkS) hide
(effects (font (thickness 0.3)))
)
(fp_text value "LOGO" (at 0.75 0) (layer F.SilkS) hide
(effects (font (thickness 0.3)))
)
(fp_poly (pts (xy -10.109200 2.851150) (xy -12.630150 2.851150) (xy -12.630150 3.098800) (xy -10.109200 3.098800) (xy -10.109200 3.663950) (xy -12.630150 3.663950) (xy -12.630150 4.521200) (xy -13.214350 4.521200)
(xy -13.214225 3.719512) (xy -13.214154 3.596794) (xy -13.213985 3.482105) (xy -13.213719 3.375880) (xy -13.213361 3.278551) (xy -13.212914 3.190550) (xy -13.212380 3.112312) (xy -13.211764 3.044270)
(xy -13.211069 2.986856) (xy -13.210298 2.940504) (xy -13.209454 2.905646) (xy -13.208540 2.882717) (xy -13.207779 2.873375) (xy -13.189261 2.781696) (xy -13.160831 2.697936) (xy -13.122363 2.621923)
(xy -13.073731 2.553481) (xy -13.014807 2.492439) (xy -12.945464 2.438623) (xy -12.865576 2.391859) (xy -12.849225 2.383772) (xy -12.791862 2.358465) (xy -12.732976 2.337452) (xy -12.668860 2.319561)
(xy -12.595804 2.303620) (xy -12.595225 2.303507) (xy -12.586707 2.301870) (xy -12.578321 2.300368) (xy -12.569504 2.298996) (xy -12.559695 2.297745) (xy -12.548331 2.296610) (xy -12.534849 2.295583)
(xy -12.518688 2.294658) (xy -12.499283 2.293827) (xy -12.476074 2.293083) (xy -12.448497 2.292420) (xy -12.415990 2.291831) (xy -12.377990 2.291308) (xy -12.333936 2.290845) (xy -12.283265 2.290435)
(xy -12.225413 2.290071) (xy -12.159819 2.289746) (xy -12.085920 2.289453) (xy -12.003155 2.289184) (xy -11.910959 2.288935) (xy -11.808771 2.288696) (xy -11.696028 2.288462) (xy -11.572168 2.288225)
(xy -11.436629 2.287979) (xy -11.317288 2.287767) (xy -10.109200 2.285624) (xy -10.109200 2.851150) )(layer F.SilkS) (width 0.010000)
)
(fp_poly (pts (xy -8.517082 2.286029) (xy -8.359436 2.286117) (xy -8.214152 2.286266) (xy -8.081061 2.286475) (xy -7.959995 2.286746) (xy -7.850784 2.287080) (xy -7.753261 2.287478) (xy -7.667255 2.287940)
(xy -7.592599 2.288467) (xy -7.529123 2.289061) (xy -7.476659 2.289722) (xy -7.435038 2.290450) (xy -7.404091 2.291248) (xy -7.383649 2.292115) (xy -7.374659 2.292872) (xy -7.290841 2.310309)
(xy -7.212675 2.338712) (xy -7.139336 2.378491) (xy -7.070001 2.430053) (xy -7.036800 2.460166) (xy -6.973785 2.527808) (xy -6.920881 2.600108) (xy -6.877102 2.678762) (xy -6.841459 2.765469)
(xy -6.820907 2.831559) (xy -6.804125 2.892425) (xy -6.802304 3.706812) (xy -6.800482 4.521200) (xy -8.091304 4.520396) (xy -8.220090 4.520289) (xy -8.345674 4.520130) (xy -8.467442 4.519922)
(xy -8.584778 4.519669) (xy -8.697068 4.519374) (xy -8.803697 4.519040) (xy -8.904050 4.518669) (xy -8.997512 4.518264) (xy -9.083467 4.517829) (xy -9.161301 4.517367) (xy -9.230399 4.516880)
(xy -9.290146 4.516371) (xy -9.339927 4.515844) (xy -9.379127 4.515302) (xy -9.407132 4.514746) (xy -9.423325 4.514181) (xy -9.426575 4.513927) (xy -9.517600 4.496095) (xy -9.606476 4.466571)
(xy -9.691685 4.426295) (xy -9.771706 4.376205) (xy -9.845019 4.317238) (xy -9.910104 4.250334) (xy -9.960028 4.184650) (xy -10.004371 4.107198) (xy -10.037477 4.024878) (xy -10.059234 3.938943)
(xy -10.069530 3.850650) (xy -10.068255 3.761254) (xy -10.056891 3.683000) (xy -9.461500 3.683000) (xy -9.461500 3.956050) (xy -7.385050 3.956050) (xy -7.385050 3.683000) (xy -9.461500 3.683000)
(xy -10.056891 3.683000) (xy -10.055295 3.672010) (xy -10.030540 3.584174) (xy -10.016628 3.548073) (xy -9.979606 3.474979) (xy -9.931535 3.405070) (xy -9.873936 3.339725) (xy -9.808330 3.280323)
(xy -9.736240 3.228241) (xy -9.659185 3.184859) (xy -9.579117 3.151700) (xy -9.566567 3.147391) (xy -9.554928 3.143464) (xy -9.543587 3.139901) (xy -9.531931 3.136684) (xy -9.519347 3.133796)
(xy -9.505223 3.131219) (xy -9.488944 3.128936) (xy -9.469898 3.126928) (xy -9.447472 3.125178) (xy -9.421053 3.123668) (xy -9.390027 3.122381) (xy -9.353783 3.121298) (xy -9.311706 3.120403)
(xy -9.263184 3.119677) (xy -9.207604 3.119103) (xy -9.144352 3.118663) (xy -9.072816 3.118339) (xy -8.992383 3.118114) (xy -8.902439 3.117970) (xy -8.802372 3.117889) (xy -8.691568 3.117854)
(xy -8.569415 3.117847) (xy -8.435299 3.117849) (xy -8.406569 3.117850) (xy -7.385050 3.117850) (xy -7.385050 2.851150) (xy -9.950450 2.851150) (xy -9.950450 2.286000) (xy -8.687260 2.286000)
(xy -8.517082 2.286029) )(layer F.SilkS) (width 0.010000)
)
(fp_poly (pts (xy -3.322572 2.566854) (xy -3.324225 2.847975) (xy -4.672013 2.849577) (xy -6.019800 2.851179) (xy -6.019800 3.105150) (xy -4.957596 3.105150) (xy -4.800783 3.105191) (xy -4.655386 3.105314)
(xy -4.521515 3.105519) (xy -4.399276 3.105804) (xy -4.288780 3.106169) (xy -4.190133 3.106614) (xy -4.103444 3.107138) (xy -4.028821 3.107740) (xy -3.966373 3.108419) (xy -3.916208 3.109176)
(xy -3.878434 3.110008) (xy -3.853160 3.110916) (xy -3.841584 3.111747) (xy -3.746454 3.129195) (xy -3.654922 3.157452) (xy -3.569166 3.195778) (xy -3.531271 3.217183) (xy -3.446494 3.275075)
(xy -3.372624 3.339141) (xy -3.309772 3.409236) (xy -3.258051 3.485215) (xy -3.217573 3.566934) (xy -3.188450 3.654247) (xy -3.186483 3.662000) (xy -3.178006 3.708745) (xy -3.173055 3.763489)
(xy -3.171631 3.822030) (xy -3.173734 3.880168) (xy -3.179363 3.933699) (xy -3.186483 3.970699) (xy -3.214724 4.059066) (xy -3.254134 4.141423) (xy -3.304581 4.217557) (xy -3.365933 4.287255)
(xy -3.403432 4.322039) (xy -3.475976 4.379277) (xy -3.549765 4.425795) (xy -3.627613 4.463017) (xy -3.712337 4.492370) (xy -3.768725 4.507050) (xy -3.774692 4.508243) (xy -3.782271 4.509345)
(xy -3.791975 4.510360) (xy -3.804317 4.511293) (xy -3.819812 4.512148) (xy -3.838972 4.512931) (xy -3.862310 4.513646) (xy -3.890340 4.514296) (xy -3.923574 4.514888) (xy -3.962527 4.515425)
(xy -4.007711 4.515912) (xy -4.059639 4.516354) (xy -4.118826 4.516754) (xy -4.185783 4.517119) (xy -4.261025 4.517451) (xy -4.345064 4.517757) (xy -4.438414 4.518040) (xy -4.541588 4.518305)
(xy -4.655099 4.518556) (xy -4.779460 4.518799) (xy -4.915185 4.519037) (xy -5.062788 4.519276) (xy -5.157854 4.519422) (xy -6.502533 4.521457) (xy -6.499225 3.959225) (xy -5.125912 3.957623)
(xy -3.752598 3.956021) (xy -3.754312 3.821098) (xy -3.756025 3.686175) (xy -4.879975 3.682773) (xy -5.020648 3.682342) (xy -5.149193 3.681932) (xy -5.266183 3.681536) (xy -5.372188 3.681148)
(xy -5.467782 3.680760) (xy -5.553536 3.680364) (xy -5.630022 3.679954) (xy -5.697814 3.679523) (xy -5.757481 3.679063) (xy -5.809597 3.678567) (xy -5.854734 3.678027) (xy -5.893464 3.677438)
(xy -5.926358 3.676790) (xy -5.953990 3.676079) (xy -5.976930 3.675295) (xy -5.995752 3.674432) (xy -6.011026 3.673482) (xy -6.023326 3.672440) (xy -6.033223 3.671296) (xy -6.041289 3.670045)
(xy -6.048096 3.668678) (xy -6.050787 3.668052) (xy -6.142863 3.640212) (xy -6.230461 3.602676) (xy -6.312476 3.556341) (xy -6.387803 3.502099) (xy -6.455337 3.440848) (xy -6.513973 3.373481)
(xy -6.562605 3.300895) (xy -6.600129 3.223985) (xy -6.600661 3.222654) (xy -6.620582 3.164150) (xy -6.633481 3.104885) (xy -6.639896 3.041346) (xy -6.640368 2.970020) (xy -6.640221 2.965450)
(xy -6.634924 2.892403) (xy -6.623729 2.827825) (xy -6.605630 2.768466) (xy -6.579619 2.711074) (xy -6.544689 2.652398) (xy -6.541976 2.648297) (xy -6.498274 2.591343) (xy -6.444177 2.535228)
(xy -6.381945 2.481858) (xy -6.313836 2.433142) (xy -6.242110 2.390987) (xy -6.229563 2.384531) (xy -6.182756 2.363469) (xy -6.127632 2.342755) (xy -6.068524 2.323850) (xy -6.009767 2.308215)
(xy -5.989736 2.303710) (xy -5.921375 2.289175) (xy -4.621147 2.287454) (xy -3.320918 2.285734) (xy -3.322572 2.566854) )(layer F.SilkS) (width 0.010000)
)
(fp_poly (pts (xy 3.175000 2.851150) (xy 1.879600 2.851150) (xy 1.879600 4.521200) (xy 1.295400 4.521200) (xy 1.295400 2.851150) (xy -1.244600 2.851150) (xy -1.244600 4.521200) (xy -1.828800 4.521200)
(xy -1.828800 2.851150) (xy -3.124200 2.851150) (xy -3.124200 2.286000) (xy 3.175000 2.286000) (xy 3.175000 2.851150) )(layer F.SilkS) (width 0.010000)
)
(fp_poly (pts (xy 3.822700 3.956050) (xy 5.911850 3.956050) (xy 5.911850 2.286000) (xy 6.496496 2.286000) (xy 6.494448 3.116262) (xy 6.492401 3.946525) (xy 6.478094 4.000500) (xy 6.452611 4.073650)
(xy 6.415864 4.145898) (xy 6.369275 4.215750) (xy 6.314265 4.281712) (xy 6.252257 4.342287) (xy 6.184672 4.395983) (xy 6.112933 4.441304) (xy 6.038460 4.476755) (xy 6.017486 4.484648)
(xy 6.004247 4.489377) (xy 5.992052 4.493680) (xy 5.980275 4.497577) (xy 5.968289 4.501088) (xy 5.955468 4.504232) (xy 5.941188 4.507028) (xy 5.924821 4.509497) (xy 5.905743 4.511658)
(xy 5.883327 4.513530) (xy 5.856947 4.515133) (xy 5.825977 4.516488) (xy 5.789792 4.517612) (xy 5.747766 4.518526) (xy 5.699273 4.519250) (xy 5.643686 4.519803) (xy 5.580381 4.520204)
(xy 5.508730 4.520473) (xy 5.428109 4.520631) (xy 5.337892 4.520696) (xy 5.237452 4.520687) (xy 5.126163 4.520626) (xy 5.003401 4.520530) (xy 4.874380 4.520425) (xy 4.762904 4.520303)
(xy 4.654513 4.520118) (xy 4.549924 4.519874) (xy 4.449853 4.519575) (xy 4.355019 4.519226) (xy 4.266137 4.518831) (xy 4.183926 4.518394) (xy 4.109100 4.517919) (xy 4.042379 4.517411)
(xy 3.984478 4.516875) (xy 3.936115 4.516314) (xy 3.898006 4.515732) (xy 3.870869 4.515135) (xy 3.855420 4.514527) (xy 3.852628 4.514274) (xy 3.785861 4.499478) (xy 3.716471 4.474879)
(xy 3.647743 4.441916) (xy 3.582968 4.402025) (xy 3.563272 4.387777) (xy 3.525752 4.356896) (xy 3.485153 4.319065) (xy 3.444443 4.277395) (xy 3.406590 4.235000) (xy 3.374561 4.194993)
(xy 3.360382 4.174953) (xy 3.318408 4.105356) (xy 3.285906 4.035828) (xy 3.260687 3.961411) (xy 3.252516 3.930650) (xy 3.250995 3.923506) (xy 3.249623 3.914500) (xy 3.248390 3.902959)
(xy 3.247286 3.888209) (xy 3.246301 3.869575) (xy 3.245426 3.846383) (xy 3.244650 3.817960) (xy 3.243965 3.783632) (xy 3.243359 3.742723) (xy 3.242822 3.694561) (xy 3.242347 3.638471)
(xy 3.241921 3.573780) (xy 3.241535 3.499813) (xy 3.241180 3.415896) (xy 3.240846 3.321356) (xy 3.240523 3.215517) (xy 3.240200 3.097707) (xy 3.240174 3.087687) (xy 3.238082 2.286000)
(xy 3.822700 2.286000) (xy 3.822700 3.956050) )(layer F.SilkS) (width 0.010000)
)
(fp_poly (pts (xy 7.954962 2.287598) (xy 8.107111 2.287817) (xy 8.247113 2.288013) (xy 8.375523 2.288198) (xy 8.492895 2.288387) (xy 8.599783 2.288594) (xy 8.696740 2.288834) (xy 8.784321 2.289120)
(xy 8.863079 2.289466) (xy 8.933568 2.289888) (xy 8.996342 2.290398) (xy 9.051955 2.291011) (xy 9.100961 2.291742) (xy 9.143914 2.292604) (xy 9.181367 2.293611) (xy 9.213875 2.294778)
(xy 9.241991 2.296119) (xy 9.266270 2.297648) (xy 9.287265 2.299379) (xy 9.305530 2.301327) (xy 9.321618 2.303505) (xy 9.336085 2.305927) (xy 9.349483 2.308609) (xy 9.362368 2.311563)
(xy 9.375291 2.314804) (xy 9.388808 2.318347) (xy 9.403473 2.322205) (xy 9.413875 2.324887) (xy 9.499788 2.352351) (xy 9.579411 2.389068) (xy 9.651755 2.434295) (xy 9.715832 2.487290)
(xy 9.770654 2.547309) (xy 9.815233 2.613610) (xy 9.826781 2.635250) (xy 9.854771 2.701660) (xy 9.876238 2.774935) (xy 9.890658 2.851684) (xy 9.897508 2.928514) (xy 9.896261 3.002034)
(xy 9.890593 3.048000) (xy 9.879799 3.097633) (xy 9.863619 3.155205) (xy 9.843036 3.217664) (xy 9.819032 3.281961) (xy 9.801675 3.324197) (xy 9.772783 3.391833) (xy 9.807571 3.450941)
(xy 9.856635 3.542966) (xy 9.894297 3.632773) (xy 9.920393 3.719845) (xy 9.934760 3.803668) (xy 9.937750 3.860669) (xy 9.931633 3.948710) (xy 9.913526 4.033146) (xy 9.883792 4.113319)
(xy 9.842792 4.188571) (xy 9.790891 4.258244) (xy 9.728450 4.321679) (xy 9.655834 4.378217) (xy 9.650452 4.381851) (xy 9.590401 4.419460) (xy 9.533394 4.449224) (xy 9.475077 4.473016)
(xy 9.411096 4.492708) (xy 9.367798 4.503422) (xy 9.305925 4.517639) (xy 7.986712 4.519550) (xy 6.667500 4.521461) (xy 6.667500 3.956050) (xy 7.251700 3.956050) (xy 9.322052 3.956050)
(xy 9.320338 3.821112) (xy 9.318625 3.686175) (xy 8.285162 3.684568) (xy 7.251700 3.682961) (xy 7.251700 3.956050) (xy 6.667500 3.956050) (xy 6.667500 2.851150) (xy 7.251700 2.851150)
(xy 7.251700 3.105150) (xy 9.290050 3.105150) (xy 9.290050 2.851150) (xy 7.251700 2.851150) (xy 6.667500 2.851150) (xy 6.667500 2.285674) (xy 7.954962 2.287598) )(layer F.SilkS) (width 0.010000)
)
(fp_poly (pts (xy 12.192535 2.286724) (xy 12.266735 2.286859) (xy 12.332280 2.287135) (xy 12.389845 2.287569) (xy 12.440104 2.288175) (xy 12.483732 2.288970) (xy 12.521402 2.289969) (xy 12.553790 2.291187)
(xy 12.581569 2.292640) (xy 12.605413 2.294344) (xy 12.625998 2.296315) (xy 12.643996 2.298567) (xy 12.660083 2.301116) (xy 12.674932 2.303979) (xy 12.689219 2.307170) (xy 12.703616 2.310706)
(xy 12.707305 2.311644) (xy 12.792349 2.339788) (xy 12.872783 2.379145) (xy 12.947572 2.428737) (xy 13.015682 2.487592) (xy 13.076077 2.554734) (xy 13.127724 2.629188) (xy 13.169587 2.709979)
(xy 13.192023 2.768294) (xy 13.199323 2.790390) (xy 13.205593 2.810331) (xy 13.210918 2.829262) (xy 13.215384 2.848325) (xy 13.219077 2.868663) (xy 13.222081 2.891419) (xy 13.224482 2.917737)
(xy 13.226366 2.948759) (xy 13.227818 2.985628) (xy 13.228925 3.029488) (xy 13.229770 3.081481) (xy 13.230441 3.142751) (xy 13.231021 3.214440) (xy 13.231595 3.297237) (xy 13.234197 3.683000)
(xy 10.687050 3.683000) (xy 10.687050 3.956050) (xy 13.233400 3.956050) (xy 13.233400 4.521200) (xy 11.993562 4.520183) (xy 11.868712 4.520069) (xy 11.747090 4.519933) (xy 11.629319 4.519779)
(xy 11.516022 4.519607) (xy 11.407822 4.519419) (xy 11.305343 4.519217) (xy 11.209206 4.519003) (xy 11.120036 4.518778) (xy 11.038454 4.518544) (xy 10.965086 4.518303) (xy 10.900552 4.518056)
(xy 10.845477 4.517805) (xy 10.800483 4.517552) (xy 10.766193 4.517299) (xy 10.743231 4.517047) (xy 10.732220 4.516797) (xy 10.731500 4.516747) (xy 10.669242 4.505490) (xy 10.602544 4.485403)
(xy 10.534667 4.457755) (xy 10.468872 4.423814) (xy 10.428553 4.398838) (xy 10.348261 4.339494) (xy 10.278494 4.275768) (xy 10.219691 4.208206) (xy 10.172290 4.137355) (xy 10.136732 4.063763)
(xy 10.120240 4.014937) (xy 10.117697 4.005680) (xy 10.115480 3.996561) (xy 10.113562 3.986671) (xy 10.111916 3.975104) (xy 10.110518 3.960949) (xy 10.109339 3.943301) (xy 10.108354 3.921250)
(xy 10.107535 3.893890) (xy 10.106858 3.860311) (xy 10.106295 3.819606) (xy 10.105821 3.770868) (xy 10.105407 3.713187) (xy 10.105029 3.645657) (xy 10.104660 3.567370) (xy 10.104273 3.477416)
(xy 10.104216 3.463925) (xy 10.103837 3.364483) (xy 10.103607 3.276813) (xy 10.103562 3.199985) (xy 10.103734 3.133069) (xy 10.104158 3.075137) (xy 10.104866 3.025261) (xy 10.105892 2.982511)
(xy 10.107270 2.945959) (xy 10.109034 2.914675) (xy 10.111217 2.887731) (xy 10.113852 2.864199) (xy 10.115787 2.851150) (xy 10.687050 2.851150) (xy 10.687050 3.111500) (xy 12.649200 3.111500)
(xy 12.649200 2.851150) (xy 10.687050 2.851150) (xy 10.115787 2.851150) (xy 10.116974 2.843148) (xy 10.120615 2.823651) (xy 10.124810 2.804779) (xy 10.128606 2.789430) (xy 10.140708 2.751175)
(xy 10.158145 2.707727) (xy 10.178822 2.663591) (xy 10.200642 2.623274) (xy 10.219527 2.593975) (xy 10.259609 2.545771) (xy 10.308974 2.497774) (xy 10.364424 2.452551) (xy 10.422762 2.412665)
(xy 10.480792 2.380683) (xy 10.491533 2.375705) (xy 10.546731 2.353626) (xy 10.609798 2.332877) (xy 10.675905 2.314935) (xy 10.727673 2.303604) (xy 10.737802 2.301688) (xy 10.747761 2.299959)
(xy 10.758229 2.298405) (xy 10.769884 2.297014) (xy 10.783403 2.295776) (xy 10.799465 2.294678) (xy 10.818749 2.293710) (xy 10.841932 2.292859) (xy 10.869692 2.292114) (xy 10.902709 2.291463)
(xy 10.941659 2.290895) (xy 10.987221 2.290399) (xy 11.040074 2.289963) (xy 11.100896 2.289575) (xy 11.170364 2.289224) (xy 11.249157 2.288899) (xy 11.337953 2.288587) (xy 11.437430 2.288278)
(xy 11.548267 2.287960) (xy 11.668125 2.287629) (xy 11.795709 2.287289) (xy 11.911269 2.287013) (xy 12.015477 2.286817) (xy 12.109007 2.286715) (xy 12.192535 2.286724) )(layer F.SilkS) (width 0.010000)
)
(fp_poly (pts (xy -5.176781 -3.151188) (xy -5.178425 -1.774825) (xy -5.197206 -1.740921) (xy -5.226403 -1.699709) (xy -5.266007 -1.662970) (xy -5.316319 -1.630565) (xy -5.377637 -1.602351) (xy -5.450262 -1.578188)
(xy -5.534493 -1.557935) (xy -5.616794 -1.543483) (xy -5.663719 -1.536807) (xy -5.711494 -1.530861) (xy -5.761278 -1.525578) (xy -5.814228 -1.520892) (xy -5.871503 -1.516737) (xy -5.934260 -1.513046)
(xy -6.003658 -1.509753) (xy -6.080854 -1.506791) (xy -6.167006 -1.504093) (xy -6.263273 -1.501595) (xy -6.370811 -1.499228) (xy -6.397625 -1.498688) (xy -6.470464 -1.497144) (xy -6.543159 -1.495417)
(xy -6.614585 -1.493545) (xy -6.683621 -1.491568) (xy -6.749142 -1.489528) (xy -6.810027 -1.487465) (xy -6.865150 -1.485417) (xy -6.913390 -1.483426) (xy -6.953623 -1.481532) (xy -6.984725 -1.479774)
(xy -7.005575 -1.478194) (xy -7.015047 -1.476830) (xy -7.015452 -1.476616) (xy -7.011848 -1.471679) (xy -7.000017 -1.459569) (xy -6.981280 -1.441486) (xy -6.956957 -1.418631) (xy -6.928369 -1.392207)
(xy -6.896837 -1.363412) (xy -6.863681 -1.333450) (xy -6.830222 -1.303521) (xy -6.797780 -1.274825) (xy -6.767676 -1.248565) (xy -6.741231 -1.225941) (xy -6.724650 -1.212128) (xy -6.562134 -1.085853)
(xy -6.388844 -0.964510) (xy -6.204711 -0.848075) (xy -6.009667 -0.736524) (xy -5.803642 -0.629832) (xy -5.586567 -0.527974) (xy -5.358373 -0.430927) (xy -5.118992 -0.338666) (xy -4.868355 -0.251166)
(xy -4.606392 -0.168402) (xy -4.333035 -0.090352) (xy -4.048214 -0.016990) (xy -3.751860 0.051709) (xy -3.443905 0.115769) (xy -3.124280 0.175213) (xy -2.792916 0.230067) (xy -2.549525 0.266377)
(xy -2.435638 0.282361) (xy -2.322852 0.297636) (xy -2.210228 0.312296) (xy -2.096831 0.326438) (xy -1.981722 0.340156) (xy -1.863965 0.353545) (xy -1.742622 0.366702) (xy -1.616756 0.379722)
(xy -1.485430 0.392699) (xy -1.347707 0.405730) (xy -1.202649 0.418910) (xy -1.049319 0.432334) (xy -0.886780 0.446097) (xy -0.714095 0.460295) (xy -0.530326 0.475023) (xy -0.393700 0.485769)
(xy -0.314512 0.492002) (xy -0.234485 0.498393) (xy -0.154631 0.504854) (xy -0.075960 0.511299) (xy 0.000518 0.517641) (xy 0.073791 0.523793) (xy 0.142851 0.529669) (xy 0.206685 0.535181)
(xy 0.264284 0.540242) (xy 0.314637 0.544766) (xy 0.356733 0.548666) (xy 0.389563 0.551856) (xy 0.412114 0.554247) (xy 0.423378 0.555755) (xy 0.424473 0.556063) (xy 0.422260 0.561967)
(xy 0.414992 0.577953) (xy 0.403283 0.602742) (xy 0.387750 0.635051) (xy 0.369008 0.673600) (xy 0.347673 0.717108) (xy 0.324934 0.763140) (xy 0.263297 0.889471) (xy 0.206932 1.009391)
(xy 0.153988 1.127001) (xy 0.102611 1.246402) (xy 0.059176 1.351413) (xy 0.042838 1.391868) (xy 0.025266 1.435894) (xy 0.007064 1.481929) (xy -0.011165 1.528409) (xy -0.028817 1.573773)
(xy -0.045290 1.616459) (xy -0.059979 1.654903) (xy -0.072282 1.687543) (xy -0.081595 1.712818) (xy -0.087314 1.729165) (xy -0.088900 1.734846) (xy -0.082643 1.735310) (xy -0.064242 1.735763)
(xy -0.034255 1.736203) (xy 0.006764 1.736628) (xy 0.058256 1.737035) (xy 0.119666 1.737423) (xy 0.190437 1.737790) (xy 0.270012 1.738134) (xy 0.357836 1.738453) (xy 0.453351 1.738746)
(xy 0.556002 1.739010) (xy 0.665231 1.739244) (xy 0.780482 1.739445) (xy 0.901199 1.739612) (xy 1.026825 1.739742) (xy 1.156803 1.739835) (xy 1.290578 1.739887) (xy 1.393093 1.739900)
(xy 2.875086 1.739900) (xy 3.181108 1.739900) (xy 8.267700 1.739900) (xy 8.267653 1.722437) (xy 8.266099 1.705580) (xy 8.261810 1.678605) (xy 8.255260 1.643681) (xy 8.246922 1.602978)
(xy 8.237269 1.558667) (xy 8.226774 1.512916) (xy 8.215911 1.467897) (xy 8.205152 1.425778) (xy 8.194972 1.388730) (xy 8.194594 1.387420) (xy 8.150270 1.250674) (xy 8.096444 1.112781)
(xy 8.034469 0.976555) (xy 7.965698 0.844807) (xy 7.891482 0.720347) (xy 7.829465 0.628429) (xy 7.717417 0.482304) (xy 7.597176 0.345798) (xy 7.469069 0.219118) (xy 7.333425 0.102473)
(xy 7.190572 -0.003929) (xy 7.040839 -0.099877) (xy 6.884554 -0.185164) (xy 6.722044 -0.259581) (xy 6.553640 -0.322920) (xy 6.379668 -0.374971) (xy 6.200458 -0.415526) (xy 6.181725 -0.419040)
(xy 6.128358 -0.428487) (xy 6.079894 -0.436117) (xy 6.033973 -0.442110) (xy 5.988239 -0.446644) (xy 5.940335 -0.449899) (xy 5.887903 -0.452054) (xy 5.828585 -0.453288) (xy 5.760024 -0.453781)
(xy 5.724525 -0.453808) (xy 5.645651 -0.453371) (xy 5.576906 -0.452029) (xy 5.515736 -0.449548) (xy 5.459589 -0.445693) (xy 5.405910 -0.440230) (xy 5.352147 -0.432924) (xy 5.295746 -0.423542)
(xy 5.234153 -0.411848) (xy 5.206396 -0.406247) (xy 5.033195 -0.364487) (xy 4.864837 -0.311284) (xy 4.701757 -0.247081) (xy 4.544391 -0.172322) (xy 4.393173 -0.087451) (xy 4.248540 0.007089)
(xy 4.110925 0.110854) (xy 3.980764 0.223401) (xy 3.858493 0.344286) (xy 3.744546 0.473066) (xy 3.639360 0.609296) (xy 3.543368 0.752534) (xy 3.457006 0.902335) (xy 3.380710 1.058256)
(xy 3.314915 1.219853) (xy 3.260055 1.386683) (xy 3.216567 1.558303) (xy 3.200580 1.638300) (xy 3.194989 1.668619) (xy 3.189973 1.695464) (xy 3.186121 1.715709) (xy 3.184154 1.725612)
(xy 3.181108 1.739900) (xy 2.875086 1.739900) (xy 2.879507 1.703387) (xy 2.882361 1.683066) (xy 2.886955 1.653995) (xy 2.892677 1.619907) (xy 2.898917 1.584531) (xy 2.899531 1.581150)
(xy 2.939303 1.397748) (xy 2.991004 1.218122) (xy 3.054286 1.042800) (xy 3.128799 0.872309) (xy 3.214195 0.707179) (xy 3.310126 0.547938) (xy 3.416242 0.395113) (xy 3.532194 0.249233)
(xy 3.657635 0.110827) (xy 3.792215 -0.019579) (xy 3.935586 -0.141454) (xy 4.087398 -0.254273) (xy 4.130675 -0.283702) (xy 4.291816 -0.383573) (xy 4.458736 -0.472160) (xy 4.631267 -0.549402)
(xy 4.809242 -0.615235) (xy 4.992491 -0.669598) (xy 5.180848 -0.712429) (xy 5.373220 -0.743545) (xy 5.421710 -0.748718) (xy 5.480168 -0.753107) (xy 5.545885 -0.756652) (xy 5.616151 -0.759296)
(xy 5.688254 -0.760980) (xy 5.759485 -0.761644) (xy 5.827134 -0.761231) (xy 5.888489 -0.759682) (xy 5.940841 -0.756937) (xy 5.952077 -0.756068) (xy 6.146242 -0.733880) (xy 6.335190 -0.700148)
(xy 6.519110 -0.654797) (xy 6.698190 -0.597751) (xy 6.872617 -0.528937) (xy 7.042579 -0.448280) (xy 7.208266 -0.355703) (xy 7.369863 -0.251134) (xy 7.527560 -0.134495) (xy 7.543800 -0.121625)
(xy 7.626379 -0.051910) (xy 7.711615 0.027223) (xy 7.797336 0.113442) (xy 7.881374 0.204417) (xy 7.961559 0.297818) (xy 8.035721 0.391314) (xy 8.088513 0.463550) (xy 8.141918 0.543521)
(xy 8.195962 0.631520) (xy 8.248884 0.724307) (xy 8.298920 0.818641) (xy 8.344308 0.911280) (xy 8.383286 0.998983) (xy 8.394136 1.025525) (xy 8.442354 1.155928) (xy 8.485528 1.292043)
(xy 8.522499 1.429737) (xy 8.552111 1.564875) (xy 8.564201 1.632676) (xy 8.581702 1.739899) (xy 11.912549 1.739899) (xy 11.988948 1.587203) (xy 12.051840 1.459689) (xy 12.107713 1.342564)
(xy 12.156630 1.235674) (xy 12.198653 1.138866) (xy 12.233848 1.051987) (xy 12.262277 0.974884) (xy 12.284003 0.907404) (xy 12.299091 0.849395) (xy 12.303034 0.830136) (xy 12.313465 0.774448)
(xy 12.297787 0.740203) (xy 12.277205 0.706038) (xy 12.245681 0.669761) (xy 12.203011 0.631225) (xy 12.148988 0.590281) (xy 12.083407 0.546780) (xy 12.006062 0.500574) (xy 11.916748 0.451515)
(xy 11.849100 0.416464) (xy 11.719158 0.352835) (xy 11.577291 0.287665) (xy 11.424154 0.221155) (xy 11.260401 0.153504) (xy 11.086687 0.084912) (xy 10.903667 0.015579) (xy 10.711997 -0.054295)
(xy 10.512330 -0.124510) (xy 10.305321 -0.194867) (xy 10.091627 -0.265166) (xy 9.871901 -0.335206) (xy 9.646797 -0.404788) (xy 9.416973 -0.473713) (xy 9.183081 -0.541780) (xy 8.945777 -0.608789)
(xy 8.705715 -0.674541) (xy 8.463551 -0.738835) (xy 8.219940 -0.801473) (xy 7.975536 -0.862254) (xy 7.730994 -0.920978) (xy 7.486969 -0.977445) (xy 7.244116 -1.031456) (xy 7.003089 -1.082811)
(xy 6.800850 -1.124083) (xy 6.516165 -1.179511) (xy 6.228493 -1.232668) (xy 5.938950 -1.283408) (xy 5.648653 -1.331584) (xy 5.358717 -1.377047) (xy 5.070257 -1.419652) (xy 4.784390 -1.459250)
(xy 4.502232 -1.495695) (xy 4.224899 -1.528838) (xy 3.953506 -1.558533) (xy 3.689169 -1.584633) (xy 3.433005 -1.606990) (xy 3.186128 -1.625457) (xy 2.949656 -1.639886) (xy 2.857500 -1.644529)
(xy 2.805652 -1.646565) (xy 2.746342 -1.648200) (xy 2.681546 -1.649432) (xy 2.613240 -1.650264) (xy 2.543401 -1.650694) (xy 2.474004 -1.650723) (xy 2.407027 -1.650352) (xy 2.344445 -1.649581)
(xy 2.288236 -1.648410) (xy 2.240374 -1.646839) (xy 2.202838 -1.644869) (xy 2.196781 -1.644430) (xy 2.129916 -1.638512) (xy 2.073439 -1.631617) (xy 2.025046 -1.623229) (xy 1.982432 -1.612829)
(xy 1.943294 -1.599899) (xy 1.905328 -1.583921) (xy 1.885950 -1.574570) (xy 1.847590 -1.553493) (xy 1.801385 -1.524968) (xy 1.748879 -1.490100) (xy 1.691617 -1.449993) (xy 1.631142 -1.405751)
(xy 1.568998 -1.358479) (xy 1.506731 -1.309281) (xy 1.450975 -1.263527) (xy 1.381125 -1.205095) (xy 1.301750 -1.208860) (xy 1.268701 -1.210329) (xy 1.226877 -1.212041) (xy 1.180196 -1.213843)
(xy 1.132576 -1.215583) (xy 1.096962 -1.216812) (xy 1.058622 -1.218355) (xy 1.025015 -1.220212) (xy 0.998055 -1.222235) (xy 0.979652 -1.224277) (xy 0.971719 -1.226189) (xy 0.971550 -1.226481)
(xy 0.975735 -1.234230) (xy 0.987394 -1.249574) (xy 1.005177 -1.270970) (xy 1.027736 -1.296876) (xy 1.053723 -1.325750) (xy 1.081789 -1.356050) (xy 1.110586 -1.386234) (xy 1.116924 -1.392745)
(xy 1.206845 -1.479913) (xy 1.301489 -1.562576) (xy 1.399077 -1.639444) (xy 1.497829 -1.709224) (xy 1.595968 -1.770626) (xy 1.691714 -1.822359) (xy 1.740005 -1.845028) (xy 1.789571 -1.866309)
(xy 1.836154 -1.884594) (xy 1.881193 -1.900101) (xy 1.926132 -1.913044) (xy 1.972412 -1.923640) (xy 2.021474 -1.932105) (xy 2.074760 -1.938655) (xy 2.133711 -1.943508) (xy 2.199768 -1.946878)
(xy 2.274374 -1.948982) (xy 2.358970 -1.950037) (xy 2.441684 -1.950269) (xy 2.608551 -1.948482) (xy 2.786791 -1.943325) (xy 2.975565 -1.934908) (xy 3.174033 -1.923339) (xy 3.381355 -1.908729)
(xy 3.596690 -1.891187) (xy 3.819199 -1.870822) (xy 4.048042 -1.847745) (xy 4.282378 -1.822065) (xy 4.521367 -1.793890) (xy 4.764170 -1.763332) (xy 5.009946 -1.730499) (xy 5.257855 -1.695501)
(xy 5.507057 -1.658448) (xy 5.756713 -1.619448) (xy 6.005981 -1.578613) (xy 6.254023 -1.536050) (xy 6.499997 -1.491871) (xy 6.743065 -1.446183) (xy 6.982385 -1.399098) (xy 7.217117 -1.350724)
(xy 7.446423 -1.301171) (xy 7.485730 -1.292431) (xy 7.541848 -1.279768) (xy 7.608616 -1.264480) (xy 7.684350 -1.246962) (xy 7.767365 -1.227612) (xy 7.855976 -1.206828) (xy 7.948499 -1.185006)
(xy 8.043249 -1.162543) (xy 8.138541 -1.139836) (xy 8.232691 -1.117283) (xy 8.324014 -1.095281) (xy 8.391253 -1.078987) (xy 8.708144 -1.000620) (xy 9.013632 -0.922314) (xy 9.307653 -0.844092)
(xy 9.590141 -0.765981) (xy 9.861031 -0.688005) (xy 10.120258 -0.610188) (xy 10.367756 -0.532555) (xy 10.603460 -0.455132) (xy 10.827305 -0.377942) (xy 11.039225 -0.301012) (xy 11.239155 -0.224365)
(xy 11.427031 -0.148027) (xy 11.602786 -0.072022) (xy 11.766356 0.003625) (xy 11.917674 0.078890) (xy 12.056677 0.153746) (xy 12.183298 0.228170) (xy 12.297473 0.302136) (xy 12.399136 0.375621)
(xy 12.488221 0.448598) (xy 12.543035 0.499340) (xy 12.579520 0.536547) (xy 12.606856 0.568066) (xy 12.626285 0.595517) (xy 12.639048 0.620514) (xy 12.641842 0.628010) (xy 12.646806 0.652429)
(xy 12.648907 0.685505) (xy 12.648248 0.723544) (xy 12.644930 0.762854) (xy 12.639055 0.799741) (xy 12.636847 0.809625) (xy 12.620133 0.869837) (xy 12.596615 0.940153) (xy 12.566265 1.020639)
(xy 12.529054 1.111363) (xy 12.484953 1.212390) (xy 12.433934 1.323789) (xy 12.375968 1.445626) (xy 12.311027 1.577968) (xy 12.293406 1.613286) (xy 12.230078 1.739821) (xy 12.720626 1.741448)
(xy 13.211175 1.743075) (xy 13.212992 1.804987) (xy 13.214809 1.866900) (xy -13.227050 1.866900) (xy -13.227050 1.739900) (xy -12.542891 1.739900) (xy -12.236692 1.739900) (xy -6.916909 1.739900)
(xy -6.925552 1.684337) (xy -6.950899 1.548556) (xy -6.985122 1.408494) (xy -7.027274 1.267919) (xy -7.039610 1.231181) (xy -7.104977 1.060303) (xy -7.181650 0.894927) (xy -7.269257 0.735562)
(xy -7.367427 0.582717) (xy -7.475789 0.436900) (xy -7.593970 0.298621) (xy -7.721600 0.168390) (xy -7.858308 0.046713) (xy -7.966075 -0.038252) (xy -8.116139 -0.143001) (xy -8.270902 -0.236238)
(xy -8.430699 -0.318097) (xy -8.595868 -0.388710) (xy -8.766744 -0.448211) (xy -8.943662 -0.496731) (xy -9.126959 -0.534405) (xy -9.277414 -0.556698) (xy -9.320772 -0.560897) (xy -9.374181 -0.564187)
(xy -9.435170 -0.566567) (xy -9.501268 -0.568038) (xy -9.570006 -0.568599) (xy -9.638912 -0.568248) (xy -9.705516 -0.566986) (xy -9.767348 -0.564812) (xy -9.821938 -0.561726) (xy -9.866815 -0.557726)
(xy -9.874250 -0.556836) (xy -9.965929 -0.544278) (xy -10.049507 -0.530570) (xy -10.129581 -0.514866) (xy -10.210746 -0.496325) (xy -10.230490 -0.491461) (xy -10.408793 -0.440534) (xy -10.581905 -0.378021)
(xy -10.749734 -0.303968) (xy -10.912187 -0.218421) (xy -11.069170 -0.121425) (xy -11.220592 -0.013028) (xy -11.259766 0.017597) (xy -11.300160 0.051347) (xy -11.346661 0.092884) (xy -11.397279 0.140217)
(xy -11.450020 0.191351) (xy -11.502891 0.244294) (xy -11.553900 0.297052) (xy -11.601055 0.347633) (xy -11.642363 0.394042) (xy -11.673854 0.431800) (xy -11.779346 0.573745) (xy -11.875568 0.723070)
(xy -11.962006 0.878623) (xy -12.038144 1.039256) (xy -12.103467 1.203821) (xy -12.157460 1.371169) (xy -12.199609 1.540150) (xy -12.220521 1.651000) (xy -12.225180 1.678864) (xy -12.229408 1.703293)
(xy -12.232570 1.720658) (xy -12.233565 1.725612) (xy -12.236692 1.739900) (xy -12.542891 1.739900) (xy -12.538462 1.700212) (xy -12.533094 1.660463) (xy -12.524981 1.611392) (xy -12.514691 1.555938)
(xy -12.502793 1.497040) (xy -12.489855 1.437637) (xy -12.477550 1.385180) (xy -12.426297 1.201539) (xy -12.363386 1.022368) (xy -12.289221 0.848166) (xy -12.204208 0.679432) (xy -12.108750 0.516664)
(xy -12.003253 0.360360) (xy -11.888120 0.211017) (xy -11.763758 0.069136) (xy -11.630569 -0.064787) (xy -11.488959 -0.190252) (xy -11.339333 -0.306762) (xy -11.182094 -0.413819) (xy -11.017649 -0.510923)
(xy -10.880725 -0.581323) (xy -10.713322 -0.655776) (xy -10.542578 -0.719386) (xy -10.367321 -0.772489) (xy -10.186378 -0.815421) (xy -9.998575 -0.848518) (xy -9.902825 -0.861351) (xy -9.872004 -0.864723)
(xy -9.840166 -0.867413) (xy -9.805459 -0.869488) (xy -9.766029 -0.871013) (xy -9.720023 -0.872057) (xy -9.665588 -0.872685) (xy -9.600869 -0.872964) (xy -9.578975 -0.872989) (xy -9.493032 -0.872613)
(xy -9.417247 -0.871227) (xy -9.349104 -0.868610) (xy -9.286084 -0.864541) (xy -9.225672 -0.858797) (xy -9.165349 -0.851159) (xy -9.102599 -0.841404) (xy -9.034905 -0.829311) (xy -8.994775 -0.821607)
(xy -8.806826 -0.778513) (xy -8.623757 -0.723979) (xy -8.445959 -0.658410) (xy -8.273822 -0.582208) (xy -8.107736 -0.495778) (xy -7.948092 -0.399522) (xy -7.795279 -0.293846) (xy -7.649688 -0.179151)
(xy -7.511710 -0.055843) (xy -7.381733 0.075675) (xy -7.260149 0.214999) (xy -7.147348 0.361726) (xy -7.043720 0.515453) (xy -6.949655 0.675774) (xy -6.865543 0.842288) (xy -6.791774 1.014589)
(xy -6.728739 1.192274) (xy -6.676828 1.374940) (xy -6.636431 1.562182) (xy -6.624824 1.630368) (xy -6.607482 1.739912) (xy -3.512876 1.738318) (xy -0.418269 1.736725) (xy -0.355991 1.571625)
(xy -0.324869 1.490064) (xy -0.292113 1.405957) (xy -0.258422 1.321001) (xy -0.224497 1.236894) (xy -0.191037 1.155334) (xy -0.158742 1.078017) (xy -0.128310 1.006642) (xy -0.100443 0.942906)
(xy -0.075840 0.888506) (xy -0.064320 0.863951) (xy -0.055013 0.843668) (xy -0.048710 0.828429) (xy -0.046653 0.821261) (xy -0.046727 0.821107) (xy -0.053221 0.820290) (xy -0.071312 0.818580)
(xy -0.099935 0.816065) (xy -0.138023 0.812833) (xy -0.184513 0.808973) (xy -0.238339 0.804572) (xy -0.298434 0.799719) (xy -0.363735 0.794503) (xy -0.433176 0.789011) (xy -0.454537 0.787332)
(xy -0.632860 0.773221) (xy -0.799502 0.759782) (xy -0.955454 0.746916) (xy -1.101712 0.734524) (xy -1.239268 0.722509) (xy -1.369118 0.710771) (xy -1.492255 0.699213) (xy -1.609673 0.687737)
(xy -1.722366 0.676244) (xy -1.831328 0.664635) (xy -1.937553 0.652813) (xy -2.042035 0.640679) (xy -2.145768 0.628134) (xy -2.249745 0.615081) (xy -2.354961 0.601421) (xy -2.416175 0.593285)
(xy -2.766875 0.543195) (xy -3.105835 0.488450) (xy -3.433144 0.429015) (xy -3.748892 0.364859) (xy -4.053167 0.295946) (xy -4.346060 0.222243) (xy -4.627658 0.143718) (xy -4.898051 0.060335)
(xy -5.157329 -0.027937) (xy -5.405580 -0.121134) (xy -5.642895 -0.219288) (xy -5.869361 -0.322433) (xy -6.085069 -0.430603) (xy -6.290107 -0.543830) (xy -6.484565 -0.662150) (xy -6.668531 -0.785594)
(xy -6.842096 -0.914198) (xy -7.005348 -1.047994) (xy -7.158376 -1.187016) (xy -7.165309 -1.193669) (xy -7.209521 -1.237121) (xy -7.251791 -1.280399) (xy -7.290939 -1.322173) (xy -7.325785 -1.361116)
(xy -7.355150 -1.395898) (xy -7.377854 -1.425190) (xy -7.392717 -1.447664) (xy -7.395536 -1.453014) (xy -7.410377 -1.497541) (xy -7.414300 -1.544467) (xy -7.407296 -1.590507) (xy -7.396033 -1.620149)
(xy -7.372365 -1.658100) (xy -7.341013 -1.690341) (xy -7.301120 -1.717314) (xy -7.251826 -1.739462) (xy -7.192276 -1.757227) (xy -7.121610 -1.771052) (xy -7.096383 -1.774733) (xy -7.064935 -1.778646)
(xy -7.030775 -1.782166) (xy -6.992957 -1.785330) (xy -6.950537 -1.788177) (xy -6.902573 -1.790744) (xy -6.848119 -1.793069) (xy -6.786232 -1.795189) (xy -6.715967 -1.797143) (xy -6.636381 -1.798968)
(xy -6.546530 -1.800702) (xy -6.445470 -1.802383) (xy -6.381432 -1.803347) (xy -6.269265 -1.805126) (xy -6.168927 -1.807051) (xy -6.079550 -1.809183) (xy -6.000265 -1.811580) (xy -5.930201 -1.814304)
(xy -5.868490 -1.817414) (xy -5.814262 -1.820970) (xy -5.766648 -1.825031) (xy -5.724778 -1.829658) (xy -5.687782 -1.834911) (xy -5.654792 -1.840850) (xy -5.624938 -1.847533) (xy -5.597350 -1.855023)
(xy -5.587368 -1.858065) (xy -5.552483 -1.870849) (xy -5.528365 -1.884647) (xy -5.513095 -1.901116) (xy -5.504755 -1.921910) (xy -5.503068 -1.930860) (xy -5.501044 -1.948946) (xy -5.499137 -1.975266)
(xy -5.497342 -2.010111) (xy -5.495654 -2.053772) (xy -5.494071 -2.106540) (xy -5.492587 -2.168707) (xy -5.491199 -2.240562) (xy -5.489903 -2.322398) (xy -5.488695 -2.414505) (xy -5.487570 -2.517174)
(xy -5.486524 -2.630696) (xy -5.485555 -2.755362) (xy -5.484656 -2.891464) (xy -5.483825 -3.039292) (xy -5.483057 -3.199137) (xy -5.482349 -3.371290) (xy -5.482117 -3.433763) (xy -5.478160 -4.527550)
(xy -5.175137 -4.527550) (xy -5.176781 -3.151188) )(layer F.SilkS) (width 0.010000)
)
(fp_poly (pts (xy -2.446982 -4.129739) (xy -2.376245 -4.127292) (xy -2.310900 -4.122789) (xy -2.254405 -4.116248) (xy -2.251075 -4.115746) (xy -2.127127 -4.091987) (xy -2.010683 -4.059589) (xy -1.900474 -4.017908)
(xy -1.795232 -3.966299) (xy -1.693686 -3.904118) (xy -1.594566 -3.830721) (xy -1.496603 -3.745464) (xy -1.468324 -3.718522) (xy -1.426422 -3.676663) (xy -1.389311 -3.636725) (xy -1.354908 -3.596112)
(xy -1.321127 -3.552230) (xy -1.285883 -3.502483) (xy -1.247092 -3.444278) (xy -1.243349 -3.438525) (xy -1.191088 -3.355761) (xy -1.147545 -3.281676) (xy -1.112559 -3.215866) (xy -1.085971 -3.157929)
(xy -1.067622 -3.107461) (xy -1.057350 -3.064059) (xy -1.054997 -3.027321) (xy -1.060403 -2.996843) (xy -1.064330 -2.987087) (xy -1.082263 -2.959454) (xy -1.108264 -2.932054) (xy -1.138263 -2.908853)
(xy -1.153895 -2.899862) (xy -1.180584 -2.888304) (xy -1.210390 -2.879096) (xy -1.244059 -2.872288) (xy -1.282336 -2.867926) (xy -1.325969 -2.866061) (xy -1.375702 -2.866740) (xy -1.432282 -2.870012)
(xy -1.496455 -2.875926) (xy -1.568967 -2.884529) (xy -1.650564 -2.895872) (xy -1.741992 -2.910001) (xy -1.843998 -2.926966) (xy -1.957326 -2.946815) (xy -2.003425 -2.955108) (xy -2.082317 -2.969375)
(xy -2.149818 -2.981533) (xy -2.207034 -2.991752) (xy -2.255068 -3.000205) (xy -2.295024 -3.007062) (xy -2.328007 -3.012494) (xy -2.355120 -3.016672) (xy -2.377467 -3.019767) (xy -2.396152 -3.021951)
(xy -2.412280 -3.023394) (xy -2.426954 -3.024267) (xy -2.441278 -3.024742) (xy -2.454275 -3.024963) (xy -2.493146 -3.024539) (xy -2.521574 -3.021569) (xy -2.541699 -3.015224) (xy -2.555661 -3.004678)
(xy -2.565600 -2.989101) (xy -2.569229 -2.980498) (xy -2.576165 -2.948753) (xy -2.576781 -2.909600) (xy -2.571681 -2.866279) (xy -2.561469 -2.822029) (xy -2.546747 -2.780090) (xy -2.528120 -2.743701)
(xy -2.523919 -2.737286) (xy -2.496157 -2.704932) (xy -2.457278 -2.671808) (xy -2.408754 -2.638808) (xy -2.352057 -2.606830) (xy -2.288659 -2.576770) (xy -2.220033 -2.549523) (xy -2.208955 -2.545586)
(xy -2.148716 -2.525037) (xy -2.077140 -2.501547) (xy -1.995177 -2.475401) (xy -1.903772 -2.446885) (xy -1.803874 -2.416284) (xy -1.696429 -2.383884) (xy -1.582386 -2.349970) (xy -1.462691 -2.314828)
(xy -1.338292 -2.278744) (xy -1.210137 -2.242003) (xy -1.079172 -2.204891) (xy -1.073170 -2.203200) (xy -1.019003 -2.187904) (xy -0.968728 -2.173619) (xy -0.923641 -2.160722) (xy -0.885037 -2.149587)
(xy -0.854214 -2.140588) (xy -0.832467 -2.134101) (xy -0.821094 -2.130500) (xy -0.819714 -2.129930) (xy -0.820979 -2.123249) (xy -0.826533 -2.106421) (xy -0.835755 -2.081011) (xy -0.848025 -2.048586)
(xy -0.862721 -2.010711) (xy -0.879224 -1.968952) (xy -0.896912 -1.924874) (xy -0.915167 -1.880044) (xy -0.933366 -1.836026) (xy -0.950889 -1.794388) (xy -0.967117 -1.756694) (xy -0.972339 -1.744805)
(xy -1.013021 -1.654749) (xy -1.051545 -1.573755) (xy -1.089414 -1.498723) (xy -1.115067 -1.450433) (xy -1.142890 -1.399091) (xy -1.239783 -1.413563) (xy -1.295000 -1.422120) (xy -1.345345 -1.430527)
(xy -1.389548 -1.438528) (xy -1.426338 -1.445870) (xy -1.454443 -1.452297) (xy -1.472594 -1.457556) (xy -1.479519 -1.461390) (xy -1.479550 -1.461602) (xy -1.476755 -1.468340) (xy -1.468775 -1.485158)
(xy -1.456217 -1.510831) (xy -1.439691 -1.544138) (xy -1.419803 -1.583855) (xy -1.397163 -1.628759) (xy -1.372378 -1.677628) (xy -1.361735 -1.698531) (xy -1.243920 -1.929660) (xy -1.287123 -1.942267)
(xy -1.303977 -1.947178) (xy -1.331139 -1.955083) (xy -1.366718 -1.965433) (xy -1.408828 -1.977679) (xy -1.455578 -1.991271) (xy -1.505081 -2.005660) (xy -1.527175 -2.012082) (xy -1.669173 -2.053666)
(xy -1.799197 -2.092420) (xy -1.917625 -2.128473) (xy -2.024835 -2.161953) (xy -2.121204 -2.192989) (xy -2.207108 -2.221711) (xy -2.282926 -2.248247) (xy -2.349035 -2.272727) (xy -2.405811 -2.295280)
(xy -2.453633 -2.316034) (xy -2.492877 -2.335118) (xy -2.523920 -2.352663) (xy -2.525041 -2.353362) (xy -2.603225 -2.405588) (xy -2.669765 -2.457417) (xy -2.725608 -2.510096) (xy -2.771704 -2.564871)
(xy -2.809000 -2.622990) (xy -2.838446 -2.685700) (xy -2.860988 -2.754246) (xy -2.874397 -2.812599) (xy -2.883974 -2.888256) (xy -2.883376 -2.961332) (xy -2.873056 -3.030694) (xy -2.853466 -3.095211)
(xy -2.825060 -3.153752) (xy -2.788288 -3.205185) (xy -2.743605 -3.248380) (xy -2.691461 -3.282205) (xy -2.685381 -3.285260) (xy -2.647589 -3.302373) (xy -2.612664 -3.314693) (xy -2.577164 -3.322917)
(xy -2.537649 -3.327742) (xy -2.490676 -3.329864) (xy -2.463800 -3.330129) (xy -2.442101 -3.330124) (xy -2.422479 -3.329918) (xy -2.403759 -3.329344) (xy -2.384765 -3.328233) (xy -2.364321 -3.326420)
(xy -2.341253 -3.323738) (xy -2.314384 -3.320018) (xy -2.282539 -3.315095) (xy -2.244542 -3.308800) (xy -2.199217 -3.300968) (xy -2.145390 -3.291431) (xy -2.081883 -3.280021) (xy -2.007522 -3.266573)
(xy -1.974850 -3.260653) (xy -1.891192 -3.245658) (xy -1.812735 -3.231922) (xy -1.740341 -3.219580) (xy -1.674875 -3.208768) (xy -1.617200 -3.199622) (xy -1.568178 -3.192277) (xy -1.528673 -3.186869)
(xy -1.499549 -3.183532) (xy -1.481667 -3.182403) (xy -1.477700 -3.182622) (xy -1.475625 -3.187861) (xy -1.481631 -3.200911) (xy -1.494739 -3.220679) (xy -1.513973 -3.246076) (xy -1.538352 -3.276011)
(xy -1.566900 -3.309394) (xy -1.598639 -3.345133) (xy -1.632588 -3.382139) (xy -1.667772 -3.419320) (xy -1.703211 -3.455586) (xy -1.737927 -3.489847) (xy -1.770942 -3.521011) (xy -1.801277 -3.547989)
(xy -1.817574 -3.561542) (xy -1.918674 -3.636080) (xy -2.021386 -3.698081) (xy -2.125981 -3.747635) (xy -2.232731 -3.784834) (xy -2.341906 -3.809770) (xy -2.453777 -3.822533) (xy -2.568616 -3.823215)
(xy -2.590856 -3.821983) (xy -2.712848 -3.808041) (xy -2.829760 -3.782534) (xy -2.941233 -3.745664) (xy -3.046912 -3.697634) (xy -3.146438 -3.638649) (xy -3.239456 -3.568910) (xy -3.325608 -3.488622)
(xy -3.404537 -3.397987) (xy -3.453884 -3.330575) (xy -3.511476 -3.238777) (xy -3.557769 -3.148171) (xy -3.593098 -3.057255) (xy -3.617798 -2.964524) (xy -3.632206 -2.868473) (xy -3.636658 -2.767600)
(xy -3.631490 -2.660400) (xy -3.621951 -2.578100) (xy -3.606735 -2.492446) (xy -3.584573 -2.399509) (xy -3.556362 -2.301992) (xy -3.523006 -2.202598) (xy -3.485404 -2.104029) (xy -3.444458 -2.008987)
(xy -3.405490 -1.928698) (xy -3.380740 -1.888194) (xy -3.346853 -1.843873) (xy -3.305852 -1.797972) (xy -3.259763 -1.752731) (xy -3.210610 -1.710387) (xy -3.201449 -1.703132) (xy -3.117956 -1.643843)
(xy -3.022181 -1.586682) (xy -2.914369 -1.531703) (xy -2.794767 -1.478962) (xy -2.663621 -1.428513) (xy -2.521179 -1.380408) (xy -2.367686 -1.334704) (xy -2.203389 -1.291454) (xy -2.028535 -1.250711)
(xy -1.843370 -1.212532) (xy -1.648140 -1.176968) (xy -1.443092 -1.144076) (xy -1.228473 -1.113909) (xy -1.004529 -1.086521) (xy -0.771506 -1.061966) (xy -0.529651 -1.040300) (xy -0.279211 -1.021575)
(xy -0.034925 -1.006635) (xy 0.053383 -1.001857) (xy 0.132217 -0.997755) (xy 0.203661 -0.994262) (xy 0.269800 -0.991314) (xy 0.332718 -0.988845) (xy 0.394500 -0.986790) (xy 0.457232 -0.985083)
(xy 0.522998 -0.983660) (xy 0.593882 -0.982456) (xy 0.671971 -0.981404) (xy 0.759347 -0.980439) (xy 0.820737 -0.979841) (xy 0.890578 -0.979127) (xy 0.956524 -0.978336) (xy 1.017501 -0.977489)
(xy 1.072436 -0.976607) (xy 1.120256 -0.975710) (xy 1.159888 -0.974818) (xy 1.190259 -0.973953) (xy 1.210295 -0.973135) (xy 1.218923 -0.972383) (xy 1.219186 -0.972240) (xy 1.215366 -0.966494)
(xy 1.204564 -0.952106) (xy 1.187760 -0.930334) (xy 1.165931 -0.902432) (xy 1.140056 -0.869655) (xy 1.111114 -0.833260) (xy 1.101112 -0.820738) (xy 0.983051 -0.673100) (xy 0.766163 -0.674080)
(xy 0.706160 -0.674496) (xy 0.642524 -0.675191) (xy 0.578358 -0.676116) (xy 0.516767 -0.677218) (xy 0.460855 -0.678447) (xy 0.413726 -0.679749) (xy 0.403225 -0.680096) (xy 0.182678 -0.688951)
(xy -0.038732 -0.700279) (xy -0.258938 -0.713921) (xy -0.475876 -0.729723) (xy -0.687480 -0.747528) (xy -0.891683 -0.767179) (xy -1.086421 -0.788519) (xy -1.184275 -0.800359) (xy -1.470320 -0.841330)
(xy -1.749161 -0.891656) (xy -2.020276 -0.951229) (xy -2.283140 -1.019940) (xy -2.380100 -1.048227) (xy -2.515706 -1.090797) (xy -2.647104 -1.135697) (xy -2.773623 -1.182577) (xy -2.894590 -1.231088)
(xy -3.009334 -1.280879) (xy -3.117184 -1.331601) (xy -3.217466 -1.382903) (xy -3.309508 -1.434436) (xy -3.392640 -1.485850) (xy -3.466188 -1.536796) (xy -3.529481 -1.586923) (xy -3.581846 -1.635881)
(xy -3.622612 -1.683321) (xy -3.635525 -1.701800) (xy -3.666851 -1.754310) (xy -3.699637 -1.817325) (xy -3.733007 -1.888869) (xy -3.766085 -1.966963) (xy -3.797996 -2.049630) (xy -3.827864 -2.134892)
(xy -3.829525 -2.139905) (xy -3.867926 -2.264573) (xy -3.899490 -2.384994) (xy -3.924114 -2.500353) (xy -3.941700 -2.609835) (xy -3.952147 -2.712625) (xy -3.955353 -2.807907) (xy -3.951219 -2.894866)
(xy -3.939645 -2.972687) (xy -3.934733 -2.994025) (xy -3.896215 -3.122538) (xy -3.846262 -3.248334) (xy -3.785693 -3.370095) (xy -3.715331 -3.486505) (xy -3.635996 -3.596245) (xy -3.548511 -3.697999)
(xy -3.453697 -3.790449) (xy -3.420116 -3.819379) (xy -3.356960 -3.867713) (xy -3.284820 -3.915490) (xy -3.207319 -3.960610) (xy -3.128079 -4.000975) (xy -3.050722 -4.034485) (xy -3.045122 -4.036654)
(xy -2.997977 -4.053011) (xy -2.942013 -4.069618) (xy -2.881056 -4.085527) (xy -2.818931 -4.099790) (xy -2.759462 -4.111461) (xy -2.714625 -4.118532) (xy -2.656930 -4.124524) (xy -2.590784 -4.128375)
(xy -2.519648 -4.130106) (xy -2.446982 -4.129739) )(layer F.SilkS) (width 0.010000)
)
)

Some files were not shown because too many files have changed in this diff Show More