Ajout FishPeper

This commit is contained in:
Serge NOEL
2026-04-21 12:19:15 +02:00
parent 6744da3f88
commit 0c361a2440
2160 changed files with 589301 additions and 1 deletions

23
tinyPEPPER/.gitignore vendored Normal file
View File

@@ -0,0 +1,23 @@
# For PCBs designed using KiCad: http://www.kicad-pcb.org/
# Temporary files
*.000
*.bak
*.bck
*.kicad_pcb-bak
*~
_autosave-*
*.tmp
# Netlist files (exported from Eeschema)
*.net
# Autorouter files (exported from Pcbnew)
.dsn
# Exported BOM files
*.xml
*.csv
*.pyc
doc/*.png

3
tinyPEPPER/.gitmodules vendored Normal file
View File

@@ -0,0 +1,3 @@
[submodule "kicad_misc"]
path = kicad_misc
url = https://github.com/fishpepper/kicad_misc

189
tinyPEPPER/LICENSE Normal file
View File

@@ -0,0 +1,189 @@
CERN Open Hardware Licence v1.2
Preamble
Through this CERN Open Hardware Licence ("CERN OHL") version 1.2, CERN
wishes to provide a tool to foster collaboration and sharing among
hardware designers. The CERN OHL is copyright CERN. Anyone is welcome
to use the CERN OHL, in unmodified form only, for the distribution of
their own Open Hardware designs. Any other right is reserved. Release
of hardware designs under the CERN OHL does not constitute an
endorsement of the licensor or its designs nor does it imply any
involvement by CERN in the development of such designs.
1. Definitions
In this Licence, the following terms have the following meanings:
“Licence” means this CERN OHL.
“Documentation” means schematic diagrams, designs, circuit or circuit
board layouts, mechanical drawings, flow charts and descriptive text,
and other explanatory material that is explicitly stated as being made
available under the conditions of this Licence. The Documentation may
be in any medium, including but not limited to computer files and
representations on paper, film, or any other media.
“Documentation Location” means a location where the Licensor has
placed Documentation, and which he believes will be publicly
accessible for at least three years from the first communication to
the public or distribution of Documentation.
“Product” means either an entire, or any part of a, device built using
the Documentation or the modified Documentation.
“Licensee” means any natural or legal person exercising rights under
this Licence.
“Licensor” means any natural or legal person that creates or modifies
Documentation and subsequently communicates to the public and/ or
distributes the resulting Documentation under the terms and conditions
of this Licence.
A Licensee may at the same time be a Licensor, and vice versa.
Use of the masculine gender includes the feminine and neuter genders
and is employed solely to facilitate reading.
2. Applicability
2.1. This Licence governs the use, copying, modification,
communication to the public and distribution of the Documentation, and
the manufacture and distribution of Products. By exercising any right
granted under this Licence, the Licensee irrevocably accepts these
terms and conditions.
2.2. This Licence is granted by the Licensor directly to the Licensee,
and shall apply worldwide and without limitation in time. The Licensee
may assign his licence rights or grant sub-licences.
2.3. This Licence does not extend to software, firmware, or code
loaded into programmable devices which may be used in conjunction with
the Documentation, the modified Documentation or with Products, unless
such software, firmware, or code is explicitly expressed to be subject
to this Licence. The use of such software, firmware, or code is
otherwise subject to the applicable licence terms and conditions.
3. Copying, modification, communication to the public and distribution
of the Documentation
3.1. The Licensee shall keep intact all copyright and trademarks
notices, all notices referring to Documentation Location, and all
notices that refer to this Licence and to the disclaimer of warranties
that are included in the Documentation. He shall include a copy
thereof in every copy of the Documentation or, as the case may be,
modified Documentation, that he communicates to the public or
distributes.
3.2. The Licensee may copy, communicate to the public and distribute
verbatim copies of the Documentation, in any medium, subject to the
requirements specified in section 3.1.
3.3. The Licensee may modify the Documentation or any portion thereof
provided that upon modification of the Documentation, the Licensee
shall make the modified Documentation available from a Documentation
Location such that it can be easily located by an original Licensor
once the Licensee communicates to the public or distributes the
modified Documentation under section 3.4, and, where required by
section 4.1, by a recipient of a Product. However, the Licensor shall
not assert his rights under the foregoing proviso unless or until a
Product is distributed.
3.4. The Licensee may communicate to the public and distribute the
modified Documentation (thereby in addition to being a Licensee also
becoming a Licensor), always provided that he shall:
a) comply with section 3.1;
b) cause the modified Documentation to carry prominent notices stating
that the Licensee has modified the Documentation, with the date and
description of the modifications;
c) cause the modified Documentation to carry a new Documentation
Location notice if the original Documentation provided for one;
d) make available the modified Documentation at the same level of
abstraction as that of the Documentation, in the preferred format for
making modifications to it (e.g. the native format of the CAD tool as
applicable), and in the event that format is proprietary, in a format
viewable with a tool licensed under an OSI-approved license if the
proprietary tool can create it; and
e) license the modified Documentation under the terms and conditions
of this Licence or, where applicable, a later version of this Licence
as may be issued by CERN.
3.5. The Licence includes a non-exclusive licence to those patents or
registered designs that are held by, under the control of, or
sub-licensable by the Licensor, to the extent necessary to make use of
the rights granted under this Licence. The scope of this section 3.5
shall be strictly limited to the parts of the Documentation or
modified Documentation created by the Licensor.
4. Manufacture and distribution of Products
4.1. The Licensee may manufacture or distribute Products always
provided that, where such manufacture or distribution requires a
licence under this Licence the Licensee provides to each recipient of
such Products an easy means of accessing a copy of the Documentation
or modified Documentation, as applicable, as set out in section 3.
4.2. The Licensee is invited to inform any Licensor who has indicated
his wish to receive this information about the type, quantity and
dates of production of Products the Licensee has (had) manufactured
5. Warranty and liability
5.1. DISCLAIMER The Documentation and any modified Documentation are
provided "as is" and any express or implied warranties, including, but
not limited to, implied warranties of merchantability, of satisfactory
quality, non-infringement of third party rights, and fitness for a
particular purpose or use are disclaimed in respect of the
Documentation, the modified Documentation or any Product. The Licensor
makes no representation that the Documentation, modified
Documentation, or any Product, does or will not infringe any patent,
copyright, trade secret or other proprietary right. The entire risk as
to the use, quality, and performance of a Product shall be with the
Licensee and not the Licensor. This disclaimer of warranty is an
essential part of this Licence and a condition for the grant of any
rights granted under this Licence. The Licensee warrants that it does
not act in a consumer capacity.
5.2. LIMITATION OF LIABILITY The Licensor shall have no liability
for direct, indirect, special, incidental, consequential, exemplary,
punitive or other damages of any character including, without
limitation, procurement of substitute goods or services, loss of use,
data or profits, or business interruption, however caused and on any
theory of contract, warranty, tort (including negligence), product
liability or otherwise, arising in any way in relation to the
Documentation, modified Documentation and/or the use, manufacture or
distribution of a Product, even if advised of the possibility of such
damages, and the Licensee shall hold the Licensor(s) free and harmless
from any liability, costs, damages, fees and expenses, including
claims by third parties, in relation to such use.
6. General
6.1. Except for the rights explicitly granted hereunder, this Licence
does not imply or represent any transfer or assignment of intellectual
property rights to the Licensee.
6.2. The Licensee shall not use or make reference to any of the names
(including acronyms and abbreviations), images, or logos under which
the Licensor is known, save in so far as required to comply with
section 3. Any such permitted use or reference shall be factual and
shall in no event suggest any kind of endorsement by the Licensor or
its personnel of the modified Documentation or any Product, or any
kind of implication by the Licensor or its personnel in the
preparation of the modified Documentation or Product.
6.3. CERN may publish updated versions of this Licence which retain
the same general provisions as this version, but differ in detail so
far this is required and reasonable. New versions will be published
with a unique version number.
6.4. This Licence shall terminate with immediate effect, upon written
notice and without involvement of a court if the Licensee fails to
comply with any of its terms and conditions, or if the Licensee
initiates legal action against Licensor in relation to this
Licence. Section 5 shall continue to apply.

32
tinyPEPPER/README.md Normal file
View File

@@ -0,0 +1,32 @@
# tinyPEPPER -- a tiny and lightweight 4in1 BLHeli_S ESC
My approach to build a small and lightweight ESC.
See [http://fishpepper.de/projects/tinyPEPPER](http://fishpepper.de/projects/tinyPEPPER) for more details.
![tinyPEPPER image](http://fishpepper.de/wp-content/uploads/2017/02/tinyPEPPER_v03-300x279.jpg)
This thing is TINY! The outer dimensions are 20x20mm with a 16mm hole-to-hole spacing.
It runs BLHELI_S
Key features:
- 16x16mm hole-to-hole spacing
- 1.2g (!)
- BLHeli_S with DSHOT300
- 1S only (really!)
This work is published under the CERN open hardware license v1.2.
Feel free to use the design - but make sure to give proper credit
and release all modifications under the same license!
See LICENSE.txt for details!
THIS COMES WITH NO WARRANTY! BUILD, FLY, AND USE AT YOUR OWN RISK!
# Build your own
Make sure to init the git submodule for the libraries in the
kicad_misc directory by calling git submodule init && git submodule update.
You will have to use a recent kicad version, i used the commit #efdfaeb
when i designed this circuit board. Older versions will probably not work.

View File

@@ -0,0 +1,130 @@
#!/usr/bin/env python
# Copyright 2015 Scott Bezek
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
import logging
import os
import pcbnew
import shutil
import subprocess
import pcb_util
from svg_processor import SvgProcessor
logging.basicConfig(level=logging.DEBUG)
logger = logging.getLogger(__name__)
PCB_FILENAME = '../tinyPEPPER.kicad_pcb'
# Have to use absolute path for build_directory otherwise pcbnew will output relative to the temp file
BUILD_DIRECTORY = os.path.abspath('./')
def color_with_alpha(base_color, alpha):
return (base_color & ~(0xFF << 24)) | ((alpha & 0xFF) << 24)
def render(job):
temp_dir = os.path.join(BUILD_DIRECTORY, 'temp_layers')
shutil.rmtree(temp_dir, ignore_errors=True)
try:
os.makedirs(temp_dir)
plot_job(job, BUILD_DIRECTORY, temp_dir)
finally:
shutil.rmtree(temp_dir, ignore_errors=True)
def plot_job(job, output_directory, temp_dir):
logger.info("processing job " + job["filename"])
with pcb_util.get_plotter(PCB_FILENAME, temp_dir) as plotter:
plotter.plot_options.SetMirror(job["mirror"])
plotter.plot_options.SetExcludeEdgeLayer(False)
processed_svg_files = []
for i, layer in enumerate(job["layers"]):
output_filename = plotter.plot(layer['layer'], pcbnew.PLOT_FORMAT_SVG)
logger.info('Post-processing %s...', output_filename)
processor = SvgProcessor(output_filename)
def colorize(original):
if original.lower() == '#000000':
return layer['color']
return original
processor.apply_color_transform(colorize)
processor.wrap_with_group({
'opacity': str(layer['alpha']),
})
output_filename2 = os.path.join(temp_dir, 'processed-' + os.path.basename(output_filename))
processor.write(output_filename2)
processed_svg_files.append((output_filename2, processor))
logger.info('merging layers...')
final_svg = os.path.join(output_directory, job["filename"] + '.svg')
shutil.copyfile(processed_svg_files[0][0], final_svg)
output_processor = SvgProcessor(final_svg)
for _, processor in processed_svg_files:
output_processor.import_groups(processor)
output_processor.write(final_svg)
logger.info('rasterizing...')
final_png = os.path.join(output_directory, job["filename"] + '.png')
subprocess.check_call([
'inkscape',
'--export-area-drawing',
'--export-width=1010',
'--export-png', final_png,
'--export-background', '#FFFFFF',
final_svg,
])
if __name__ == '__main__':
jobs = [
#front placement
{
"filename" : "placement_front",
"mirror" : False,
"layers" : [
{ 'layer': pcbnew.F_Cu, 'color': '#CC0000', 'alpha': 1.0, },
{ 'layer': pcbnew.F_SilkS, 'color': '#045a00', 'alpha': 1.0, },
{ 'layer': pcbnew.Eco1_User, 'color': '#002BFF', 'alpha': 1.0, },
{ 'layer': pcbnew.F_Fab, 'color': '#000000', 'alpha': 1.0, }
]
},
#back placement
{
"filename" : "placement_back",
"mirror" : True,
"layers" : [
{ 'layer': pcbnew.B_Cu, 'color': '#00DD00', 'alpha': 1.0, },
{ 'layer': pcbnew.B_SilkS, 'color': '#A000FF', 'alpha': 1.0, },
{ 'layer': pcbnew.Eco2_User, 'color': '#002BFF', 'alpha': 1.0, },
{ 'layer': pcbnew.B_Fab, 'color': '#000000', 'alpha': 1.0, }
]
},
#front rendering
#{
#"filename" : "rendered_front",
#"mirror" : False,
#"layers" : [
# #005518
# { 'layer': pcbnew.F_Cu, 'color': '#401264', 'alpha': 1.0, },
# { 'layer': pcbnew.F_SilkS, 'color': '#FFFFFF', 'alpha': 1.0, },
# { 'layer': pcbnew.F_Mask, 'color': '#FFE13A', 'alpha': 1.0, },
# { 'layer': pcbnew.Edge_Cuts, 'color': '#000000', 'alpha': 1.0, },
# ]
#}
]
for x in jobs:
render(x)

156
tinyPEPPER/doc/pcb_util.py Normal file
View File

@@ -0,0 +1,156 @@
#!/usr/bin/env python
# Copyright 2015 Scott Bezek
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
import argparse
import datetime
import logging
import os
import pcbnew
import subprocess
import tempfile
from contextlib import contextmanager
logging.basicConfig(level=logging.DEBUG)
logger = logging.getLogger(__name__)
_LAYER_NAME = {
pcbnew.F_Cu: 'F.Cu',
pcbnew.B_Cu: 'B.Cu',
pcbnew.F_Adhes: 'F.Adhes',
pcbnew.B_Adhes: 'B.Adhes',
pcbnew.F_SilkS: 'F.SilkS',
pcbnew.B_SilkS: 'B.SilkS',
pcbnew.F_Paste: 'F.Paste',
pcbnew.B_Paste: 'B.Paste',
pcbnew.F_Mask: 'F.Mask',
pcbnew.B_Mask: 'B.Mask',
pcbnew.Edge_Cuts: 'Edge.Cuts',
pcbnew.Eco1_User: 'Eco1.User',
pcbnew.Eco2_User: 'Eco2.User',
pcbnew.F_Fab: 'F.Fab',
pcbnew.B_Fab: 'B.Fab',
#TODO: add the rest
}
@contextmanager
def versioned_board(filename):
versioned_contents = _get_versioned_contents(filename)
with tempfile.NamedTemporaryFile(suffix='.kicad_pcb') as temp_pcb:
logger.debug('Writing to %s', temp_pcb.name)
temp_pcb.write(versioned_contents)
temp_pcb.flush()
logger.debug('Load board')
board = pcbnew.LoadBoard(temp_pcb.name)
yield board
def get_layer_name(kicad_layer_id):
if kicad_layer_id in _LAYER_NAME:
return _LAYER_NAME[kicad_layer_id]
else:
return 'Unknown(%r)' % (kicad_layer_id,)
@contextmanager
def get_plotter(pcb_filename, build_directory):
with versioned_board(pcb_filename) as board:
yield GerberPlotter(board, build_directory)
class GerberPlotter(object):
def __init__(self, board, build_directory):
self.board = board
self.build_directory = build_directory
self.plot_controller = pcbnew.PLOT_CONTROLLER(board)
self.plot_options = self.plot_controller.GetPlotOptions()
self.plot_options.SetOutputDirectory(build_directory)
self.plot_options.SetPlotFrameRef(False)
self.plot_options.SetLineWidth(pcbnew.FromMM(0.35))
self.plot_options.SetScale(1)
self.plot_options.SetUseAuxOrigin(True)
self.plot_options.SetMirror(False)
self.plot_options.SetExcludeEdgeLayer(True)
def plot(self, layer, plot_format):
logger.info('Plotting layer %s (kicad layer=%r)', get_layer_name(layer), layer)
layer_name = get_layer_name(layer)
self.plot_controller.SetLayer(layer)
self.plot_controller.OpenPlotfile(layer_name, plot_format , 'Plot')
output_filename = self.plot_controller.GetPlotFileName()
self.plot_controller.PlotLayer()
self.plot_controller.ClosePlot()
return output_filename
def plot_drill(self):
board_name = os.path.splitext(os.path.basename(self.board.GetFileName()))[0]
logger.info('Plotting drill file')
drill_writer = pcbnew.EXCELLON_WRITER(self.board)
drill_writer.SetMapFileFormat(pcbnew.PLOT_FORMAT_PDF)
mirror = False
minimalHeader = False
offset = pcbnew.wxPoint(0, 0)
merge_npth = True
drill_writer.SetOptions(mirror, minimalHeader, offset, merge_npth)
metric_format = True
drill_writer.SetFormat(metric_format)
generate_drill = True
generate_map = True
drill_writer.CreateDrillandMapFilesSet(self.build_directory, generate_drill, generate_map)
drill_file_name = os.path.join(
self.build_directory,
'%s.drl' % (board_name,)
)
map_file_name = os.path.join(
self.build_directory,
'%s-drl_map.pdf' % (board_name,)
)
return drill_file_name, map_file_name
def _get_versioned_contents(filename):
with open(filename, 'rb') as pcb:
original_contents = pcb.read()
version_info = get_version_info()
return original_contents \
.replace('COMMIT: deadbeef', 'COMMIT: ' + version_info['revision']) \
.replace('DATE: YYYY-MM-DD', 'DATE: ' + version_info['date'])
def get_version_info():
git_rev = subprocess.check_output([
'git',
'rev-parse',
'--short',
'HEAD',
]).strip()
return {
'revision': git_rev,
'date': datetime.date.today().strftime('%Y-%m-%d'),
}
if __name__ == '__main__':
parser = argparse.ArgumentParser(description='Test pcb util')
parser.add_argument('input_file', help='Input .kicad_pcb file')
args = parser.parse_args()
with versioned_board(args.input_file) as board:
logger.info('Loaded %s', board.GetFileName())
for module in board.GetModules():
logger.info('Module %s: %s', module.GetReference(), module.GetValue())

File diff suppressed because it is too large Load Diff

After

Width:  |  Height:  |  Size: 370 KiB

File diff suppressed because it is too large Load Diff

After

Width:  |  Height:  |  Size: 332 KiB

View File

@@ -0,0 +1,77 @@
# Copyright 2015 Scott Bezek
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
import logging
import re
import xml
from xml.dom import minidom
"""
Processes SVG files generated by pcbnew to colorize and merge
"""
logger = logging.getLogger(__name__)
class SvgProcessor(object):
def __init__(self, input_file):
self.dom = minidom.parse(input_file)
self.svg_node = self.dom.documentElement
def apply_color_transform(self, transform_function):
# Set fill and stroke on all groups
for group in self.svg_node.getElementsByTagName('g'):
SvgProcessor._apply_transform(group, {
'fill': transform_function,
'stroke': transform_function,
})
def import_groups(self, from_svg_processor):
for child in from_svg_processor.svg_node.childNodes:
if child.nodeType != child.ELEMENT_NODE or child.tagName != 'g':
continue
group = child
output_node = self.dom.importNode(group, True)
self.svg_node.appendChild(output_node)
def write(self, filename):
with open(filename, 'wb') as output_file:
self.svg_node.writexml(output_file)
def wrap_with_group(self, attrs):
parent = self.svg_node
wrapper = self.dom.createElement("g")
for k,v in attrs.items():
wrapper.setAttribute(k,v)
for child in parent.getElementsByTagName('g'):
parent.removeChild(child)
wrapper.appendChild(child)
parent.appendChild(wrapper)
@staticmethod
def _apply_transform(node, values):
original_style = node.attributes['style'].value
for (k,v) in values.items():
escaped_key = re.escape(k)
m = re.search(r'\b' + escaped_key + r':(?P<value>[^;]*);', original_style)
if m:
transformed_value = v(m.group('value'))
original_style = re.sub(
r'\b' + escaped_key + r':[^;]*;',
k + ':' + transformed_value + ';',
original_style)
node.attributes['style'] = original_style

3
tinyPEPPER/fp-lib-table Normal file
View File

@@ -0,0 +1,3 @@
(fp_lib_table
(lib (name custom)(type KiCad)(uri "$(KIPRJMOD)/kicad_misc/custom.pretty")(options "")(descr ""))
)

688
tinyPEPPER/single_esc.sch Normal file
View File

@@ -0,0 +1,688 @@
EESchema Schematic File Version 2
LIBS:power
LIBS:device
LIBS:transistors
LIBS:conn
LIBS:linear
LIBS:regul
LIBS:74xx
LIBS:cmos4000
LIBS:adc-dac
LIBS:memory
LIBS:xilinx
LIBS:microcontrollers
LIBS:dsp
LIBS:microchip
LIBS:analog_switches
LIBS:motorola
LIBS:texas
LIBS:intel
LIBS:audio
LIBS:interface
LIBS:digital-audio
LIBS:philips
LIBS:display
LIBS:cypress
LIBS:siliconi
LIBS:opto
LIBS:atmel
LIBS:contrib
LIBS:valves
LIBS:custom
LIBS:tinyPEPPER-cache
EELAYER 26 0
EELAYER END
$Descr A4 11693 8268
encoding utf-8
Sheet 4 5
Title ""
Date "7 oct 2016"
Rev ""
Comp ""
Comment1 ""
Comment2 ""
Comment3 ""
Comment4 ""
$EndDescr
$Comp
L EFM8BB21 U501
U 1 1 57F76060
P 3500 3350
AR Path="/57FB3AF9/57F76060" Ref="U501" Part="1"
AR Path="/57F7AC44/57F76060" Ref="U201" Part="1"
AR Path="/57F7B0C0/57F76060" Ref="U301" Part="1"
AR Path="/57FB3AAC/57F76060" Ref="U401" Part="1"
F 0 "U401" H 3900 3600 60 0000 C CNN
F 1 "EFM8BB21" H 3900 3700 60 0000 C CNN
F 2 "custom:QFN20" H 3500 3350 60 0001 C CNN
F 3 "" H 3500 3350 60 0000 C CNN
1 3500 3350
1 0 0 -1
$EndComp
$Comp
L IRLML6244 FET501
U 1 1 57F76A91
P 7750 2600
AR Path="/57FB3AF9/57F76A91" Ref="FET501" Part="1"
AR Path="/57F7AC44/57F76A91" Ref="FET201" Part="1"
AR Path="/57F7B0C0/57F76A91" Ref="FET301" Part="1"
AR Path="/57FB3AAC/57F76A91" Ref="FET401" Part="1"
F 0 "FET401" H 7750 2800 60 0000 C CNN
F 1 "IRLML6244" H 7750 2250 60 0001 C CNN
F 2 "TO_SOT_Packages_SMD:SOT-23" H 7750 2600 60 0001 C CNN
F 3 "" H 7750 2600 60 0000 C CNN
1 7750 2600
1 0 0 1
$EndComp
Text Label 7050 2600 0 60 ~ 0
Ap_0
Text Label 7050 3150 0 60 ~ 0
Ac_0
Text Label 7050 3650 0 60 ~ 0
Bp_0
Text Label 7050 4200 0 60 ~ 0
Bc_0
$Comp
L IRLML2244 FET504
U 1 1 57F76A73
P 7750 4200
AR Path="/57FB3AF9/57F76A73" Ref="FET504" Part="1"
AR Path="/57F7AC44/57F76A73" Ref="FET204" Part="1"
AR Path="/57F7B0C0/57F76A73" Ref="FET304" Part="1"
AR Path="/57FB3AAC/57F76A73" Ref="FET404" Part="1"
F 0 "FET404" H 7750 4400 60 0000 C CNN
F 1 "IRLML2244" H 7750 3850 60 0001 C CNN
F 2 "TO_SOT_Packages_SMD:SOT-23" H 7750 4200 60 0001 C CNN
F 3 "" H 7750 4200 60 0000 C CNN
1 7750 4200
1 0 0 -1
$EndComp
$Comp
L IRLML2244 FET506
U 1 1 57F780F5
P 7750 5250
AR Path="/57FB3AF9/57F780F5" Ref="FET506" Part="1"
AR Path="/57F7AC44/57F780F5" Ref="FET206" Part="1"
AR Path="/57F7B0C0/57F780F5" Ref="FET306" Part="1"
AR Path="/57FB3AAC/57F780F5" Ref="FET406" Part="1"
F 0 "FET406" H 7750 5450 60 0000 C CNN
F 1 "IRLML2244" H 7750 4900 60 0001 C CNN
F 2 "TO_SOT_Packages_SMD:SOT-23" H 7750 5250 60 0001 C CNN
F 3 "" H 7750 5250 60 0000 C CNN
1 7750 5250
1 0 0 -1
$EndComp
$Comp
L IRLML2244 FET502
U 1 1 57F781FC
P 7750 3150
AR Path="/57FB3AF9/57F781FC" Ref="FET502" Part="1"
AR Path="/57F7AC44/57F781FC" Ref="FET202" Part="1"
AR Path="/57F7B0C0/57F781FC" Ref="FET302" Part="1"
AR Path="/57FB3AAC/57F781FC" Ref="FET402" Part="1"
F 0 "FET402" H 7750 3350 60 0000 C CNN
F 1 "IRLML2244" H 7750 2800 60 0001 C CNN
F 2 "TO_SOT_Packages_SMD:SOT-23" H 7750 3150 60 0001 C CNN
F 3 "" H 7750 3150 60 0000 C CNN
1 7750 3150
1 0 0 -1
$EndComp
Text Label 8500 2850 0 60 ~ 0
PHASE_A_0
$Comp
L GND #PWR025
U 1 1 57F78276
P 8450 2500
AR Path="/57FB3AF9/57F78276" Ref="#PWR025" Part="1"
AR Path="/57F7AC44/57F78276" Ref="#PWR01" Part="1"
AR Path="/57F7B0C0/57F78276" Ref="#PWR09" Part="1"
AR Path="/57FB3AAC/57F78276" Ref="#PWR017" Part="1"
F 0 "#PWR017" H 8450 2500 30 0001 C CNN
F 1 "GND" H 8450 2430 30 0001 C CNN
F 2 "" H 8450 2500 60 0000 C CNN
F 3 "" H 8450 2500 60 0000 C CNN
1 8450 2500
0 -1 -1 0
$EndComp
$Comp
L VCC #PWR026
U 1 1 57F78285
P 8400 3250
AR Path="/57FB3AF9/57F78285" Ref="#PWR026" Part="1"
AR Path="/57F7AC44/57F78285" Ref="#PWR02" Part="1"
AR Path="/57F7B0C0/57F78285" Ref="#PWR010" Part="1"
AR Path="/57FB3AAC/57F78285" Ref="#PWR018" Part="1"
F 0 "#PWR018" H 8400 3350 30 0001 C CNN
F 1 "VCC" H 8400 3350 30 0000 C CNN
F 2 "" H 8400 3250 60 0000 C CNN
F 3 "" H 8400 3250 60 0000 C CNN
1 8400 3250
0 1 1 0
$EndComp
$Comp
L IRLML6244 FET503
U 1 1 57F782D1
P 7750 3650
AR Path="/57FB3AF9/57F782D1" Ref="FET503" Part="1"
AR Path="/57F7AC44/57F782D1" Ref="FET203" Part="1"
AR Path="/57F7B0C0/57F782D1" Ref="FET303" Part="1"
AR Path="/57FB3AAC/57F782D1" Ref="FET403" Part="1"
F 0 "FET403" H 7750 3850 60 0000 C CNN
F 1 "IRLML6244" H 7750 3300 60 0001 C CNN
F 2 "TO_SOT_Packages_SMD:SOT-23" H 7750 3650 60 0001 C CNN
F 3 "" H 7750 3650 60 0000 C CNN
1 7750 3650
1 0 0 1
$EndComp
Text Label 8500 3900 0 60 ~ 0
PHASE_B_0
$Comp
L IRLML6244 FET505
U 1 1 57F78363
P 7750 4700
AR Path="/57FB3AF9/57F78363" Ref="FET505" Part="1"
AR Path="/57F7AC44/57F78363" Ref="FET205" Part="1"
AR Path="/57F7B0C0/57F78363" Ref="FET305" Part="1"
AR Path="/57FB3AAC/57F78363" Ref="FET405" Part="1"
F 0 "FET405" H 7750 4900 60 0000 C CNN
F 1 "IRLML6244" H 7750 4350 60 0001 C CNN
F 2 "TO_SOT_Packages_SMD:SOT-23" H 7750 4700 60 0001 C CNN
F 3 "" H 7750 4700 60 0000 C CNN
1 7750 4700
1 0 0 1
$EndComp
Text Label 7050 4700 0 60 ~ 0
Cp_0
Text Label 8450 5000 0 60 ~ 0
PHASE_C_0
NoConn ~ 3750 3850
$Comp
L TP TP502
U 1 1 57F78482
P 1450 3950
AR Path="/57FB3AF9/57F78482" Ref="TP502" Part="1"
AR Path="/57F7AC44/57F78482" Ref="TP202" Part="1"
AR Path="/57F7B0C0/57F78482" Ref="TP302" Part="1"
AR Path="/57FB3AAC/57F78482" Ref="TP402" Part="1"
F 0 "TP402" H 1600 3950 60 0000 C CNN
F 1 "TP" H 1600 4100 60 0001 C CNN
F 2 "custom:TP_smd_0.5x0.8" H 1450 3950 60 0001 C CNN
F 3 "~" H 1450 3950 60 0000 C CNN
1 1450 3950
-1 0 0 1
$EndComp
Text Label 1900 1700 0 60 ~ 0
RC_IN_0
Text Label 7050 5250 0 60 ~ 0
Cc_0
Text Label 1800 3550 0 60 ~ 0
C2CK_0
Text Label 1800 3950 0 60 ~ 0
C2D_0
$Comp
L GND #PWR027
U 1 1 57F785F3
P 8400 3550
AR Path="/57FB3AF9/57F785F3" Ref="#PWR027" Part="1"
AR Path="/57F7AC44/57F785F3" Ref="#PWR03" Part="1"
AR Path="/57F7B0C0/57F785F3" Ref="#PWR011" Part="1"
AR Path="/57FB3AAC/57F785F3" Ref="#PWR019" Part="1"
F 0 "#PWR019" H 8400 3550 30 0001 C CNN
F 1 "GND" H 8400 3480 30 0001 C CNN
F 2 "" H 8400 3550 60 0000 C CNN
F 3 "" H 8400 3550 60 0000 C CNN
1 8400 3550
0 -1 -1 0
$EndComp
$Comp
L VCC #PWR028
U 1 1 57F785F9
P 8400 4300
AR Path="/57FB3AF9/57F785F9" Ref="#PWR028" Part="1"
AR Path="/57F7AC44/57F785F9" Ref="#PWR04" Part="1"
AR Path="/57F7B0C0/57F785F9" Ref="#PWR012" Part="1"
AR Path="/57FB3AAC/57F785F9" Ref="#PWR020" Part="1"
F 0 "#PWR020" H 8400 4400 30 0001 C CNN
F 1 "VCC" H 8400 4400 30 0000 C CNN
F 2 "" H 8400 4300 60 0000 C CNN
F 3 "" H 8400 4300 60 0000 C CNN
1 8400 4300
0 1 1 0
$EndComp
$Comp
L VCC #PWR029
U 1 1 57F785FF
P 8350 5350
AR Path="/57FB3AF9/57F785FF" Ref="#PWR029" Part="1"
AR Path="/57F7AC44/57F785FF" Ref="#PWR05" Part="1"
AR Path="/57F7B0C0/57F785FF" Ref="#PWR013" Part="1"
AR Path="/57FB3AAC/57F785FF" Ref="#PWR021" Part="1"
F 0 "#PWR021" H 8350 5450 30 0001 C CNN
F 1 "VCC" H 8350 5450 30 0000 C CNN
F 2 "" H 8350 5350 60 0000 C CNN
F 3 "" H 8350 5350 60 0000 C CNN
1 8350 5350
0 1 1 0
$EndComp
$Comp
L GND #PWR030
U 1 1 57F78605
P 8350 4600
AR Path="/57FB3AF9/57F78605" Ref="#PWR030" Part="1"
AR Path="/57F7AC44/57F78605" Ref="#PWR06" Part="1"
AR Path="/57F7B0C0/57F78605" Ref="#PWR014" Part="1"
AR Path="/57FB3AAC/57F78605" Ref="#PWR022" Part="1"
F 0 "#PWR022" H 8350 4600 30 0001 C CNN
F 1 "GND" H 8350 4530 30 0001 C CNN
F 2 "" H 8350 4600 60 0000 C CNN
F 3 "" H 8350 4600 60 0000 C CNN
1 8350 4600
0 -1 -1 0
$EndComp
$Comp
L CUSTOM_R R503
U 1 1 57F787A6
P 9200 5650
AR Path="/57FB3AF9/57F787A6" Ref="R503" Part="1"
AR Path="/57F7AC44/57F787A6" Ref="R203" Part="1"
AR Path="/57F7B0C0/57F787A6" Ref="R303" Part="1"
AR Path="/57FB3AAC/57F787A6" Ref="R403" Part="1"
F 0 "R403" V 9280 5650 40 0000 C CNN
F 1 "10k" V 9207 5651 40 0000 C CNN
F 2 "custom:R_0402_CUSTOM" V 9130 5650 30 0001 C CNN
F 3 "~" H 9200 5650 30 0000 C CNN
1 9200 5650
1 0 0 -1
$EndComp
$Comp
L CUSTOM_R R505
U 1 1 57F787B5
P 9400 5650
AR Path="/57FB3AF9/57F787B5" Ref="R505" Part="1"
AR Path="/57F7AC44/57F787B5" Ref="R205" Part="1"
AR Path="/57F7B0C0/57F787B5" Ref="R305" Part="1"
AR Path="/57FB3AAC/57F787B5" Ref="R405" Part="1"
F 0 "R405" V 9480 5650 40 0000 C CNN
F 1 "10k" V 9407 5651 40 0000 C CNN
F 2 "custom:R_0402_CUSTOM" V 9330 5650 30 0001 C CNN
F 3 "~" H 9400 5650 30 0000 C CNN
1 9400 5650
1 0 0 -1
$EndComp
$Comp
L CUSTOM_R R507
U 1 1 57F787C4
P 9600 5650
AR Path="/57FB3AF9/57F787C4" Ref="R507" Part="1"
AR Path="/57F7AC44/57F787C4" Ref="R207" Part="1"
AR Path="/57F7B0C0/57F787C4" Ref="R307" Part="1"
AR Path="/57FB3AAC/57F787C4" Ref="R407" Part="1"
F 0 "R407" V 9680 5650 40 0000 C CNN
F 1 "10k" V 9607 5651 40 0000 C CNN
F 2 "custom:R_0402_CUSTOM" V 9530 5650 30 0001 C CNN
F 3 "~" H 9600 5650 30 0000 C CNN
1 9600 5650
1 0 0 -1
$EndComp
$Comp
L CUSTOM_R R502
U 1 1 57F788EE
P 9200 2350
AR Path="/57FB3AF9/57F788EE" Ref="R502" Part="1"
AR Path="/57F7AC44/57F788EE" Ref="R202" Part="1"
AR Path="/57F7B0C0/57F788EE" Ref="R302" Part="1"
AR Path="/57FB3AAC/57F788EE" Ref="R402" Part="1"
F 0 "R402" V 9280 2350 40 0000 C CNN
F 1 "1k" V 9207 2351 40 0000 C CNN
F 2 "custom:R_0402_CUSTOM" V 9130 2350 30 0001 C CNN
F 3 "~" H 9200 2350 30 0000 C CNN
1 9200 2350
1 0 0 -1
$EndComp
$Comp
L CUSTOM_R R504
U 1 1 57F788F4
P 9400 2350
AR Path="/57FB3AF9/57F788F4" Ref="R504" Part="1"
AR Path="/57F7AC44/57F788F4" Ref="R204" Part="1"
AR Path="/57F7B0C0/57F788F4" Ref="R304" Part="1"
AR Path="/57FB3AAC/57F788F4" Ref="R404" Part="1"
F 0 "R404" V 9480 2350 40 0000 C CNN
F 1 "1k" V 9407 2351 40 0000 C CNN
F 2 "custom:R_0402_CUSTOM" V 9330 2350 30 0001 C CNN
F 3 "~" H 9400 2350 30 0000 C CNN
1 9400 2350
1 0 0 -1
$EndComp
$Comp
L CUSTOM_R R506
U 1 1 57F788FA
P 9600 2350
AR Path="/57FB3AF9/57F788FA" Ref="R506" Part="1"
AR Path="/57F7AC44/57F788FA" Ref="R206" Part="1"
AR Path="/57F7B0C0/57F788FA" Ref="R306" Part="1"
AR Path="/57FB3AAC/57F788FA" Ref="R406" Part="1"
F 0 "R406" V 9680 2350 40 0000 C CNN
F 1 "1k" V 9607 2351 40 0000 C CNN
F 2 "custom:R_0402_CUSTOM" V 9530 2350 30 0001 C CNN
F 3 "~" H 9600 2350 30 0000 C CNN
1 9600 2350
1 0 0 -1
$EndComp
NoConn ~ 4900 2950
NoConn ~ 4900 2850
$Comp
L CUSTOM_C C501
U 1 1 57F791A3
P 2000 2500
AR Path="/57FB3AF9/57F791A3" Ref="C501" Part="1"
AR Path="/57F7AC44/57F791A3" Ref="C201" Part="1"
AR Path="/57F7B0C0/57F791A3" Ref="C301" Part="1"
AR Path="/57FB3AAC/57F791A3" Ref="C401" Part="1"
F 0 "C401" H 2000 2600 40 0000 L CNN
F 1 "47u" H 2006 2415 40 0000 L CNN
F 2 "Capacitors_SMD:C_0805" H 2038 2350 30 0001 C CNN
F 3 "~" H 2000 2500 60 0000 C CNN
1 2000 2500
1 0 0 -1
$EndComp
$Comp
L GND #PWR031
U 1 1 57F796DF
P 1850 2350
AR Path="/57FB3AF9/57F796DF" Ref="#PWR031" Part="1"
AR Path="/57F7AC44/57F796DF" Ref="#PWR07" Part="1"
AR Path="/57F7B0C0/57F796DF" Ref="#PWR015" Part="1"
AR Path="/57FB3AAC/57F796DF" Ref="#PWR023" Part="1"
F 0 "#PWR023" H 1850 2350 30 0001 C CNN
F 1 "GND" H 1850 2280 30 0001 C CNN
F 2 "" H 1850 2350 60 0000 C CNN
F 3 "" H 1850 2350 60 0000 C CNN
1 1850 2350
1 0 0 -1
$EndComp
$Comp
L VCC #PWR032
U 1 1 57F796E5
P 1850 2750
AR Path="/57FB3AF9/57F796E5" Ref="#PWR032" Part="1"
AR Path="/57F7AC44/57F796E5" Ref="#PWR08" Part="1"
AR Path="/57F7B0C0/57F796E5" Ref="#PWR016" Part="1"
AR Path="/57FB3AAC/57F796E5" Ref="#PWR024" Part="1"
F 0 "#PWR024" H 1850 2850 30 0001 C CNN
F 1 "VCC" H 1850 2850 30 0000 C CNN
F 2 "" H 1850 2750 60 0000 C CNN
F 3 "" H 1850 2750 60 0000 C CNN
1 1850 2750
1 0 0 -1
$EndComp
$Comp
L CUSTOM_C C502
U 1 1 57F796EB
P 2200 2500
AR Path="/57FB3AF9/57F796EB" Ref="C502" Part="1"
AR Path="/57F7AC44/57F796EB" Ref="C202" Part="1"
AR Path="/57F7B0C0/57F796EB" Ref="C302" Part="1"
AR Path="/57FB3AAC/57F796EB" Ref="C402" Part="1"
F 0 "C402" H 2200 2600 40 0000 L CNN
F 1 "100n" H 2206 2415 40 0000 L CNN
F 2 "custom:C_0402_CUSTOM" H 2238 2350 30 0001 C CNN
F 3 "~" H 2200 2500 60 0000 C CNN
1 2200 2500
1 0 0 -1
$EndComp
$Comp
L TP OUT_A501
U 1 1 57F78EAB
P 10000 2850
AR Path="/57FB3AF9/57F78EAB" Ref="OUT_A501" Part="1"
AR Path="/57F7AC44/57F78EAB" Ref="OUT_A201" Part="1"
AR Path="/57F7B0C0/57F78EAB" Ref="OUT_A301" Part="1"
AR Path="/57FB3AAC/57F78EAB" Ref="OUT_A401" Part="1"
F 0 "OUT_A401" H 10150 2850 60 0000 C CNN
F 1 "TP" H 10150 3000 60 0001 C CNN
F 2 "custom:TP_PHASE_SMD" H 10000 2850 60 0001 C CNN
F 3 "~" H 10000 2850 60 0000 C CNN
1 10000 2850
1 0 0 -1
$EndComp
$Comp
L TP OUT_B501
U 1 1 57F78EC3
P 10000 3900
AR Path="/57FB3AF9/57F78EC3" Ref="OUT_B501" Part="1"
AR Path="/57F7AC44/57F78EC3" Ref="OUT_B201" Part="1"
AR Path="/57F7B0C0/57F78EC3" Ref="OUT_B301" Part="1"
AR Path="/57FB3AAC/57F78EC3" Ref="OUT_B401" Part="1"
F 0 "OUT_B401" H 10150 3900 60 0000 C CNN
F 1 "TP" H 10150 4050 60 0001 C CNN
F 2 "custom:TP_PHASE_SMD" H 10000 3900 60 0001 C CNN
F 3 "~" H 10000 3900 60 0000 C CNN
1 10000 3900
1 0 0 -1
$EndComp
$Comp
L TP OUT_C501
U 1 1 57F78EC9
P 10000 5000
AR Path="/57FB3AF9/57F78EC9" Ref="OUT_C501" Part="1"
AR Path="/57F7AC44/57F78EC9" Ref="OUT_C201" Part="1"
AR Path="/57F7B0C0/57F78EC9" Ref="OUT_C301" Part="1"
AR Path="/57FB3AAC/57F78EC9" Ref="OUT_C401" Part="1"
F 0 "OUT_C401" H 10150 5000 60 0000 C CNN
F 1 "TP" H 10150 5150 60 0001 C CNN
F 2 "custom:TP_PHASE_SMD" H 10000 5000 60 0001 C CNN
F 3 "~" H 10000 5000 60 0000 C CNN
1 10000 5000
1 0 0 -1
$EndComp
$Comp
L CUSTOM_R R501
U 1 1 57F79DFA
P 1850 3150
AR Path="/57FB3AF9/57F79DFA" Ref="R501" Part="1"
AR Path="/57F7AC44/57F79DFA" Ref="R201" Part="1"
AR Path="/57F7B0C0/57F79DFA" Ref="R301" Part="1"
AR Path="/57FB3AAC/57F79DFA" Ref="R401" Part="1"
F 0 "R401" V 1930 3150 40 0000 C CNN
F 1 "1k" V 1857 3151 40 0000 C CNN
F 2 "custom:R_0402_CUSTOM" V 1780 3150 30 0001 C CNN
F 3 "~" H 1850 3150 30 0000 C CNN
1 1850 3150
-1 0 0 1
$EndComp
Text HLabel 1800 1700 0 60 Input ~ 0
RC_IN
Text HLabel 1750 2800 0 60 Input ~ 0
VCC
Text HLabel 1700 2250 0 60 Input ~ 0
GND
Connection ~ 9600 5000
Wire Wire Line
9600 2500 9600 5500
Connection ~ 9400 3900
Wire Wire Line
9400 2500 9400 5500
Connection ~ 9200 2850
Wire Wire Line
9200 2500 9200 5500
Wire Wire Line
8350 5350 8150 5350
Wire Wire Line
8150 4300 8400 4300
Wire Wire Line
2250 3950 1750 3950
Wire Wire Line
2250 3350 2250 3950
Wire Wire Line
2250 3350 2950 3350
Wire Wire Line
2150 3250 2950 3250
Wire Wire Line
4200 1700 1800 1700
Wire Wire Line
4200 2350 4200 1700
Connection ~ 8350 5000
Wire Wire Line
8350 5000 9700 5000
Wire Wire Line
8350 5150 8150 5150
Wire Wire Line
8350 4800 8350 5150
Wire Wire Line
3850 5250 3850 3850
Wire Wire Line
3850 5250 7300 5250
Wire Wire Line
3950 4700 7300 4700
Wire Wire Line
8400 3750 8400 4100
Wire Wire Line
8400 4100 8150 4100
Connection ~ 8400 3900
Wire Wire Line
8400 3900 9700 3900
Wire Wire Line
5900 3650 5900 3350
Wire Wire Line
7300 3650 5900 3650
Wire Wire Line
4050 3850 4050 4200
Wire Wire Line
4050 4200 7300 4200
Wire Wire Line
8150 3250 8400 3250
Connection ~ 8400 2850
Wire Wire Line
8400 2850 9700 2850
Wire Wire Line
8400 3050 8150 3050
Wire Wire Line
8400 2700 8400 3050
Wire Wire Line
5900 2600 5900 3050
Wire Wire Line
7300 2600 5900 2600
Wire Wire Line
3950 3850 3950 4700
Wire Wire Line
5900 3350 4900 3350
Wire Wire Line
4900 3150 7300 3150
Wire Wire Line
5900 3050 4900 3050
Wire Wire Line
9200 1950 9200 2200
Wire Wire Line
9200 1950 9600 1950
Wire Wire Line
9400 1550 9400 2200
Wire Wire Line
9600 1950 9600 2200
Connection ~ 9400 1950
Wire Wire Line
9400 1550 4000 1550
Wire Wire Line
4000 1550 4000 2350
Wire Wire Line
2600 2950 2950 2950
Wire Wire Line
2600 2950 2600 6100
Wire Wire Line
2600 6100 9400 6100
Wire Wire Line
9400 6100 9400 5800
Wire Wire Line
2500 2850 2950 2850
Wire Wire Line
2500 2850 2500 6200
Wire Wire Line
2500 6200 9600 6200
Wire Wire Line
9600 6200 9600 5800
Wire Wire Line
3900 2350 3900 2150
Wire Wire Line
3900 2150 2700 2150
Wire Wire Line
2700 2150 2700 6000
Wire Wire Line
2700 6000 9200 6000
Wire Wire Line
9200 6000 9200 5800
Wire Wire Line
2250 3150 2950 3150
Wire Wire Line
2250 2800 2250 3150
Wire Wire Line
1750 2800 2250 2800
Wire Wire Line
2350 3050 2950 3050
Wire Wire Line
2350 2250 2350 3050
Wire Wire Line
1700 2250 5000 2250
Connection ~ 2350 2250
Wire Wire Line
5000 3250 4900 3250
Wire Wire Line
5000 2250 5000 3250
Connection ~ 3700 2250
Wire Wire Line
2000 2250 2000 2350
Connection ~ 2000 2250
Wire Wire Line
2000 2650 2000 2800
Connection ~ 2000 2800
Wire Wire Line
2200 2650 2200 2800
Connection ~ 2200 2800
Wire Wire Line
2200 2250 2200 2350
Connection ~ 2200 2250
Connection ~ 1850 2250
Connection ~ 1850 2800
Wire Wire Line
1850 2350 1850 2250
Wire Wire Line
1850 2750 1850 3000
Wire Wire Line
3700 2350 3700 2250
Wire Wire Line
2150 3550 2150 3250
Wire Wire Line
1850 3300 1850 3550
Wire Wire Line
8150 2500 8450 2500
Wire Wire Line
8400 2700 8150 2700
Wire Wire Line
8150 3550 8400 3550
Wire Wire Line
8400 3750 8150 3750
Wire Wire Line
8150 4600 8350 4600
Wire Wire Line
8350 4800 8150 4800
Wire Wire Line
1850 3550 2150 3550
$Comp
L TP BL_TX1
U 1 1 58750948
P 1825 1900
AR Path="/57F7AC44/58750948" Ref="BL_TX1" Part="1"
AR Path="/57F7B0C0/58750948" Ref="BL_TX2" Part="1"
AR Path="/57FB3AAC/58750948" Ref="BL_TX3" Part="1"
AR Path="/57FB3AF9/58750948" Ref="BL_TX4" Part="1"
F 0 "BL_TX3" H 1975 1900 60 0000 C CNN
F 1 "TP" H 1975 2050 60 0001 C CNN
F 2 "custom:TP_smd_0.5x0.4" H 1825 1900 60 0001 C CNN
F 3 "~" H 1825 1900 60 0000 C CNN
1 1825 1900
-1 0 0 1
$EndComp
Wire Wire Line
2125 1900 4100 1900
Wire Wire Line
4100 1900 4100 2350
$EndSCHEMATC

339
tinyPEPPER/tinyPEPPER.cmp Normal file
View File

@@ -0,0 +1,339 @@
Cmp-Mod V01 Created by CvPcb (2013-jul-07)-stable date = Fri 07 Oct 2016 07:27:34 PM CEST
BeginCmp
TimeStamp = /57F7AC44/57F791A3;
Reference = C201;
ValeurCmp = C;
IdModule = SM1210;
EndCmp
BeginCmp
TimeStamp = /57F7AC44/57F796EB;
Reference = C202;
ValeurCmp = 100n;
IdModule = SM0402;
EndCmp
BeginCmp
TimeStamp = /57F7B0C0/57F791A3;
Reference = C301;
ValeurCmp = C;
IdModule = SM1210;
EndCmp
BeginCmp
TimeStamp = /57F7B0C0/57F796EB;
Reference = C302;
ValeurCmp = 100n;
IdModule = SM0402;
EndCmp
BeginCmp
TimeStamp = /57F7AC44/57F76A91;
Reference = FET201;
ValeurCmp = IRLML6244;
IdModule = sot23;
EndCmp
BeginCmp
TimeStamp = /57F7AC44/57F781FC;
Reference = FET202;
ValeurCmp = IRLML2244;
IdModule = sot23;
EndCmp
BeginCmp
TimeStamp = /57F7AC44/57F782D1;
Reference = FET203;
ValeurCmp = IRLML6244;
IdModule = sot23;
EndCmp
BeginCmp
TimeStamp = /57F7AC44/57F76A73;
Reference = FET204;
ValeurCmp = IRLML2244;
IdModule = sot23;
EndCmp
BeginCmp
TimeStamp = /57F7AC44/57F78363;
Reference = FET205;
ValeurCmp = IRLML6244;
IdModule = sot23;
EndCmp
BeginCmp
TimeStamp = /57F7AC44/57F780F5;
Reference = FET206;
ValeurCmp = IRLML2244;
IdModule = sot23;
EndCmp
BeginCmp
TimeStamp = /57F7B0C0/57F76A91;
Reference = FET301;
ValeurCmp = IRLML6244;
IdModule = sot23;
EndCmp
BeginCmp
TimeStamp = /57F7B0C0/57F781FC;
Reference = FET302;
ValeurCmp = IRLML2244;
IdModule = sot23;
EndCmp
BeginCmp
TimeStamp = /57F7B0C0/57F782D1;
Reference = FET303;
ValeurCmp = IRLML6244;
IdModule = sot23;
EndCmp
BeginCmp
TimeStamp = /57F7B0C0/57F76A73;
Reference = FET304;
ValeurCmp = IRLML2244;
IdModule = sot23;
EndCmp
BeginCmp
TimeStamp = /57F7B0C0/57F78363;
Reference = FET305;
ValeurCmp = IRLML6244;
IdModule = sot23;
EndCmp
BeginCmp
TimeStamp = /57F7B0C0/57F780F5;
Reference = FET306;
ValeurCmp = IRLML2244;
IdModule = sot23;
EndCmp
BeginCmp
TimeStamp = /57F7AC44/57F78EAB;
Reference = OUT_A201;
ValeurCmp = TP;
IdModule = TP_VIA_PHASE;
EndCmp
BeginCmp
TimeStamp = /57F7B0C0/57F78EAB;
Reference = OUT_A301;
ValeurCmp = TP;
IdModule = TP_VIA_PHASE;
EndCmp
BeginCmp
TimeStamp = /57F7AC44/57F78EC3;
Reference = OUT_B201;
ValeurCmp = TP;
IdModule = TP_VIA_PHASE;
EndCmp
BeginCmp
TimeStamp = /57F7B0C0/57F78EC3;
Reference = OUT_B301;
ValeurCmp = TP;
IdModule = TP_VIA_PHASE;
EndCmp
BeginCmp
TimeStamp = /57F7AC44/57F78EC9;
Reference = OUT_C201;
ValeurCmp = TP;
IdModule = TP_VIA_PHASE;
EndCmp
BeginCmp
TimeStamp = /57F7B0C0/57F78EC9;
Reference = OUT_C301;
ValeurCmp = TP;
IdModule = TP_VIA_PHASE;
EndCmp
BeginCmp
TimeStamp = /57F7AC44/57F79DFA;
Reference = R201;
ValeurCmp = 4k7;
IdModule = SM0402;
EndCmp
BeginCmp
TimeStamp = /57F7AC44/57F788EE;
Reference = R202;
ValeurCmp = 1k;
IdModule = SM0402;
EndCmp
BeginCmp
TimeStamp = /57F7AC44/57F787A6;
Reference = R203;
ValeurCmp = 10k;
IdModule = SM0402;
EndCmp
BeginCmp
TimeStamp = /57F7AC44/57F788F4;
Reference = R204;
ValeurCmp = 1k;
IdModule = SM0402;
EndCmp
BeginCmp
TimeStamp = /57F7AC44/57F787B5;
Reference = R205;
ValeurCmp = 10k;
IdModule = SM0402;
EndCmp
BeginCmp
TimeStamp = /57F7AC44/57F788FA;
Reference = R206;
ValeurCmp = 1k;
IdModule = SM0402;
EndCmp
BeginCmp
TimeStamp = /57F7AC44/57F787C4;
Reference = R207;
ValeurCmp = 10k;
IdModule = SM0402;
EndCmp
BeginCmp
TimeStamp = /57F7B0C0/57F79DFA;
Reference = R301;
ValeurCmp = 4k7;
IdModule = SM0402;
EndCmp
BeginCmp
TimeStamp = /57F7B0C0/57F788EE;
Reference = R302;
ValeurCmp = 1k;
IdModule = SM0402;
EndCmp
BeginCmp
TimeStamp = /57F7B0C0/57F787A6;
Reference = R303;
ValeurCmp = 10k;
IdModule = SM0402;
EndCmp
BeginCmp
TimeStamp = /57F7B0C0/57F788F4;
Reference = R304;
ValeurCmp = 1k;
IdModule = SM0402;
EndCmp
BeginCmp
TimeStamp = /57F7B0C0/57F787B5;
Reference = R305;
ValeurCmp = 10k;
IdModule = SM0402;
EndCmp
BeginCmp
TimeStamp = /57F7B0C0/57F788FA;
Reference = R306;
ValeurCmp = 1k;
IdModule = SM0402;
EndCmp
BeginCmp
TimeStamp = /57F7B0C0/57F787C4;
Reference = R307;
ValeurCmp = 10k;
IdModule = SM0402;
EndCmp
BeginCmp
TimeStamp = /57F7AE6B;
Reference = TP1;
ValeurCmp = TP;
IdModule = TP_1x1;
EndCmp
BeginCmp
TimeStamp = /57F7AE9E;
Reference = TP2;
ValeurCmp = TP;
IdModule = TP_1x1;
EndCmp
BeginCmp
TimeStamp = /57F7AEE5;
Reference = TP3;
ValeurCmp = TP;
IdModule = TP_1x1;
EndCmp
BeginCmp
TimeStamp = /57F7AEF4;
Reference = TP4;
ValeurCmp = TP;
IdModule = TP_1x1;
EndCmp
BeginCmp
TimeStamp = /57F7AF0C;
Reference = TP5;
ValeurCmp = TP;
IdModule = TP_1x1;
EndCmp
BeginCmp
TimeStamp = /57F7AF1B;
Reference = TP6;
ValeurCmp = TP;
IdModule = TP_1x1;
EndCmp
BeginCmp
TimeStamp = /57F7AC44/57F78473;
Reference = TP201;
ValeurCmp = TP;
IdModule = TP_1x1;
EndCmp
BeginCmp
TimeStamp = /57F7AC44/57F78482;
Reference = TP202;
ValeurCmp = TP;
IdModule = TP_1x1;
EndCmp
BeginCmp
TimeStamp = /57F7B0C0/57F78473;
Reference = TP301;
ValeurCmp = TP;
IdModule = TP_1x1;
EndCmp
BeginCmp
TimeStamp = /57F7B0C0/57F78482;
Reference = TP302;
ValeurCmp = TP;
IdModule = TP_1x1;
EndCmp
BeginCmp
TimeStamp = /57F7AC44/57F76060;
Reference = U201;
ValeurCmp = EFM8BB10;
IdModule = QFN20;
EndCmp
BeginCmp
TimeStamp = /57F7B0C0/57F76060;
Reference = U301;
ValeurCmp = EFM8BB10;
IdModule = QFN20;
EndCmp
EndListe

File diff suppressed because it is too large Load Diff

82
tinyPEPPER/tinyPEPPER.pro Normal file
View File

@@ -0,0 +1,82 @@
update=Tue 10 Jan 2017 04:07:39 PM CET
version=1
last_client=kicad
[cvpcb]
version=1
NetIExt=net
[cvpcb/libraries]
EquName1=devcms
[pcbnew]
version=1
LastNetListRead=
UseCmpFile=1
PadDrill=" 0.600000"
PadDrillOvalY=" 0.600000"
PadSizeH=" 1.500000"
PadSizeV=" 1.500000"
PcbTextSizeV=" 1.500000"
PcbTextSizeH=" 1.500000"
PcbTextThickness=" 0.300000"
ModuleTextSizeV=" 1.000000"
ModuleTextSizeH=" 1.000000"
ModuleTextSizeThickness=" 0.150000"
SolderMaskClearance=" 0.000000"
SolderMaskMinWidth=" 0.000000"
DrawSegmentWidth=" 0.200000"
BoardOutlineThickness=" 0.100000"
ModuleOutlineThickness=" 0.150000"
[pcbnew/libraries]
LibDir=
LibName1=sockets
LibName2=connect
LibName3=discret
LibName4=pin_array
LibName5=divers
LibName6=smd_capacitors
LibName7=smd_resistors
LibName8=smd_crystal&oscillator
LibName9=smd_dil
LibName10=smd_transistors
LibName11=libcms
LibName12=display
LibName13=led
LibName14=dip_sockets
LibName15=pga_sockets
LibName16=valves
LibName17=custom
[general]
version=1
[eeschema]
version=1
LibDir=../tinyPEPPER;kicad_misc
[eeschema/libraries]
LibName1=power
LibName2=device
LibName3=transistors
LibName4=conn
LibName5=linear
LibName6=regul
LibName7=74xx
LibName8=cmos4000
LibName9=adc-dac
LibName10=memory
LibName11=xilinx
LibName12=microcontrollers
LibName13=dsp
LibName14=microchip
LibName15=analog_switches
LibName16=motorola
LibName17=texas
LibName18=intel
LibName19=audio
LibName20=interface
LibName21=digital-audio
LibName22=philips
LibName23=display
LibName24=cypress
LibName25=siliconi
LibName26=opto
LibName27=atmel
LibName28=contrib
LibName29=valves
LibName30=kicad_misc/custom

272
tinyPEPPER/tinyPEPPER.sch Normal file
View File

@@ -0,0 +1,272 @@
EESchema Schematic File Version 2
LIBS:power
LIBS:device
LIBS:transistors
LIBS:conn
LIBS:linear
LIBS:regul
LIBS:74xx
LIBS:cmos4000
LIBS:adc-dac
LIBS:memory
LIBS:xilinx
LIBS:microcontrollers
LIBS:dsp
LIBS:microchip
LIBS:analog_switches
LIBS:motorola
LIBS:texas
LIBS:intel
LIBS:audio
LIBS:interface
LIBS:digital-audio
LIBS:philips
LIBS:display
LIBS:cypress
LIBS:siliconi
LIBS:opto
LIBS:atmel
LIBS:contrib
LIBS:valves
LIBS:custom
LIBS:tinyPEPPER-cache
EELAYER 26 0
EELAYER END
$Descr A4 11693 8268
encoding utf-8
Sheet 1 5
Title ""
Date "7 oct 2016"
Rev ""
Comp ""
Comment1 ""
Comment2 ""
Comment3 ""
Comment4 ""
$EndDescr
$Comp
L TP TP101
U 1 1 57F7AE6B
P 1600 2450
F 0 "TP101" H 1750 2450 60 0000 C CNN
F 1 "TP" H 1750 2600 60 0001 C CNN
F 2 "custom:TP_powerpad" H 1600 2450 60 0001 C CNN
F 3 "~" H 1600 2450 60 0000 C CNN
1 1600 2450
-1 0 0 1
$EndComp
$Comp
L TP TP102
U 1 1 57F7AE9E
P 1600 2700
F 0 "TP102" H 1750 2700 60 0000 C CNN
F 1 "TP" H 1750 2850 60 0001 C CNN
F 2 "custom:TP_powerpad" H 1600 2700 60 0001 C CNN
F 3 "~" H 1600 2700 60 0000 C CNN
1 1600 2700
-1 0 0 1
$EndComp
$Comp
L TP TP103
U 1 1 57F7AEE5
P 1600 3350
F 0 "TP103" H 1750 3350 60 0000 C CNN
F 1 "TP" H 1750 3500 60 0001 C CNN
F 2 "custom:tp_SMD_0.6x1.2" H 1600 3350 60 0001 C CNN
F 3 "~" H 1600 3350 60 0000 C CNN
1 1600 3350
-1 0 0 1
$EndComp
$Comp
L TP TP104
U 1 1 57F7AEF4
P 1600 3600
F 0 "TP104" H 1750 3600 60 0000 C CNN
F 1 "TP" H 1750 3750 60 0001 C CNN
F 2 "custom:tp_SMD_0.6x1.2" H 1600 3600 60 0001 C CNN
F 3 "~" H 1600 3600 60 0000 C CNN
1 1600 3600
-1 0 0 1
$EndComp
$Comp
L TP TP105
U 1 1 57F7AF0C
P 1600 3850
F 0 "TP105" H 1750 3850 60 0000 C CNN
F 1 "TP" H 1750 4000 60 0001 C CNN
F 2 "custom:tp_SMD_0.6x1.2" H 1600 3850 60 0001 C CNN
F 3 "~" H 1600 3850 60 0000 C CNN
1 1600 3850
-1 0 0 1
$EndComp
$Comp
L TP TP106
U 1 1 57F7AF1B
P 1600 4150
F 0 "TP106" H 1750 4150 60 0000 C CNN
F 1 "TP" H 1750 4300 60 0001 C CNN
F 2 "custom:tp_SMD_0.6x1.2" H 1600 4150 60 0001 C CNN
F 3 "~" H 1600 4150 60 0000 C CNN
1 1600 4150
-1 0 0 1
$EndComp
Wire Wire Line
1900 2450 4700 2450
Wire Wire Line
1900 2700 4700 2700
Wire Wire Line
1900 3350 2900 3350
Wire Wire Line
1900 3600 3050 3600
Wire Wire Line
1900 3850 2950 3850
Wire Wire Line
1900 4150 2850 4150
Text Label 2000 2450 0 60 ~ 0
VCC
Text Label 2000 2700 0 60 ~ 0
GND
Text Label 2000 3350 0 60 ~ 0
RC_IN_0
Text Label 2000 3600 0 60 ~ 0
RC_IN_1
$Sheet
S 4700 2350 1900 850
U 57F7AC44
F0 "single esc 1" 50
F1 "single_esc.sch" 50
F2 "RC_IN" I L 4700 3100 60
F3 "VCC" I L 4700 2450 60
F4 "GND" I L 4700 2700 60
$EndSheet
Wire Wire Line
4700 3100 2900 3100
Wire Wire Line
2900 3100 2900 3350
Wire Wire Line
3050 3600 3050 4250
Wire Wire Line
3050 4250 4700 4250
Wire Wire Line
4450 3900 4700 3900
Wire Wire Line
4450 2700 4450 6150
Connection ~ 4450 2700
Wire Wire Line
4600 2450 4600 5950
Wire Wire Line
4600 3700 4700 3700
Connection ~ 4600 2450
$Sheet
S 4700 3600 2450 800
U 57F7B0C0
F0 "single esc 2" 50
F1 "single_esc.sch" 50
F2 "RC_IN" I L 4700 4250 60
F3 "VCC" I L 4700 3700 60
F4 "GND" I L 4700 3900 60
$EndSheet
$Sheet
S 4700 4700 2000 800
U 57FB3AAC
F0 "single esc 3" 60
F1 "single_esc.sch" 60
F2 "RC_IN" I L 4700 5350 60
F3 "VCC" I L 4700 4800 60
F4 "GND" I L 4700 5000 60
$EndSheet
$Sheet
S 4750 5850 1900 800
U 57FB3AF9
F0 "single esc 4" 60
F1 "single_esc.sch" 60
F2 "RC_IN" I L 4750 6500 60
F3 "VCC" I L 4750 5950 60
F4 "GND" I L 4750 6150 60
$EndSheet
Wire Wire Line
4750 6500 2850 6500
Wire Wire Line
2850 6500 2850 4150
Wire Wire Line
2950 3850 2950 5350
Wire Wire Line
2950 5350 4700 5350
Wire Wire Line
4450 6150 4750 6150
Connection ~ 4450 3900
Wire Wire Line
4700 5000 4450 5000
Connection ~ 4450 5000
Wire Wire Line
4600 5950 4750 5950
Connection ~ 4600 3700
Wire Wire Line
4600 4800 4700 4800
Connection ~ 4600 4800
$Comp
L CUSTOM_C C1000
U 1 1 57FCB86E
P 2800 2250
F 0 "C1000" V 2571 2250 40 0000 C CNN
F 1 "47u" V 2647 2250 40 0000 C CNN
F 2 "Capacitors_SMD:C_0805" H 2838 2100 30 0001 C CNN
F 3 "" H 2800 2250 60 0000 C CNN
1 2800 2250
0 1 1 0
$EndComp
Wire Wire Line
2600 2250 2600 2450
Connection ~ 2600 2450
Wire Wire Line
3000 2250 3000 2700
Connection ~ 3000 2700
$Comp
L hole H1
U 1 1 58465F4C
P 9500 2250
F 0 "H1" H 9556 2537 60 0000 C CNN
F 1 "hole" H 9556 2431 60 0000 C CNN
F 2 "custom:mouting_hole" H 9500 2250 60 0001 C CNN
F 3 "" H 9500 2250 60 0000 C CNN
1 9500 2250
1 0 0 -1
$EndComp
$Comp
L hole H2
U 1 1 58466048
P 9500 2700
F 0 "H2" H 9556 2987 60 0000 C CNN
F 1 "hole" H 9556 2881 60 0000 C CNN
F 2 "custom:mouting_hole" H 9500 2700 60 0001 C CNN
F 3 "" H 9500 2700 60 0000 C CNN
1 9500 2700
1 0 0 -1
$EndComp
$Comp
L hole H3
U 1 1 58466181
P 10200 2250
F 0 "H3" H 10072 2197 60 0000 R CNN
F 1 "hole" H 10072 2303 60 0000 R CNN
F 2 "custom:mouting_hole" H 10200 2250 60 0001 C CNN
F 3 "" H 10200 2250 60 0000 C CNN
1 10200 2250
-1 0 0 1
$EndComp
$Comp
L hole H4
U 1 1 58466291
P 10200 2700
F 0 "H4" H 10072 2647 60 0000 R CNN
F 1 "hole" H 10072 2753 60 0000 R CNN
F 2 "custom:mouting_hole" H 10200 2700 60 0001 C CNN
F 3 "" H 10200 2700 60 0000 C CNN
1 10200 2700
-1 0 0 1
$EndComp
Wire Wire Line
2600 2250 2650 2250
Wire Wire Line
2950 2250 3000 2250
$EndSCHEMATC