From e7c0fa394b2d2eeb32eb7bb7e2afcf9848c542ea Mon Sep 17 00:00:00 2001 From: Jared Boone Date: Sun, 3 Feb 2019 19:25:11 +0100 Subject: [PATCH] PortaPack Sync, take 2 (#215) * Power: Turn off additional peripheral clock branches. * Update schematic with new symbol table and KiCad standard symbols. Fix up wires. * Schematic: Update power net labels. * Schematic: Update footprint names to match library changes. * Schematic: Update header vendor and part numbers. * Schematic: Specify (arbitrary) value for PDN# net. * Schematic: Remove fourth fiducial. Not standard practice, and was taking up valuable board space. * Schematic: Add reference oscillator -- options for clipped sine or HCMOS output. * Schematic: Update copyright year. * Schematic: Remove CLKOUT to CPLD. It was a half-baked idea. * Schematic: Add (experimental) GPS circuit. Add note about charging circuit. Update date and revision to match PCB. * PCB: Update from schematic change: now revision 20180819. Diff was extensive due to net renumbering... * PCB: Fix GPS courtyard to accommodate crazy solder paste recommendation in integration manual. PCB: Address DRC clearance violation between via and oscillator pad. * PCB: Update copyright on drawing. * Update schematic and PCB date and revision. * gitignore: Sublime Text editor project/workspace files * Power: Power up or power down peripheral clock at appropriate times, so firmware doesn't freeze... * Clocking: Fix incorrect shift for CGU IDIVx_CTRL.PD field. * LPC43xx: Add CGU IDIVx struct/union type. * Power: Switch off unused IDIV dividers. Make note of active IDIVs and their use. * HackRF Mode: Upgrade firmware to 2018.01.1 (API 1.02) * MAX V CPLD: Refactor class to look more like Xilinx CoolRunner II CPLD class. * MAX V CPLD: Add BYPASS, SAMPLE support. Rename enter_isp -> enable, exit_isp -> disable. Use SAMPLE at start of flash process, which somehow addresses the problem where CFM wouldn't load into SRAM (and become the active bitstream) after flashing. * MAX V CPLD: Reverse verify data checking logic to make it a little faster. * CPLD: After reprogramming flash, immediately clamp I/O signals, load to SRAM, and "execute" the new bitstream. * Si5351: Refactor code, make one of the registers more type-safe. Clock Manager: Track selected reference clock source for later use in user interface. * Clock Manager: Add note about PPM only affecting Si5351C PLLA, which always runs from the HackRF 25MHz crystal. It is assumed an external clock does not need adjustment, though I am open to being convinced otherwise... * PPM UI: Show "EXT" when showing PPM adjustment and reference clock is external. * CPLD: Add pins and logic for new PortaPack hardware feature(s). * CPLD: Bitstream to support new hardware features. * Clock Generator: Add a couple more setter methods for ClockControl registers. * Clock Manager: Use shared MCU CLKIN clock control configuration constant. * Clock Manager: Reduce MCU CLKIN driver current. 2mA should be plenty. * Clock Manager: Remove redundant clock generator output enable. * Bootstrap: Remove unnecessary ldscript hack to locate SPIFI mode change code in RAM. * Bootstrap: Get CPU operating at max frequency as soon as possible. Update SPIFI speed comment. Make some more LPC43xx types into unions with uint32_t. * Bootstrap: Explicitly configure IDIVB for SPIFI, despite LPC43xx bootloader setting it. * Clock Manager: Init peripherals before CPLD reconfig. Do the clock generator setup after, so we can check presence of PortaPack reference clock with the help of the latest CPLD bitstream. * Clock Manager: Reverse sense of conditional that determines crystal or non-crystal reference source. This is for an expected upcoming change where multiple external options can be differentiated. * Bootstrap: Consolidate clock configuration, update SPIFI rate comment. * Clock Manager: Use IDIVA for clock source for all peripherals, instead of PLL1. Should make switching easier going forward. Don't use IRC as clock during initial clock manager configuration. Until we switch to GP_CLKIN, we should go flat out... * ChibiOS M0: Change default clock speed to 204MHz, since bootstrap now maxes out clock speed before starting M0 execution. * PortaPack IO: Expose method to set reference oscillator enable pin. * Pin configuration: Do SPIFI pin config with other pins, in preparation for eliminating separate bootloader. * Pin configuration: Disable input buffers on pins that are never read. * Revert "ChibiOS M0: Change default clock speed to 204MHz, since bootstrap now maxes out clock speed before starting M0 execution." This reverts commit c0e2bb6cc4cc656769323bdbb8ee5a16d2d5bb03. * PCB: Change PCB stackup, Tg, clarify solder mask color, use more metric. * PCB: Move HackRF header P9 to B.CrtYd layer. * PCB: Change a Tg reference I missed. * PCB: Update footprints for parts with mismatched CAD->tape rotation. Adjust a few layer choice and line thickness bits. * PCB: Got cold feet, switched back to rectangular pads. * PCB: Add Eco layers to be visible and Gerber output. * PCB: Use aux origin for plotting, for tidier coordinates. * PCB: Output Gerber job file, because why not? * Schematic: Correct footprints for two reference-related components. * Schematic: Remove manfuacturer and part number for DNP component. * Schematic: Specify resistor value, manufacturer, part number for reference oscillator series termination. * PCB: Update netlist and footprints from schematic. * Netlist: Updated component values, footprints. * PCB: Nudge some components and traces to address DRC clearance violations. * PCB: Allow KiCad to update zone timestamps (again?!). * PCB: Generate *all* Gerber layers. * Schematic, PCB: Update revision to 20181025. * PCB: Adjust fab layer annotations orientation and font size. * PCB: Hide mounting hole reference designators on silk layer. * PCB: Shrink U1, U3 pads to get 0.2mm space between pads. * PCB: Set pad-to-mask clearance to zero, leave up to fab. Set minimum mask web to 0.2mm for non-black options. * PCB: Revise U1 pad shape, mask, paste, thermal drills. Clearance is improved at corner pads. * PCB: Tweak U3 for better thermal pad/drill/mask/paste design. * PCB: Change solder mask color to blue. * Schematic, PCB: Update revision to 20181029. * PCB: Bump minimum mask web down a tiny bit because KiCad is having trouble with math. * Update schematic * Remove unused board files. * Add LPC43xx functions. * chibios: Replace code with per-peripheral structs defining clocks, interrupts, and reset bits. * LPC43xx: Add MCPWM peripheral struct. * clock generator: Use recommended PLL reset register value. Datasheet recommends a value. AN619 is quiet on the topic, claims the low nibble is default 0b0000. * GPIO: Tweak masking of SCU function. I don't remember why I thought this was necessary... * HAL: Explicitly turn on timer peripheral clocks used as systicks, during init. * SCU: Add struct to hold pin configuration. * PAL: Add functions to address The Glitch. https://greatscottgadgets.com/2018/02-28-we-fixed-the-glitch/ * PAL/board: New IO initialization code Declare initial state for SCU pin config, GPIOs. Apply initial state during PAL init. Perform VAA slow turn-on to address The Glitch. * Merge M0 and M4 to eliminate need for bootstrap firmware During _early_init, detect if we're running on the M4 or M0. If M4: do M4-specific core initialization, reset peripherals, speed up SPIFI clock, start M0, go to sleep. If M0: do all the other things. * Pins: Miscellaneous SCU configuration tweaks. * Little code clarity improvement. * bootstrap: Remove, not necessary. * Clock Manager: Large re-working to support external references. * Clock Manager: Actually store chosen clock reference Similarly-named local was covering a member and discarding the value. * Clock Manager: Reference type which contains source, frequency. * Setup: Display reference source, frequency in frequency correction screen. * LPC43xx API: Add extern "C" for use from C++. * Use LPC43xx API for SGPIO, GPDMA, I2S initialization. * I2S: Add BASE_AUDIO_CLK management. * Add MOTOCON_PWM clock/reset structure. * Serial: Fix dumb typos. * Serial: Remove extra reference operator. * Serial: Cut-and-paste error in structure type name. * Move SCU structure from PAL to LPC43xx API. It'd be nice if I gave some thought to where code should live before I commit it. * VAA power: Move code to HackRF board file It doesn't belong in PAL. * MAX5 CPLD: Add SAMPLE and EXTEST methods. * Flash image: Change packing scheme to use flash more efficiently. Application is now a single image for both M4 bootstrap and M0. Baseband images come immediately after application binary. No need to align to large blocks (and waste lots of flash). * Clock Manager: Remove PLL1 power down function. * Move and rename peripherals reset function to board module. * Remove unused peripheral/clock management. * Clock Manager: Extract switch to IRC into separate function. * Clock Manager: More explicit shutdown of clocks, clock generator. * Move initialization to board module. * ChibiOS: Rename "application" board, add "baseband" board. There are now two ChibiOS "boards", one which runs the application and does the hardware setup. The other board, "baseband", does very little setup. * Clock Manager: Remove unused crystal enable/disable code. * Clock Manager: Restore clock configuration to SPIFI bootloader state before app shutdown. * Reset peripherals on app shutdown. Be careful not to reset M0APP (the core we're running on) or GPIO (which is holding the hardware in a stable state). * M4/baseband hal_lld_init: use IDIVA, which is configured earlier by M0. This was causing problems during restart into HackRF mode. Baseband hal_lld_init changed M4 clock from IDIVA (set by M0) to PLL1, which was unceremoniously turned off during shutdown. * Audio app: Stop audio PLL on shutdown. * M4 HAL: Make LPC43XX_M4_CLK_SRC optional. This was changing the BASE_M4_CLK when a baseband was run. * LPC43xx C++ layer: Fix IDIVx constructor IDIV narrow field width. * Application board: hide the peripherals_reset function, as it isn't useful except during hardware init. * Consolidate hardware init code to some degree. ClockManager is super-overloaded and murky in its purpose. Migrate audio from IDIVC to IDIVD, to more closely resemble initial clock scheme, so it's simpler to get back to it during shutdown. * Migrate some startup code to application board. * Si5351: Use correct methods for reset(). update_output_enable_control() doesn't reset the enabled outputs to the reset state, unless the object is freshly initialized, which it isn't when performing firmware shutdown. For similar reasons, use set_clock_control() instead of setting internal state and then using the update function. * GPIO: Set SPIFI CS pin to match input buffer state coming out of bootloader. * Change application board.c to .cpp, with required dependent changes * Board: Clean up SCU configuration code/data. * I2S: Add shutdown code and use it. * LPC43xx: Consolidate a bunch of structures that had been scattered all over. ...because I'm an undisciplined coder. * I2S: Fix ordering of branch and base clock disable. Core was hanging, presumably because the register interface on the branch/peripheral was unresponsive after the base clock was disabled. * Controls: Save and expose raw navigation wheel switch state I need to do some work on debouncing and ignoring simultaneous key presses. * Controls: Add debug view for switches state. * Controls: Ignore all key presses until all keys are released. This should address some mechanical quirks of the navigation wheel used on the PortaPack. * Clock Manager: Wait for only the necessary PLL to lock. Wasn't working on PortaPacks without a built-in clock reference, as that uses the other PLL. TODO: Switching PLLs may be kind of pointless now... * CMake: Pull HackRF project from GitHub and build. * CMake: Remove commented code. * CMake: Clone HackRF via HTTPS, not SSH. * CMake: Extra pause for slow post-DFU firmware boot-up. * CMake: TODO to fix SVF/XSVF file source. * CMake: Ask HackRF hackrf_usb to make DFU binary. * Travis-CI: Add dfu-util, now that HackRF firmware is being built for inclusion. * Travis-CI: Update build environment to Ubuntu xenial Previously Trusty. * Travis-CI: Incorrectly structured my request for dfu-util package. I'm soooo talented. * ldscript: Mark flash, ram with correct R/W/X flags. * ldscript: Enlarge M0 flash region to 1Mbyte, the size of the HackRF SPI flash. * Receiver: Hide PPM adjustment if clock source is not HackRF crystal. * Documentation: Update product photos and README. * Documentation: Add TCXO feature to README description. * Application: Rearrange files to match HAVOC directory structure. * Map view in AIS (#213) * Added GeoMapView to AISRecentEntryDetailView * Added autoupdate in AIS map * Revert "Map view in AIS (#213)" This reverts commit 262c030224b9ea3e56ff1c8a66246e7ecf30e41f. This commit will be cherry-picked onto a clean branch, then re-committed after a troublesome pull request is reverted. * Revert "Upstream merge to make new revision of PortaPack work (#206)" This reverts commit 920b98f7c9a30371b643c42949066fb7d2441daf. This pull request was missing some changes and was preventing firmware from functioning on older PortaPacks. * CPLD: Pull bitstream from HackRF project. * SGPIO: Identify pins on CPLD by their new functions. Pull down HOST_SYNC_EN. * CPLD: Don't load HackRF CPLD bitstream into RAM. Trying to converge CPLD implementations, so this shouldn't be necesssary. HOWEVER, it would be good to *check* the CPLD contents and provide a way to update, if necessary. * CPLD: Tweak clock generator config to match CPLD timing changes in HackRF. * PinConfig: Drive CPLD pins correctly. * CMake: Use jboone/hackrf master branch, now that CPLD fixes are there. * CMake: Fix HackRF CPLD SVF dependency. Build would break on the first pass, but work if you restarted make. * CMake: Fix my misuse of the HackRF CMake configuration -- was building from too deep in the directory tree * CMake: Work-around for CMake 3.5 not supporting ExternalProject_Add SOURCE_SUBDIR. * CMake: Choose a CMP0005 policy to quiet CMake warnings. * Settings: Show active clock reference. Only show PPM adjustment for HackRF source. * Radio Settings: Change reference clock text color. Make consistent color with other un-editable text. TODO: This is a bit of a hack to get ui::Text objects to support custom colors, like the Label structures used elsewhere. --- .travis.yml | 10 +- CMakeLists.txt | 2 + README.md | 250 +- .../hardware/portapack_h1_operating.jpg | Bin 0 -> 117049 bytes doc/images/hardware/portapack_h1_parts.jpg | Bin 0 -> 140079 bytes firmware/CMakeLists.txt | 43 +- firmware/application/CMakeLists.txt | 4 +- firmware/application/apps/ui_debug.cpp | 77 +- firmware/application/apps/ui_debug.hpp | 50 + firmware/application/apps/ui_settings.cpp | 34 +- firmware/application/apps/ui_settings.hpp | 42 +- firmware/application/audio.cpp | 4 + firmware/application/clock_manager.cpp | 221 +- firmware/application/clock_manager.hpp | 25 +- firmware/application/event_m0.cpp | 17 +- firmware/application/event_m0.hpp | 1 + firmware/application/hw/si5351.cpp | 7 +- firmware/application/hw/si5351.hpp | 8 +- firmware/application/irq_controls.cpp | 18 +- firmware/application/irq_controls.hpp | 8 + firmware/application/portapack.cpp | 427 +- firmware/application/portapack.hpp | 3 - firmware/application/ui/ui_receiver.cpp | 6 +- firmware/application/ui_navigation.cpp | 2 +- firmware/baseband/CMakeLists.txt | 6 +- firmware/baseband/mcuconf.h | 4 - firmware/bootstrap/bootstrap.bin | Bin 0 -> 220 bytes firmware/bootstrap/bootstrap_pad.bin | Bin 0 -> 65536 bytes .../boards/GSG_HACKRF_ONE/board.c | 330 -- .../boards/GSG_HACKRF_ONE/board.cmake | 9 - .../boards/GSG_HACKRF_ONE/board.mk | 5 - .../boards/PORTAPACK_APPLICATION/board.cmake | 9 + .../boards/PORTAPACK_APPLICATION/board.cpp | 607 +++ .../boards/PORTAPACK_APPLICATION/board.h | 45 + .../boards/PORTAPACK_APPLICATION/board.mk | 5 + .../boards/PORTAPACK_BASEBAND/board.c | 26 + .../boards/PORTAPACK_BASEBAND/board.cmake | 9 + .../board.h | 83 +- .../boards/PORTAPACK_BASEBAND/board.mk | 5 + .../os/hal/platforms/LPC43xx/adc_lld.h | 7 - .../os/hal/platforms/LPC43xx/gpt_lld.h | 9 - .../os/hal/platforms/LPC43xx/i2c_lld.h | 6 - .../os/hal/platforms/LPC43xx/lpc43xx.h | 222 ++ .../os/hal/platforms/LPC43xx/pal_lld.c | 66 - .../os/hal/platforms/LPC43xx/pal_lld.h | 31 - .../os/hal/platforms/LPC43xx/sdc_lld.h | 11 - .../os/hal/platforms/LPC43xx/serial_lld.c | 12 +- .../os/hal/platforms/LPC43xx/serial_lld.h | 10 +- .../os/hal/platforms/LPC43xx/spi_lld.h | 10 - .../os/hal/platforms/LPC43xx_M4/hal_lld.c | 2 + .../GCC/ARMCMx/LPC43xx_M0/ld/LPC43xx_M0.ld | 6 +- .../GCC/ARMCMx/LPC43xx_M4/ld/LPC43xx_M4.ld | 6 +- firmware/common/baseband_sgpio.cpp | 24 +- firmware/common/baseband_sgpio.hpp | 3 +- firmware/common/cpld_max5.cpp | 11 + firmware/common/cpld_max5.hpp | 2 + firmware/common/gpdma.hpp | 12 + firmware/common/gpio.hpp | 2 +- firmware/common/hackrf_hal.cpp | 49 - firmware/common/hackrf_hal.hpp | 2 - firmware/common/i2s.hpp | 39 + firmware/common/lpc43xx_cpp.hpp | 2 +- firmware/common/pins.hpp | 6 +- firmware/common/spi_image.hpp | 12 +- firmware/hackrf_cpld_portapack.svf | 1122 ------ firmware/hackrf_one_usb.dfu | Bin 22056 -> 0 bytes firmware/tools/make_spi_image.py | 4 +- hardware/portapack_h1/audio.sch | 4 +- hardware/portapack_h1/gps.sch | 4 +- hardware/portapack_h1/hackrf_if.sch | 4 +- hardware/portapack_h1/lcd_sw_sd.sch | 4 +- hardware/portapack_h1/portapack_h1.kicad_pcb | 3474 +++++++++-------- hardware/portapack_h1/portapack_h1.net | 40 +- hardware/portapack_h1/portapack_h1.pdf | Bin 290759 -> 345665 bytes hardware/portapack_h1/portapack_h1.sch | 4 +- hardware/portapack_h1/power.sch | 14 +- 76 files changed, 3585 insertions(+), 4053 deletions(-) create mode 100644 doc/images/hardware/portapack_h1_operating.jpg create mode 100644 doc/images/hardware/portapack_h1_parts.jpg create mode 100755 firmware/bootstrap/bootstrap.bin create mode 100755 firmware/bootstrap/bootstrap_pad.bin delete mode 100755 firmware/chibios-portapack/boards/GSG_HACKRF_ONE/board.c delete mode 100644 firmware/chibios-portapack/boards/GSG_HACKRF_ONE/board.cmake delete mode 100755 firmware/chibios-portapack/boards/GSG_HACKRF_ONE/board.mk create mode 100644 firmware/chibios-portapack/boards/PORTAPACK_APPLICATION/board.cmake create mode 100755 firmware/chibios-portapack/boards/PORTAPACK_APPLICATION/board.cpp create mode 100755 firmware/chibios-portapack/boards/PORTAPACK_APPLICATION/board.h create mode 100755 firmware/chibios-portapack/boards/PORTAPACK_APPLICATION/board.mk create mode 100644 firmware/chibios-portapack/boards/PORTAPACK_BASEBAND/board.c create mode 100644 firmware/chibios-portapack/boards/PORTAPACK_BASEBAND/board.cmake rename firmware/chibios-portapack/boards/{GSG_HACKRF_ONE => PORTAPACK_BASEBAND}/board.h (75%) mode change 100755 => 100644 create mode 100644 firmware/chibios-portapack/boards/PORTAPACK_BASEBAND/board.mk delete mode 100644 firmware/hackrf_cpld_portapack.svf delete mode 100644 firmware/hackrf_one_usb.dfu diff --git a/.travis.yml b/.travis.yml index b1edf1262..752fe767d 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,6 +1,11 @@ language: cpp -cache: apt +matrix: + include: + - os: linux + compiler: gcc + cache: apt + dist: xenial notifications: irc: @@ -27,6 +32,9 @@ script: - popd addons: + apt: + packages: + - dfu-util artifacts: paths: - $(ls build/firmware/portapack-h1-havoc-*.tar.bz2 | tr "\n" ":") diff --git a/CMakeLists.txt b/CMakeLists.txt index 371e26d3b..ac13907e9 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -19,6 +19,8 @@ # cmake_minimum_required(VERSION 2.8.9) +cmake_policy(SET CMP0005 NEW) + set(CMAKE_TOOLCHAIN_FILE ${CMAKE_CURRENT_LIST_DIR}/firmware/toolchain-arm-cortex-m.cmake) project(portapack-h1) diff --git a/README.md b/README.md index f8126ab07..852d2f163 100644 --- a/README.md +++ b/README.md @@ -1,125 +1,125 @@ -![HAVOC banner](doc/banner.png) - -HAVOC is a fork of the PortaPack H1 firmware, a portability add-on for the [HackRF One software-defined radio](http://greatscottgadgets.com/hackrf/). - -Hardware is available at [ShareBrained Technology](http://sharebrained.com/portapack). - -It is build on top of [ShareBrained's firmware](https://github.com/sharebrained/portapack-hackrf/), meaning that the original functionalities are kept (except when I don't sync for 2 months). - -# Documentation - -[READ THE WIKI](https://github.com/furrtek/portapack-havoc/wiki/Home/) - -If you want to submit a bug report, suggest something... Don't hesitate, use this page: https://github.com/furrtek/portapack-havoc/issues (Check the progress list below first). - -# Summary - -As its name implies, HAVOC's functionalities can be fun, mean and even useful sometimes. You shouldn't use them. No ! Bad ! Put it down. - -**In most countries, radio transmissions are tightly regulated. Transmitting outside of free/public bands without a licence or authorization, even at very low power, is certainly forbidden where you live. Always bear that in mind. You're the ONLY ONE responsible for what you do with this software.** - -# Fork features - -* IQ file replay -* Microphone FM transmit with CTCSS -* CTCSS decoder -* Frequency manager (save & load from SD card, with categories and notes) -* File manager -* "Soundboard" wave file player (put 8-bit mono files in SD card /wav directory) -* ADS-B receiver with map view -* ADS-B transmitter (aircraft spoof) -* SSTV transmitter -* Fully configurable jammer -* POCSAG transmitter -* POCSAG receiver/decoder -* Morse transmitter (FM tone and CW) -* OOK transmitter for common remote encoders (PT2262, doorbells, remote outlets, some garage doors, ...) -* RDS (Radio Data System) PSN, RadioText and Time groups transmitter -* Meteorological radiosonde receiver for M10 and M2K2... -* AFSK receiver -* AFSK transmitter (Bell202...) -* Nuoptix DTMF sync transmitter (quite specific but can be useful in some theme parks :) ) -* TouchTunes jukebox universal remote (by Notpike) -* LCR (Language de Commande Routier) message generator -* Street lighting control transmitter (CCIR tones) -* "Play Dead" in case of emergency -* Fully configurable RF signal generator -* RSSI audio output as pitch (for direction finding) - -# Progress - -Feature | Progress | Notes -------- | -------- | ----- -POCSAG RX   | 95% | Needs support for numeric messages -Morse TX | 95% | Needs fox hunt scheduler and live keying mode -Mic. TX | 95% | Carrier leak bug, need to find guard tones for various brands of wireless mics -ADS-B RX | 90% | Needs angle and speed decoding -Close-Call™ | 85% | Needs adjustments and optimization for wider frequency range -ADS-B TX | 85% | Works but baseband module needs cleaning -SSTV TX | 80% | Needs better bitmap file handling, support for other modes (ROBOT ?) and callsign FSK ID -Radiosondes | 75% | Needs support for other models -Wave visualizer | 70% | Needs cleaning and handling of other sample formats, high priority -AFSK RX | 70% | Needs work regarding flexibility -Sigfox RX | 40% | Tuning basics done, needs decoding code and testing -Generic TXs | 30% | Raw AX.25, AFSK, FSK, CCIR, DTMF... Tonesets are ready -CC1101 TRX | 10% | And other sub-GHz transceiver chips like SI4032... -SSTV RX | 0% | -Scanner | 0% | Easy, could be used with POCSAG RX to catch jumping channels -SSB TX | 0% | Requested but math is hard :( -OOK RX | 0% | See if rtl_433's author is fine with using protocol defs -Analog TV TX| 0% | Enough CPU ? B&W and no sound ? -LoJack RX | 0% | Basically AFSK RX -DMR info RX | 0% | Retrieve DMR channel info. **No voice** because of vocoder complexity and possible legal issue -Tetra info? | 0% | Same - -# Screenshots - -![HAVOC screenshots](doc/screenshots.png) - -# Thanks - -* Sig and cLx for research on AFSK LCR, Xylos, and for lending remote-controlled outlets -* Pyr3x, Rainer Matla and DC1RDB for the donations :) -* Keld Norman and Giorgio Campiotti for ideas and suggestions - -# License - -Except where specified in subdirectories of this project, all work is offered under the following license: - -Copyright (C) 2013-2015 Jared Boone, ShareBrained Technology, Inc. - -Copyright (C) 2015-2016 Furrtek - -This program is free software; you can redistribute it and/or -modify it under the terms of the GNU General Public License -as published by the Free Software Foundation; either version 2 -of the License, or (at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. - -# Contact - -## Original firmware and hardware - -Jared Boone - -ShareBrained Technology, Inc. - - - -The latest version of this repository can be found at -https://github.com/sharebrained/portapack-hackrf/ - -## HAVOC specific things - -Furrtek - - +![HAVOC banner](doc/banner.png) + +HAVOC is a fork of the PortaPack H1 firmware, a portability add-on for the [HackRF One software-defined radio](http://greatscottgadgets.com/hackrf/). + +Hardware is available at [ShareBrained Technology](http://sharebrained.com/portapack). + +It is build on top of [ShareBrained's firmware](https://github.com/sharebrained/portapack-hackrf/), meaning that the original functionalities are kept (except when I don't sync for 2 months). + +# Documentation + +[READ THE WIKI](https://github.com/furrtek/portapack-havoc/wiki/Home/) + +If you want to submit a bug report, suggest something... Don't hesitate, use this page: https://github.com/furrtek/portapack-havoc/issues (Check the progress list below first). + +# Summary + +As its name implies, HAVOC's functionalities can be fun, mean and even useful sometimes. You shouldn't use them. No ! Bad ! Put it down. + +**In most countries, radio transmissions are tightly regulated. Transmitting outside of free/public bands without a licence or authorization, even at very low power, is certainly forbidden where you live. Always bear that in mind. You're the ONLY ONE responsible for what you do with this software.** + +# Fork features + +* IQ file replay +* Microphone FM transmit with CTCSS +* CTCSS decoder +* Frequency manager (save & load from SD card, with categories and notes) +* File manager +* "Soundboard" wave file player (put 8-bit mono files in SD card /wav directory) +* ADS-B receiver with map view +* ADS-B transmitter (aircraft spoof) +* SSTV transmitter +* Fully configurable jammer +* POCSAG transmitter +* POCSAG receiver/decoder +* Morse transmitter (FM tone and CW) +* OOK transmitter for common remote encoders (PT2262, doorbells, remote outlets, some garage doors, ...) +* RDS (Radio Data System) PSN, RadioText and Time groups transmitter +* Meteorological radiosonde receiver for M10 and M2K2... +* AFSK receiver +* AFSK transmitter (Bell202...) +* Nuoptix DTMF sync transmitter (quite specific but can be useful in some theme parks :) ) +* TouchTunes jukebox universal remote (by Notpike) +* LCR (Language de Commande Routier) message generator +* Street lighting control transmitter (CCIR tones) +* "Play Dead" in case of emergency +* Fully configurable RF signal generator +* RSSI audio output as pitch (for direction finding) + +# Progress + +Feature | Progress | Notes +------- | -------- | ----- +POCSAG RX   | 95% | Needs support for numeric messages +Morse TX | 95% | Needs fox hunt scheduler and live keying mode +Mic. TX | 95% | Carrier leak bug, need to find guard tones for various brands of wireless mics +ADS-B RX | 90% | Needs angle and speed decoding +Close-Call™ | 85% | Needs adjustments and optimization for wider frequency range +ADS-B TX | 85% | Works but baseband module needs cleaning +SSTV TX | 80% | Needs better bitmap file handling, support for other modes (ROBOT ?) and callsign FSK ID +Radiosondes | 75% | Needs support for other models +Wave visualizer | 70% | Needs cleaning and handling of other sample formats, high priority +AFSK RX | 70% | Needs work regarding flexibility +Sigfox RX | 40% | Tuning basics done, needs decoding code and testing +Generic TXs | 30% | Raw AX.25, AFSK, FSK, CCIR, DTMF... Tonesets are ready +CC1101 TRX | 10% | And other sub-GHz transceiver chips like SI4032... +SSTV RX | 0% | +Scanner | 0% | Easy, could be used with POCSAG RX to catch jumping channels +SSB TX | 0% | Requested but math is hard :( +OOK RX | 0% | See if rtl_433's author is fine with using protocol defs +Analog TV TX| 0% | Enough CPU ? B&W and no sound ? +LoJack RX | 0% | Basically AFSK RX +DMR info RX | 0% | Retrieve DMR channel info. **No voice** because of vocoder complexity and possible legal issue +Tetra info? | 0% | Same + +# Screenshots + +![HAVOC screenshots](doc/screenshots.png) + +# Thanks + +* Sig and cLx for research on AFSK LCR, Xylos, and for lending remote-controlled outlets +* Pyr3x, Rainer Matla and DC1RDB for the donations :) +* Keld Norman and Giorgio Campiotti for ideas and suggestions + +# License + +Except where specified in subdirectories of this project, all work is offered under the following license: + +Copyright (C) 2013-2019 Jared Boone, ShareBrained Technology, Inc. + +Copyright (C) 2015-2016 Furrtek + +This program is free software; you can redistribute it and/or +modify it under the terms of the GNU General Public License +as published by the Free Software Foundation; either version 2 +of the License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA +02110-1301, USA. + +# Contact + +## Original firmware and hardware + +Jared Boone + +ShareBrained Technology, Inc. + + + +The latest version of this repository can be found at +https://github.com/sharebrained/portapack-hackrf/ + +## HAVOC specific things + +Furrtek + + diff --git a/doc/images/hardware/portapack_h1_operating.jpg b/doc/images/hardware/portapack_h1_operating.jpg new file mode 100644 index 0000000000000000000000000000000000000000..f452acd79dc3c8bb0456cbf5313ad627e5997c5e GIT binary patch literal 117049 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%0DrJEf*yF!S@_rMgZ!{8z{5*_y$p1N; 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

shc(=+`P~!^ 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 z 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

J&&4(x4n@*iN_Ca)8oj9;$Cq9doBi6BRXQg}Sd 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 button_rects { { + { 64, 32, 16, 16 }, // Right + { 0, 32, 16, 16 }, // Left + { 32, 64, 16, 16 }, // Down + { 32, 0, 16, 16 }, // Up + { 32, 32, 16, 16 }, // Select + { 16, 96, 16, 16 }, // Encoder phase 0 + { 48, 96, 16, 16 }, // Encoder phase 1 + } }; + const auto pos = screen_pos(); + auto switches_raw = control::debug::switches(); + auto switches_debounced = get_switches_state().to_ulong(); + auto switches_event = key_event_mask; + + for(const auto r : button_rects) { + const auto c = + ((switches_event & 1) ? + Color::red() : + ((switches_debounced & 1) ? + Color::green() : + ((switches_raw & 1) ? + Color::yellow() : + Color::blue() + ) + ) + ); + painter.fill_rectangle(r + pos, c); + switches_raw >>= 1; + switches_debounced >>= 1; + switches_event >>= 1; + } +} + +void ControlsSwitchesWidget::on_frame_sync() { + set_dirty(); +} + +/* DebugControlsView *****************************************************/ + +DebugControlsView::DebugControlsView(NavigationView& nav) { + add_children({ + &text_title, + &switches_widget, + &button_done, + }); + + button_done.on_select = [&nav](Button&){ nav.pop(); }; +} + +void DebugControlsView::focus() { + switches_widget.focus(); +} + /* DebugPeripheralsMenuView **********************************************/ DebugPeripheralsMenuView::DebugPeripheralsMenuView(NavigationView& nav) { @@ -261,7 +334,7 @@ DebugPeripheralsMenuView::DebugPeripheralsMenuView(NavigationView& nav) { [](const size_t register_number) { return portapack::clock_generator.read_register(register_number); } ); } }, { audio::debug::codec_name(), ui::Color::white(), nullptr, [&nav](){ nav.push( - audio::debug::codec_name(), RegistersWidgetConfig { (size_t)audio::debug::reg_count(), (size_t)audio::debug::reg_bits() }, + audio::debug::codec_name(), RegistersWidgetConfig { audio::debug::reg_count(), audio::debug::reg_bits() }, [](const size_t register_number) { return audio::debug::reg_read(register_number); } ); } }, }); @@ -277,7 +350,7 @@ DebugMenuView::DebugMenuView(NavigationView& nav) { //{ "SD Card", ui::Color::white(), nullptr, [&nav](){ nav.push(); } }, { "Peripherals", ui::Color::white(), nullptr, [&nav](){ nav.push(); } }, { "Temperature", ui::Color::white(), nullptr, [&nav](){ nav.push(); } }, - }); + { "Controls", ui::Color::white(), nullptr, [&nav](){ nav.push(); } }, }); on_left = [&nav](){ nav.pop(); }; } diff --git a/firmware/application/apps/ui_debug.hpp b/firmware/application/apps/ui_debug.hpp index 2d633b84d..fa7aed37e 100644 --- a/firmware/application/apps/ui_debug.hpp +++ b/firmware/application/apps/ui_debug.hpp @@ -218,6 +218,56 @@ private: }; }; +class ControlsSwitchesWidget : public Widget { +public: + ControlsSwitchesWidget( + Rect parent_rect + ) : Widget { parent_rect }, + key_event_mask(0) + { + set_focusable(true); + } + + void on_show() override; + bool on_key(const KeyEvent key) override; + + void paint(Painter& painter) override; + +private: + uint8_t key_event_mask; + + MessageHandlerRegistration message_handler_frame_sync { + Message::ID::DisplayFrameSync, + [this](const Message* const) { + this->on_frame_sync(); + } + }; + + void on_frame_sync(); +}; + +class DebugControlsView : public View { +public: + explicit DebugControlsView(NavigationView& nav); + + void focus() override; + +private: + Text text_title { + { 64, 16, 184, 16 }, + "Controls State", + }; + + ControlsSwitchesWidget switches_widget { + { 80, 80, 80, 112 }, + }; + + Button button_done { + { 72, 264, 96, 24 }, + "Done" + }; +}; + /*class DebugLCRView : public View { public: DebugLCRView(NavigationView& nav, std::string lcrstring); diff --git a/firmware/application/apps/ui_settings.cpp b/firmware/application/apps/ui_settings.cpp index 35d711938..7cee4f0c9 100644 --- a/firmware/application/apps/ui_settings.cpp +++ b/firmware/application/apps/ui_settings.cpp @@ -111,11 +111,39 @@ SetRadioView::SetRadioView( ) { button_cancel.on_select = [&nav](Button&){ nav.pop(); - }, + }; + + const auto reference = portapack::clock_manager.get_reference(); + + std::string source_name("---"); + switch(reference.source) { + case ClockManager::ReferenceSource::Xtal: source_name = "HackRF"; break; + case ClockManager::ReferenceSource::PortaPack: source_name = "PortaPack"; break; + case ClockManager::ReferenceSource::External: source_name = "External"; break; + } + + value_source.set(source_name); + value_source_frequency.set(to_string_dec_uint(reference.frequency / 1000000, 2) + "." + to_string_dec_uint((reference.frequency % 1000000) / 100, 4, '0') + " MHz"); + + label_source.set_style(&style_text); + value_source.set_style(&style_text); + value_source_frequency.set_style(&style_text); add_children({ - &labels, - &field_ppm, + &label_source, + &value_source, + &value_source_frequency, + }); + + if( reference.source == ClockManager::ReferenceSource::Xtal ) { + add_children({ + &labels_correction, + &field_ppm, + }); + } + + add_children({ + &labels_bias, &check_bias, &button_done, &button_cancel diff --git a/firmware/application/apps/ui_settings.hpp b/firmware/application/apps/ui_settings.hpp index 0b788a8f2..39ab95979 100644 --- a/firmware/application/apps/ui_settings.hpp +++ b/firmware/application/apps/ui_settings.hpp @@ -125,17 +125,41 @@ public: std::string title() const override { return "Radio settings"; }; private: - Labels labels { - { { 2 * 8, 2 * 16 }, "Frequency correction:", Color::light_grey() }, - { { 6 * 8, 3 * 16 }, "PPM", Color::light_grey() }, - { { 24, 7 * 16 }, "CAUTION: Ensure that all", Color::red() }, - { { 28, 8 * 16 }, "devices attached to the", Color::red() }, - { { 8, 9 * 16 }, "antenna connector can accept", Color::red() }, - { { 68, 10 * 16 }, "a DC voltage!", Color::red() } + const Style style_text { + .font = font::fixed_8x16, + .background = Color::black(), + .foreground = Color::light_grey(), + }; + + Text label_source { + { 0, 1 * 16, 17 * 8, 16 }, + "Reference Source:" + }; + + Text value_source { + { (240 - 11 * 8), 1 * 16, 11 * 8, 16 }, + "---" + }; + + Text value_source_frequency { + { (240 - 11 * 8), 2 * 16, 11 * 8, 16 }, + "---" + }; + + Labels labels_correction { + { { 2 * 8, 4 * 16 }, "Frequency correction:", Color::light_grey() }, + { { 6 * 8, 5 * 16 }, "PPM", Color::light_grey() }, + }; + + Labels labels_bias { + { { 24, 8 * 16 }, "CAUTION: Ensure that all", Color::red() }, + { { 28, 9 * 16 }, "devices attached to the", Color::red() }, + { { 8, 10 * 16 }, "antenna connector can accept", Color::red() }, + { { 68, 11 * 16 }, "a DC voltage!", Color::red() } }; NumberField field_ppm { - { 2 * 8, 3 * 16 }, + { 2 * 8, 5 * 16 }, 3, { -50, 50 }, 1, @@ -143,7 +167,7 @@ private: }; Checkbox check_bias { - { 28, 12 * 16 }, + { 28, 13 * 16 }, 5, "Turn on bias voltage" }; diff --git a/firmware/application/audio.cpp b/firmware/application/audio.cpp index cec0979e8..958daad2c 100644 --- a/firmware/application/audio.cpp +++ b/firmware/application/audio.cpp @@ -222,6 +222,10 @@ void shutdown() { audio_codec->reset(); input::stop(); output::stop(); + + i2s::i2s0::shutdown(); + + clock_manager.stop_audio_pll(); } void set_rate(const Rate rate) { diff --git a/firmware/application/clock_manager.cpp b/firmware/application/clock_manager.cpp index 8acaed5d9..f1f6eb281 100644 --- a/firmware/application/clock_manager.cpp +++ b/firmware/application/clock_manager.cpp @@ -29,56 +29,8 @@ using namespace hackrf::one; #include "lpc43xx_cpp.hpp" using namespace lpc43xx; -static void set_clock(LPC_CGU_BASE_CLK_Type& clk, const cgu::CLK_SEL clock_source) { - clk.AUTOBLOCK = 1; - clk.CLK_SEL = toUType(clock_source); -} - -static constexpr uint32_t systick_count(const uint32_t clock_source_f) { - return clock_source_f / CH_FREQUENCY; -} - -static constexpr uint32_t systick_load(const uint32_t clock_source_f) { - return systick_count(clock_source_f) - 1; -} - -constexpr uint32_t clock_source_irc_f = 12000000; -constexpr uint32_t clock_source_pll1_boot_f = 96000000; -//constexpr uint32_t clock_source_gp_clkin = 20000000; -constexpr uint32_t clock_source_pll1_step_f = 100000000; -constexpr uint32_t clock_source_pll1_f = 200000000; - -constexpr auto systick_count_irc = systick_load(clock_source_irc_f); -constexpr auto systick_count_pll1 = systick_load(clock_source_pll1_f); -constexpr auto systick_count_pll1_step = systick_load(clock_source_pll1_step_f); - constexpr uint32_t si5351_vco_f = 800000000; -constexpr uint32_t i2c0_bus_f = 400000; -constexpr uint32_t i2c0_high_period_ns = 900; - -constexpr I2CClockConfig i2c_clock_config_400k_boot_clock { - .clock_source_f = clock_source_pll1_boot_f, - .bus_f = i2c0_bus_f, - .high_period_ns = i2c0_high_period_ns, -}; - -constexpr I2CClockConfig i2c_clock_config_400k_fast_clock { - .clock_source_f = clock_source_pll1_f, - .bus_f = i2c0_bus_f, - .high_period_ns = i2c0_high_period_ns, -}; - -constexpr I2CConfig i2c_config_boot_clock { - .high_count = i2c_clock_config_400k_boot_clock.i2c_high_count(), - .low_count = i2c_clock_config_400k_boot_clock.i2c_low_count(), -}; - -constexpr I2CConfig i2c_config_fast_clock { - .high_count = i2c_clock_config_400k_fast_clock.i2c_high_count(), - .low_count = i2c_clock_config_400k_fast_clock.i2c_low_count(), -}; - constexpr si5351::Inputs si5351_inputs { .f_xtal = si5351_xtal_f, .f_clkin = si5351_clkin_f, @@ -225,9 +177,9 @@ static constexpr ClockControl::MultiSynthSource get_reference_clock_generator_pl } constexpr ClockControls si5351_clock_control_common { { - { ClockControl::ClockCurrentDrive::_6mA, ClockControl::ClockSource::MS_Self, ClockControl::ClockInvert::Normal, get_reference_clock_generator_pll(ClockManager::ReferenceSource::Xtal), ClockControl::MultiSynthMode::Fractional, ClockControl::ClockPowerDown::Power_Off }, - { ClockControl::ClockCurrentDrive::_6mA, ClockControl::ClockSource::MS_Group, ClockControl::ClockInvert::Invert, get_reference_clock_generator_pll(ClockManager::ReferenceSource::Xtal), ClockControl::MultiSynthMode::Integer, ClockControl::ClockPowerDown::Power_Off }, - { ClockControl::ClockCurrentDrive::_6mA, ClockControl::ClockSource::MS_Group, ClockControl::ClockInvert::Normal, get_reference_clock_generator_pll(ClockManager::ReferenceSource::Xtal), ClockControl::MultiSynthMode::Integer, ClockControl::ClockPowerDown::Power_Off }, + { ClockControl::ClockCurrentDrive::_8mA, ClockControl::ClockSource::MS_Self, ClockControl::ClockInvert::Normal, get_reference_clock_generator_pll(ClockManager::ReferenceSource::Xtal), ClockControl::MultiSynthMode::Fractional, ClockControl::ClockPowerDown::Power_Off }, + { ClockControl::ClockCurrentDrive::_2mA, ClockControl::ClockSource::MS_Group, ClockControl::ClockInvert::Invert, get_reference_clock_generator_pll(ClockManager::ReferenceSource::Xtal), ClockControl::MultiSynthMode::Integer, ClockControl::ClockPowerDown::Power_Off }, + { ClockControl::ClockCurrentDrive::_2mA, ClockControl::ClockSource::MS_Group, ClockControl::ClockInvert::Normal, get_reference_clock_generator_pll(ClockManager::ReferenceSource::Xtal), ClockControl::MultiSynthMode::Integer, ClockControl::ClockPowerDown::Power_Off }, { ClockControl::ClockCurrentDrive::_8mA, ClockControl::ClockSource::MS_Self, ClockControl::ClockInvert::Normal, get_reference_clock_generator_pll(ClockManager::ReferenceSource::Xtal), ClockControl::MultiSynthMode::Integer, ClockControl::ClockPowerDown::Power_Off }, { ClockControl::ClockCurrentDrive::_8mA, ClockControl::ClockSource::MS_Self, ClockControl::ClockInvert::Normal, get_reference_clock_generator_pll(ClockManager::ReferenceSource::Xtal), ClockControl::MultiSynthMode::Integer, ClockControl::ClockPowerDown::Power_Off }, { ClockControl::ClockCurrentDrive::_6mA, ClockControl::ClockSource::MS_Self, ClockControl::ClockInvert::Normal, get_reference_clock_generator_pll(ClockManager::ReferenceSource::Xtal), ClockControl::MultiSynthMode::Integer, ClockControl::ClockPowerDown::Power_Off }, @@ -235,8 +187,8 @@ constexpr ClockControls si5351_clock_control_common { { { ClockControl::ClockCurrentDrive::_2mA, ClockControl::ClockSource::MS_Self, ClockControl::ClockInvert::Normal, get_reference_clock_generator_pll(ClockManager::ReferenceSource::Xtal), ClockControl::MultiSynthMode::Integer, ClockControl::ClockPowerDown::Power_Off }, } }; -ClockManager::ReferenceSource ClockManager::get_reference_source() const { - return reference_source; +ClockManager::Reference ClockManager::get_reference() const { + return reference; } static void portapack_tcxo_enable() { @@ -255,38 +207,6 @@ static void portapack_tcxo_disable() { #include "hackrf_gpio.hpp" using namespace hackrf::one; -void ClockManager::init_peripherals() { - /* Must be sure to run the M4 core from IRC when messing with the signal - * generator that sources the GP_CLKIN signal that drives the micro- - * controller's PLL1 input. - */ - /* When booting from SPIFI, PLL1 is already running at 288MHz. */ - /* TODO: Refactor this blob, there's too much knowledge about post-boot - * state, which can change depending on where we're running from -- SPIFI - * or RAM or ??? - */ - // PLL1 is running at 288 MHz upon bootstrap exit. - LPC_CGU->IDIVA_CTRL.word = - ( 0 << 0) /* PD */ - | ( 2 << 2) /* IDIV (/3) */ - | ( 1 << 11) /* AUTOBLOCK */ - | ( 9 << 24) /* PLL1 */ - ; - - const auto clk_sel = cgu::CLK_SEL::IDIVA; - set_clock(LPC_CGU->BASE_M4_CLK, clk_sel); - set_clock(LPC_CGU->BASE_PERIPH_CLK, clk_sel); - set_clock(LPC_CGU->BASE_APB1_CLK, clk_sel); - set_clock(LPC_CGU->BASE_APB3_CLK, clk_sel); - set_clock(LPC_CGU->BASE_SDIO_CLK, clk_sel); - set_clock(LPC_CGU->BASE_SSP1_CLK, clk_sel); - - // IDIVC should no longer be in use. - LPC_CGU->IDIVC_CTRL.PD = 1; - - i2c0.start(i2c_config_boot_clock); -} - void ClockManager::init_clock_generator() { clock_generator.reset(); clock_generator.set_crystal_internal_load_capacitance(CrystalInternalLoadCapacitance::XTAL_CL_8pF); @@ -299,11 +219,11 @@ void ClockManager::init_clock_generator() { ); clock_generator.enable_output(clock_generator_output_mcu_clkin); - const auto reference_source = choose_reference_source(); + reference = choose_reference(); clock_generator.disable_output(clock_generator_output_mcu_clkin); - const auto ref_pll = get_reference_clock_generator_pll(reference_source); + const auto ref_pll = get_reference_clock_generator_pll(reference.source); const ClockControls si5351_clock_control = ClockControls { { si5351_clock_control_common[0].ms_src(ref_pll), si5351_clock_control_common[1].ms_src(ref_pll), @@ -330,15 +250,14 @@ void ClockManager::init_clock_generator() { // Wait for both PLLs to lock. // TODO: Disable the unused PLL? - while((clock_generator.device_status() & 0x60) != 0); + const uint8_t device_status_mask = (ref_pll == ClockControl::MultiSynthSource::PLLB) ? 0x40 : 0x20; + while((clock_generator.device_status() & device_status_mask) != 0); clock_generator.set_clock_control( clock_generator_output_mcu_clkin, si5351_clock_control_common[clock_generator_output_mcu_clkin].ms_src(ref_pll).clk_pdn(ClockControl::ClockPowerDown::Power_On) ); clock_generator.enable_output(clock_generator_output_mcu_clkin); - - set_m4_clock_to_pll1(); } uint32_t ClockManager::measure_gp_clkin_frequency() { @@ -364,23 +283,23 @@ ClockManager::ReferenceSource ClockManager::detect_reference_source() { } } -ClockManager::ReferenceSource ClockManager::choose_reference_source() { +ClockManager::Reference ClockManager::choose_reference() { const auto detected_reference = detect_reference_source(); if( (detected_reference == ReferenceSource::External) || (detected_reference == ReferenceSource::PortaPack) ) { const auto frequency = measure_gp_clkin_frequency(); if( (frequency >= 9850000) && (frequency <= 10150000) ) { - return detected_reference; + + return { detected_reference, 10000000 }; } } portapack_tcxo_disable(); - return ReferenceSource::Xtal; + return { ReferenceSource::Xtal, 10000000 }; } void ClockManager::shutdown() { - // run_from_irc(); clock_generator.reset(); } @@ -488,110 +407,6 @@ uint32_t ClockManager::get_frequency_monitor_measurement_in_hertz() { return LPC_CGU->FREQ_MON.FCNT * 25000; } -void ClockManager::enable_xtal_oscillator() { - LPC_CGU->XTAL_OSC_CTRL.BYPASS = 0; - LPC_CGU->XTAL_OSC_CTRL.ENABLE = 1; -} - -void ClockManager::disable_xtal_oscillator() { - LPC_CGU->XTAL_OSC_CTRL.ENABLE = 0; -} - -void ClockManager::set_m4_clock_to_pll1() { - /* Incantation from LPC43xx UM10503 section 12.2.1.1, to bring the M4 - * core clock speed to the 110 - 204MHz range. - */ - - /* Set M4 clock to safe default speed (~12MHz IRC) */ - - i2c0.stop(); - - // All other peripherals capable of running at 204 MHz. - LPC_CGU->IDIVA_CTRL.word = - ( 0 << 0) /* PD */ - | ( 0 << 2) /* IDIV (/1) */ - | ( 1 << 11) /* AUTOBLOCK */ - | ( 1 << 24) /* IRC */ - ; - - systick_adjust_period(systick_count_irc); - halLPCSetSystemClock(clock_source_irc_f); - - // SPIFI clock - LPC_CGU->IDIVB_CTRL.word = - ( 0 << 0) /* PD */ - | ( 0 << 2) /* IDIV (/1) */ - | ( 1 << 11) /* AUTOBLOCK */ - | ( 1 << 24) /* IRC */ - ; - - /* Step into the 90-110MHz M4 clock range */ - /* Fclkin = 40M - * /N=2 = 20M = PFDin - * Fcco = PFDin * (M=10) = 200M - * Fclk = Fcco / (2*(P=1)) = 100M - */ - cgu::pll1::ctrl({ - .pd = 1, - .bypass = 0, - .fbsel = 0, - .direct = 0, - .psel = 0, - .autoblock = 1, - .nsel = 1, - .msel = 9, - .clk_sel = cgu::CLK_SEL::GP_CLKIN, - }); - - cgu::pll1::enable(); - while( !cgu::pll1::is_locked() ); - - /* Switch M4 clock to PLL1 running at intermediate rate */ - // All other peripherals capable of running at 204 MHz. - LPC_CGU->IDIVA_CTRL.word = - ( 0 << 0) /* PD */ - | ( 0 << 2) /* IDIV (/1) */ - | ( 1 << 11) /* AUTOBLOCK */ - | ( 9 << 24) /* PLL1 */ - ; - - systick_adjust_period(systick_count_pll1_step); - halLPCSetSystemClock(clock_source_pll1_step_f); - - // SPIFI clock - LPC_CGU->IDIVB_CTRL.word = - ( 0 << 0) /* PD */ - | ( 0 << 2) /* IDIV (/1) */ - | ( 1 << 11) /* AUTO BLOCK */ - | ( 9 << 24) /* PLL1 */ - ; - - /* Delay >50us at 90-110MHz clock speed */ - volatile uint32_t delay = 1400; - while(delay--); - - // SPIFI clock - LPC_CGU->IDIVB_CTRL.word = - ( 0 << 0) /* PD */ - | ( 1 << 2) /* IDIV (/2) */ - | ( 1 << 11) /* AUTOBLOCK */ - | ( 9 << 24) /* PLL1 */ - ; - - /* Remove /2P divider from PLL1 output to achieve full speed */ - cgu::pll1::direct(); - - systick_adjust_period(systick_count_pll1); - halLPCSetSystemClock(clock_source_pll1_f); - - i2c0.start(i2c_config_fast_clock); -} - -void ClockManager::power_down_pll1() { - /* Power down PLL1 if not needed */ - cgu::pll1::disable(); -} - void ClockManager::start_audio_pll() { cgu::pll0audio::ctrl({ .pd = 1, @@ -629,11 +444,13 @@ void ClockManager::start_audio_pll() { cgu::pll0audio::clock_enable(); set_base_audio_clock_divider(1); - set_clock(LPC_CGU->BASE_AUDIO_CLK, cgu::CLK_SEL::IDIVC); + + LPC_CGU->BASE_AUDIO_CLK.AUTOBLOCK = 1; + LPC_CGU->BASE_AUDIO_CLK.CLK_SEL = toUType(cgu::CLK_SEL::IDIVD); } void ClockManager::set_base_audio_clock_divider(const size_t divisor) { - LPC_CGU->IDIVC_CTRL.word = + LPC_CGU->IDIVD_CTRL.word = (0 << 0) | ((divisor - 1) << 2) | (1 << 11) @@ -646,7 +463,3 @@ void ClockManager::stop_audio_pll() { cgu::pll0audio::power_down(); while( cgu::pll0audio::is_locked() ); } - -void ClockManager::stop_peripherals() { - i2c0.stop(); -} diff --git a/firmware/application/clock_manager.hpp b/firmware/application/clock_manager.hpp index 6216d9e99..98af620af 100644 --- a/firmware/application/clock_manager.hpp +++ b/firmware/application/clock_manager.hpp @@ -38,18 +38,22 @@ public: PortaPack, /* 10 MHz TCXO on 20180820 and newer PortaPack revisions. */ External, /* HackRF external clock input SMA, or from PortaPack with TCXO feature. */ }; + using ReferenceFrequency = uint32_t; + + typedef struct { + ReferenceSource source; + ReferenceFrequency frequency; + } Reference; constexpr ClockManager( I2C& i2c0, si5351::Si5351& clock_generator ) : i2c0(i2c0), clock_generator(clock_generator), - reference_source(ReferenceSource::Xtal)/* - _clock_f(0)*/ + reference({ReferenceSource::Xtal, 10000000}) { } - void init_peripherals(); void init_clock_generator(); void shutdown(); @@ -73,33 +77,26 @@ public: uint32_t get_frequency_monitor_measurement_in_hertz(); - ReferenceSource get_reference_source() const; + Reference get_reference() const; private: I2C& i2c0; si5351::Si5351& clock_generator; - ReferenceSource reference_source; - //uint32_t _clock_f; + Reference reference; void set_gp_clkin_to_clkin_direct(); void start_frequency_monitor_measurement(const cgu::CLK_SEL clk_sel); void wait_For_frequency_monitor_measurement_done(); - void enable_xtal_oscillator(); - void disable_xtal_oscillator(); - void set_m4_clock_to_irc(); void set_m4_clock_to_pll1(); - void power_down_pll1(); - - void stop_peripherals(); uint32_t measure_gp_clkin_frequency(); - ClockManager::ReferenceSource detect_reference_source(); - ClockManager::ReferenceSource choose_reference_source(); + ReferenceSource detect_reference_source(); + Reference choose_reference(); }; #endif/*__CLOCK_MANAGER_H__*/ diff --git a/firmware/application/event_m0.cpp b/firmware/application/event_m0.cpp index c36f1219d..3737eb5d6 100644 --- a/firmware/application/event_m0.cpp +++ b/firmware/application/event_m0.cpp @@ -223,8 +223,6 @@ void EventDispatcher::handle_local_queue() { void EventDispatcher::handle_rtc_tick() { sd_card::poll_inserted(); - - portapack::poll_ext_clock(); portapack::temperature_logger.second_tick(); @@ -294,6 +292,19 @@ void EventDispatcher::handle_switches() { portapack::bl_tick_counter = 0; + if( switches_state.count() == 0 ) { + // If all keys are released, we are no longer in a key event. + in_key_event = false; + } + + if( in_key_event ) { + // If we're in a key event, return. We will ignore all additional key + // presses until the first key is released. We also want to ignore events + // where the last key held generates a key event when other pressed keys + // are released. + return; + } + if( EventDispatcher::display_sleep ) { // Swallow event, wake up display. if( switches_state.any() ) { @@ -309,6 +320,8 @@ void EventDispatcher::handle_switches() { if( !event_bubble_key(event) ) { context.focus_manager().update(top_widget, event); } + + in_key_event = true; } } } diff --git a/firmware/application/event_m0.hpp b/firmware/application/event_m0.hpp index 664bb0c91..8a43c933d 100644 --- a/firmware/application/event_m0.hpp +++ b/firmware/application/event_m0.hpp @@ -99,6 +99,7 @@ private: bool sd_card_present = false; static bool display_sleep; bool halt = false; + bool in_key_event = false; eventmask_t wait(); void dispatch(const eventmask_t events); diff --git a/firmware/application/hw/si5351.cpp b/firmware/application/hw/si5351.cpp index daa6859f2..db8e6bc7c 100644 --- a/firmware/application/hw/si5351.cpp +++ b/firmware/application/hw/si5351.cpp @@ -34,17 +34,16 @@ void Si5351::reset() { write_register(Register::InterruptStatusSticky, 0x00); write_register(Register::InterruptStatusMask, 0xf0); - update_output_enable_control(); + disable_output_mask(0xff); write_register(Register::OEBPinEnableControlMask, 0xff); write_register(Register::PLLInputSource, 0x00); - _clock_control = { + set_clock_control({ ClockControl::power_off(), ClockControl::power_off(), ClockControl::power_off(), ClockControl::power_off(), ClockControl::power_off(), ClockControl::power_off(), ClockControl::power_off(), ClockControl::power_off() - }; - update_all_clock_control(); + }); write(std::array { Register::CLK3_0DisableState }); diff --git a/firmware/application/hw/si5351.hpp b/firmware/application/hw/si5351.hpp index 0c72e1d37..66cd4b1bd 100644 --- a/firmware/application/hw/si5351.hpp +++ b/firmware/application/hw/si5351.hpp @@ -454,11 +454,7 @@ public: _clock_control[n].CLK_PDN = ClockControl::ClockPowerDown::Power_Off; write_register(Register::CLKControl_Base + n, _clock_control[n]); } - - bool clkin_status() { - return ((device_status() & DeviceStatus::LOS_Mask) == DeviceStatus::LOS_ValidClockAtCLKIN); - } - + template void write_registers(const uint8_t reg, const std::array& values) { std::array data; @@ -472,7 +468,7 @@ private: I2C& _bus; const I2C::address_t _address; uint8_t _output_enable; - + void update_output_enable_control() { write_register(Register::OutputEnableControl, ~_output_enable); } diff --git a/firmware/application/irq_controls.cpp b/firmware/application/irq_controls.cpp index 7cc6c5286..c0fb82c8d 100644 --- a/firmware/application/irq_controls.cpp +++ b/firmware/application/irq_controls.cpp @@ -122,11 +122,13 @@ static bool touch_update() { } } -static bool switches_update(const uint8_t switches_raw) { +static uint8_t switches_raw = 0; + +static bool switches_update(const uint8_t raw) { // TODO: Only fire event on press, not release? bool switch_changed = false; for(size_t i=0; i> i) & 1); + switch_changed |= switch_debounce[i].feed((raw >> i) & 1); } return switch_changed; @@ -149,7 +151,7 @@ static bool encoder_read() { void timer0_callback(GPTDriver* const) { eventmask_t event_mask = 0; if( touch_update() ) event_mask |= EVT_MASK_TOUCH; - const auto switches_raw = portapack::io.io_update(touch_pins_configs[touch_phase]); + switches_raw = portapack::io.io_update(touch_pins_configs[touch_phase]); if( switches_update(switches_raw) ) { event_mask |= EVT_MASK_SWITCHES; if( encoder_read() ) event_mask |= EVT_MASK_ENCODER; @@ -206,3 +208,13 @@ EncoderPosition get_encoder_position() { touch::Frame get_touch_frame() { return touch_frame; } + +namespace control { +namespace debug { + +uint8_t switches() { + return switches_raw; +} + +} /* debug */ +} /* control */ diff --git a/firmware/application/irq_controls.hpp b/firmware/application/irq_controls.hpp index 2138e9358..74c578cc1 100644 --- a/firmware/application/irq_controls.hpp +++ b/firmware/application/irq_controls.hpp @@ -44,4 +44,12 @@ SwitchesState get_switches_state(); EncoderPosition get_encoder_position(); touch::Frame get_touch_frame(); +namespace control { +namespace debug { + +uint8_t switches(); + +} /* debug */ +} /* control */ + #endif/*__IRQ_CONTROLS_H__*/ diff --git a/firmware/application/portapack.cpp b/firmware/application/portapack.cpp index 76d0e4ff4..04016b69c 100644 --- a/firmware/application/portapack.cpp +++ b/firmware/application/portapack.cpp @@ -83,7 +83,6 @@ TransmitterModel transmitter_model; TemperatureLogger temperature_logger; bool antenna_bias { false }; -bool prev_clkin_status { false }; uint8_t bl_tick_counter { 0 }; void set_antenna_bias(const bool v) { @@ -94,22 +93,73 @@ bool get_antenna_bias() { return antenna_bias; } -bool get_ext_clock() { - return prev_clkin_status; +static constexpr uint32_t systick_count(const uint32_t clock_source_f) { + return clock_source_f / CH_FREQUENCY; } -void poll_ext_clock() { - auto clkin_status = clock_generator.clkin_status(); - - if (clkin_status != prev_clkin_status) { - prev_clkin_status = clkin_status; - StatusRefreshMessage message { }; - EventDispatcher::send_message(message); - clock_manager.init_peripherals(); - } - +static constexpr uint32_t systick_load(const uint32_t clock_source_f) { + return systick_count(clock_source_f) - 1; } +constexpr uint32_t i2c0_bus_f = 400000; +constexpr uint32_t i2c0_high_period_ns = 900; + +typedef struct { + uint32_t clock_f; + uint32_t systick_count; + uint32_t idivb; + uint32_t idivc; +} clock_config_t; + +static constexpr uint32_t idiv_config(const cgu::CLK_SEL clk_sel, const uint32_t idiv) { + return cgu::IDIV_CTRL { 0, idiv-1, 1, clk_sel }; +} + +constexpr clock_config_t clock_config_irc { + 12000000, systick_load(12000000), + idiv_config(cgu::CLK_SEL::IRC, 1), + idiv_config(cgu::CLK_SEL::IRC, 1), +}; + +constexpr clock_config_t clock_config_pll1_boot { + 96000000, systick_load(96000000), + idiv_config(cgu::CLK_SEL::PLL1, 9), + idiv_config(cgu::CLK_SEL::PLL1, 3), +}; + +constexpr clock_config_t clock_config_pll1_step { + 100000000, systick_load(100000000), + idiv_config(cgu::CLK_SEL::PLL1, 1), + idiv_config(cgu::CLK_SEL::PLL1, 1), +}; + +constexpr clock_config_t clock_config_pll1 { + 200000000, systick_load(200000000), + idiv_config(cgu::CLK_SEL::PLL1, 2), + idiv_config(cgu::CLK_SEL::PLL1, 1), +}; + +constexpr I2CClockConfig i2c_clock_config_400k_boot_clock { + .clock_source_f = clock_config_pll1_boot.clock_f, + .bus_f = i2c0_bus_f, + .high_period_ns = i2c0_high_period_ns, +}; + +constexpr I2CClockConfig i2c_clock_config_400k_fast_clock { + .clock_source_f = clock_config_pll1.clock_f, + .bus_f = i2c0_bus_f, + .high_period_ns = i2c0_high_period_ns, +}; + +constexpr I2CConfig i2c_config_boot_clock { + .high_count = i2c_clock_config_400k_boot_clock.i2c_high_count(), + .low_count = i2c_clock_config_400k_boot_clock.i2c_low_count(), +}; + +constexpr I2CConfig i2c_config_fast_clock { + .high_count = i2c_clock_config_400k_fast_clock.i2c_high_count(), + .low_count = i2c_clock_config_400k_fast_clock.i2c_low_count(), +}; enum class PortaPackModel { R1_20150901, @@ -150,119 +200,165 @@ Backlight* backlight() { : static_cast(&backlight_on_off); } -static void configure_unused_mcu_peripherals_power_down(const bool power_down) { - LPC_CGU->IDIVD_CTRL.PD = power_down; - LPC_CGU->IDIVE_CTRL.PD = power_down; +#define ARRAY_SIZE(a) (sizeof(a)/sizeof(a[0])) - LPC_CGU->BASE_USB1_CLK.PD = power_down; - LPC_CGU->BASE_SPI_CLK.PD = power_down; - LPC_CGU->BASE_PHY_RX_CLK.PD = power_down; - LPC_CGU->BASE_PHY_TX_CLK.PD = power_down; - LPC_CGU->BASE_LCD_CLK.PD = power_down; - LPC_CGU->BASE_SSP0_CLK.PD = power_down; - LPC_CGU->BASE_UART0_CLK.PD = power_down; - LPC_CGU->BASE_UART1_CLK.PD = power_down; - LPC_CGU->BASE_UART2_CLK.PD = power_down; - LPC_CGU->BASE_UART3_CLK.PD = power_down; - LPC_CGU->BASE_OUT_CLK.PD = power_down; - LPC_CGU->BASE_CGU_OUT0_CLK.PD = power_down; - LPC_CGU->BASE_CGU_OUT1_CLK.PD = power_down; -} +static LPC_CGU_BASE_CLK_Type* const base_clocks_idivc[] = { + &LPC_CGU->BASE_PERIPH_CLK, + &LPC_CGU->BASE_M4_CLK, + &LPC_CGU->BASE_APB1_CLK, + &LPC_CGU->BASE_APB3_CLK, + &LPC_CGU->BASE_SDIO_CLK, + &LPC_CGU->BASE_SSP1_CLK, +}; -static void configure_unused_mcu_peripherals(const bool enabled) { - /* Disabling these peripherals reduces "idle" (PortaPack at main - * menu) current by 42mA. - */ - - /* Some surprising peripherals in use by PortaPack firmware: - * - * RITIMER: M0 SysTick substitute (because M0 has no SysTick) - * TIMER3: M0 cycle/PCLK counter - * IDIVB: Clock for SPI (set up in bootstrap code) - * IDIVC: I2S audio clock - */ - - const uint32_t clock_run_state = enabled ? 1 : 0; - const bool power_down = !enabled; - - if( power_down == false ) { - // Power up peripheral clocks *before* enabling run state. - configure_unused_mcu_peripherals_power_down(power_down); - } - - LPC_CCU1->CLK_APB3_I2C1_CFG.RUN = clock_run_state; - LPC_CCU1->CLK_APB3_DAC_CFG.RUN = clock_run_state; - LPC_CCU1->CLK_APB3_CAN0_CFG.RUN = clock_run_state; - LPC_CCU1->CLK_APB1_MOTOCON_PWM_CFG.RUN = clock_run_state; - LPC_CCU1->CLK_APB1_CAN1_CFG.RUN = clock_run_state; - LPC_CCU1->CLK_M4_LCD_CFG.RUN = clock_run_state; - LPC_CCU1->CLK_M4_ETHERNET_CFG.RUN = clock_run_state; - LPC_CCU1->CLK_M4_USB0_CFG.RUN = clock_run_state; - LPC_CCU1->CLK_M4_EMC_CFG.RUN = clock_run_state; - LPC_CCU1->CLK_M4_SCT_CFG.RUN = clock_run_state; - LPC_CCU1->CLK_M4_USB1_CFG.RUN = clock_run_state; - LPC_CCU1->CLK_M4_EMCDIV_CFG.RUN = clock_run_state; - LPC_CCU1->CLK_M4_WWDT_CFG.RUN = clock_run_state; - LPC_CCU1->CLK_M4_USART0_CFG.RUN = clock_run_state; - LPC_CCU1->CLK_M4_UART1_CFG.RUN = clock_run_state; - LPC_CCU1->CLK_M4_SSP0_CFG.RUN = clock_run_state; - LPC_CCU1->CLK_M4_TIMER1_CFG.RUN = clock_run_state; - LPC_CCU1->CLK_M4_USART2_CFG.RUN = clock_run_state; - LPC_CCU1->CLK_M4_USART3_CFG.RUN = clock_run_state; - LPC_CCU1->CLK_M4_TIMER2_CFG.RUN = clock_run_state; - LPC_CCU1->CLK_M4_QEI_CFG.RUN = clock_run_state; - - LPC_CCU1->CLK_USB1_CFG.RUN = clock_run_state; - LPC_CCU1->CLK_SPI_CFG.RUN = clock_run_state; - - LPC_CCU2->CLK_APB2_USART3_CFG.RUN = clock_run_state; - LPC_CCU2->CLK_APB2_USART2_CFG.RUN = clock_run_state; - LPC_CCU2->CLK_APB0_UART1_CFG.RUN = clock_run_state; - LPC_CCU2->CLK_APB0_USART0_CFG.RUN = clock_run_state; - LPC_CCU2->CLK_APB0_SSP0_CFG.RUN = clock_run_state; - - if( power_down == true ) { - // Power down peripheral clocks *after* disabling run state. - configure_unused_mcu_peripherals_power_down(power_down); +static void set_idivc_base_clocks(const cgu::CLK_SEL clock_source) { + for(uint32_t i=0; iAUTOBLOCK = 1; + base_clocks_idivc[i]->CLK_SEL = toUType(clock_source); } } -static void disable_unused_mcu_peripheral_clocks() { - configure_unused_mcu_peripherals(false); -} - -static void enable_unused_mcu_peripheral_clocks() { - configure_unused_mcu_peripherals(true); +static void set_clock_config(const clock_config_t& config) { + LPC_CGU->IDIVB_CTRL.word = config.idivb; + LPC_CGU->IDIVC_CTRL.word = config.idivc; + systick_adjust_period(config.systick_count); + halLPCSetSystemClock(config.clock_f); } static void shutdown_base() { + i2c0.stop(); + + set_clock_config(clock_config_irc); + + cgu::pll1::disable(); + + set_idivc_base_clocks(cgu::CLK_SEL::IRC); + + cgu::pll1::ctrl({ + .pd = 1, + .bypass = 0, + .fbsel = 0, + .direct = 1, + .psel = 0, + .autoblock = 1, + .nsel = 0, + .msel = 23, + .clk_sel = cgu::CLK_SEL::IRC, + }); + + cgu::pll1::enable(); + while( !cgu::pll1::is_locked() ); + + set_clock_config(clock_config_pll1_boot); + + i2c0.start(i2c_config_boot_clock); + clock_manager.shutdown(); - - chSysDisable(); - - systick_stop(); - - enable_unused_mcu_peripheral_clocks(); - - hackrf::one::reset(); } -bool init() { - clock_manager.init_peripherals(); +/* Clock scheme after exiting bootloader in SPIFI mode: + * + * XTAL_OSC = powered down + * + * PLL0USB = powered down + * PLL0AUDIO = powered down + * PLL1 = IRC * 24 = 288 MHz + * + * IDIVA = IRC / 1 = 12 MHz + * IDIVB = PLL1 / 9 = 32 MHz + * IDIVC = PLL1 / 3 = 96 MHz + * IDIVD = IRC / 1 = 12 MHz + * IDIVE = IRC / 1 = 12 MHz + * + * BASE_USB0_CLK = PLL0USB + * BASE_PERIPH_CLK = IRC + * BASE_M4_CLK = IDIVC (96 MHz) + * BASE_SPIFI_CLK = IDIVB (32 MHZ) + * + * everything else = IRC + */ +/* Clock scheme during PortaPack operation: + * + * XTAL_OSC = powered down + * + * PLL0USB = powered down + * PLL0AUDIO = GP_CLKIN, Fcco=491.52 MHz, Fout=12.288 MHz + * PLL1 = GP_CLKIN * 10 = 200 MHz + * + * IDIVA = IRC / 1 = 12 MHz + * IDIVB = PLL1 / 2 = 100 MHz + * IDIVC = PLL1 / 1 = 200 MHz + * IDIVD = PLL0AUDIO / N (where N is varied depending on decimation factor) + * IDIVE = IRC / 1 = 12 MHz + * + * BASE_USB0_CLK = PLL0USB + * BASE_PERIPH_CLK = IRC + * BASE_M4_CLK = IDIVC (200 MHz) + * BASE_SPIFI_CLK = IDIVB (100 MHZ) + * BASE_AUDIO_CLK = IDIVD + * + * everything else = IRC + */ + +bool init() { + set_idivc_base_clocks(cgu::CLK_SEL::IDIVC); + + i2c0.start(i2c_config_boot_clock); if( !portapack::cpld::update_if_necessary(portapack_cpld_config()) ) { shutdown_base(); return false; } - if( !hackrf::cpld::load_sram() ) { - chSysHalt(); - } - portapack::io.init(); clock_manager.init_clock_generator(); + + i2c0.stop(); + + set_clock_config(clock_config_irc); + + cgu::pll1::disable(); + + /* Incantation from LPC43xx UM10503 section 12.2.1.1, to bring the M4 + * core clock speed to the 110 - 204MHz range. + */ + + /* Step into the 90-110MHz M4 clock range */ + /* Fclkin = 40M + * /N=2 = 20M = PFDin + * Fcco = PFDin * (M=10) = 200M + * Fclk = Fcco / (2*(P=1)) = 100M + */ + cgu::pll1::ctrl({ + .pd = 1, + .bypass = 0, + .fbsel = 0, + .direct = 0, + .psel = 0, + .autoblock = 1, + .nsel = 1, + .msel = 9, + .clk_sel = cgu::CLK_SEL::GP_CLKIN, + }); + + cgu::pll1::enable(); + while( !cgu::pll1::is_locked() ); + + set_clock_config(clock_config_pll1_step); + + /* Delay >50us at 90-110MHz clock speed */ + volatile uint32_t delay = 1400; + while(delay--); + + set_clock_config(clock_config_pll1); + + /* Remove /2P divider from PLL1 output to achieve full speed */ + cgu::pll1::direct(); + + i2c0.start(i2c_config_fast_clock); + clock_manager.set_reference_ppb(persistent_memory::correction_ppb()); audio::init(portapack_audio_codec()); @@ -294,125 +390,4 @@ void shutdown() { shutdown_base(); } -/* Bootstrap runs from SPIFI on the M4, immediately after the LPC43xx built-in - * boot ROM runs. - */ - -/* After boot ROM executes: - * PLL1 is at 288MHz (IRC * 24) - * IDIVB_CTRL = PLL1 / 9 = 32MHz - * IDIVC_CTRL = PLL1 / 3 = 96MHz - * BASE_SPIFI_CLK.CLK_SEL = IDIVB - * BASE_M4_CLK.CLK_SEL = IDIVC? - */ - -static void configure_spifi(void) { - constexpr Pin pins_spifi[] = { - { 3, 3, PinConfig::spifi_sck(3) }, /* SPIFI_SCK: W25Q80BV.CLK(I), enable input buffer for timing feedback */ - { 3, 4, PinConfig::spifi_inout(3) }, /* SPIFI_SIO3/P82: W25Q80BV.HOLD(IO) */ - { 3, 5, PinConfig::spifi_inout(3) }, /* SPIFI_SIO2/P81: W25Q80BV.WP(IO) */ - { 3, 6, PinConfig::spifi_inout(3) }, /* SPIFI_MISO: W25Q80BV.DO(IO) */ - { 3, 7, PinConfig::spifi_inout(3) }, /* SPIFI_MOSI: W25Q80BV.DI(IO) */ - { 3, 8, PinConfig::spifi_cs(3) }, /* SPIFI_CS/P68: W25Q80BV.CS(I) */ - }; - - for(const auto& pin : pins_spifi) { - pin.init(); - } - - /* Tweak SPIFI mode */ - LPC_SPIFI->CTRL = - (0xffff << 0) /* Timeout */ - | (0x1 << 16) /* CS high time in "clocks - 1" */ - | (0 << 21) /* 0: Attempt speculative prefetch on data accesses */ - | (0 << 22) /* 0: No interrupt on command ended */ - | (0 << 23) /* 0: SCK driven low after rising edge at which last bit of command is captured. Stays low while CS# is high. */ - | (0 << 27) /* 0: Cache prefetching enabled */ - | (0 << 28) /* 0: Quad protocol, IO3:0 */ - | (1 << 29) /* 1: Read data sampled on falling edge of clock */ - | (1 << 30) /* 1: Read data is sampled using feedback clock from SCK pin */ - | (0 << 31) /* 0: DMA request disabled */ - ; - - /* Throttle up the SPIFI interface to 96MHz (IDIVA=PLL1 / 3) */ - LPC_CGU->IDIVB_CTRL.word = - ( 0 << 0) /* PD */ - | ( 2 << 2) /* IDIV (/3) */ - | ( 1 << 11) /* AUTOBLOCK */ - | ( 9 << 24) /* PLL1 */ - ; -} - -extern "C" { - -void __early_init(void) { - /* - * Upon exit from bootloader into SPIFI boot mode: - * - * Enabled: - * PLL1: IRC, M=/24, N=/1, P=/1, autoblock, direct = 288 MHz - * IDIVA: IRC /1 = 12 MHz - * IDIVB: PLL1 /9, autoblock = 32 MHz - * IDIVC: PLL1 /3, autoblock = 96 MHz - * IDIVD: IRC /1 = 12 MHz - * IDIVE: IRC /1 = 12 MHz - * BASE_M4_CLK: IDIVC, autoblock - * BASE_SPIFI_CLK: IDIVB, autoblock - * - * Disabled: - * XTAL_OSC - * PLL0USB - * PLL0AUDIO - */ - /* LPC43xx M4 takes about 500 usec to get to __early_init - * Before __early_init, LPC bootloader runs and starts our code. In user code, the process stack - * is initialized, hardware floating point is initialized, and stacks are zeroed, - */ - const uint32_t CORTEX_M4_CPUID = 0x410fc240; - const uint32_t CORTEX_M4_CPUID_MASK = 0xff0ffff0; - - if( (SCB->CPUID & CORTEX_M4_CPUID_MASK) == CORTEX_M4_CPUID ) { - /* Enable unaligned exception handler */ - SCB_CCR |= (1 << 3); - - /* Enable MemManage, BusFault, UsageFault exception handlers */ - SCB_SHCSR |= (1 << 18) | (1 << 17) | (1 << 16); - - reset(); - - // disable_unused_mcu_peripheral_clocks(); - configure_spifi(); - - LPC_CCU1->CLK_M4_M0APP_CFG.RUN = true; - LPC_CREG->M0APPMEMMAP = LPC_SPIFI_DATA_CACHED_BASE + 0x0; - LPC_RGU->RESET_CTRL[1] = 0; - - /* Prevent the M4 from doing any more initializing by sleep-waiting forever... - * ...until the M0 resets the M4 with some code to run. - */ - while(1) { - __WFE(); - } - } -} - -void __late_init(void) { - /* - * System initializations. - * - HAL initialization, this also initializes the configured device drivers - * and performs the board-specific initializations. - * - Kernel initialization, the main() function becomes a thread and the - * RTOS is active. - */ - halInit(); - - /* After this call, scheduler, systick, heap, etc. are available. */ - /* By doing chSysInit() here, it runs before C++ constructors, which may - * require the heap. - */ - chSysInit(); -} - -} - } /* namespace portapack */ diff --git a/firmware/application/portapack.hpp b/firmware/application/portapack.hpp index baf95b405..359b14468 100644 --- a/firmware/application/portapack.hpp +++ b/firmware/application/portapack.hpp @@ -59,9 +59,6 @@ extern TemperatureLogger temperature_logger; void set_antenna_bias(const bool v); bool get_antenna_bias(); -void poll_ext_clock(); -bool get_ext_clock(); - bool init(); void shutdown(); diff --git a/firmware/application/ui/ui_receiver.cpp b/firmware/application/ui/ui_receiver.cpp index 58cc270be..db4d059d2 100644 --- a/firmware/application/ui/ui_receiver.cpp +++ b/firmware/application/ui/ui_receiver.cpp @@ -252,12 +252,10 @@ FrequencyOptionsView::FrequencyOptionsView( &field_step, }); - if( portapack::clock_manager.get_reference_source() == ClockManager::ReferenceSource::External ) { - add_child(&text_ext); - } else { + if( portapack::clock_manager.get_reference().source == ClockManager::ReferenceSource::Xtal ) { add_child(&field_ppm); + add_child(&text_ppm); } - add_child(&text_ppm); } void FrequencyOptionsView::set_step(rf::Frequency f) { diff --git a/firmware/application/ui_navigation.cpp b/firmware/application/ui_navigation.cpp index 34e765dce..997c0e4df 100644 --- a/firmware/application/ui_navigation.cpp +++ b/firmware/application/ui_navigation.cpp @@ -159,7 +159,7 @@ void SystemStatusView::refresh() { button_bias_tee.set_foreground(ui::Color::light_grey()); } - if (portapack::get_ext_clock()) { + if (portapack::clock_manager.get_reference().source == ClockManager::ReferenceSource::External) { image_clock_status.set_bitmap(&bitmap_icon_clk_ext); button_bias_tee.set_foreground(ui::Color::green()); } else { diff --git a/firmware/baseband/CMakeLists.txt b/firmware/baseband/CMakeLists.txt index 179e0b18c..b56cae869 100644 --- a/firmware/baseband/CMakeLists.txt +++ b/firmware/baseband/CMakeLists.txt @@ -73,7 +73,7 @@ set(USE_FPU hard) # # Imported source files and paths -include(${CHIBIOS_PORTAPACK}/boards/GSG_HACKRF_ONE/board.cmake) +include(${CHIBIOS_PORTAPACK}/boards/PORTAPACK_BASEBAND/board.cmake) include(${CHIBIOS_PORTAPACK}/os/hal/platforms/LPC43xx_M4/platform.cmake) include(${CHIBIOS}/os/hal/hal.cmake) include(${CHIBIOS_PORTAPACK}/os/ports/GCC/ARMCMx/LPC43xx_M4/port.cmake) @@ -470,9 +470,9 @@ DeclareTargets(PWFM wfm_audio) add_custom_command( OUTPUT hackrf.bin hackrf.img - COMMAND ${STRIP_DFU} ${HACKRF_FIRMWARE_IMAGE} hackrf.bin + COMMAND ${STRIP_DFU} ${HACKRF_FIRMWARE_DFU_IMAGE} hackrf.bin COMMAND ${MAKE_IMAGE_CHUNK} hackrf.bin HRF1 hackrf.img - DEPENDS ${HACKRF_FIRMWARE_IMAGE} ${STRIP_DFU} ${MAKE_IMAGE_CHUNK} + DEPENDS hackrf ${STRIP_DFU} ${MAKE_IMAGE_CHUNK} VERBATIM ) diff --git a/firmware/baseband/mcuconf.h b/firmware/baseband/mcuconf.h index 0accb63ab..bc4d61da3 100755 --- a/firmware/baseband/mcuconf.h +++ b/firmware/baseband/mcuconf.h @@ -46,7 +46,3 @@ #if !defined(LPC43XX_M4_CLK) || defined(__DOXYGEN__) #define LPC43XX_M4_CLK 200000000 #endif - -#if !defined(LPC43XX_M4_CLK_SRC) || defined(__DOXYGEN__) -#define LPC43XX_M4_CLK_SRC 0x09 -#endif diff --git a/firmware/bootstrap/bootstrap.bin b/firmware/bootstrap/bootstrap.bin new file mode 100755 index 0000000000000000000000000000000000000000..c7875d1adddfe95c53051d1862b3219aa1aec096 GIT binary patch literal 220 zcmZQ*U=+w@U|^Vv1p|dp089-?5XJ`499tPasQ+N~X7xJ!gGGh;YlAU^5|E{+u>bFK z1_KrcpbC)!cLoMFPj)YM?^#a!_6Po8;dTPzAJ6}P|MdU=_j~^r0L=jc0UIFx_ncvW z{11i?j6gQG_h+D4J&K2aOaS63Ks*D8=K%2n#l>Hlm07%`5}3cvQfBtLl>)S5KSKhC N!~g$`2`n58oB;3LL&5+6 literal 0 HcmV?d00001 diff --git a/firmware/bootstrap/bootstrap_pad.bin b/firmware/bootstrap/bootstrap_pad.bin new file mode 100755 index 0000000000000000000000000000000000000000..2223c02e47db570e1f77236d76b99b7bd9b76a14 GIT binary patch literal 65536 zcmeIuF-ikL6b9f~cVi-HQdn6TBiIVI79oYvP2~-?uoXN)3QG$M1ql{{jR(+9Op#ky z*rpXFxQ(t8B!wWJ;2Zd79*^NY_`)!09fuGu|43~8I*UK^=Axdzjfe2MRn`Wzd{Snc z>1?w{76X?$2_&0b77tv=qW>f@!ln-2}4wHxy_ z4ddi~Y5#ODc`W*|j=kpKJzJGN?JVtN`C5_AMx8W&K8m}>p=flg zDk-u?Sos<4CP07y0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U nAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5;&{{+4P-fl%} literal 0 HcmV?d00001 diff --git a/firmware/chibios-portapack/boards/GSG_HACKRF_ONE/board.c b/firmware/chibios-portapack/boards/GSG_HACKRF_ONE/board.c deleted file mode 100755 index ea34a6d21..000000000 --- a/firmware/chibios-portapack/boards/GSG_HACKRF_ONE/board.c +++ /dev/null @@ -1,330 +0,0 @@ -/* - ChibiOS/RT - Copyright (C) 2006-2013 Giovanni Di Sirio - Copyright (C) 2014 Jared Boone, ShareBrained Technology - - 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. -*/ - -#include "ch.h" -#include "hal.h" - -#if HAL_USE_PAL || defined(__DOXYGEN__) -/** - * @brief PAL setup. - * @details Digital I/O ports static configuration as defined in @p board.h. - * This variable is used by the HAL when initializing the PAL driver. - */ -/** - * CoolRunner (HackRF) CPLD: - * CoolRunner-II devices have internal pull-ups on TDI, TMS, and TCK. - * It is not necessary to externally terminate JTAG pins with internal termination; they can be - * left floating. External pull-ups on pins with internal termination is allowed, but not - * necessary. External pull-down termination is not recommended as it would conflict with - * the internal pull-ups - * - * LPC43xx pull-ups come on line when 3V3 supply voltage reaches about 2V. - * - * 3V3 supply: - * Ramps up in about 1ms. - * - * 1V8 supply: - * Ramps up in about 1ms. - * EN1V8 has a 10K pull-down on the HackRF and is pulled up (very gently) by the LPC43xx - * bootloader at boot time. So until the EN1V8 pin is reconfigured as an output, the enable - * pin on the 1V8 supply sits at about 0.55V, which feels untidy... - * 1V8 supply is activated when GPIO is driven high by user code. - */ -const PALConfig pal_default_config = { - .P = { - { // GPIO0 - .data - = (1 << 15) // CS_XCVR - | (1 << 14) // AMP_BYPASS - | (0 << 9) // 10K PD, BOOT1 - | (1 << 8) // 10K PU, BOOT0 - , - .dir - = (1 << 15) // CS_XCVR - | (1 << 14) // AMP_BYPASS - | (0 << 9) // 10K PD, BOOT1 - | (0 << 8) // 10K PU, BOOT0 - }, - { // GPIO1 - .data - = (1 << 13) // PortaPack P2_13/DIR - | (1 << 12) // !RX_AMP_PWR - | (0 << 11) // RX_AMP - | (1 << 10) // 10K PD, BOOT3, PortaPack P2_9/LCD_WRX - | (1 << 8) // PortaPack CPLD.TDO(O) - | (1 << 1) // PortaPack CPLD.TMS(I) - | (0 << 0) // !MIX_BYPASS - , - .dir - = (1 << 13) // PortaPack P2_13/DIR - | (1 << 12) // !RX_AMP_PWR - | (1 << 11) // RX_AMP - | (1 << 10) // 10K PD, BOOT3, PortaPack P2_9/LCD_WRX - | (0 << 8) // PortaPack CPLD.TDO(O) (input with pull up) - | (0 << 1) // PortaPack CPLD.TMS(I) (output only when needed, pull up internal to CPLD) - | (1 << 0) // !MIX_BYPASS - }, - { // GPIO2 - .data - = (0 << 15) // TX_AMP - | (0 << 11) // TX_MIX_BP - | (1 << 14) // MIXER_RESETX, 10K PU - | (1 << 13) // MIXER_ENX, 10K PU - | (1 << 12) // RX_MIX_BP - | (0 << 10) // LP - | (1 << 9) // !VAA_ENABLE - | (0 << 8) // LED3 (TX) - | (1 << 7) // CS_AD - | (0 << 6) // XCVR_EN, 10K PD - | (0 << 5) // RXENABLE - | (0 << 4) // TXENABLE - | (0 << 2) // LED2 (RX) - | (0 << 1) // LED1 (USB) - | (1 << 0) // HP - , - .dir - = (1 << 15) // TX_AMP - | (1 << 14) // MIXER_RESETX, 10K PU - | (1 << 13) // MIXER_ENX, 10K PU - | (1 << 12) // RX_MIX_BP - | (1 << 11) // TX_MIX_BP - | (1 << 10) // LP - | (1 << 9) // !VAA_ENABLE - | (1 << 8) // LED3 (TX) - | (1 << 7) // CS_AD - | (1 << 6) // XCVR_EN, 10K PD - | (1 << 5) // RXENABLE - | (1 << 4) // TXENABLE - | (1 << 2) // LED2 (RX) - | (1 << 1) // LED1 (USB) - | (1 << 0) // HP - }, - { // GPIO3 - .data - = (0 << 15) // PortaPack GPIO3_15(IO) - | (0 << 14) // PortaPack GPIO3_14(IO) - | (0 << 13) // PortaPack GPIO3_13(IO) - | (0 << 12) // PortaPack GPIO3_12(IO) - | (0 << 11) // PortaPack GPIO3_11(IO) - | (0 << 10) // PortaPack GPIO3_10(IO) - | (0 << 9) // PortaPack GPIO3_9(IO) - | (0 << 8) // PortaPack GPIO3_8(IO) - | (0 << 7) // VREGMODE - | (1 << 6) // EN1V8, 10K PD - | (1 << 5) // !TX_AMP_PWR, 10K PU - | (1 << 4) // HackRF CPLD.TMS(I) (output only when needed, pull-up internal to CPLD when 1V8 present) - | (1 << 1) // HackRF CPLD.TDI(I), PortaPack I2S0_RX_SDA(O), PortaPack CPLD.TDI(I) (output only when needed, pull-up internal to CPLD when 1V8 present) - | (1 << 0) // HackRF CPLD.TCK(I), PortaPack CPLD.TCK(I) (output only when needed, pull-up internal to CPLD when 1V8 present) - , - .dir - = (0 << 15) // PortaPack GPIO3_15(IO) - | (0 << 14) // PortaPack GPIO3_14(IO) - | (0 << 13) // PortaPack GPIO3_13(IO) - | (0 << 12) // PortaPack GPIO3_12(IO) - | (0 << 11) // PortaPack GPIO3_11(IO) - | (0 << 10) // PortaPack GPIO3_10(IO) - | (0 << 9) // PortaPack GPIO3_9(IO) - | (0 << 8) // PortaPack GPIO3_8(IO) - | (1 << 7) // VREGMODE - | (1 << 6) // EN1V8, 10K PD - | (1 << 5) // !TX_AMP_PWR, 10K PU - | (0 << 4) // HackRF CPLD.TMS(I) (output only when needed, pull-up internal to CPLD when 1V8 present) - | (0 << 1) // HackRF CPLD.TDI(I), PortaPack I2S0_RX_SDA(O), PortaPack CPLD.TDI(I) (output only when needed, pull-up internal to CPLD when 1V8 present) - | (0 << 0) // HackRF CPLD.TCK(I), PortaPack CPLD.TCK(I) (output only when needed, pull-up internal to CPLD when 1V8 present) - }, - { // GPIO4 - .data = 0, - .dir = 0 - }, - { // GPIO5 - .data - = (1 << 18) // HackRF CPLD.TDO(O) (input with pull up) - | (0 << 15) // TX - | (1 << 16) // MIX_BYPASS - | (1 << 5) // RX - | (1 << 4) // PortaPack P2_4/LCD_RDX - | (0 << 3) // PortaPack P2_3/LCD_TE - | (0 << 1) // PortaPack P2_1/ADDR - | (1 << 0) // PortaPack P2_0/IO_STBX - , - .dir - = (0 << 18) // HackRF CPLD.TDO(O) (input with pull up) - | (1 << 16) // MIX_BYPASS - | (1 << 15) // TX - | (1 << 5) // RX - | (1 << 4) // PortaPack P2_4/LCD_RDX - | (0 << 3) // PortaPack P2_3/LCD_TE - | (1 << 1) // PortaPack P2_1/ADDR - | (1 << 0) // PortaPack P2_0/IO_STBX - }, - { // GPIO6 - .data = 0, - .dir = 0 - }, - { // GPIO7 - .data = 0, - .dir = 0 - }, - }, - .SCU = { - /* Configure GP_CLKIN as soon as possible. It's an output at boot time, and the Si5351C doesn't - * reset when the reset button is pressed, so it could still be output enabled. - */ - { 4, 7, .config={ .MODE=1, .EPD=0, .EPUN=1, .EHS=0, .EZI=1, .ZIF=1 } }, /* GP_CLKIN/P72/MCU_CLK: SI5351C.CLK7(O) */ - - /* HackRF: LEDs. Configured early so we can use them to indicate boot status. */ - { 4, 1, .config={ .MODE=0, .EPD=0, .EPUN=1, .EHS=0, .EZI=0, .ZIF=0 } }, /* LED1: LED1.A(I) */ - { 4, 2, .config={ .MODE=0, .EPD=0, .EPUN=1, .EHS=0, .EZI=0, .ZIF=0 } }, /* LED2: LED2.A(I) */ - { 6, 12, .config={ .MODE=0, .EPD=0, .EPUN=1, .EHS=0, .EZI=0, .ZIF=0 } }, /* LED3: LED3.A(I) */ - - /* Power control */ - { 5, 0, .config={ .MODE=0, .EPD=0, .EPUN=1, .EHS=0, .EZI=0, .ZIF=0 } }, /* !VAA_ENABLE: 10K PU, Q3.G(I), power to VAA */ - { 6, 10, .config={ .MODE=0, .EPD=0, .EPUN=1, .EHS=0, .EZI=0, .ZIF=0 } }, /* EN1V8/P70: 10K PD, TPS62410.EN2(I), 1V8LED.A(I) */ - { 6, 11, .config={ .MODE=0, .EPD=0, .EPUN=1, .EHS=0, .EZI=0, .ZIF=0 } }, /* VREGMODE/P69: TPS62410.MODE/DATA(I) */ - - /* HackRF: I2C0 */ - /* Glitch filter operates at 3ns instead of 50ns due to the WM8731 - * returning an ACK very fast (170ns) and confusing the I2C state - * machine into thinking there was a bus error. It looks like the - * MCU sees SDA fall before SCL falls, indicating a START at the - * point an ACK is expected. With the glitch filter off or set to - * 3ns, it's probably still a bit tight timing-wise, but improves - * reliability on some problem units. - */ - { 25, 1, - .config = { - .word = // SFSI2C0 - (1U << 0) // SCL: 3ns glitch - | (0U << 2) // SCL: Standard/Fast mode - | (1U << 3) // SCL: Input enabled - | (0U << 7) // SCL: Enable input glitch filter - | (1U << 8) // SDA: 3ns glitch - | (0U << 10) // SDA: Standard/Fast mode - | (1U << 11) // SDA: Input enabled - | (0U << 15) // SDA: Enable input glitch filter - } - }, - - /* Radio section control */ - { 1, 3, .config={ .MODE=5, .EPD=0, .EPUN=1, .EHS=0, .EZI=1, .ZIF=0 } }, /* SSP1_MISO/P41: MAX2837.DOUT(O) */ - { 1, 4, .config={ .MODE=5, .EPD=1, .EPUN=1, .EHS=0, .EZI=0, .ZIF=0 } }, /* SSP1_MOSI/P40: MAX2837.DIN(I), MAX5864.DIN(I) */ - { 1, 7, .config={ .MODE=0, .EPD=0, .EPUN=1, .EHS=0, .EZI=0, .ZIF=0 } }, /* !MIX_BYPASS/P35: U1.VCTL1(I), U11.VCTL2(I), U9.V2(I) */ - { 1, 19, .config={ .MODE=1, .EPD=0, .EPUN=1, .EHS=0, .EZI=0, .ZIF=0 } }, /* SSP1_SCK/P39: MAX2837.SCLK(I), MAX5864.SCLK(I) */ - { 1, 20, .config={ .MODE=0, .EPD=0, .EPUN=1, .EHS=0, .EZI=0, .ZIF=0 } }, /* CS_XCVR/P53: MAX2837.CS(I) */ - { 2, 5, .config={ .MODE=4, .EPD=0, .EPUN=0, .EHS=0, .EZI=0, .ZIF=0 } }, /* RX/P43: U7.VCTL1(I), U10.VCTL1(I), U2.VCTL1(I) */ - { 2, 6, .config={ .MODE=4, .EPD=0, .EPUN=1, .EHS=0, .EZI=0, .ZIF=0 } }, /* MIXER_SCLK/P31: 33pF, RFFC5072.SCLK(I) */ - { 2, 10, .config={ .MODE=0, .EPD=0, .EPUN=1, .EHS=0, .EZI=0, .ZIF=0 } }, /* AMP_BYPASS/P50: U14.V2(I), U12.V2(I) */ - { 2, 11, .config={ .MODE=0, .EPD=0, .EPUN=1, .EHS=0, .EZI=0, .ZIF=0 } }, /* RX_AMP/P49: U12.V1(I), U14.V3(I) */ - { 2, 12, .config={ .MODE=0, .EPD=0, .EPUN=1, .EHS=0, .EZI=0, .ZIF=0 } }, /* !RX_AMP_PWR/P52: 10K PU, Q1.G(I), power to U13 (RX amp) */ - { 4, 0, .config={ .MODE=0, .EPD=0, .EPUN=1, .EHS=0, .EZI=0, .ZIF=0 } }, /* HP/P44: U6.VCTL1(I), U5.VCTL2(I) */ - { 4, 4, .config={ .MODE=0, .EPD=0, .EPUN=1, .EHS=0, .EZI=0, .ZIF=0 } }, /* TXENABLE/P55: MAX2837.TXENABLE(I) */ - { 4, 5, .config={ .MODE=0, .EPD=0, .EPUN=1, .EHS=0, .EZI=0, .ZIF=0 } }, /* RXENABLE/P56: MAX2837.RXENABLE(I) */ - { 4, 6, .config={ .MODE=0, .EPD=0, .EPUN=1, .EHS=0, .EZI=0, .ZIF=0 } }, /* XCVR_EN: 10K PD, MAX2837.ENABLE(I) */ - { 5, 1, .config={ .MODE=0, .EPD=0, .EPUN=1, .EHS=0, .EZI=0, .ZIF=0 } }, /* LP/P45: U6.VCTL2(I), U5.VCTL1(I) */ - { 5, 2, .config={ .MODE=0, .EPD=0, .EPUN=1, .EHS=0, .EZI=0, .ZIF=0 } }, /* TX_MIX_BP/P46: U9.V1(I) */ - { 5, 3, .config={ .MODE=0, .EPD=0, .EPUN=1, .EHS=0, .EZI=0, .ZIF=0 } }, /* RX_MIX_BP/P47: U9.V3(I) */ - { 5, 4, .config={ .MODE=0, .EPD=0, .EPUN=1, .EHS=0, .EZI=0, .ZIF=0 } }, /* MIXER_ENX/P32: 10K PU, 33pF, RFFC5072.ENX(I) */ - { 5, 5, .config={ .MODE=0, .EPD=0, .EPUN=1, .EHS=0, .EZI=0, .ZIF=0 } }, /* MIXER_RESETX/P33: 10K PU, 33pF, RFFC5072.RESETX(I) */ - { 5, 6, .config={ .MODE=0, .EPD=0, .EPUN=1, .EHS=0, .EZI=0, .ZIF=0 } }, /* TX_AMP/P48: U12.V3(I), U14.V1(I) */ - { 5, 7, .config={ .MODE=0, .EPD=0, .EPUN=1, .EHS=0, .EZI=0, .ZIF=0 } }, /* CS_AD/P54: MAX5864.CS(I) */ - { 6, 4, .config={ .MODE=0, .EPD=0, .EPUN=1, .EHS=0, .EZI=1, .ZIF=0 } }, /* MIXER_SDATA/P27: 33pF, RFFC5072.SDATA(IO) */ - { 6, 7, .config={ .MODE=4, .EPD=0, .EPUN=1, .EHS=0, .EZI=0, .ZIF=0 } }, /* TX/P42: U7.VCTL2(I), U10.VCTL2(I), U2.VCTL2(I) */ - { 6, 8, .config={ .MODE=4, .EPD=0, .EPUN=1, .EHS=0, .EZI=0, .ZIF=0 } }, /* MIX_BYPASS/P34: U1.VCTL2(I), U11.VCTL1(I) */ - { 6, 9, .config={ .MODE=0, .EPD=0, .EPUN=1, .EHS=0, .EZI=0, .ZIF=0 } }, /* !TX_AMP_PWR/P51: 10K PU, Q2.G(I), power to U25 (TX amp) */ - - /* SGPIO for sample transfer interface to HackRF CPLD. */ - { 0, 0, .config={ .MODE=3, .EPD=0, .EPUN=1, .EHS=1, .EZI=1, .ZIF=1 } }, /* SGPIO0/P75/BANK2F3M3: CPLD.89/HOST_DATA0(IO) */ - { 0, 1, .config={ .MODE=3, .EPD=0, .EPUN=1, .EHS=1, .EZI=1, .ZIF=1 } }, /* SGPIO1/BANK2F3M5: CPLD.79/HOST_DATA1(IO) */ - { 1, 15, .config={ .MODE=2, .EPD=0, .EPUN=1, .EHS=1, .EZI=1, .ZIF=1 } }, /* SGPIO2/BANK2F3M9: CPLD.74/HOST_DATA2(IO) */ - { 1, 16, .config={ .MODE=2, .EPD=0, .EPUN=1, .EHS=1, .EZI=1, .ZIF=1 } }, /* SGPIO3/BANK2F3M10: CPLD.72/HOST_DATA3(IO) */ - { 6, 3, .config={ .MODE=2, .EPD=0, .EPUN=1, .EHS=1, .EZI=1, .ZIF=1 } }, /* SGPIO4/BANK2F3M14: CPLD.67/HOST_DATA4(IO) */ - { 6, 6, .config={ .MODE=2, .EPD=0, .EPUN=1, .EHS=1, .EZI=1, .ZIF=1 } }, /* SGPIO5/BANK2F3M15: CPLD.64/HOST_DATA5(IO) */ - { 2, 2, .config={ .MODE=0, .EPD=0, .EPUN=1, .EHS=1, .EZI=1, .ZIF=1 } }, /* SGPIO6/BANK2F3M16: CPLD.61/HOST_DATA6(IO) */ - { 1, 0, .config={ .MODE=6, .EPD=0, .EPUN=1, .EHS=1, .EZI=1, .ZIF=1 } }, /* SGPIO7/P76/BANK2F3M7: CPLD.77/HOST_DATA7(IO) */ - { 9, 6, .config={ .MODE=6, .EPD=0, .EPUN=1, .EHS=0, .EZI=1, .ZIF=1 } }, /* SGPIO8/SGPIO_CLK/P60: SI5351C.CLK2(O) */ - { 4, 3, .config={ .MODE=7, .EPD=0, .EPUN=1, .EHS=0, .EZI=1, .ZIF=1 } }, /* SGPIO9/P77/BANK2F3M1: CPLD.91/HOST_CAPTURE(O) */ - { 1, 14, .config={ .MODE=6, .EPD=0, .EPUN=0, .EHS=1, .EZI=0, .ZIF=0 } }, /* SGPIO10/P78/BANK2F3M8: CPLD.76/HOST_DISABLE(I) */ - { 1, 17, .config={ .MODE=6, .EPD=0, .EPUN=0, .EHS=1, .EZI=0, .ZIF=0 } }, /* SGPIO11/P79/BANK2F3M11: CPLD.71/HOST_DIRECTION(I) */ - { 1, 18, .config={ .MODE=0, .EPD=1, .EPUN=1, .EHS=0, .EZI=0, .ZIF=0 } }, /* SGPIO12/BANK2F3M12: CPLD.70/HOST_INVERT(I) */ - { 4, 8, .config={ .MODE=4, .EPD=0, .EPUN=0, .EHS=0, .EZI=0, .ZIF=0 } }, /* SGPIO13/BANK2F3M2: CPLD.90/HOST_DECIM_SEL0(I) */ - { 4, 9, .config={ .MODE=4, .EPD=0, .EPUN=0, .EHS=0, .EZI=0, .ZIF=0 } }, /* SGPIO14/BANK2F3M4: CPLD.81/HOST_DECIM_SEL1(I) */ - { 4, 10, .config={ .MODE=4, .EPD=0, .EPUN=0, .EHS=0, .EZI=0, .ZIF=0 } }, /* SGPIO15/BANK2F3M6: CPLD.78/HOST_DECIM_SEL2(I) */ - - /* HackRF: CPLD */ - { 6, 1, .config={ .MODE=0, .EPD=0, .EPUN=1, .EHS=0, .EZI=0, .ZIF=0 } }, /* CPLD_TCK: CPLD.TCK(I), PortaPack CPLD.TCK(I) */ - { 6, 2, .config={ .MODE=0, .EPD=0, .EPUN=1, .EHS=0, .EZI=1, .ZIF=0 } }, /* CPLD_TDI: CPLD.TDI(I), PortaPack I2S0_RX_SDA(O), PortaPack CPLD.TDI(I) */ - { 6, 5, .config={ .MODE=0, .EPD=0, .EPUN=1, .EHS=0, .EZI=0, .ZIF=0 } }, /* CPLD_TMS: CPLD.TMS(I) */ - { 9, 5, .config={ .MODE=4, .EPD=0, .EPUN=1, .EHS=0, .EZI=1, .ZIF=0 } }, /* CPLD_TDO: CPLD.TDO(O) */ - - /* PortaPack */ - { 1, 5, .config={ .MODE=0, .EPD=0, .EPUN=0, .EHS=0, .EZI=1, .ZIF=0 } }, /* SD_POW: PortaPack CPLD.TDO(O) */ - { 1, 8, .config={ .MODE=0, .EPD=0, .EPUN=0, .EHS=0, .EZI=0, .ZIF=0 } }, /* SD_VOLT0: PortaPack CPLD.TMS(I) */ - { 2, 0, .config={ .MODE=4, .EPD=0, .EPUN=1, .EHS=0, .EZI=1, .ZIF=0 } }, /* U0_TXD: PortaPack P2_0/IO_STBX */ - { 2, 1, .config={ .MODE=4, .EPD=0, .EPUN=1, .EHS=0, .EZI=1, .ZIF=0 } }, /* U0_RXD: PortaPack P2_1/ADDR */ - { 2, 3, .config={ .MODE=4, .EPD=0, .EPUN=1, .EHS=0, .EZI=1, .ZIF=0 } }, /* I2C1_SDA: PortaPack P2_3/LCD_TE */ - { 2, 4, .config={ .MODE=4, .EPD=0, .EPUN=1, .EHS=0, .EZI=1, .ZIF=0 } }, /* I2C1_SCL: PortaPack P2_4/LCD_RDX */ - { 2, 8, .config={ .MODE=4, .EPD=0, .EPUN=1, .EHS=0, .EZI=0, .ZIF=0 } }, /* P2_8: 10K PD, BOOT2, DFU switch, PortaPack P2_8/ */ - { 2, 9, .config={ .MODE=0, .EPD=0, .EPUN=1, .EHS=0, .EZI=1, .ZIF=0 } }, /* P2_9: 10K PD, BOOT3, PortaPack P2_9/LCD_WRX */ - { 2, 13, .config={ .MODE=0, .EPD=0, .EPUN=1, .EHS=0, .EZI=1, .ZIF=0 } }, /* P2_13: PortaPack P2_13/DIR */ - { 7, 0, .config={ .MODE=0, .EPD=1, .EPUN=1, .EHS=0, .EZI=1, .ZIF=0 } }, /* GPIO3_8: PortaPack GPIO3_8(IO) */ - { 7, 1, .config={ .MODE=0, .EPD=1, .EPUN=1, .EHS=0, .EZI=1, .ZIF=0 } }, /* GPIO3_9: PortaPack GPIO3_9(IO) */ - { 7, 2, .config={ .MODE=0, .EPD=1, .EPUN=1, .EHS=0, .EZI=1, .ZIF=0 } }, /* GPIO3_10: PortaPack GPIO3_10(IO) */ - { 7, 3, .config={ .MODE=0, .EPD=1, .EPUN=1, .EHS=0, .EZI=1, .ZIF=0 } }, /* GPIO3_11: PortaPack GPIO3_11(IO) */ - { 7, 4, .config={ .MODE=0, .EPD=1, .EPUN=1, .EHS=0, .EZI=1, .ZIF=0 } }, /* GPIO3_12: PortaPack GPIO3_12(IO) */ - { 7, 5, .config={ .MODE=0, .EPD=1, .EPUN=1, .EHS=0, .EZI=1, .ZIF=0 } }, /* GPIO3_13: PortaPack GPIO3_13(IO) */ - { 7, 6, .config={ .MODE=0, .EPD=1, .EPUN=1, .EHS=0, .EZI=1, .ZIF=0 } }, /* GPIO3_14: PortaPack GPIO3_14(IO) */ - { 7, 7, .config={ .MODE=0, .EPD=1, .EPUN=1, .EHS=0, .EZI=1, .ZIF=0 } }, /* GPIO3_15: PortaPack GPIO3_15(IO) */ - - /* PortaPack: Audio */ - { 3, 0, .config={ .MODE=2, .EPD=0, .EPUN=0, .EHS=0, .EZI=1, .ZIF=0 } }, /* I2S0_TX_SCK: PortaPack I2S0_TX_SCK(I) */ - { 3, 1, .config={ .MODE=0, .EPD=0, .EPUN=0, .EHS=0, .EZI=1, .ZIF=0 } }, /* I2S0_RX_WS: PortaPack I2S0_TX_WS(I). Input enabled to fold back into RX. */ - { 3, 2, .config={ .MODE=0, .EPD=0, .EPUN=0, .EHS=0, .EZI=0, .ZIF=0 } }, /* I2S0_RX_SDA: PortaPack I2S0_TX_SDA(I) */ - { 24, 2, .config={ .MODE=6, .EPD=1, .EPUN=1, .EHS=0, .EZI=0, .ZIF=0 } }, /* I2S0_TX_CLK: PortaPack I2S0_TX_MCLK */ - - /* PortaPack: SD card socket */ - { 24, 0, .config={ .MODE=4, .EPD=1, .EPUN=1, .EHS=0, .EZI=1, .ZIF=1 } }, /* SD_CLK: PortaPack SD.CLK, enable input buffer for timing feedback? */ - { 1, 6, .config={ .MODE=7, .EPD=0, .EPUN=0, .EHS=0, .EZI=1, .ZIF=1 } }, /* SD_CMD: PortaPack SD.CMD(IO) */ - { 1, 9, .config={ .MODE=7, .EPD=0, .EPUN=0, .EHS=0, .EZI=1, .ZIF=1 } }, /* SD_DAT0: PortaPack SD.DAT0(IO) */ - { 1, 10, .config={ .MODE=7, .EPD=0, .EPUN=0, .EHS=0, .EZI=1, .ZIF=1 } }, /* SD_DAT1: PortaPack SD.DAT1(IO) */ - { 1, 11, .config={ .MODE=7, .EPD=0, .EPUN=0, .EHS=0, .EZI=1, .ZIF=1 } }, /* SD_DAT2: PortaPack SD.DAT2(IO) */ - { 1, 12, .config={ .MODE=7, .EPD=0, .EPUN=0, .EHS=0, .EZI=1, .ZIF=1 } }, /* SD_DAT3: PortaPack SD.DAT3(IO) */ - { 1, 13, .config={ .MODE=7, .EPD=0, .EPUN=0, .EHS=0, .EZI=1, .ZIF=0 } }, /* SD_CD: PortaPack SD.CD(O) */ - - /* Miscellaneous */ - { 1, 1, .config={ .MODE=0, .EPD=0, .EPUN=1, .EHS=0, .EZI=0, .ZIF=0 } }, /* P1_1/P74: 10K PU, BOOT0 */ - { 1, 2, .config={ .MODE=0, .EPD=0, .EPUN=1, .EHS=0, .EZI=0, .ZIF=0 } }, /* P1_2/P73: 10K PD, BOOT1 */ - { 2, 7, .config={ .MODE=0, .EPD=0, .EPUN=1, .EHS=0, .EZI=0, .ZIF=0 } }, /* ISP: 10K PU, Unused */ - { 6, 0, .config={ .MODE=0, .EPD=0, .EPUN=0, .EHS=0, .EZI=0, .ZIF=0 } }, /* I2S0_RX_MCLK: Unused */ - { 15, 4, .config={ .MODE=7, .EPD=0, .EPUN=0, .EHS=0, .EZI=0, .ZIF=0 } }, /* I2S0_RX_SCK: Unused */ - } -}; -#endif - -/** - * @brief Early initialization code. - * @details This initialization must be performed just after stack setup - * and before any other initialization. - */ -// void __early_init(void) { -// } - -/** - * @brief Board-specific initialization code. - * @todo Add your board-specific code, if any. - */ -void boardInit(void) { -} diff --git a/firmware/chibios-portapack/boards/GSG_HACKRF_ONE/board.cmake b/firmware/chibios-portapack/boards/GSG_HACKRF_ONE/board.cmake deleted file mode 100644 index 5befc3f1f..000000000 --- a/firmware/chibios-portapack/boards/GSG_HACKRF_ONE/board.cmake +++ /dev/null @@ -1,9 +0,0 @@ -# List of all the board related files. -set(BOARDSRC - ${CHIBIOS_PORTAPACK}/boards/GSG_HACKRF_ONE/board.c -) - -# Required include directories -set(BOARDINC - ${CHIBIOS_PORTAPACK}/boards/GSG_HACKRF_ONE -) diff --git a/firmware/chibios-portapack/boards/GSG_HACKRF_ONE/board.mk b/firmware/chibios-portapack/boards/GSG_HACKRF_ONE/board.mk deleted file mode 100755 index 6875428f4..000000000 --- a/firmware/chibios-portapack/boards/GSG_HACKRF_ONE/board.mk +++ /dev/null @@ -1,5 +0,0 @@ -# List of all the board related files. -BOARDSRC = ${CHIBIOS_PORTAPACK}/boards/GSG_HACKRF_ONE/board.c - -# Required include directories -BOARDINC = ${CHIBIOS_PORTAPACK}/boards/GSG_HACKRF_ONE \ No newline at end of file diff --git a/firmware/chibios-portapack/boards/PORTAPACK_APPLICATION/board.cmake b/firmware/chibios-portapack/boards/PORTAPACK_APPLICATION/board.cmake new file mode 100644 index 000000000..62e8ec328 --- /dev/null +++ b/firmware/chibios-portapack/boards/PORTAPACK_APPLICATION/board.cmake @@ -0,0 +1,9 @@ +# List of all the board related files. +set(BOARDSRC + ${CHIBIOS_PORTAPACK}/boards/PORTAPACK_APPLICATION/board.cpp +) + +# Required include directories +set(BOARDINC + ${CHIBIOS_PORTAPACK}/boards/PORTAPACK_APPLICATION +) diff --git a/firmware/chibios-portapack/boards/PORTAPACK_APPLICATION/board.cpp b/firmware/chibios-portapack/boards/PORTAPACK_APPLICATION/board.cpp new file mode 100755 index 000000000..c64bd8d29 --- /dev/null +++ b/firmware/chibios-portapack/boards/PORTAPACK_APPLICATION/board.cpp @@ -0,0 +1,607 @@ +/* + ChibiOS/RT - Copyright (C) 2006-2013 Giovanni Di Sirio + Copyright (C) 2014 Jared Boone, ShareBrained Technology + + 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. +*/ + +#include "ch.h" +#include "hal.h" + +#include + +#if HAL_USE_PAL || defined(__DOXYGEN__) +/** + * @brief PAL setup. + * @details Digital I/O ports static configuration as defined in @p board.h. + * This variable is used by the HAL when initializing the PAL driver. + */ +/** + * CoolRunner (HackRF) CPLD: + * CoolRunner-II devices have internal pull-ups on TDI, TMS, and TCK. + * It is not necessary to externally terminate JTAG pins with internal termination; they can be + * left floating. External pull-ups on pins with internal termination is allowed, but not + * necessary. External pull-down termination is not recommended as it would conflict with + * the internal pull-ups + * + * LPC43xx pull-ups come on line when 3V3 supply voltage reaches about 2V. + * + * 3V3 supply: + * Ramps up in about 1ms. + * + * 1V8 supply: + * Ramps up in about 1ms. + * EN1V8 has a 10K pull-down on the HackRF and is pulled up (very gently) by the LPC43xx + * bootloader at boot time. So until the EN1V8 pin is reconfigured as an output, the enable + * pin on the 1V8 supply sits at about 0.55V, which feels untidy... + * 1V8 supply is activated when GPIO is driven high by user code. + */ +const PALConfig pal_default_config = { + .P = { + { // GPIO0 + .data + = (1 << 15) // CS_XCVR + | (1 << 14) // AMP_BYPASS + | (0 << 9) // 10K PD, BOOT1 + | (1 << 8) // 10K PU, BOOT0 + , + .dir + = (1 << 15) // CS_XCVR + | (1 << 14) // AMP_BYPASS + | (0 << 9) // 10K PD, BOOT1 + | (0 << 8) // 10K PU, BOOT0 + }, + { // GPIO1 + .data + = (1 << 13) // PortaPack P2_13/DIR + | (1 << 12) // !RX_AMP_PWR + | (0 << 11) // RX_AMP + | (1 << 10) // 10K PD, BOOT3, PortaPack P2_9/LCD_WRX + | (1 << 8) // PortaPack CPLD.TDO(O) + | (1 << 1) // PortaPack CPLD.TMS(I) + | (0 << 0) // !MIX_BYPASS + , + .dir + = (1 << 13) // PortaPack P2_13/DIR + | (1 << 12) // !RX_AMP_PWR + | (1 << 11) // RX_AMP + | (1 << 10) // 10K PD, BOOT3, PortaPack P2_9/LCD_WRX + | (0 << 8) // PortaPack CPLD.TDO(O) (input with pull up) + | (0 << 1) // PortaPack CPLD.TMS(I) (output only when needed, pull up internal to CPLD) + | (1 << 0) // !MIX_BYPASS + }, + { // GPIO2 + .data + = (0 << 15) // TX_AMP + | (0 << 11) // TX_MIX_BP + | (1 << 14) // MIXER_RESETX, 10K PU + | (1 << 13) // MIXER_ENX, 10K PU + | (1 << 12) // RX_MIX_BP + | (0 << 10) // LP + | (1 << 9) // !VAA_ENABLE + | (0 << 8) // LED3 (TX) + | (1 << 7) // CS_AD + | (0 << 6) // XCVR_EN, 10K PD + | (0 << 5) // RXENABLE + | (0 << 4) // TXENABLE + | (0 << 2) // LED2 (RX) + | (0 << 1) // LED1 (USB) + | (1 << 0) // HP + , + .dir + = (1 << 15) // TX_AMP + | (1 << 14) // MIXER_RESETX, 10K PU + | (1 << 13) // MIXER_ENX, 10K PU + | (1 << 12) // RX_MIX_BP + | (1 << 11) // TX_MIX_BP + | (1 << 10) // LP + | (1 << 9) // !VAA_ENABLE + | (1 << 8) // LED3 (TX) + | (1 << 7) // CS_AD + | (1 << 6) // XCVR_EN, 10K PD + | (1 << 5) // RXENABLE + | (1 << 4) // TXENABLE + | (1 << 2) // LED2 (RX) + | (1 << 1) // LED1 (USB) + | (1 << 0) // HP + }, + { // GPIO3 + .data + = (0 << 15) // PortaPack GPIO3_15(IO) + | (0 << 14) // PortaPack GPIO3_14(IO) + | (0 << 13) // PortaPack GPIO3_13(IO) + | (0 << 12) // PortaPack GPIO3_12(IO) + | (0 << 11) // PortaPack GPIO3_11(IO) + | (0 << 10) // PortaPack GPIO3_10(IO) + | (0 << 9) // PortaPack GPIO3_9(IO) + | (0 << 8) // PortaPack GPIO3_8(IO) + | (0 << 7) // VREGMODE + | (1 << 6) // EN1V8, 10K PD + | (1 << 5) // !TX_AMP_PWR, 10K PU + | (1 << 4) // HackRF CPLD.TMS(I) (output only when needed, pull-up internal to CPLD when 1V8 present) + | (1 << 1) // HackRF CPLD.TDI(I), PortaPack I2S0_RX_SDA(O), PortaPack CPLD.TDI(I) (output only when needed, pull-up internal to CPLD when 1V8 present) + | (1 << 0) // HackRF CPLD.TCK(I), PortaPack CPLD.TCK(I) (output only when needed, pull-up internal to CPLD when 1V8 present) + , + .dir + = (0 << 15) // PortaPack GPIO3_15(IO) + | (0 << 14) // PortaPack GPIO3_14(IO) + | (0 << 13) // PortaPack GPIO3_13(IO) + | (0 << 12) // PortaPack GPIO3_12(IO) + | (0 << 11) // PortaPack GPIO3_11(IO) + | (0 << 10) // PortaPack GPIO3_10(IO) + | (0 << 9) // PortaPack GPIO3_9(IO) + | (0 << 8) // PortaPack GPIO3_8(IO) + | (1 << 7) // VREGMODE + | (1 << 6) // EN1V8, 10K PD + | (1 << 5) // !TX_AMP_PWR, 10K PU + | (0 << 4) // HackRF CPLD.TMS(I) (output only when needed, pull-up internal to CPLD when 1V8 present) + | (0 << 1) // HackRF CPLD.TDI(I), PortaPack I2S0_RX_SDA(O), PortaPack CPLD.TDI(I) (output only when needed, pull-up internal to CPLD when 1V8 present) + | (0 << 0) // HackRF CPLD.TCK(I), PortaPack CPLD.TCK(I) (output only when needed, pull-up internal to CPLD when 1V8 present) + }, + { // GPIO4 + .data = 0, + .dir = 0 + }, + { // GPIO5 + .data + = (1 << 18) // HackRF CPLD.TDO(O) (input with pull up) + | (0 << 15) // TX + | (1 << 16) // MIX_BYPASS + | (1 << 5) // RX + | (1 << 4) // PortaPack P2_4/LCD_RDX + | (0 << 3) // PortaPack P2_3/LCD_TE + | (0 << 1) // PortaPack P2_1/ADDR + | (1 << 0) // PortaPack P2_0/IO_STBX + , + .dir + = (0 << 18) // HackRF CPLD.TDO(O) (input with pull up) + | (1 << 16) // MIX_BYPASS + | (1 << 15) // TX + | (1 << 5) // RX + | (1 << 4) // PortaPack P2_4/LCD_RDX + | (0 << 3) // PortaPack P2_3/LCD_TE + | (1 << 1) // PortaPack P2_1/ADDR + | (1 << 0) // PortaPack P2_0/IO_STBX + }, + { // GPIO6 + .data = 0, + .dir = 0 + }, + { // GPIO7 + .data = 0, + .dir = 0 + }, + }, + .SCU = { + /* Configure GP_CLKIN as soon as possible. It's an output at boot time, and the Si5351C doesn't + * reset when the reset button is pressed, so it could still be output enabled. + */ + { 4, 7, scu_config_normal_drive_t { .mode=1, .epd=0, .epun=1, .ehs=0, .ezi=1, .zif=1 } }, /* GP_CLKIN/P72/MCU_CLK: SI5351C.CLK7(O) */ + + /* HackRF: LEDs. Configured early so we can use them to indicate boot status. */ + { 4, 1, scu_config_normal_drive_t { .mode=0, .epd=0, .epun=1, .ehs=0, .ezi=0, .zif=0 } }, /* LED1: LED1.A(I) */ + { 4, 2, scu_config_normal_drive_t { .mode=0, .epd=0, .epun=1, .ehs=0, .ezi=0, .zif=0 } }, /* LED2: LED2.A(I) */ + { 6, 12, scu_config_normal_drive_t { .mode=0, .epd=0, .epun=1, .ehs=0, .ezi=0, .zif=0 } }, /* LED3: LED3.A(I) */ + + /* Power control */ + { 5, 0, scu_config_normal_drive_t { .mode=0, .epd=0, .epun=1, .ehs=0, .ezi=0, .zif=0 } }, /* !VAA_ENABLE: 10K PU, Q3.G(I), power to VAA */ + { 6, 10, scu_config_normal_drive_t { .mode=0, .epd=0, .epun=1, .ehs=0, .ezi=0, .zif=0 } }, /* EN1V8/P70: 10K PD, TPS62410.EN2(I), 1V8LED.A(I) */ + { 6, 11, scu_config_normal_drive_t { .mode=0, .epd=0, .epun=1, .ehs=0, .ezi=0, .zif=0 } }, /* VREGMODE/P69: TPS62410.MODE/DATA(I) */ + + /* HackRF: I2C0 */ + /* Glitch filter operates at 3ns instead of 50ns due to the WM8731 + * returning an ACK very fast (170ns) and confusing the I2C state + * machine into thinking there was a bus error. It looks like the + * MCU sees SDA fall before SCL falls, indicating a START at the + * point an ACK is expected. With the glitch filter off or set to + * 3ns, it's probably still a bit tight timing-wise, but improves + * reliability on some problem units. + */ + { 25, 1, + scu_config_sfsi2c0_t { + .scl_efp=1, // SCL: 3ns glitch + .scl_ehd=0, // SCL: Standard/Fast mode + .scl_ezi=1, // SCL: Input enabled + .scl_zif=0, // SCL: Enable input glitch filter + .sda_efp=1, // SDA: 3ns glitch + .sda_ehd=0, // SDA: Standard/Fast mode + .sda_ezi=1, // SDA: Input enabled + .sda_zif=0 // SDA: Enable input glitch filter + } + }, + + /* Radio section control */ + { 1, 3, scu_config_normal_drive_t { .mode=5, .epd=0, .epun=1, .ehs=0, .ezi=1, .zif=0 } }, /* SSP1_MISO/P41: MAX2837.DOUT(O) */ + { 1, 4, scu_config_normal_drive_t { .mode=5, .epd=1, .epun=1, .ehs=0, .ezi=0, .zif=0 } }, /* SSP1_MOSI/P40: MAX2837.DIN(I), MAX5864.DIN(I) */ + { 1, 7, scu_config_normal_drive_t { .mode=0, .epd=0, .epun=1, .ehs=0, .ezi=0, .zif=0 } }, /* !MIX_BYPASS/P35: U1.VCTL1(I), U11.VCTL2(I), U9.V2(I) */ + { 1, 19, scu_config_normal_drive_t { .mode=1, .epd=0, .epun=1, .ehs=0, .ezi=0, .zif=0 } }, /* SSP1_SCK/P39: MAX2837.SCLK(I), MAX5864.SCLK(I) */ + { 1, 20, scu_config_normal_drive_t { .mode=0, .epd=0, .epun=1, .ehs=0, .ezi=0, .zif=0 } }, /* CS_XCVR/P53: MAX2837.CS(I) */ + { 2, 5, scu_config_normal_drive_t { .mode=4, .epd=0, .epun=0, .ehs=0, .ezi=0, .zif=0 } }, /* RX/P43: U7.VCTL1(I), U10.VCTL1(I), U2.VCTL1(I) */ + { 2, 6, scu_config_normal_drive_t { .mode=4, .epd=0, .epun=1, .ehs=0, .ezi=0, .zif=0 } }, /* MIXER_SCLK/P31: 33pF, RFFC5072.SCLK(I) */ + { 2, 10, scu_config_normal_drive_t { .mode=0, .epd=0, .epun=1, .ehs=0, .ezi=0, .zif=0 } }, /* AMP_BYPASS/P50: U14.V2(I), U12.V2(I) */ + { 2, 11, scu_config_normal_drive_t { .mode=0, .epd=0, .epun=1, .ehs=0, .ezi=0, .zif=0 } }, /* RX_AMP/P49: U12.V1(I), U14.V3(I) */ + { 2, 12, scu_config_normal_drive_t { .mode=0, .epd=0, .epun=1, .ehs=0, .ezi=0, .zif=0 } }, /* !RX_AMP_PWR/P52: 10K PU, Q1.G(I), power to U13 (RX amp) */ + { 4, 0, scu_config_normal_drive_t { .mode=0, .epd=0, .epun=1, .ehs=0, .ezi=0, .zif=0 } }, /* HP/P44: U6.VCTL1(I), U5.VCTL2(I) */ + { 4, 4, scu_config_normal_drive_t { .mode=0, .epd=0, .epun=1, .ehs=0, .ezi=0, .zif=0 } }, /* TXENABLE/P55: MAX2837.TXENABLE(I) */ + { 4, 5, scu_config_normal_drive_t { .mode=0, .epd=0, .epun=1, .ehs=0, .ezi=0, .zif=0 } }, /* RXENABLE/P56: MAX2837.RXENABLE(I) */ + { 4, 6, scu_config_normal_drive_t { .mode=0, .epd=0, .epun=1, .ehs=0, .ezi=0, .zif=0 } }, /* XCVR_EN: 10K PD, MAX2837.ENABLE(I) */ + { 5, 1, scu_config_normal_drive_t { .mode=0, .epd=0, .epun=1, .ehs=0, .ezi=0, .zif=0 } }, /* LP/P45: U6.VCTL2(I), U5.VCTL1(I) */ + { 5, 2, scu_config_normal_drive_t { .mode=0, .epd=0, .epun=1, .ehs=0, .ezi=0, .zif=0 } }, /* TX_MIX_BP/P46: U9.V1(I) */ + { 5, 3, scu_config_normal_drive_t { .mode=0, .epd=0, .epun=1, .ehs=0, .ezi=0, .zif=0 } }, /* RX_MIX_BP/P47: U9.V3(I) */ + { 5, 4, scu_config_normal_drive_t { .mode=0, .epd=0, .epun=1, .ehs=0, .ezi=0, .zif=0 } }, /* MIXER_ENX/P32: 10K PU, 33pF, RFFC5072.ENX(I) */ + { 5, 5, scu_config_normal_drive_t { .mode=0, .epd=0, .epun=1, .ehs=0, .ezi=0, .zif=0 } }, /* MIXER_RESETX/P33: 10K PU, 33pF, RFFC5072.RESETX(I) */ + { 5, 6, scu_config_normal_drive_t { .mode=0, .epd=0, .epun=1, .ehs=0, .ezi=0, .zif=0 } }, /* TX_AMP/P48: U12.V3(I), U14.V1(I) */ + { 5, 7, scu_config_normal_drive_t { .mode=0, .epd=0, .epun=1, .ehs=0, .ezi=0, .zif=0 } }, /* CS_AD/P54: MAX5864.CS(I) */ + { 6, 4, scu_config_normal_drive_t { .mode=0, .epd=0, .epun=1, .ehs=0, .ezi=1, .zif=0 } }, /* MIXER_SDATA/P27: 33pF, RFFC5072.SDATA(IO) */ + { 6, 7, scu_config_normal_drive_t { .mode=4, .epd=0, .epun=1, .ehs=0, .ezi=0, .zif=0 } }, /* TX/P42: U7.VCTL2(I), U10.VCTL2(I), U2.VCTL2(I) */ + { 6, 8, scu_config_normal_drive_t { .mode=4, .epd=0, .epun=1, .ehs=0, .ezi=0, .zif=0 } }, /* MIX_BYPASS/P34: U1.VCTL2(I), U11.VCTL1(I) */ + { 6, 9, scu_config_normal_drive_t { .mode=0, .epd=0, .epun=1, .ehs=0, .ezi=0, .zif=0 } }, /* !TX_AMP_PWR/P51: 10K PU, Q2.G(I), power to U25 (TX amp) */ + + /* SGPIO for sample transfer interface to HackRF CPLD. */ + { 0, 0, scu_config_normal_drive_t { .mode=3, .epd=0, .epun=1, .ehs=1, .ezi=1, .zif=1 } }, /* SGPIO0/P75/BANK2F3M3: CPLD.89/HOST_DATA0(IO) */ + { 0, 1, scu_config_normal_drive_t { .mode=3, .epd=0, .epun=1, .ehs=1, .ezi=1, .zif=1 } }, /* SGPIO1/BANK2F3M5: CPLD.79/HOST_DATA1(IO) */ + { 1, 15, scu_config_normal_drive_t { .mode=2, .epd=0, .epun=1, .ehs=1, .ezi=1, .zif=1 } }, /* SGPIO2/BANK2F3M9: CPLD.74/HOST_DATA2(IO) */ + { 1, 16, scu_config_normal_drive_t { .mode=2, .epd=0, .epun=1, .ehs=1, .ezi=1, .zif=1 } }, /* SGPIO3/BANK2F3M10: CPLD.72/HOST_DATA3(IO) */ + { 6, 3, scu_config_normal_drive_t { .mode=2, .epd=0, .epun=1, .ehs=1, .ezi=1, .zif=1 } }, /* SGPIO4/BANK2F3M14: CPLD.67/HOST_DATA4(IO) */ + { 6, 6, scu_config_normal_drive_t { .mode=2, .epd=0, .epun=1, .ehs=1, .ezi=1, .zif=1 } }, /* SGPIO5/BANK2F3M15: CPLD.64/HOST_DATA5(IO) */ + { 2, 2, scu_config_normal_drive_t { .mode=0, .epd=0, .epun=1, .ehs=1, .ezi=1, .zif=1 } }, /* SGPIO6/BANK2F3M16: CPLD.61/HOST_DATA6(IO) */ + { 1, 0, scu_config_normal_drive_t { .mode=6, .epd=0, .epun=1, .ehs=1, .ezi=1, .zif=1 } }, /* SGPIO7/P76/BANK2F3M7: CPLD.77/HOST_DATA7(IO) */ + { 9, 6, scu_config_normal_drive_t { .mode=6, .epd=0, .epun=1, .ehs=0, .ezi=1, .zif=1 } }, /* SGPIO8/SGPIO_CLK/P60: SI5351C.CLK2(O) */ + { 4, 3, scu_config_normal_drive_t { .mode=7, .epd=0, .epun=1, .ehs=0, .ezi=1, .zif=1 } }, /* SGPIO9/P77/BANK2F3M1: CPLD.91/HOST_CAPTURE(O) */ + { 1, 14, scu_config_normal_drive_t { .mode=6, .epd=0, .epun=0, .ehs=1, .ezi=0, .zif=0 } }, /* SGPIO10/P78/BANK2F3M8: CPLD.76/HOST_DISABLE(I) */ + { 1, 17, scu_config_normal_drive_t { .mode=6, .epd=0, .epun=0, .ehs=1, .ezi=0, .zif=0 } }, /* SGPIO11/P79/BANK2F3M11: CPLD.71/HOST_DIRECTION(I) */ + { 1, 18, scu_config_normal_drive_t { .mode=0, .epd=1, .epun=1, .ehs=0, .ezi=0, .zif=0 } }, /* SGPIO12/BANK2F3M12: CPLD.70/HOST_INVERT(I) */ + { 4, 8, scu_config_normal_drive_t { .mode=4, .epd=1, .epun=1, .ehs=0, .ezi=0, .zif=0 } }, /* SGPIO13/BANK2F3M2: CPLD.90/HOST_SYNC_EN(I) */ + { 4, 9, scu_config_normal_drive_t { .mode=4, .epd=0, .epun=0, .ehs=0, .ezi=0, .zif=0 } }, /* SGPIO14/BANK2F3M4: CPLD.81/CPLD_P81 */ + { 4, 10, scu_config_normal_drive_t { .mode=4, .epd=0, .epun=0, .ehs=0, .ezi=0, .zif=0 } }, /* SGPIO15/BANK2F3M6: CPLD.78/CPLD_P78 */ + + /* HackRF: CPLD */ + { 6, 1, scu_config_normal_drive_t { .mode=0, .epd=0, .epun=1, .ehs=0, .ezi=0, .zif=0 } }, /* CPLD_TCK: CPLD.TCK(I), PortaPack CPLD.TCK(I) */ + { 6, 2, scu_config_normal_drive_t { .mode=0, .epd=0, .epun=1, .ehs=0, .ezi=1, .zif=0 } }, /* CPLD_TDI: CPLD.TDI(I), PortaPack I2S0_RX_SDA(O), PortaPack CPLD.TDI(I) */ + { 6, 5, scu_config_normal_drive_t { .mode=0, .epd=0, .epun=1, .ehs=0, .ezi=0, .zif=0 } }, /* CPLD_TMS: CPLD.TMS(I) */ + { 9, 5, scu_config_normal_drive_t { .mode=4, .epd=0, .epun=1, .ehs=0, .ezi=1, .zif=0 } }, /* CPLD_TDO: CPLD.TDO(O) */ + + /* PortaPack */ + { 1, 5, scu_config_normal_drive_t { .mode=0, .epd=0, .epun=0, .ehs=0, .ezi=1, .zif=0 } }, /* SD_POW: PortaPack CPLD.TDO(O) */ + { 1, 8, scu_config_normal_drive_t { .mode=0, .epd=0, .epun=0, .ehs=0, .ezi=0, .zif=0 } }, /* SD_VOLT0: PortaPack CPLD.TMS(I) */ + { 2, 0, scu_config_normal_drive_t { .mode=4, .epd=0, .epun=1, .ehs=0, .ezi=1, .zif=0 } }, /* U0_TXD: PortaPack P2_0/IO_STBX */ + { 2, 1, scu_config_normal_drive_t { .mode=4, .epd=0, .epun=1, .ehs=0, .ezi=1, .zif=0 } }, /* U0_RXD: PortaPack P2_1/ADDR */ + { 2, 3, scu_config_normal_drive_t { .mode=4, .epd=0, .epun=1, .ehs=0, .ezi=1, .zif=0 } }, /* I2C1_SDA: PortaPack P2_3/LCD_TE */ + { 2, 4, scu_config_normal_drive_t { .mode=4, .epd=0, .epun=1, .ehs=0, .ezi=1, .zif=0 } }, /* I2C1_SCL: PortaPack P2_4/LCD_RDX */ + { 2, 8, scu_config_normal_drive_t { .mode=4, .epd=0, .epun=1, .ehs=0, .ezi=0, .zif=0 } }, /* P2_8: 10K PD, BOOT2, DFU switch, PortaPack P2_8/ */ + { 2, 9, scu_config_normal_drive_t { .mode=0, .epd=0, .epun=1, .ehs=0, .ezi=1, .zif=0 } }, /* P2_9: 10K PD, BOOT3, PortaPack P2_9/LCD_WRX */ + { 2, 13, scu_config_normal_drive_t { .mode=0, .epd=0, .epun=1, .ehs=0, .ezi=1, .zif=0 } }, /* P2_13: PortaPack P2_13/DIR */ + { 7, 0, scu_config_normal_drive_t { .mode=0, .epd=1, .epun=1, .ehs=0, .ezi=1, .zif=0 } }, /* GPIO3_8: PortaPack GPIO3_8(IO) */ + { 7, 1, scu_config_normal_drive_t { .mode=0, .epd=1, .epun=1, .ehs=0, .ezi=1, .zif=0 } }, /* GPIO3_9: PortaPack GPIO3_9(IO) */ + { 7, 2, scu_config_normal_drive_t { .mode=0, .epd=1, .epun=1, .ehs=0, .ezi=1, .zif=0 } }, /* GPIO3_10: PortaPack GPIO3_10(IO) */ + { 7, 3, scu_config_normal_drive_t { .mode=0, .epd=1, .epun=1, .ehs=0, .ezi=1, .zif=0 } }, /* GPIO3_11: PortaPack GPIO3_11(IO) */ + { 7, 4, scu_config_normal_drive_t { .mode=0, .epd=1, .epun=1, .ehs=0, .ezi=1, .zif=0 } }, /* GPIO3_12: PortaPack GPIO3_12(IO) */ + { 7, 5, scu_config_normal_drive_t { .mode=0, .epd=1, .epun=1, .ehs=0, .ezi=1, .zif=0 } }, /* GPIO3_13: PortaPack GPIO3_13(IO) */ + { 7, 6, scu_config_normal_drive_t { .mode=0, .epd=1, .epun=1, .ehs=0, .ezi=1, .zif=0 } }, /* GPIO3_14: PortaPack GPIO3_14(IO) */ + { 7, 7, scu_config_normal_drive_t { .mode=0, .epd=1, .epun=1, .ehs=0, .ezi=1, .zif=0 } }, /* GPIO3_15: PortaPack GPIO3_15(IO) */ + + /* PortaPack: Audio */ + { 3, 0, scu_config_normal_drive_t { .mode=2, .epd=0, .epun=0, .ehs=0, .ezi=1, .zif=0 } }, /* I2S0_TX_SCK: PortaPack I2S0_TX_SCK(I) */ + { 3, 1, scu_config_normal_drive_t { .mode=0, .epd=0, .epun=0, .ehs=0, .ezi=1, .zif=0 } }, /* I2S0_RX_WS: PortaPack I2S0_TX_WS(I). Input enabled to fold back into RX. */ + { 3, 2, scu_config_normal_drive_t { .mode=0, .epd=0, .epun=0, .ehs=0, .ezi=0, .zif=0 } }, /* I2S0_RX_SDA: PortaPack I2S0_TX_SDA(I) */ + { 24, 2, scu_config_normal_drive_t { .mode=6, .epd=1, .epun=1, .ehs=0, .ezi=0, .zif=0 } }, /* I2S0_TX_CLK: PortaPack I2S0_TX_MCLK */ + + /* PortaPack: SD card socket */ + { 24, 0, scu_config_normal_drive_t { .mode=4, .epd=1, .epun=1, .ehs=0, .ezi=1, .zif=1 } }, /* SD_CLK: PortaPack SD.CLK, enable input buffer for timing feedback? */ + { 1, 6, scu_config_normal_drive_t { .mode=7, .epd=0, .epun=0, .ehs=0, .ezi=1, .zif=1 } }, /* SD_CMD: PortaPack SD.CMD(IO) */ + { 1, 9, scu_config_normal_drive_t { .mode=7, .epd=0, .epun=0, .ehs=0, .ezi=1, .zif=1 } }, /* SD_DAT0: PortaPack SD.DAT0(IO) */ + { 1, 10, scu_config_normal_drive_t { .mode=7, .epd=0, .epun=0, .ehs=0, .ezi=1, .zif=1 } }, /* SD_DAT1: PortaPack SD.DAT1(IO) */ + { 1, 11, scu_config_normal_drive_t { .mode=7, .epd=0, .epun=0, .ehs=0, .ezi=1, .zif=1 } }, /* SD_DAT2: PortaPack SD.DAT2(IO) */ + { 1, 12, scu_config_normal_drive_t { .mode=7, .epd=0, .epun=0, .ehs=0, .ezi=1, .zif=1 } }, /* SD_DAT3: PortaPack SD.DAT3(IO) */ + { 1, 13, scu_config_normal_drive_t { .mode=7, .epd=0, .epun=0, .ehs=0, .ezi=1, .zif=0 } }, /* SD_CD: PortaPack SD.CD(O) */ + + /* Miscellaneous */ + { 1, 1, scu_config_normal_drive_t { .mode=0, .epd=0, .epun=1, .ehs=0, .ezi=0, .zif=0 } }, /* P1_1/P74: 10K PU, BOOT0 */ + { 1, 2, scu_config_normal_drive_t { .mode=0, .epd=0, .epun=1, .ehs=0, .ezi=0, .zif=0 } }, /* P1_2/P73: 10K PD, BOOT1 */ + { 2, 7, scu_config_normal_drive_t { .mode=0, .epd=0, .epun=1, .ehs=0, .ezi=0, .zif=0 } }, /* ISP: 10K PU, Unused */ + { 6, 0, scu_config_normal_drive_t { .mode=0, .epd=0, .epun=0, .ehs=0, .ezi=0, .zif=0 } }, /* I2S0_RX_MCLK: Unused */ + { 15, 4, scu_config_normal_drive_t { .mode=7, .epd=0, .epun=0, .ehs=0, .ezi=0, .zif=0 } }, /* I2S0_RX_SCK: Unused */ + } +}; +#endif + +static const std::array pins_setup_spifi { { + { 3, 3, scu_config_normal_drive_t { .mode=3, .epd=0, .epun=1, .ehs=1, .ezi=1, .zif=1 } }, /* SPIFI_SCK: W25Q80BV.CLK(I), enable input buffer for timing feedback */ + { 3, 4, scu_config_normal_drive_t { .mode=3, .epd=0, .epun=1, .ehs=1, .ezi=1, .zif=1 } }, /* SPIFI_SIO3/P82: W25Q80BV.HOLD(IO) */ + { 3, 5, scu_config_normal_drive_t { .mode=3, .epd=0, .epun=1, .ehs=1, .ezi=1, .zif=1 } }, /* SPIFI_SIO2/P81: W25Q80BV.WP(IO) */ + { 3, 6, scu_config_normal_drive_t { .mode=3, .epd=0, .epun=1, .ehs=1, .ezi=1, .zif=1 } }, /* SPIFI_MISO: W25Q80BV.DO(IO) */ + { 3, 7, scu_config_normal_drive_t { .mode=3, .epd=0, .epun=1, .ehs=1, .ezi=1, .zif=1 } }, /* SPIFI_MOSI: W25Q80BV.DI(IO) */ + { 3, 8, scu_config_normal_drive_t { .mode=3, .epd=0, .epun=1, .ehs=1, .ezi=1, .zif=1 } }, /* SPIFI_CS/P68: W25Q80BV.CS(I) */ +} }; + +static void setup_pin(const scu_setup_t& pin_setup) { + LPC_SCU->SFSP[pin_setup.port][pin_setup.pin] = pin_setup.config; +} + +template +void setup_pins(const std::array& pins_setup) { + for(const auto& pin_setup : pins_setup) { + setup_pin(pin_setup); + } +} + +static void configure_spifi(void) { + setup_pins(pins_setup_spifi); + + /* Tweak SPIFI mode */ + LPC_SPIFI->CTRL = + (0xffff << 0) /* Timeout */ + | (0x1 << 16) /* CS high time in "clocks - 1" */ + | (0 << 21) /* 0: Attempt speculative prefetch on data accesses */ + | (0 << 22) /* 0: No interrupt on command ended */ + | (0 << 23) /* 0: SCK driven low after rising edge at which last bit of command is captured. Stays low while CS# is high. */ + | (0 << 27) /* 0: Cache prefetching enabled */ + | (0 << 28) /* 0: Quad protocol, IO3:0 */ + | (1 << 29) /* 1: Read data sampled on falling edge of clock */ + | (1 << 30) /* 1: Read data is sampled using feedback clock from SCK pin */ + | (0 << 31) /* 0: DMA request disabled */ + ; + + /* Throttle up the SPIFI interface to 96MHz (IDIVA=PLL1 / 3) */ + LPC_CGU->IDIVB_CTRL.word = + ( 0 << 0) /* PD */ + | ( 2 << 2) /* IDIV (/3) */ + | ( 1 << 11) /* AUTOBLOCK */ + | ( 9 << 24) /* PLL1 */ + ; +} + +static const motocon_pwm_resources_t motocon_pwm_resources = { + .base = { .clk = &LPC_CGU->BASE_APB1_CLK, .stat = &LPC_CCU1->BASE_STAT, .stat_mask = (1 << 1) }, + .branch = { .cfg = &LPC_CCU1->CLK_APB1_MOTOCON_PWM_CFG, .stat = &LPC_CCU1->CLK_APB1_MOTOCON_PWM_STAT }, + .reset = { .output_index = 38 }, +}; + +static const scu_setup_t pin_setup_vaa_enablex_pwm = { 5, 0, scu_config_normal_drive_t { .mode=1, .epd=0, .epun=1, .ehs=0, .ezi=0, .zif=0 } }; +static const scu_setup_t pin_setup_vaa_enablex_gpio = { 5, 0, scu_config_normal_drive_t { .mode=0, .epd=0, .epun=1, .ehs=0, .ezi=0, .zif=0 } }; + +/* VAA powers: + * MAX5864 analog section. + * MAX2837 registers and other functions. + * RFFC5072 analog section. + * + * Beware that power applied to pins of the MAX2837 may + * show up on VAA and start powering other components on the + * VAA net. So turn on VAA before driving pins from MCU to + * MAX2837. + */ +void vaa_power_on(void) { + /* Very twitchy process for powering up VAA without glitching the 3.3V rail, which can send the + * microcontroller into reset. + * + * Controlling timing while running from SPIFI flash is tricky, hence use of a PWM peripheral... + */ + + /* Configure and enable MOTOCONPWM peripheral clocks. + * Assume IDIVC is running the post-bootloader configuration, outputting 96MHz derived from PLL1. + */ + base_clock_enable(&motocon_pwm_resources.base); + branch_clock_enable(&motocon_pwm_resources.branch); + peripheral_reset(&motocon_pwm_resources.reset); + + /* Combination of pulse duration and duty cycle was arrived at empirically, to keep supply glitching + * to +/- 0.15V. + */ + const uint32_t cycle_period = 128; + const uint32_t enable_period = 10; + LPC_MCPWM->TC2 = 0; + LPC_MCPWM->MAT2 = cycle_period - enable_period; + LPC_MCPWM->LIM2 = cycle_period; + + /* Switch !VAA_ENABLE pin from GPIO to MOTOCONPWM peripheral output, now that the peripheral is configured. */ + setup_pin(pin_setup_vaa_enablex_pwm); // P5_0 /GPIO2[ 9]/MCOB2: !VAA_ENABLE, 10K PU + + /* Start the PWM operation. */ + LPC_MCPWM->CON_SET = (1 << 16); + + /* Wait until VAA rises to approximately 90% of final voltage. */ + /* Timing assumes we're running immediately after the bootloader: 96 MHz from IRC+PLL1 + */ + { volatile uint32_t delay = 12000; while(delay--); } + + /* Hold !VAA_ENABLE active using a GPIO, so we can reclaim and shut down the MOTOCONPWM peripheral. */ + LPC_GPIO->CLR[2] = (1 << 9); // !VAA_ENABLE + LPC_GPIO->DIR[2] |= (1 << 9); + setup_pin(pin_setup_vaa_enablex_gpio); // P5_0 /GPIO2[ 9]/MCOB2: !VAA_ENABLE, 10K PU + + peripheral_reset(&motocon_pwm_resources.reset); + branch_clock_disable(&motocon_pwm_resources.branch); + base_clock_disable(&motocon_pwm_resources.base); +} + +void vaa_power_off(void) { + // TODO: There's a lot of other stuff that must be done to prevent + // leakage from +3V3 into VAA. + LPC_GPIO->W2[9] = 1; +} + +/** + * @brief Early initialization code. + * @details This initialization must be performed just after stack setup + * and before any other initialization. + */ +extern "C" void __early_init(void) { + /* + * Upon exit from bootloader into SPIFI boot mode: + * + * Enabled: + * PLL1: IRC, M=/24, N=/1, P=/1, autoblock, direct = 288 MHz + * IDIVA: IRC /1 = 12 MHz + * IDIVB: PLL1 /9, autoblock = 32 MHz + * IDIVC: PLL1 /3, autoblock = 96 MHz + * IDIVD: IRC /1 = 12 MHz + * IDIVE: IRC /1 = 12 MHz + * BASE_M4_CLK: IDIVC, autoblock + * BASE_SPIFI_CLK: IDIVB, autoblock + * + * Disabled: + * XTAL_OSC + * PLL0USB + * PLL0AUDIO + */ + /* LPC43xx M4 takes about 500 usec to get to __early_init + * Before __early_init, LPC bootloader runs and starts our code. In user code, the process stack + * is initialized, hardware floating point is initialized, and stacks are zeroed, + */ + const uint32_t CORTEX_M4_CPUID = 0x410fc240; + const uint32_t CORTEX_M4_CPUID_MASK = 0xff0ffff0; + + if( (SCB->CPUID & CORTEX_M4_CPUID_MASK) == CORTEX_M4_CPUID ) { + /* Enable unaligned exception handler */ + SCB_CCR |= (1 << 3); + + /* Enable MemManage, BusFault, UsageFault exception handlers */ + SCB_SHCSR |= (1 << 18) | (1 << 17) | (1 << 16); + + /* "The reset delay is counted in IRC clock cycles. If the core frequency + * CCLK is much higher than the IRC frequency, add a software delay of + * fCCLK/fIRC clock cycles between resetting and accessing any of the + * peripheral blocks." + */ + + /* Don't reset these peripherals, as they're operating during initialization: + * WWDT, CREG, SCU, SPIFI + */ + LPC_RGU->RESET_CTRL[0] = + (1U << 16) // LCD_RST + | (1U << 17) // USB0_RST + | (1U << 18) // USB1_RST + | (1U << 19) // DMA_RST + | (1U << 20) // SDIO_RST + | (1U << 21) // EMC_RST + | (1U << 22) // ETHERNET_RST + | (1U << 28) // GPIO_RST + ; + LPC_RGU->RESET_CTRL[1] = + (1U << 0) // TIMER0_RST + | (1U << 1) // TIMER1_RST + | (1U << 2) // TIMER2_RST + | (1U << 3) // TIMER3_RST + | (1U << 4) // RITIMER_RST + | (1U << 5) // SCT_RST + | (1U << 6) // MOTOCONPWM_RST + | (1U << 7) // QEI_RST + | (1U << 8) // ADC0_RST + | (1U << 9) // ADC1_RST + | (1U << 10) // DAC_RST + | (1U << 12) // UART0_RST + | (1U << 13) // UART1_RST + | (1U << 14) // UART2_RST + | (1U << 15) // UART3_RST + | (1U << 16) // I2C0_RST + | (1U << 17) // I2C1_RST + | (1U << 18) // SSP0_RST + | (1U << 19) // SSP1_RST + | (1U << 20) // I2S_RST + | (1U << 22) // CAN1_RST + | (1U << 23) // CAN0_RST + | (1U << 24) // M0APP_RST + | (1U << 25) // SGPIO_RST + | (1U << 26) // SPI_RST + | (1U << 28) // ADCHS_RST + ; + + configure_spifi(); + + LPC_CCU1->CLK_M4_M0APP_CFG.RUN = true; + LPC_CREG->M0APPMEMMAP = LPC_SPIFI_DATA_CACHED_BASE + 0x0; + LPC_RGU->RESET_CTRL[1] = 0; + + /* Prevent the M4 from doing any more initializing by sleep-waiting forever... + * ...until the M0 resets the M4 with some code to run. + */ + while(1) { + __WFE(); + } + } +} + +extern "C" void __late_init(void) { + /* + * System initializations. + * - HAL initialization, this also initializes the configured device drivers + * and performs the board-specific initializations. + * - Kernel initialization, the main() function becomes a thread and the + * RTOS is active. + */ + halInit(); + + /* After this call, scheduler, systick, heap, etc. are available. */ + /* By doing chSysInit() here, it runs before C++ constructors, which may + * require the heap. + */ + chSysInit(); +} + +/** + * @brief Board-specific initialization code. + * @todo Add your board-specific code, if any. + */ +extern "C" void boardInit(void) { + vaa_power_on(); +} + +extern "C" void _default_exit(void) { + vaa_power_off(); + + chSysDisable(); + + systick_stop(); + + /* Don't reset these peripherals, as they're operating during shutdown: + * WWDT, CREG, SCU, SPIFI, GPIO, M0APP + */ + LPC_RGU->RESET_CTRL[0] = + (1U << 16) // LCD_RST + | (1U << 17) // USB0_RST + | (1U << 18) // USB1_RST + | (1U << 19) // DMA_RST + | (1U << 20) // SDIO_RST + | (1U << 21) // EMC_RST + | (1U << 22) // ETHERNET_RST + //| (1U << 28) // GPIO_RST + ; + LPC_RGU->RESET_CTRL[1] = + (1U << 0) // TIMER0_RST + | (1U << 1) // TIMER1_RST + | (1U << 2) // TIMER2_RST + | (1U << 3) // TIMER3_RST + | (1U << 4) // RITIMER_RST + | (1U << 5) // SCT_RST + | (1U << 6) // MOTOCONPWM_RST + | (1U << 7) // QEI_RST + | (1U << 8) // ADC0_RST + | (1U << 9) // ADC1_RST + | (1U << 10) // DAC_RST + | (1U << 12) // UART0_RST + | (1U << 13) // UART1_RST + | (1U << 14) // UART2_RST + | (1U << 15) // UART3_RST + | (1U << 16) // I2C0_RST + | (1U << 17) // I2C1_RST + | (1U << 18) // SSP0_RST + | (1U << 19) // SSP1_RST + | (1U << 20) // I2S_RST + | (1U << 22) // CAN1_RST + | (1U << 23) // CAN0_RST + //| (1U << 24) // M0APP_RST + | (1U << 25) // SGPIO_RST + | (1U << 26) // SPI_RST + | (1U << 28) // ADCHS_RST + ; +} diff --git a/firmware/chibios-portapack/boards/PORTAPACK_APPLICATION/board.h b/firmware/chibios-portapack/boards/PORTAPACK_APPLICATION/board.h new file mode 100755 index 000000000..c65fa732e --- /dev/null +++ b/firmware/chibios-portapack/boards/PORTAPACK_APPLICATION/board.h @@ -0,0 +1,45 @@ +/* + ChibiOS/RT - Copyright (C) 2006-2013 Giovanni Di Sirio + Copyright (C) 2014 Jared Boone, ShareBrained Technology + + 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. +*/ + +#ifndef _BOARD_H_ +#define _BOARD_H_ + +/* + * Setup for PortaPack application running on M4, which then bootstaps the M0, + * which then runs the application firmware and user interface. + */ + +/* + * Board identifiers. + */ +#define BOARD_PORTAPACK_APPLICATION +#define BOARD_NAME "PortaPack Application" + +#if !defined(_FROM_ASM_) +#ifdef __cplusplus +extern "C" { +#endif + void boardInit(void); + + void vaa_power_on(void); + void vaa_power_off(void); +#ifdef __cplusplus +} +#endif +#endif /* _FROM_ASM_ */ + +#endif /* _BOARD_H_ */ diff --git a/firmware/chibios-portapack/boards/PORTAPACK_APPLICATION/board.mk b/firmware/chibios-portapack/boards/PORTAPACK_APPLICATION/board.mk new file mode 100755 index 000000000..ffc99ef35 --- /dev/null +++ b/firmware/chibios-portapack/boards/PORTAPACK_APPLICATION/board.mk @@ -0,0 +1,5 @@ +# List of all the board related files. +BOARDSRC = ${CHIBIOS_PORTAPACK}/boards/PORTAPACK_APPLICATION/board.cpp + +# Required include directories +BOARDINC = ${CHIBIOS_PORTAPACK}/boards/PORTAPACK_APPLICATION \ No newline at end of file diff --git a/firmware/chibios-portapack/boards/PORTAPACK_BASEBAND/board.c b/firmware/chibios-portapack/boards/PORTAPACK_BASEBAND/board.c new file mode 100644 index 000000000..f323da366 --- /dev/null +++ b/firmware/chibios-portapack/boards/PORTAPACK_BASEBAND/board.c @@ -0,0 +1,26 @@ +/* + ChibiOS/RT - Copyright (C) 2006-2013 Giovanni Di Sirio + Copyright (C) 2014 Jared Boone, ShareBrained Technology + + 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. +*/ + +#include "ch.h" +#include "hal.h" + +/** + * @brief Board-specific initialization code. + * @todo Add your board-specific code, if any. + */ +void boardInit(void) { +} diff --git a/firmware/chibios-portapack/boards/PORTAPACK_BASEBAND/board.cmake b/firmware/chibios-portapack/boards/PORTAPACK_BASEBAND/board.cmake new file mode 100644 index 000000000..eca1bccb2 --- /dev/null +++ b/firmware/chibios-portapack/boards/PORTAPACK_BASEBAND/board.cmake @@ -0,0 +1,9 @@ +# List of all the board related files. +set(BOARDSRC + ${CHIBIOS_PORTAPACK}/boards/PORTAPACK_BASEBAND/board.c +) + +# Required include directories +set(BOARDINC + ${CHIBIOS_PORTAPACK}/boards/PORTAPACK_BASEBAND +) diff --git a/firmware/chibios-portapack/boards/GSG_HACKRF_ONE/board.h b/firmware/chibios-portapack/boards/PORTAPACK_BASEBAND/board.h old mode 100755 new mode 100644 similarity index 75% rename from firmware/chibios-portapack/boards/GSG_HACKRF_ONE/board.h rename to firmware/chibios-portapack/boards/PORTAPACK_BASEBAND/board.h index dca1d0698..3fb379885 --- a/firmware/chibios-portapack/boards/GSG_HACKRF_ONE/board.h +++ b/firmware/chibios-portapack/boards/PORTAPACK_BASEBAND/board.h @@ -1,41 +1,42 @@ -/* - ChibiOS/RT - Copyright (C) 2006-2013 Giovanni Di Sirio - Copyright (C) 2014 Jared Boone, ShareBrained Technology - - 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. -*/ - -#ifndef _BOARD_H_ -#define _BOARD_H_ - -/* - * Setup for Great Scott Gadgets HackRF One - */ - -/* - * Board identifiers. - */ -#define BOARD_GSG_HACKRF_ONE -#define BOARD_NAME "Great Scott Gadgets HackRF One" - -#if !defined(_FROM_ASM_) -#ifdef __cplusplus -extern "C" { -#endif - void boardInit(void); -#ifdef __cplusplus -} -#endif -#endif /* _FROM_ASM_ */ - -#endif /* _BOARD_H_ */ +/* + ChibiOS/RT - Copyright (C) 2006-2013 Giovanni Di Sirio + Copyright (C) 2018 Jared Boone, ShareBrained Technology + + 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. +*/ + +#ifndef _BOARD_H_ +#define _BOARD_H_ + +/* + * Setup for PortaPack application running on M4, which then bootstaps the M0, + * which then runs the application firmware and user interface. + */ + +/* + * Board identifiers. + */ +#define BOARD_PORTAPACK_BASEBAND +#define BOARD_NAME "PortaPack Baseband" + +#if !defined(_FROM_ASM_) +#ifdef __cplusplus +extern "C" { +#endif + void boardInit(void); +#ifdef __cplusplus +} +#endif +#endif /* _FROM_ASM_ */ + +#endif /* _BOARD_H_ */ diff --git a/firmware/chibios-portapack/boards/PORTAPACK_BASEBAND/board.mk b/firmware/chibios-portapack/boards/PORTAPACK_BASEBAND/board.mk new file mode 100644 index 000000000..17ba6d120 --- /dev/null +++ b/firmware/chibios-portapack/boards/PORTAPACK_BASEBAND/board.mk @@ -0,0 +1,5 @@ +# List of all the board related files. +BOARDSRC = ${CHIBIOS_PORTAPACK}/boards/PORTAPACK_BASEBAND/board.c + +# Required include directories +BOARDINC = ${CHIBIOS_PORTAPACK}/boards/PORTAPACK_BASEBAND \ No newline at end of file diff --git a/firmware/chibios-portapack/os/hal/platforms/LPC43xx/adc_lld.h b/firmware/chibios-portapack/os/hal/platforms/LPC43xx/adc_lld.h index d54de6ee7..4c890c361 100644 --- a/firmware/chibios-portapack/os/hal/platforms/LPC43xx/adc_lld.h +++ b/firmware/chibios-portapack/os/hal/platforms/LPC43xx/adc_lld.h @@ -98,13 +98,6 @@ /** * @brief Structure used for ADC configuration. */ -typedef struct { - base_clock_regs_t base; - branch_clock_regs_t branch; - peripheral_reset_t reset; - interrupt_config_t interrupt; -} adc_resources_t; - typedef LPC_ADCx_Type* ADC_TypeDef; /** diff --git a/firmware/chibios-portapack/os/hal/platforms/LPC43xx/gpt_lld.h b/firmware/chibios-portapack/os/hal/platforms/LPC43xx/gpt_lld.h index d75d3c2b3..a459e2150 100644 --- a/firmware/chibios-portapack/os/hal/platforms/LPC43xx/gpt_lld.h +++ b/firmware/chibios-portapack/os/hal/platforms/LPC43xx/gpt_lld.h @@ -135,15 +135,6 @@ /* Driver data structures and types. */ /*===========================================================================*/ -/** - * @brief Structure used for Timer configuration. - */ -typedef struct { - branch_clock_regs_t branch; - peripheral_reset_t reset; - interrupt_config_t interrupt; -} timer_resources_t; - /** * @brief GPT frequency type. */ diff --git a/firmware/chibios-portapack/os/hal/platforms/LPC43xx/i2c_lld.h b/firmware/chibios-portapack/os/hal/platforms/LPC43xx/i2c_lld.h index 1f21766fe..6eb00efd8 100644 --- a/firmware/chibios-portapack/os/hal/platforms/LPC43xx/i2c_lld.h +++ b/firmware/chibios-portapack/os/hal/platforms/LPC43xx/i2c_lld.h @@ -99,12 +99,6 @@ /** * @brief Structure used for I2C configuration. */ -typedef struct { - base_clock_regs_t base; - branch_clock_regs_t branch; - peripheral_reset_t reset; -} i2c_resources_t; - typedef LPC_I2Cx_Type* I2C_TypeDef; /** diff --git a/firmware/chibios-portapack/os/hal/platforms/LPC43xx/lpc43xx.h b/firmware/chibios-portapack/os/hal/platforms/LPC43xx/lpc43xx.h index 18bc398c6..81e0ce4b0 100644 --- a/firmware/chibios-portapack/os/hal/platforms/LPC43xx/lpc43xx.h +++ b/firmware/chibios-portapack/os/hal/platforms/LPC43xx/lpc43xx.h @@ -37,6 +37,224 @@ typedef struct { uint32_t priority_mask; } interrupt_config_t; +typedef struct { + uint32_t data; + uint32_t dir; +} gpio_setup_t; + +struct scu_config_normal_drive_t { + uint16_t mode; + uint16_t epd; + uint16_t epun; + uint16_t ehs; + uint16_t ezi; + uint16_t zif; +}; + +struct scu_config_sfsi2c0_t { + uint16_t scl_efp; + uint16_t scl_ehd; + uint16_t scl_ezi; + uint16_t scl_zif; + uint16_t sda_efp; + uint16_t sda_ehd; + uint16_t sda_ezi; + uint16_t sda_zif; +}; + +struct scu_config_t { +#ifdef __cplusplus + scu_config_t() = delete; + scu_config_t(const scu_config_t&) = delete; + scu_config_t(scu_config_t&) = delete; + + constexpr scu_config_t( + uint16_t value + ) : + word(value) + { + } + + constexpr scu_config_t( + const scu_config_normal_drive_t config + ) : + word( + ((config.mode & 7) << 0) + | ((config.epd & 1) << 3) + | ((config.epun & 1) << 4) + | ((config.ehs & 1) << 5) + | ((config.ezi & 1) << 6) + | ((config.zif & 1) << 7) + ) + { + } + + constexpr scu_config_t( + const scu_config_sfsi2c0_t config + ) : + word( + ((config.scl_efp & 1) << 0) + | ((config.scl_ehd & 1) << 2) + | ((config.scl_ezi & 1) << 3) + | ((config.scl_zif & 1) << 7) + | ((config.sda_efp & 1) << 8) + | ((config.sda_ehd & 1) << 10) + | ((config.sda_ezi & 1) << 11) + | ((config.sda_zif & 1) << 15) + ) + { + } + + constexpr operator uint32_t() const { + return word; + } + +private: +#endif + uint16_t word; +}; + +#ifndef __cplusplus +typedef struct scu_config_t scu_config_t; +#endif + +typedef struct { + uint8_t port; + uint8_t pin; + scu_config_t config; +} scu_setup_t; + +typedef struct { + base_clock_regs_t base; + branch_clock_regs_t branch; + peripheral_reset_t reset; + interrupt_config_t interrupt; +} adc_resources_t; + +typedef struct { + base_clock_regs_t base; + branch_clock_regs_t branch; +} audio_clock_resources_t; + +typedef struct { + base_clock_regs_t base; + branch_clock_regs_t branch; + peripheral_reset_t reset; +} gpdma_resources_t; + +typedef struct { + base_clock_regs_t base; + branch_clock_regs_t branch; + peripheral_reset_t reset; +} i2c_resources_t; + +typedef struct { + base_clock_regs_t base; + branch_clock_regs_t branch; + peripheral_reset_t reset[2]; +} i2s_resources_t; + +typedef struct { + base_clock_regs_t base; + branch_clock_regs_t branch; + peripheral_reset_t reset; +} motocon_pwm_resources_t; + +typedef struct { + base_clock_regs_t base; + branch_clock_regs_t branch_register_if; + branch_clock_regs_t branch_peripheral; + peripheral_reset_t reset; + interrupt_config_t interrupt; +} sdio_resources_t; + +typedef struct { + base_clock_regs_t base; + branch_clock_regs_t branch; + peripheral_reset_t reset; +} sgpio_resources_t; + +typedef struct { + base_clock_regs_t base; + branch_clock_regs_t branch_register_if; + branch_clock_regs_t branch_peripheral; + peripheral_reset_t reset; +} ssp_resources_t; + +typedef struct { + branch_clock_regs_t branch; + peripheral_reset_t reset; + interrupt_config_t interrupt; +} timer_resources_t; + +typedef struct { + base_clock_regs_t base; + branch_clock_regs_t branch_register_if; + branch_clock_regs_t branch_peripheral; + peripheral_reset_t reset; + interrupt_config_t interrupt; +} uart_resources_t; + +static const base_clock_regs_t base_clock_apb3 = { + .clk = &LPC_CGU->BASE_APB3_CLK, .stat = &LPC_CCU1->BASE_STAT, .stat_mask = (1 << 0), +}; + +static const base_clock_regs_t base_clock_apb1 = { + .clk = &LPC_CGU->BASE_APB1_CLK, .stat = &LPC_CCU1->BASE_STAT, .stat_mask = (1 << 1), +}; + +static const base_clock_regs_t base_clock_spifi = { + .clk = &LPC_CGU->BASE_SPIFI_CLK, .stat = &LPC_CCU1->BASE_STAT, .stat_mask = (1 << 2), +}; + +static const base_clock_regs_t base_clock_m4 = { + .clk = &LPC_CGU->BASE_M4_CLK, .stat = &LPC_CCU1->BASE_STAT, .stat_mask = (1 << 3), +}; + +static const base_clock_regs_t base_clock_periph = { + .clk = &LPC_CGU->BASE_PERIPH_CLK, .stat = &LPC_CCU1->BASE_STAT, .stat_mask = (1 << 6), +}; + +static const base_clock_regs_t base_clock_usb0 = { + .clk = &LPC_CGU->BASE_USB0_CLK, .stat = &LPC_CCU1->BASE_STAT, .stat_mask = (1 << 7), +}; + +static const base_clock_regs_t base_clock_usb1 = { + .clk = &LPC_CGU->BASE_USB1_CLK, .stat = &LPC_CCU1->BASE_STAT, .stat_mask = (1 << 8), +}; + +static const base_clock_regs_t base_clock_spi = { + .clk = &LPC_CGU->BASE_SPI_CLK, .stat = &LPC_CCU1->BASE_STAT, .stat_mask = (1 << 9), +}; + +static const base_clock_regs_t base_clock_uart3 = { + .clk = &LPC_CGU->BASE_UART3_CLK, .stat = &LPC_CCU2->BASE_STAT, .stat_mask = (1 << 1), +}; + +static const base_clock_regs_t base_clock_uart2 = { + .clk = &LPC_CGU->BASE_UART2_CLK, .stat = &LPC_CCU2->BASE_STAT, .stat_mask = (1 << 2), +}; + +static const base_clock_regs_t base_clock_uart1 = { + .clk = &LPC_CGU->BASE_UART1_CLK, .stat = &LPC_CCU2->BASE_STAT, .stat_mask = (1 << 3), +}; + +static const base_clock_regs_t base_clock_uart0 = { + .clk = &LPC_CGU->BASE_UART0_CLK, .stat = &LPC_CCU2->BASE_STAT, .stat_mask = (1 << 4), +}; + +static const base_clock_regs_t base_clock_ssp1 = { + .clk = &LPC_CGU->BASE_SSP1_CLK, .stat = &LPC_CCU2->BASE_STAT, .stat_mask = (1 << 5), +}; + +static const base_clock_regs_t base_clock_ssp0 = { + .clk = &LPC_CGU->BASE_SSP0_CLK, .stat = &LPC_CCU2->BASE_STAT, .stat_mask = (1 << 6), +}; + +#ifdef __cplusplus +extern "C" { +#endif + void peripheral_reset(const peripheral_reset_t* const reset); void base_clock_enable(const base_clock_regs_t* const base); @@ -48,4 +266,8 @@ void branch_clock_disable(const branch_clock_regs_t* const branch); void interrupt_enable(const interrupt_config_t* const interrupt); void interrupt_disable(const interrupt_config_t* const interrupt); +#ifdef __cplusplus +} +#endif + #endif /* _LPC43XX_H_ */ diff --git a/firmware/chibios-portapack/os/hal/platforms/LPC43xx/pal_lld.c b/firmware/chibios-portapack/os/hal/platforms/LPC43xx/pal_lld.c index 16202b15c..71c65a24b 100644 --- a/firmware/chibios-portapack/os/hal/platforms/LPC43xx/pal_lld.c +++ b/firmware/chibios-portapack/os/hal/platforms/LPC43xx/pal_lld.c @@ -40,74 +40,10 @@ /* Driver local variables and types. */ /*===========================================================================*/ -static const scu_config_t pin_config_vaa_enablex_pwm = { .MODE=1, .EPD=0, .EPUN=1, .EHS=0, .EZI=0, .ZIF=0 }; -static const scu_config_t pin_config_vaa_enablex_gpio = { .MODE=0, .EPD=0, .EPUN=1, .EHS=0, .EZI=0, .ZIF=0 }; - /*===========================================================================*/ /* Driver local functions. */ /*===========================================================================*/ - -/* VAA powers: - * MAX5864 analog section. - * MAX2837 registers and other functions. - * RFFC5072 analog section. - * - * Beware that power applied to pins of the MAX2837 may - * show up on VAA and start powering other components on the - * VAA net. So turn on VAA before driving pins from MCU to - * MAX2837. - */ -static void vaa_power_on(void) { - /* Very twitchy process for powering up VAA without glitching the 3.3V rail, which can send the - * microcontroller into reset. - * - * Controlling timing while running from SPIFI flash is tricky, hence use of a PWM peripheral... - */ - - /* Configure and enable MOTOCONPWM peripheral clocks. - * Assume IDIVC is running the post-bootloader configuration, outputting 96MHz derived from PLL1. - */ - LPC_CCU1->CLK_APB1_MOTOCON_PWM_CFG.RUN = true; - - /* Combination of pulse duration and duty cycle was arrived at empirically, to keep supply glitching - * to +/- 0.15V. - */ - const uint32_t cycle_period = 128; - const uint32_t enable_period = 10; - LPC_MCPWM->TC2 = 0; - LPC_MCPWM->MAT2 = cycle_period - enable_period; - LPC_MCPWM->LIM2 = cycle_period; - - /* Switch !VAA_ENABLE pin from GPIO to MOTOCONPWM peripheral output, now that the peripheral is configured. */ - LPC_SCU->SFSP[5][ 0] = pin_config_vaa_enablex_pwm.word; // P5_0 /GPIO2[ 9]/MCOB2: !VAA_ENABLE, 10K PU - - /* Start the PWM operation. */ - LPC_MCPWM->CON_SET = (1 << 16); - - /* Wait until VAA rises to approximately 90% of final voltage. */ - /* Timing assumes we're running immediately after the bootloader: 96 MHz from IRC+PLL1 - */ - { volatile uint32_t delay = 12000; while(delay--); } - - /* Hold !VAA_ENABLE active using a GPIO, so we can reclaim and shut down the MOTOCONPWM peripheral. */ - LPC_GPIO->CLR[2] = (1 << 9); // !VAA_ENABLE - LPC_GPIO->DIR[2] |= (1 << 9); - LPC_SCU->SFSP[5][ 0] = pin_config_vaa_enablex_gpio.word; // P5_0 /GPIO2[ 9]/MCOB2: !VAA_ENABLE, 10K PU - - /* Reset the MOTOCONPWM peripheral. */ - LPC_RGU->RESET_CTRL[1] = (1U << 6); - - /* Shut down the MOTOCONPWM clocks. */ - LPC_CCU1->CLK_APB1_MOTOCON_PWM_CFG.RUN = false; -} - -static void vaa_power_off(void) { - // TODO: There's a lot of other stuff that must be done to prevent - // leakage from +3V3 into VAA. - LPC_GPIO->W2[9] = 1; -} - /*===========================================================================*/ /* Driver interrupt handlers. */ /*===========================================================================*/ @@ -135,8 +71,6 @@ void _pal_lld_init(const PALConfig *config) { for(size_t i=0; iSCU); i++) { LPC_SCU->SFSP[config->SCU[i].port][config->SCU[i].pin] = config->SCU[i].config.word; } - - vaa_power_on(); } /** diff --git a/firmware/chibios-portapack/os/hal/platforms/LPC43xx/pal_lld.h b/firmware/chibios-portapack/os/hal/platforms/LPC43xx/pal_lld.h index f1537b563..925c60f9a 100644 --- a/firmware/chibios-portapack/os/hal/platforms/LPC43xx/pal_lld.h +++ b/firmware/chibios-portapack/os/hal/platforms/LPC43xx/pal_lld.h @@ -41,37 +41,6 @@ /* I/O Ports Types and constants. */ /*===========================================================================*/ -/** - * @brief GPIO port setup info. - */ -typedef struct { - /** Initial value for FIO_PIN register.*/ - uint32_t data; - /** Initial value for FIO_DIR register.*/ - uint32_t dir; -} gpio_setup_t; - -typedef struct { - union { - struct { - uint16_t MODE : 3; - uint16_t EPD : 1; - uint16_t EPUN : 1; - uint16_t EHS : 1; - uint16_t EZI : 1; - uint16_t ZIF : 1; - uint16_t RESERVED0 : 8; - }; - uint16_t word; - }; -} scu_config_t; - -typedef struct { - uint8_t port; - uint8_t pin; - scu_config_t config; -} scu_setup_t; - /** * @brief Generic I/O ports static initializer. * @details An instance of this structure must be passed to @p palInit() at diff --git a/firmware/chibios-portapack/os/hal/platforms/LPC43xx/sdc_lld.h b/firmware/chibios-portapack/os/hal/platforms/LPC43xx/sdc_lld.h index 813b3b78e..596dfcb37 100644 --- a/firmware/chibios-portapack/os/hal/platforms/LPC43xx/sdc_lld.h +++ b/firmware/chibios-portapack/os/hal/platforms/LPC43xx/sdc_lld.h @@ -76,17 +76,6 @@ /* Driver data structures and types. */ /*===========================================================================*/ -/** - * @brief Structure used for SDIO configuration. - */ -typedef struct { - base_clock_regs_t base; - branch_clock_regs_t branch_register_if; - branch_clock_regs_t branch_peripheral; - peripheral_reset_t reset; - interrupt_config_t interrupt; -} sdio_resources_t; - /** * @brief Type of SDIO bus mode. */ diff --git a/firmware/chibios-portapack/os/hal/platforms/LPC43xx/serial_lld.c b/firmware/chibios-portapack/os/hal/platforms/LPC43xx/serial_lld.c index b8c8383bd..bb7c8590a 100755 --- a/firmware/chibios-portapack/os/hal/platforms/LPC43xx/serial_lld.c +++ b/firmware/chibios-portapack/os/hal/platforms/LPC43xx/serial_lld.c @@ -69,7 +69,7 @@ static const uart_resources_t usart0_resources = { .branch_register_if = { .cfg = &LPC_CCU1->CLK_M4_USART0_CFG, .stat = &LPC_CCU1->CLK_M4_USART0_STAT }, .branch_peripheral = { .cfg = &LPC_CCU2->CLK_APB0_USART0_CFG, .stat = &LPC_CCU2->CLK_APB0_USART0_STAT }, .reset = { .output_index = 44 }, - .interrupt = { .irq = USART0_IRQn, priority_mask = CORTEX_PRIORITY_MASK(LPC_SERIAL_USART0_IRQ_PRIORITY) }, + .interrupt = { .irq = USART0_IRQn, .priority_mask = CORTEX_PRIORITY_MASK(LPC_SERIAL_USART0_IRQ_PRIORITY) }, }; #endif #if LPC_SERIAL_USE_UART1 @@ -78,7 +78,7 @@ static const uart_resources_t uart1_resources = { .branch_register_if = { .cfg = &LPC_CCU1->CLK_M4_UART1_CFG, .stat = &LPC_CCU1->CLK_M4_UART1_STAT }, .branch_peripheral = { .cfg = &LPC_CCU2->CLK_APB0_UART1_CFG, .stat = &LPC_CCU2->CLK_APB0_UART1_STAT }, .reset = { .output_index = 45 }, - .interrupt = { .irq = UART1_IRQn, priority_mask = CORTEX_PRIORITY_MASK(LPC_SERIAL_UART1_IRQ_PRIORITY) }, + .interrupt = { .irq = UART1_IRQn, .priority_mask = CORTEX_PRIORITY_MASK(LPC_SERIAL_UART1_IRQ_PRIORITY) }, }; #endif #if LPC_SERIAL_USE_USART2 @@ -88,10 +88,10 @@ static const uart_resources_t usart2_resources = { .branch_peripheral = { .cfg = &LPC_CCU2->CLK_APB2_USART2_CFG, .stat = &LPC_CCU2->CLK_APB2_USART2_STAT }, .reset = { .output_index = 46 }, #if defined(LPC43XX_M4) - .interrupt = { .irq = USART2_IRQn, priority_mask = CORTEX_PRIORITY_MASK(LPC_SERIAL_USART2_IRQ_PRIORITY) }, + .interrupt = { .irq = USART2_IRQn, .priority_mask = CORTEX_PRIORITY_MASK(LPC_SERIAL_USART2_IRQ_PRIORITY) }, #endif #if defined(LPC43XX_M0) - .interrupt = { .irq = USART2_OR_C_CAN1_IRQn, priority_mask = CORTEX_PRIORITY_MASK(LPC_SERIAL_USART2_IRQ_PRIORITY) }, + .interrupt = { .irq = USART2_OR_C_CAN1_IRQn, .priority_mask = CORTEX_PRIORITY_MASK(LPC_SERIAL_USART2_IRQ_PRIORITY) }, #endif }; #endif @@ -101,7 +101,7 @@ static const uart_resources_t usart3_resources = { .branch_register_if = { .cfg = &LPC_CCU1->CLK_M4_USART3_CFG, .stat = &LPC_CCU1->CLK_M4_USART3_STAT }, .branch_peripheral = { .cfg = &LPC_CCU2->CLK_APB2_USART3_CFG, .stat = &LPC_CCU2->CLK_APB2_USART3_STAT }, .reset = { .output_index = 47 }, - .interrupt = { .irq = USART3_IRQn, priority_mask = CORTEX_PRIORITY_MASK(LPC_SERIAL_USART3_IRQ_PRIORITY) }, + .interrupt = { .irq = USART3_IRQn, .priority_mask = CORTEX_PRIORITY_MASK(LPC_SERIAL_USART3_IRQ_PRIORITY) }, }; #endif @@ -438,7 +438,7 @@ void sd_lld_start(SerialDriver *sdp, const SerialConfig *config) { void sd_lld_stop(SerialDriver *sdp) { if (sdp->state == SD_READY) { - uart_deinit(&sdp->uart); + uart_deinit(sdp->uart); interrupt_disable(&sdp->resources->interrupt); peripheral_reset(&sdp->resources->reset); branch_clock_disable(&sdp->resources->branch_peripheral); diff --git a/firmware/chibios-portapack/os/hal/platforms/LPC43xx/serial_lld.h b/firmware/chibios-portapack/os/hal/platforms/LPC43xx/serial_lld.h index 92a59cfb9..9ab9a03ac 100755 --- a/firmware/chibios-portapack/os/hal/platforms/LPC43xx/serial_lld.h +++ b/firmware/chibios-portapack/os/hal/platforms/LPC43xx/serial_lld.h @@ -260,14 +260,6 @@ /** * @brief Structure used for UART configuration. */ -typedef struct { - base_clock_regs_t base; - branch_clock_regs_t branch_register_if; - branch_clock_regs_t branch_peripheral; - peripheral_reset_t reset; - interrupt_config_t interrupt; -} uart_resources_t; - /** * @brief LPC Serial Driver configuration structure. * @details An instance of this structure must be passed to @p sdStart() @@ -307,7 +299,7 @@ typedef struct { /* Pointer to the UART registers block.*/ \ LPC_USART_Type *uart; \ /* Pointer to the non-peripheral SSP resources.*/ \ - const ssp_resources_t * resources; + const uart_resources_t * resources; /*===========================================================================*/ /* Driver macros. */ diff --git a/firmware/chibios-portapack/os/hal/platforms/LPC43xx/spi_lld.h b/firmware/chibios-portapack/os/hal/platforms/LPC43xx/spi_lld.h index 6af29de7d..9fb0193ec 100644 --- a/firmware/chibios-portapack/os/hal/platforms/LPC43xx/spi_lld.h +++ b/firmware/chibios-portapack/os/hal/platforms/LPC43xx/spi_lld.h @@ -220,16 +220,6 @@ /* Driver data structures and types. */ /*===========================================================================*/ -/** - * @brief Structure used for SSP configuration. - */ -typedef struct { - base_clock_regs_t base; - branch_clock_regs_t branch_register_if; - branch_clock_regs_t branch_peripheral; - peripheral_reset_t reset; -} ssp_resources_t; - /** * @brief Type of a structure representing an SPI driver. */ diff --git a/firmware/chibios-portapack/os/hal/platforms/LPC43xx_M4/hal_lld.c b/firmware/chibios-portapack/os/hal/platforms/LPC43xx_M4/hal_lld.c index 97c6f8baa..a8d7d12df 100755 --- a/firmware/chibios-portapack/os/hal/platforms/LPC43xx_M4/hal_lld.c +++ b/firmware/chibios-portapack/os/hal/platforms/LPC43xx_M4/hal_lld.c @@ -77,8 +77,10 @@ void systick_adjust_period(const uint32_t counts_per_tick) { * @notapi */ void hal_lld_init(void) { +#if defined(LPC43XX_M4_CLK_SRC) LPC_CGU->BASE_M4_CLK.AUTOBLOCK = 1; LPC_CGU->BASE_M4_CLK.CLK_SEL = LPC43XX_M4_CLK_SRC; +#endif /* SysTick initialization using the system clock.*/ systick_adjust_period(halLPCGetSystemClock() / CH_FREQUENCY - 1); diff --git a/firmware/chibios-portapack/os/ports/GCC/ARMCMx/LPC43xx_M0/ld/LPC43xx_M0.ld b/firmware/chibios-portapack/os/ports/GCC/ARMCMx/LPC43xx_M0/ld/LPC43xx_M0.ld index 48a4a6976..6e43abe26 100755 --- a/firmware/chibios-portapack/os/ports/GCC/ARMCMx/LPC43xx_M0/ld/LPC43xx_M0.ld +++ b/firmware/chibios-portapack/os/ports/GCC/ARMCMx/LPC43xx_M0/ld/LPC43xx_M0.ld @@ -23,8 +23,8 @@ __process_stack_size__ = 0x1000; /* main() stack */ MEMORY { - flash : org = 0x00000000, len = 512k /* SPIFI flash @ 0x140????? */ - ram : org = 0x20000000, len = 64k /* AHB SRAM @ 0x20000000 */ + flash (rx) : org = 0x00000000, len = 1024k /* SPIFI flash @ 0x140????? */ + ram (rwx) : org = 0x20000000, len = 64k /* AHB SRAM @ 0x20000000 */ } __ram_start__ = ORIGIN(ram); @@ -127,6 +127,8 @@ SECTIONS PROVIDE(_edata = .); } > ram + _textend = LOADADDR(.data) + SIZEOF(.data); + .bss ALIGN(4) : ALIGN(4) { . = ALIGN(4); diff --git a/firmware/chibios-portapack/os/ports/GCC/ARMCMx/LPC43xx_M4/ld/LPC43xx_M4.ld b/firmware/chibios-portapack/os/ports/GCC/ARMCMx/LPC43xx_M4/ld/LPC43xx_M4.ld index 6a9bdea90..6eb411753 100755 --- a/firmware/chibios-portapack/os/ports/GCC/ARMCMx/LPC43xx_M4/ld/LPC43xx_M4.ld +++ b/firmware/chibios-portapack/os/ports/GCC/ARMCMx/LPC43xx_M4/ld/LPC43xx_M4.ld @@ -23,8 +23,8 @@ __process_stack_size__ = 0x1000; /* main() stack */ MEMORY { - flash : org = 0x00000000, len = 32752 /* Local SRAM @ 0x10080000 */ - ram : org = 0x10000000, len = 96k /* Local SRAM @ 0x10000000 */ + flash (rx) : org = 0x00000000, len = 32752 /* Local SRAM @ 0x10080000 */ + ram (rwx) : org = 0x10000000, len = 96k /* Local SRAM @ 0x10000000 */ } __ram_start__ = ORIGIN(ram); @@ -127,6 +127,8 @@ SECTIONS PROVIDE(_edata = .); } > ram + _textend = LOADADDR(.data) + SIZEOF(.data); + .bss ALIGN(4) : ALIGN(4) { . = ALIGN(4); diff --git a/firmware/common/baseband_sgpio.cpp b/firmware/common/baseband_sgpio.cpp index 2dc34cbe4..1177a4c07 100644 --- a/firmware/common/baseband_sgpio.cpp +++ b/firmware/common/baseband_sgpio.cpp @@ -135,9 +135,9 @@ enum { PIN_DISABLE = 10, PIN_DIRECTION = 11, PIN_INVERT = 12, - PIN_DECIM0 = 13, - PIN_DECIM1 = 14, - PIN_DECIM2 = 15, + PIN_SYNC_EN = 13, + PIN_P81 = 14, + PIN_P78 = 15, }; enum class Slice : uint8_t { @@ -189,9 +189,9 @@ constexpr uint32_t gpio_outreg(const Direction direction) { constexpr uint32_t gpio_oenreg(const Direction direction) { return - (0U << PIN_DECIM2) - | (0U << PIN_DECIM1) - | (0U << PIN_DECIM0) + (0U << PIN_P78) + | (0U << PIN_P81) + | (0U << PIN_SYNC_EN) | (0U << PIN_INVERT) | (1U << PIN_DIRECTION) | (1U << PIN_DISABLE) @@ -295,6 +295,18 @@ constexpr P_OUT_CFG data_p_out_cfg( ; } +static const sgpio_resources_t sgpio_resources = { + .base = { .clk = &LPC_CGU->BASE_PERIPH_CLK, .stat = &LPC_CCU1->BASE_STAT, .stat_mask = (1 << 6) }, + .branch = { .cfg = &LPC_CCU1->CLK_PERIPH_SGPIO_CFG, .stat = &LPC_CCU1->CLK_PERIPH_SGPIO_STAT }, + .reset = { .output_index = 57 }, +}; + +void SGPIO::init() { + base_clock_enable(&sgpio_resources.base); + branch_clock_enable(&sgpio_resources.branch); + peripheral_reset(&sgpio_resources.reset); +} + void SGPIO::configure(const Direction direction) { disable_all_slice_counters(); diff --git a/firmware/common/baseband_sgpio.hpp b/firmware/common/baseband_sgpio.hpp index 23d07443f..442507df4 100644 --- a/firmware/common/baseband_sgpio.hpp +++ b/firmware/common/baseband_sgpio.hpp @@ -32,8 +32,7 @@ namespace baseband { class SGPIO { public: - void init() { - } + void init(); void configure(const Direction direction); diff --git a/firmware/common/cpld_max5.cpp b/firmware/common/cpld_max5.cpp index 565ab7bd4..c73dc0d8a 100644 --- a/firmware/common/cpld_max5.cpp +++ b/firmware/common/cpld_max5.cpp @@ -42,6 +42,17 @@ void CPLD::sample() { } } +void CPLD::sample(std::bitset<240>& value) { + shift_ir(instruction_t::SAMPLE); + jtag.runtest_tck(93); + shift_dr(value); +} + +void CPLD::extest(std::bitset<240>& value) { + shift_ir(instruction_t::EXTEST); + shift_dr(value); +} + void CPLD::clamp() { shift_ir(instruction_t::CLAMP); jtag.runtest_tck(93); diff --git a/firmware/common/cpld_max5.hpp b/firmware/common/cpld_max5.hpp index 487f9a610..163d24a8c 100644 --- a/firmware/common/cpld_max5.hpp +++ b/firmware/common/cpld_max5.hpp @@ -48,6 +48,8 @@ public: void bypass(); void sample(); + void sample(std::bitset<240>& value); + void extest(std::bitset<240>& value); void clamp(); void reset() { diff --git a/firmware/common/gpdma.hpp b/firmware/common/gpdma.hpp index c403569bd..cfdbd30d4 100644 --- a/firmware/common/gpdma.hpp +++ b/firmware/common/gpdma.hpp @@ -341,9 +341,18 @@ constexpr std::array channels { { { 4 }, { 5 }, { 6 }, { 7 }, } }; +static const gpdma_resources_t gpdma_resources = { + .base = { .clk = &LPC_CGU->BASE_M4_CLK, .stat = &LPC_CCU1->BASE_STAT, .stat_mask = (1 << 3) }, + .branch = { .cfg = &LPC_CCU1->CLK_M4_DMA_CFG, .stat = &LPC_CCU1->CLK_M4_DMA_STAT }, + .reset = { .output_index = 19 }, +}; + class Controller { public: void enable() const { + base_clock_enable(&gpdma_resources.base); + branch_clock_enable(&gpdma_resources.branch); + peripheral_reset(&gpdma_resources.reset); LPC_GPDMA->CONFIG |= (1U << 0); } @@ -352,6 +361,9 @@ public: channel.disable(); } LPC_GPDMA->CONFIG &= ~(1U << 0); + peripheral_reset(&gpdma_resources.reset); + branch_clock_disable(&gpdma_resources.branch); + base_clock_disable(&gpdma_resources.base); } }; diff --git a/firmware/common/gpio.hpp b/firmware/common/gpio.hpp index b809393ed..5d8164c78 100644 --- a/firmware/common/gpio.hpp +++ b/firmware/common/gpio.hpp @@ -186,7 +186,7 @@ struct PinConfig { } static constexpr PinConfig spifi_cs(const uint32_t mode) { - return { .mode = mode, .pd = 0, .pu = 0, .fast = 1, .input = 0, .ifilt = 0 }; + return { .mode = mode, .pd = 0, .pu = 0, .fast = 1, .input = 1, .ifilt = 0 }; } }; diff --git a/firmware/common/hackrf_hal.cpp b/firmware/common/hackrf_hal.cpp index 8f8f4c56d..e49185722 100644 --- a/firmware/common/hackrf_hal.cpp +++ b/firmware/common/hackrf_hal.cpp @@ -28,54 +28,5 @@ using namespace lpc43xx; namespace hackrf { namespace one { -void reset() { - /* "The reset delay is counted in IRC clock cycles. If the core frequency - * CCLK is much higher than the IRC frequency, add a software delay of - * fCCLK/fIRC clock cycles between resetting and accessing any of the - * peripheral blocks." - */ - rgu::reset_mask( - /* Don't reset SCU, may trip up SPIFI pins if running from SPIFI - * memory. - */ - /*rgu::Reset::SCU */ - rgu::Reset::LCD - | rgu::Reset::USB0 - | rgu::Reset::USB1 - | rgu::Reset::DMA - | rgu::Reset::SDIO - | rgu::Reset::EMC - | rgu::Reset::ETHERNET - | rgu::Reset::GPIO - | rgu::Reset::TIMER0 - | rgu::Reset::TIMER1 - | rgu::Reset::TIMER2 - | rgu::Reset::TIMER3 - | rgu::Reset::RITIMER - | rgu::Reset::SCT - | rgu::Reset::MOTOCONPWM - | rgu::Reset::QEI - | rgu::Reset::ADC0 - | rgu::Reset::ADC1 - | rgu::Reset::DAC - | rgu::Reset::UART0 - | rgu::Reset::UART1 - | rgu::Reset::UART2 - | rgu::Reset::UART3 - | rgu::Reset::I2C0 - | rgu::Reset::I2C1 - | rgu::Reset::SSP0 - | rgu::Reset::SSP1 - | rgu::Reset::I2S - /* Don't reset SPIFI if running from SPIFI memory */ - /*| rgu::Reset::SPIFI*/ - | rgu::Reset::CAN1 - | rgu::Reset::CAN0 - | rgu::Reset::M0APP - | rgu::Reset::SGPIO - | rgu::Reset::SPI - ); -} - } /* namespace one */ } /* namespace hackrf */ diff --git a/firmware/common/hackrf_hal.hpp b/firmware/common/hackrf_hal.hpp index b7d5e1c0a..b22df6948 100644 --- a/firmware/common/hackrf_hal.hpp +++ b/firmware/common/hackrf_hal.hpp @@ -73,8 +73,6 @@ using adc0 = adc::ADC; using adc1 = adc::ADC; -void reset(); - } /* namespace one */ } /* namespace hackrf */ diff --git a/firmware/common/i2s.hpp b/firmware/common/i2s.hpp index d715146d9..a7f45e98f 100644 --- a/firmware/common/i2s.hpp +++ b/firmware/common/i2s.hpp @@ -154,6 +154,17 @@ struct ConfigDMA { uint32_t dma2; }; +static const audio_clock_resources_t audio_clock_resources = { + .base = { .clk = &LPC_CGU->BASE_AUDIO_CLK, .stat = &LPC_CCU2->BASE_STAT, .stat_mask = 0 }, + .branch = { .cfg = &LPC_CCU2->CLK_AUDIO_CFG, .stat = &LPC_CCU2->CLK_AUDIO_STAT }, +}; + +static const i2s_resources_t i2s_resources = { + .base = { .clk = &LPC_CGU->BASE_APB1_CLK, .stat = &LPC_CCU1->BASE_STAT, .stat_mask = (1 << 1) }, + .branch = { .cfg = &LPC_CCU1->CLK_APB1_I2S_CFG, .stat = &LPC_CCU1->CLK_APB1_I2S_STAT }, + .reset = { { .output_index = 52 }, { .output_index = 53 } }, +}; + template class I2S { public: @@ -161,6 +172,19 @@ public: const ConfigTX& config_tx, const ConfigRX& config_rx ) { + base_clock_enable(&i2s_resources.base); + branch_clock_enable(&i2s_resources.branch); + + base_clock_enable(&audio_clock_resources.base); + branch_clock_enable(&audio_clock_resources.branch); + + if( &p() == LPC_I2S0 ) { + peripheral_reset(&i2s_resources.reset[0]); + } + if( &p() == LPC_I2S1 ) { + peripheral_reset(&i2s_resources.reset[1]); + } + reset(); if( &p() == LPC_I2S0 ) { @@ -194,6 +218,21 @@ public: p().DMA2 = config_dma.dma2; } + static void shutdown() { + if( &p() == LPC_I2S0 ) { + peripheral_reset(&i2s_resources.reset[0]); + } + if( &p() == LPC_I2S1 ) { + peripheral_reset(&i2s_resources.reset[1]); + } + + branch_clock_disable(&audio_clock_resources.branch); + base_clock_disable(&audio_clock_resources.base); + + branch_clock_disable(&i2s_resources.branch); + base_clock_disable(&i2s_resources.base); + } + static void rx_start() { p().DAI &= ~(1U << 3); } diff --git a/firmware/common/lpc43xx_cpp.hpp b/firmware/common/lpc43xx_cpp.hpp index bf00294f1..13ca9aa77 100644 --- a/firmware/common/lpc43xx_cpp.hpp +++ b/firmware/common/lpc43xx_cpp.hpp @@ -134,7 +134,7 @@ struct IDIV_CTRL { constexpr operator uint32_t() const { return ((pd & 1) << 0) - | ((idiv & 3) << 2) + | ((idiv & 255) << 2) | ((autoblock & 1) << 11) | ((toUType(clk_sel) & 0x1f) << 24) ; diff --git a/firmware/common/pins.hpp b/firmware/common/pins.hpp index dacf46b8b..cd29e9a4b 100644 --- a/firmware/common/pins.hpp +++ b/firmware/common/pins.hpp @@ -89,9 +89,9 @@ constexpr Pin pins[] = { [P4_5] = { 4, 5, { .mode=0, .pd=0, .pu=0, .fast=0, .input=0, .ifilt=1 } }, /* RXENABLE/P56: MAX2837.RXENABLE(I) */ [P4_6] = { 4, 6, { .mode=0, .pd=0, .pu=0, .fast=0, .input=0, .ifilt=1 } }, /* XCVR_EN: 10K PD, MAX2837.ENABLE(I) */ [P4_7] = { 4, 7, { .mode=1, .pd=0, .pu=0, .fast=0, .input=1, .ifilt=0 } }, /* GP_CLKIN/P72/MCU_CLK: SI5351C.CLK7(O) */ - [P4_8] = { 4, 8, PinConfig::gpio_out_with_pullup(4) }, /* SGPIO13/BANK2F3M2: CPLD.90/HOST_DECIM_SEL0(I) */ - [P4_9] = { 4, 9, PinConfig::gpio_out_with_pullup(4) }, /* SGPIO14/BANK2F3M4: CPLD.81/HOST_DECIM_SEL1(I) */ - [P4_10] = { 4, 10, PinConfig::gpio_out_with_pullup(4) }, /* SGPIO15/BANK2F3M6: CPLD.78/HOST_DECIM_SEL2(I) */ + [P4_8] = { 4, 8, PinConfig::floating_input_with_pull(0, 4) }, /* SGPIO13/BANK2F3M2: CPLD.90/HOST_SYNC_EN(I) */ + [P4_9] = { 4, 9, PinConfig::floating_input(4) }, /* SGPIO14/BANK2F3M4: CPLD.81(I) */ + [P4_10] = { 4, 10, PinConfig::floating_input(4) }, /* SGPIO15/BANK2F3M6: CPLD.78(I) */ [P5_0] = { 5, 0, { .mode=0, .pd=0, .pu=0, .fast=0, .input=0, .ifilt=1 } }, /* !VAA_ENABLE: 10K PU, Q3.G(I), power to VAA */ [P5_1] = { 5, 1, { .mode=0, .pd=0, .pu=0, .fast=0, .input=0, .ifilt=1 } }, /* LP/P45: U6.VCTL2(I), U5.VCTL1(I) */ [P5_2] = { 5, 2, { .mode=0, .pd=0, .pu=0, .fast=0, .input=0, .ifilt=1 } }, /* TX_MIX_BP/P46: U9.V1(I) */ diff --git a/firmware/common/spi_image.hpp b/firmware/common/spi_image.hpp index 7e3fb6050..fd2c7b7d0 100644 --- a/firmware/common/spi_image.hpp +++ b/firmware/common/spi_image.hpp @@ -28,6 +28,8 @@ #include "memory_map.hpp" +extern uint32_t _textend; + namespace portapack { namespace spi_flash { @@ -114,14 +116,14 @@ struct region_t { } }; -constexpr region_t images { - .offset = 0x80000, - .size = 0x80000, +const region_t images { + .offset = reinterpret_cast(&_textend), + .size = portapack::memory::map::spifi_cached.size() - reinterpret_cast(&_textend), }; -constexpr region_t application { +const region_t application { .offset = 0x00000, - .size = 0x80000, + .size = reinterpret_cast(&_textend), }; } /* namespace spi_flash */ diff --git a/firmware/hackrf_cpld_portapack.svf b/firmware/hackrf_cpld_portapack.svf deleted file mode 100644 index 424fb6597..000000000 --- a/firmware/hackrf_cpld_portapack.svf +++ /dev/null @@ -1,1122 +0,0 @@ -// Created using Xilinx Cse Software [ISE - 14.7] -// Date: Tue Aug 23 23:01:43 2016 - -TRST OFF; -ENDIR IDLE; -ENDDR IDLE; -STATE RESET; -STATE IDLE; -FREQUENCY 1E6 HZ; -TIR 0 ; -HIR 0 ; -TDR 0 ; -HDR 0 ; -TIR 0 ; -HIR 0 ; -HDR 0 ; -TDR 0 ; -//Loading device with 'idcode' instruction. -SIR 8 TDI (01) SMASK (ff) ; -SDR 32 TDI (00000000) SMASK (ffffffff) TDO (f6e5f093) MASK (0fff8fff) ; -//Check for Read/Write Protect. -SIR 8 TDI (ff) TDO (01) MASK (03) ; -//Boundary Scan Chain Contents -//Position 1: xc2c64a -TIR 0 ; -HIR 0 ; -TDR 0 ; -HDR 0 ; -TIR 0 ; -HIR 0 ; -TDR 0 ; -HDR 0 ; -TIR 0 ; -HIR 0 ; -HDR 0 ; -TDR 0 ; -//Loading device with 'idcode' instruction. -SIR 8 TDI (01) ; -SDR 32 TDI (00000000) TDO (f6e5f093) ; -//Check for Read/Write Protect. -SIR 8 TDI (ff) TDO (01) MASK (03) ; -//Loading device with 'bypass' instruction. -SIR 8 TDI (ff) ; -//Loading device with 'enable' instruction. -SIR 8 TDI (e8) ; -//Loading device with 'enable' instruction. -SIR 8 TDI (e8) ; -// Loading device with a 'erase' instruction. -ENDIR IRPAUSE; -SIR 8 TDI (ed) SMASK (ff) ; -ENDIR IDLE; -STATE IREXIT2 IRUPDATE DRSELECT DRCAPTURE DREXIT1 DRPAUSE; -RUNTEST DRPAUSE 20 TCK; -STATE IDLE; -RUNTEST IDLE 100000 TCK; -STATE DRPAUSE; -RUNTEST DRPAUSE 5000 TCK; -ENDIR IRPAUSE; -SIR 8 TDI (f0) SMASK (ff) ; -STATE IDLE; -RUNTEST IDLE 20 TCK; -ENDIR IRPAUSE; -SIR 8 TDI (f0) SMASK (ff) ; -STATE IREXIT2 IRUPDATE DRSELECT DRCAPTURE DREXIT1 DRUPDATE IDLE; -RUNTEST 800 TCK; -ENDIR IDLE; -//Loading device with 'conld' instruction. -SIR 8 TDI (c0) ; -RUNTEST IDLE 100 TCK; -//Loading device with 'enable' instruction. -SIR 8 TDI (e8) ; -// Programming. -// Loading device with a 'program' instruction. -ENDIR IRPAUSE; -SIR 8 TDI (ea) ; -SDR 281 TDI (0003c1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0f) SMASK (01ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -ENDIR IDLE; -RUNTEST 10000 TCK; -SDR 281 TDI (0103f9ffffffffffffffffffffffffffffffff777fffffffffffffffffffffffffdffe7f) ; -RUNTEST 10000 TCK; -SDR 281 TDI (0180f97fffffffffffffffffffffffbfffe9de7fffffffffffffffffeffffffffffbfe7c) ; -RUNTEST 10000 TCK; -SDR 281 TDI (0083c1fffffffffffffffffffffffffffbf99e7ffffffffffbffffffffffffffffffde0f) ; -RUNTEST 10000 TCK; -SDR 281 TDI (00c3f9fffffffffffffffffffffffffffbf99e7fffffffffffffbfffffffffffffff7e7f) ; -RUNTEST 10000 TCK; -SDR 281 TDI (01c0f93ffffffffffffffffffffffffffff99e7fffffefbefbffffffefbeffffeaab2a7c) ; -RUNTEST 10000 TCK; -SDR 281 TDI (0143c1bffffffffffffffffffffdfffffffffeeefffffffffffffffffffffffffffffe0f) ; -RUNTEST 10000 TCK; -SDR 281 TDI (0043f9fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7f) ; -RUNTEST 10000 TCK; -SDR 281 TDI (0060f9fffffffffffffffffffffbfffffff99e7fffffffffffffffffffffffffeaabfc7c) ; -RUNTEST 10000 TCK; -SDR 281 TDI (0163c1fffffffffffffffffffffffffffbf99e7ffffffffeffffffffffffffffefffde4f) ; -RUNTEST 10000 TCK; -SDR 281 TDI (01e3f9fffffffffffffffffffffffffffbf87e7fffffffbffffffffffffffffffeffde7c) ; -RUNTEST 10000 TCK; -SDR 281 TDI (00e0f9ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff02) ; -RUNTEST 10000 TCK; -SDR 281 TDI (00a3c1fffffffffffffffffffffffffefffbbefffffffffffffffffffffffffffffffe4f) ; -RUNTEST 10000 TCK; -SDR 281 TDI (01a3f9fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7c) ; -RUNTEST 10000 TCK; -SDR 281 TDI (0120f9fffffffffffffffffffffffffffffd7f7ffffffffffffffffffffefffffffffe83) ; -RUNTEST 10000 TCK; -SDR 281 TDI (0023c1fffffffffffffffffffffffffffff5ff7fffffffffffffffffffffffffeaabf64f) ; -RUNTEST 10000 TCK; -SDR 281 TDI (0033f9fffffffffffffffffffffffffffbf87e7fffffeffffffffffffffffffffbffde7c) ; -RUNTEST 10000 TCK; -SDR 281 TDI (0130f9fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe83) ; -RUNTEST 10000 TCK; -SDR 281 TDI (01b3c1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0f) ; -RUNTEST 10000 TCK; -SDR 281 TDI (00b3f9fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7f) ; -RUNTEST 10000 TCK; -SDR 281 TDI (00f0f9fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7c) ; -RUNTEST 10000 TCK; -SDR 281 TDI (01f3c1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffabfe0f) ; -RUNTEST 10000 TCK; -SDR 281 TDI (0173f9ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9dfe1d) ; -RUNTEST 10000 TCK; -SDR 281 TDI (0070f9ffffffffffffffffffffffffffffffe607fffffffffffffffffffffffffffffe7c) ; -RUNTEST 10000 TCK; -SDR 281 TDI (0053c1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff544f) ; -RUNTEST 10000 TCK; -SDR 281 TDI (0153f9fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff07ffe7c) ; -RUNTEST 10000 TCK; -SDR 281 TDI (01d0f8bffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdffff03) ; -RUNTEST 10000 TCK; -SDR 281 TDI (00d3c1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0f) ; -RUNTEST 10000 TCK; -SDR 281 TDI (0093f9fffffffffffffffffffffffffffffddf7fffffffffffffffffffbfffffffeffe7d) ; -RUNTEST 10000 TCK; -SDR 281 TDI (0190f9fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7c) ; -RUNTEST 10000 TCK; -SDR 281 TDI (0113c1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe4f) ; -RUNTEST 10000 TCK; -SDR 281 TDI (0013f9fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7c) ; -RUNTEST 10000 TCK; -SDR 281 TDI (0018f9fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe83) ; -RUNTEST 10000 TCK; -SDR 281 TDI (011bc1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe4f) ; -RUNTEST 10000 TCK; -SDR 281 TDI (019b99fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7c) ; -RUNTEST 10000 TCK; -SDR 281 TDI (009afdfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe83) ; -RUNTEST 10000 TCK; -SDR 281 TDI (00dbc1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe4f) ; -RUNTEST 10000 TCK; -SDR 281 TDI (01db99fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7c) ; -RUNTEST 10000 TCK; -SDR 281 TDI (015af9fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe83) ; -RUNTEST 10000 TCK; -SDR 281 TDI (005bc9fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe4f) ; -RUNTEST 10000 TCK; -SDR 281 TDI (007bd9fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7c) ; -RUNTEST 10000 TCK; -SDR 281 TDI (017afdfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe83) ; -RUNTEST 10000 TCK; -SDR 281 TDI (01fbc9fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0f) ; -RUNTEST 10000 TCK; -SDR 281 TDI (00fbd9fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7d) ; -RUNTEST 10000 TCK; -SDR 281 TDI (00bafdfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe03) ; -RUNTEST 10000 TCK; -SDR 281 TDI (01bbc1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0f) ; -RUNTEST 10000 TCK; -SDR 281 TDI (013b99fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7d) ; -RUNTEST 10000 TCK; -SDR 281 TDI (003afdfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe03) ; -RUNTEST 10000 TCK; -SDR 281 TDI (002bc8eabfffffffffffffeffffffffffffffefefbfffffffffffffffffffffffffffe0f) ; -RUNTEST 10000 TCK; -SDR 281 TDI (0128feeabf7fffffeffffffffffffffffffffefefbfffffffffffffffffffffffffffe1d) ; -RUNTEST 10000 TCK; -SDR 281 TDI (01aa00eab7ffff7ffffffffffffffffffffffefefbfffffffffffffffffffffffffffe7c) ; -RUNTEST 10000 TCK; -SDR 281 TDI (00abc1bff77ffffffffffffffffffffffffffeeefffffffffffffffffffffffffffffe4f) ; -RUNTEST 10000 TCK; -SDR 281 TDI (00ebf8ebffffffffffffffffffffffbffffffefeeffffffffffffffffffffffffffffe69) ; -RUNTEST 10000 TCK; -SDR 281 TDI (01e8f9fffbfffffffffffffffffffffffffbbefffffffffffffffffffffffffffffffe7d) ; -RUNTEST 10000 TCK; -SDR 281 TDI (016bc9ffffbffffffffffffffffffffffffafefffffffffffffffffffffffffffffffe4f) ; -RUNTEST 10000 TCK; -SDR 281 TDI (0068e1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe69) ; -RUNTEST 10000 TCK; -SDR 281 TDI (004ac5fffffffffffffefffffffffffffffffeeefffffffffffffffffffffffffffffe7d) ; -RUNTEST 10000 TCK; -SDR 281 TDI (014bc0fffffffffffffffffffffffffffbfffefeeffffffffffffffffffffffffffffe4f) ; -RUNTEST 10000 TCK; -SDR 281 TDI (01cbf9fffff7fffffffffffffffffffffffffeeefffffffffffffffffffffffffffffe69) ; -RUNTEST 10000 TCK; -SDR 281 TDI (00c8f9fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7d) ; -RUNTEST 10000 TCK; -SDR 281 TDI (008bc8eaffffffffffffffffbffffffffffffefeeffffffffffffffffffffffffffffe4f) ; -RUNTEST 10000 TCK; -SDR 281 TDI (0188e0effffffffffffffffffffffffefffffefeeffffffffffffffffffffffffffffe69) ; -RUNTEST 10000 TCK; -SDR 281 TDI (010ac3fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7d) ; -RUNTEST 10000 TCK; -SDR 281 TDI (000bc1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe4f) ; -RUNTEST 10000 TCK; -SDR 281 TDI (000ff9fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe69) ; -RUNTEST 10000 TCK; -SDR 281 TDI (010cf9fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7d) ; -RUNTEST 10000 TCK; -SDR 281 TDI (018fc9fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe4f) ; -RUNTEST 10000 TCK; -SDR 281 TDI (008ce1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe69) ; -RUNTEST 10000 TCK; -SDR 281 TDI (00cec5ffffbffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7d) ; -RUNTEST 10000 TCK; -SDR 281 TDI (01cfc1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe4f) ; -RUNTEST 10000 TCK; -SDR 281 TDI (014ee1ffeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe69) ; -RUNTEST 10000 TCK; -SDR 281 TDI (004cf8bffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7d) ; -RUNTEST 10000 TCK; -SDR 281 TDI (006fc9dfcefffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0f) ; -RUNTEST 10000 TCK; -SDR 281 TDI (016ce1fffffffffffffffffffffffffffffff9fffffffffffffffffffffffffffffffe7f) ; -RUNTEST 10000 TCK; -SDR 281 TDI (01eec3df7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7c) ; -RUNTEST 10000 TCK; -SDR 281 TDI (00efc993fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0f) ; -RUNTEST 10000 TCK; -SDR 281 TDI (00ace1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7f) ; -RUNTEST 10000 TCK; -SDR 281 TDI (01aec5fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7c) ; -RUNTEST 10000 TCK; -SDR 281 TDI (012fc1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0f) ; -RUNTEST 10000 TCK; -SDR 281 TDI (002ee1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7f) ; -RUNTEST 10000 TCK; -SDR 281 TDI (003cf9fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7c) ; -RUNTEST 10000 TCK; -SDR 281 TDI (013fc1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0f) ; -RUNTEST 10000 TCK; -SDR 281 TDI (01bee1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7f) ; -RUNTEST 10000 TCK; -SDR 281 TDI (00bcf9fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7c) ; -RUNTEST 10000 TCK; -SDR 281 TDI (00ffc1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0f) ; -RUNTEST 10000 TCK; -SDR 281 TDI (01fff9fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7f) ; -RUNTEST 10000 TCK; -SDR 281 TDI (017cf9fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7c) ; -RUNTEST 10000 TCK; -SDR 281 TDI (007fc9fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0f) ; -RUNTEST 10000 TCK; -SDR 281 TDI (005ce1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7f) ; -RUNTEST 10000 TCK; -SDR 281 TDI (015ec5fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7c) ; -RUNTEST 10000 TCK; -SDR 281 TDI (01dfc9fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0f) ; -RUNTEST 10000 TCK; -SDR 281 TDI (00dce1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7f) ; -RUNTEST 10000 TCK; -SDR 281 TDI (009ec5fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7c) ; -RUNTEST 10000 TCK; -SDR 281 TDI (019fc9fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0f) ; -RUNTEST 10000 TCK; -SDR 281 TDI (011ce1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7f) ; -RUNTEST 10000 TCK; -SDR 281 TDI (001ec5fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7c) ; -RUNTEST 10000 TCK; -SDR 281 TDI (0017ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 10000 TCK; -SDR 281 TDI (0117ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 10000 TCK; -SIR 8 TDI (f0) SMASK (ff) ; -STATE IDLE; -RUNTEST IDLE 20 TCK; -ENDIR IRPAUSE; -SIR 8 TDI (f0) SMASK (ff) ; -STATE IREXIT2 IRUPDATE DRSELECT DRCAPTURE DREXIT1 DRUPDATE IDLE; -RUNTEST 800 TCK; -ENDIR IDLE; -//Loading device with 'enable' instruction. -SIR 8 TDI (e8) ; -//Loading device with 'enable' instruction. -SIR 8 TDI (e8) ; -// Verification. -// Loading device with a 'verify' instruction. -ENDIR IRPAUSE; -SIR 8 TDI (ee) ; -ENDDR DRPAUSE; -SDR 7 TDI (00) SMASK (7f) ; -ENDIR IDLE; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (03c1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0f) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (40) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (03f9ffffffffffffffffffffffffffffffff777fffffffffffffffffffffffffdffe7f) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (60) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (00f97fffffffffffffffffffffffbfffe9de7fffffffffffffffffeffffffffffbfe7c) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (20) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (03c1fffffffffffffffffffffffffffbf99e7ffffffffffbffffffffffffffffffde0f) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (30) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (03f9fffffffffffffffffffffffffffbf99e7fffffffffffffbfffffffffffffff7e7f) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (70) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (00f93ffffffffffffffffffffffffffff99e7fffffefbefbffffffefbeffffeaab2a7c) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (50) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (03c1bffffffffffffffffffffdfffffffffeeefffffffffffffffffffffffffffffe0f) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (10) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (03f9fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7f) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (18) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (00f9fffffffffffffffffffffbfffffff99e7fffffffffffffffffffffffffeaabfc7c) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (58) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (03c1fffffffffffffffffffffffffffbf99e7ffffffffeffffffffffffffffefffde4f) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (78) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (03f9fffffffffffffffffffffffffffbf87e7fffffffbffffffffffffffffffeffde7c) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (38) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (00f9ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff02) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (28) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (03c1fffffffffffffffffffffffffefffbbefffffffffffffffffffffffffffffffe4f) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (68) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (03f9fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7c) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (48) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (00f9fffffffffffffffffffffffffffffd7f7ffffffffffffffffffffefffffffffe83) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (08) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (03c1fffffffffffffffffffffffffffff5ff7fffffffffffffffffffffffffeaabf64f) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (0c) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (03f9fffffffffffffffffffffffffffbf87e7fffffeffffffffffffffffffffbffde7c) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (4c) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (00f9fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe83) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (6c) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (03c1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0f) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (2c) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (03f9fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7f) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (3c) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (00f9fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7c) MASK ( -03fffffffffffffffffffffffffffffe00000001ffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (7c) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (03c1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffabfe0f) MASK ( -03fffffffffffffffffffffffffffffe00000001ffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (5c) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (03f9ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9dfe1d) MASK ( -03fffffffffffffffffffffffffffffe00000001ffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (1c) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (00f9ffffffffffffffffffffffffffffffe607fffffffffffffffffffffffffffffe7c) MASK ( -03fffffffffffffffffffffffffffffe001ff801ffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (14) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (03c1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff544f) MASK ( -03fffffffffffffffffffffffffffffe001f8001ffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (54) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (03f9fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff07ffe7c) MASK ( -03fffffffffffffffffffffffffffffe00000001ffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (74) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (00f8bffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdffff03) MASK ( -03fffffffffffffffffffffffffffffe00000001ffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (34) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (03c1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0f) MASK ( -03fffffffffffffffffffffffffffffe00000001ffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (24) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (03f9fffffffffffffffffffffffffffffddf7fffffffffffffffffffbfffffffeffe7d) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (64) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (00f9fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7c) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (44) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (03c1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe4f) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (04) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (03f9fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7c) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (06) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (00f9fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe83) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (46) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (03c1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe4f) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (66) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (0399fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7c) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (26) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (02fdfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe83) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (36) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (03c1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe4f) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (76) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (0399fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7c) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (56) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (02f9fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe83) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (16) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (03c9fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe4f) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (1e) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (03d9fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7c) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (5e) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (02fdfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe83) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (7e) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (03c9fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0f) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (3e) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (03d9fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7d) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (2e) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (02fdfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe03) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (6e) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (03c1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0f) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (4e) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (0399fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7d) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (0e) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (02fdfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe03) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (0a) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (03c8eabfffffffffffffeffffffffffffffefefbfffffffffffffffffffffffffffe0f) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (4a) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (00feeabf7fffffeffffffffffffffffffffefefbfffffffffffffffffffffffffffe1d) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (6a) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (0200eab7ffff7ffffffffffffffffffffffefefbfffffffffffffffffffffffffffe7c) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (2a) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (03c1bff77ffffffffffffffffffffffffffeeefffffffffffffffffffffffffffffe4f) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (3a) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (03f8ebffffffffffffffffffffffbffffffefeeffffffffffffffffffffffffffffe69) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (7a) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (00f9fffbfffffffffffffffffffffffffbbefffffffffffffffffffffffffffffffe7d) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (5a) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (03c9ffffbffffffffffffffffffffffffafefffffffffffffffffffffffffffffffe4f) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (1a) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (00e1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe69) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (12) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (02c5fffffffffffffefffffffffffffffffeeefffffffffffffffffffffffffffffe7d) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (52) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (03c0fffffffffffffffffffffffffffbfffefeeffffffffffffffffffffffffffffe4f) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (72) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (03f9fffff7fffffffffffffffffffffffffeeefffffffffffffffffffffffffffffe69) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (32) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (00f9fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7d) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (22) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (03c8eaffffffffffffffffbffffffffffffefeeffffffffffffffffffffffffffffe4f) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (62) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (00e0effffffffffffffffffffffffefffffefeeffffffffffffffffffffffffffffe69) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (42) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (02c3fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7d) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (02) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (03c1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe4f) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (03) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (03f9fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe69) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (43) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (00f9fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7d) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (63) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (03c9fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe4f) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (23) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (00e1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe69) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (33) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (02c5ffffbffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7d) MASK ( -03fffffffffffffffffffffffffffffe00000001ffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (73) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (03c1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe4f) MASK ( -03fffffffffffffffffffffffffffffe00000001ffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (53) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (02e1ffeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe69) MASK ( -03fffffffffffffffffffffffffffffe00000001ffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (13) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (00f8bffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7d) MASK ( -03fffffffffffffffffffffffffffffe00000001ffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (1b) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (03c9dfcefffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0f) MASK ( -03fffffffffffffffffffffffffffffe00000001ffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (5b) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (00e1fffffffffffffffffffffffffffffff9fffffffffffffffffffffffffffffffe7f) MASK ( -03fffffffffffffffffffffffffffffe00078001ffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (7b) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (02c3df7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7c) MASK ( -03fffffffffffffffffffffffffffffe00000001ffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (3b) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (03c993fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0f) MASK ( -03fffffffffffffffffffffffffffffe00000001ffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (2b) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (00e1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7f) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (6b) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (02c5fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7c) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (4b) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (03c1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0f) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (0b) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (02e1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7f) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (0f) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (00f9fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7c) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (4f) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (03c1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0f) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (6f) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (02e1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7f) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (2f) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (00f9fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7c) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (3f) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (03c1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0f) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (7f) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (03f9fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7f) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (5f) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (00f9fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7c) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (1f) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (03c9fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0f) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (17) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (00e1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7f) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (57) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (02c5fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7c) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (77) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (03c9fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0f) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (37) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (00e1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7f) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (27) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (02c5fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7c) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (67) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (03c9fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0f) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (47) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (00e1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7f) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (07) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (02c5fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7c) MASK ( -03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (05) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) MASK ( -0000000000000000000000000000000000000000000000000000000000000000000000) ; -RUNTEST 100 TCK; -ENDDR DRPAUSE; -SDR 7 TDI (45) SMASK (7f) ; -RUNTEST DRPAUSE 20 TCK; -ENDDR IDLE; -RUNTEST IDLE 100 TCK; -// masking lower UES bits. -SDR 274 TDI (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) TDO (03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) MASK ( -0000000000000000000000000000000000000000000000000000000000000000000000) ; -RUNTEST 100 TCK; -SIR 8 TDI (f0) SMASK (ff) ; -STATE IDLE; -RUNTEST IDLE 20 TCK; -ENDIR IRPAUSE; -SIR 8 TDI (f0) SMASK (ff) ; -STATE IREXIT2 IRUPDATE DRSELECT DRCAPTURE DREXIT1 DRUPDATE IDLE; -RUNTEST 800 TCK; -ENDIR IDLE; -//Loading device with 'conld' instruction. -SIR 8 TDI (c0) ; -RUNTEST IDLE 100 TCK; -//Loading device with 'enable' instruction. -SIR 8 TDI (e8) ; -// Setting Done bit ... -// Loading device with a 'program' instruction. -ENDIR IRPAUSE; -SIR 8 TDI (ea) ; -SDR 281 TDI (0017fdffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) SMASK (01ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) ; -ENDIR IDLE; -RUNTEST 10000 TCK; -SIR 8 TDI (f0) SMASK (ff) ; -STATE IDLE; -RUNTEST IDLE 20 TCK; -ENDIR IRPAUSE; -SIR 8 TDI (f0) SMASK (ff) ; -STATE IREXIT2 IRUPDATE DRSELECT DRCAPTURE DREXIT1 DRUPDATE IDLE; -RUNTEST 800 TCK; -ENDIR IDLE; -//Loading device with 'conld' instruction. -SIR 8 TDI (c0) ; -RUNTEST IDLE 100 TCK; -//Loading device with 'idcode' instruction. -SIR 8 TDI (01) ; -SDR 32 TDI (00000000) SMASK (ffffffff) TDO (f6e5f093) MASK (0fff8fff) ; -//Check for Done bit. -SIR 8 TDI (ff) TDO (05) MASK (07) ; -//Loading device with 'bypass' instruction. -SIR 8 TDI (ff) ; -TIR 0 ; -HIR 0 ; -HDR 0 ; -TDR 0 ; -TIR 0 ; -HIR 0 ; -TDR 0 ; -HDR 0 ; -SIR 8 TDI (ff) ; -SDR 1 TDI (00) SMASK (01) ; diff --git a/firmware/hackrf_one_usb.dfu b/firmware/hackrf_one_usb.dfu deleted file mode 100644 index 35ebb42a40a920eec5e8e9207f2bba8f40be7aff..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22056 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 Mq#{$*k@%ti4eDW#T>t<8 diff --git a/firmware/tools/make_spi_image.py b/firmware/tools/make_spi_image.py index 4c90a059e..983e7c6e7 100755 --- a/firmware/tools/make_spi_image.py +++ b/firmware/tools/make_spi_image.py @@ -55,12 +55,12 @@ images = ( { 'name': 'application', 'data': application_image, - 'size': 0x80000, #len(application_image), + 'size': len(application_image), }, { 'name': 'baseband', 'data': baseband_image, - 'size': 0x80000, + 'size': len(baseband_image), }, ) diff --git a/hardware/portapack_h1/audio.sch b/hardware/portapack_h1/audio.sch index 1e809ca2d..e29dc1504 100644 --- a/hardware/portapack_h1/audio.sch +++ b/hardware/portapack_h1/audio.sch @@ -6,8 +6,8 @@ $Descr A4 11693 8268 encoding utf-8 Sheet 2 6 Title "PortaPack H1" -Date "2018-08-20" -Rev "20180820" +Date "2018-10-29" +Rev "20181029" Comp "ShareBrained Technology, Inc." Comment1 "Copyright © 2014-2018 Jared Boone" Comment2 "License: GNU General Public License, version 2" diff --git a/hardware/portapack_h1/gps.sch b/hardware/portapack_h1/gps.sch index 53f0167c8..6251843ef 100644 --- a/hardware/portapack_h1/gps.sch +++ b/hardware/portapack_h1/gps.sch @@ -6,8 +6,8 @@ $Descr A4 11693 8268 encoding utf-8 Sheet 6 6 Title "PortaPack H1" -Date "2018-08-20" -Rev "20180820" +Date "2018-10-29" +Rev "20181029" Comp "ShareBrained Technology, Inc." Comment1 "Copyright © 2014-2018 Jared Boone" Comment2 "License: GNU General Public License, version 2" diff --git a/hardware/portapack_h1/hackrf_if.sch b/hardware/portapack_h1/hackrf_if.sch index 7004f574c..c7757a7b6 100644 --- a/hardware/portapack_h1/hackrf_if.sch +++ b/hardware/portapack_h1/hackrf_if.sch @@ -6,8 +6,8 @@ $Descr A4 11693 8268 encoding utf-8 Sheet 4 6 Title "PortaPack H1" -Date "2018-08-20" -Rev "20180820" +Date "2018-10-29" +Rev "20181029" Comp "ShareBrained Technology, Inc." Comment1 "Copyright © 2014-2018 Jared Boone" Comment2 "License: GNU General Public License, version 2" diff --git a/hardware/portapack_h1/lcd_sw_sd.sch b/hardware/portapack_h1/lcd_sw_sd.sch index c610c35f2..9ac433c75 100644 --- a/hardware/portapack_h1/lcd_sw_sd.sch +++ b/hardware/portapack_h1/lcd_sw_sd.sch @@ -6,8 +6,8 @@ $Descr A4 11693 8268 encoding utf-8 Sheet 3 6 Title "PortaPack H1" -Date "2018-08-20" -Rev "20180820" +Date "2018-10-29" +Rev "20181029" Comp "ShareBrained Technology, Inc." Comment1 "Copyright © 2014-2018 Jared Boone" Comment2 "License: GNU General Public License, version 2" diff --git a/hardware/portapack_h1/portapack_h1.kicad_pcb b/hardware/portapack_h1/portapack_h1.kicad_pcb index 1a8244378..52843f1e1 100644 --- a/hardware/portapack_h1/portapack_h1.kicad_pcb +++ b/hardware/portapack_h1/portapack_h1.kicad_pcb @@ -1,9 +1,9 @@ -(kicad_pcb (version 20171130) (host pcbnew 5.0.0-fee4fd1~66~ubuntu18.04.1) +(kicad_pcb (version 20171130) (host pcbnew 5.0.1-33cea8e~68~ubuntu18.04.1) (general (thickness 1.6) (drawings 110) - (tracks 1981) + (tracks 1983) (zones 0) (modules 111) (nets 140) @@ -12,8 +12,8 @@ (page A4) (title_block (title "PortaPack H1") - (date 2018-08-20) - (rev 20180820) + (date 2018-10-29) + (rev 20181029) (company "ShareBrained Technology, Inc.") (comment 1 "License: GNU General Public License, version 2") (comment 2 "Copyright (c) 2014-2018 Jared Boone") @@ -34,8 +34,8 @@ (39 F.Mask user) (40 Dwgs.User user) (41 Cmts.User user) - (42 Eco1.User user hide) - (43 Eco2.User user hide) + (42 Eco1.User user) + (43 Eco2.User user) (44 Edge.Cuts user) (46 B.CrtYd user) (47 F.CrtYd user) @@ -68,26 +68,26 @@ (pcb_text_width 0.3) (pcb_text_size 1.5 1.5) (mod_edge_width 0.1524) - (mod_text_size 0.6096 0.6096) - (mod_text_width 0.12) + (mod_text_size 0.6 0.6) + (mod_text_width 0.025) (pad_size 0.85 1.6) (pad_drill 0) - (pad_to_mask_clearance 0.0508) - (solder_mask_min_width 0.1016) + (pad_to_mask_clearance 0) + (solder_mask_min_width 0.195) (aux_axis_origin 60 175) (visible_elements FFFDBDFF) (pcbplotparams - (layerselection 0x3d3fc_ffffffff) + (layerselection 0x3dfff_ffffffff) (usegerberextensions true) (usegerberattributes false) (usegerberadvancedattributes false) - (creategerberjobfile false) + (creategerberjobfile true) (excludeedgelayer true) (linewidth 0.120000) (plotframeref false) (viasonmask false) (mode 1) - (useauxorigin false) + (useauxorigin true) (hpglpennumber 1) (hpglpenspeed 20) (hpglpendiameter 15.000000) @@ -102,7 +102,7 @@ (mirror false) (drillshape 0) (scaleselection 1) - (outputdirectory "private/gerber/20180820/")) + (outputdirectory "private/gerber/20181029/")) ) (net 0 "") @@ -394,7 +394,658 @@ (add_net "Net-(TP9-Pad1)") ) - (module ipc_osccc:IPC_OSCCC320X250X110L75X100N (layer 4_bot) (tedit 5B7AF51E) (tstamp 5B7B01BE) + (module eastrising:ER-CON50HT-1 (layer 4_bot) (tedit 5BD22CE5) (tstamp 58B09183) + (at 87.3 137.5 90) + (path /53A9129D/58AE3A81) + (attr smd) + (fp_text reference J3 (at -13.75 2.95 90) (layer B.SilkS) + (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) + ) + (fp_text value ER-TFT024-3_FPC (at 0 0 90) (layer B.Fab) + (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) + ) + (fp_line (start 12.75 -2.25) (end 12.75 0.5) (layer B.Fab) (width 0.025)) + (fp_line (start 12.75 0.5) (end -12.75 0.5) (layer B.Fab) (width 0.025)) + (fp_line (start -12.75 0.5) (end -12.75 -2.25) (layer B.Fab) (width 0.025)) + (fp_line (start 15.325 -2.25) (end -15.325 -2.25) (layer B.Fab) (width 0.025)) + (fp_line (start 14.675 2.25) (end -14.675 2.25) (layer B.Fab) (width 0.025)) + (fp_line (start 14.675 -0.85) (end 14.675 2.25) (layer B.Fab) (width 0.025)) + (fp_line (start -14.675 -0.85) (end -14.675 2.25) (layer B.Fab) (width 0.025)) + (fp_line (start -15.325 -0.85) (end -15.325 -2.25) (layer B.Fab) (width 0.025)) + (fp_line (start 15.325 -0.85) (end 15.325 -2.25) (layer B.Fab) (width 0.025)) + (fp_line (start 15.325 -0.85) (end 14.675 -0.85) (layer B.Fab) (width 0.025)) + (fp_line (start -14.675 -0.85) (end -15.325 -0.85) (layer B.Fab) (width 0.025)) + (fp_circle (center -12.85 2.75) (end -12.975 2.75) (layer B.SilkS) (width 0.25)) + (fp_line (start 15.385 -0.79) (end 15.385 -2.31) (layer B.SilkS) (width 0.12)) + (fp_line (start 15 -0.79) (end 15.385 -0.79) (layer B.SilkS) (width 0.12)) + (fp_line (start 14.735 2.31) (end 12.675 2.31) (layer B.SilkS) (width 0.12)) + (fp_line (start -14.735 2.31) (end -12.675 2.31) (layer B.SilkS) (width 0.12)) + (fp_line (start -15.385 -0.79) (end -15 -0.79) (layer B.SilkS) (width 0.12)) + (fp_line (start -15.385 -2.31) (end -15.385 -0.79) (layer B.SilkS) (width 0.12)) + (fp_line (start 15.385 -2.31) (end -15.385 -2.31) (layer B.SilkS) (width 0.12)) + (fp_line (start 12.65 3.75) (end 12.65 2.5) (layer B.CrtYd) (width 0.05)) + (fp_line (start 12.65 2.5) (end 15.05 2.5) (layer B.CrtYd) (width 0.05)) + (fp_line (start -15.6 -0.6) (end -15.05 -0.6) (layer B.CrtYd) (width 0.05)) + (fp_line (start -15.6 -2.5) (end -15.6 -0.6) (layer B.CrtYd) (width 0.05)) + (fp_line (start 15.6 -2.5) (end -15.6 -2.5) (layer B.CrtYd) (width 0.05)) + (fp_line (start 15.6 -0.6) (end 15.6 -2.5) (layer B.CrtYd) (width 0.05)) + (fp_line (start 15.05 -0.6) (end 15.6 -0.6) (layer B.CrtYd) (width 0.05)) + (fp_line (start 15.05 2.5) (end 15.05 -0.6) (layer B.CrtYd) (width 0.05)) + (fp_line (start -12.65 3.75) (end 12.65 3.75) (layer B.CrtYd) (width 0.05)) + (fp_line (start -12.65 2.5) (end -12.65 3.75) (layer B.CrtYd) (width 0.05)) + (fp_line (start -15.05 2.5) (end -12.65 2.5) (layer B.CrtYd) (width 0.05)) + (fp_line (start -15.05 -0.6) (end -15.05 2.5) (layer B.CrtYd) (width 0.05)) + (fp_text user %R (at 0 0 90) (layer B.Fab) + (effects (font (size 1 1) (thickness 0.025)) (justify mirror)) + ) + (pad SHLD smd rect (at -13.79 0.55 270) (size 2 3) (layers 4_bot B.Paste B.Mask) + (net 47 GND)) + (pad SHLD smd rect (at 13.79 0.55 270) (size 2 3) (layers 4_bot B.Paste B.Mask) + (net 47 GND)) + (pad 50 smd rect (at 12.25 2.875 270) (size 0.3 1.25) (layers 4_bot B.Paste B.Mask) + (net 47 GND)) + (pad 49 smd rect (at 11.75 2.875 270) (size 0.3 1.25) (layers 4_bot B.Paste B.Mask) + (net 47 GND)) + (pad 48 smd rect (at 11.25 2.875 270) (size 0.3 1.25) (layers 4_bot B.Paste B.Mask) + (net 47 GND)) + (pad 47 smd rect (at 10.75 2.875 270) (size 0.3 1.25) (layers 4_bot B.Paste B.Mask) + (net 45 /hackrf_if/TP_U)) + (pad 46 smd rect (at 10.25 2.875 270) (size 0.3 1.25) (layers 4_bot B.Paste B.Mask) + (net 43 /hackrf_if/TP_L)) + (pad 45 smd rect (at 9.75 2.875 270) (size 0.3 1.25) (layers 4_bot B.Paste B.Mask) + (net 42 /hackrf_if/TP_D)) + (pad 44 smd rect (at 9.25 2.875 270) (size 0.3 1.25) (layers 4_bot B.Paste B.Mask) + (net 44 /hackrf_if/TP_R)) + (pad 43 smd rect (at 8.75 2.875 270) (size 0.3 1.25) (layers 4_bot B.Paste B.Mask) + (net 47 GND)) + (pad 42 smd rect (at 8.25 2.875 270) (size 0.3 1.25) (layers 4_bot B.Paste B.Mask) + (net 121 +3V3)) + (pad 41 smd rect (at 7.75 2.875 270) (size 0.3 1.25) (layers 4_bot B.Paste B.Mask) + (net 122 +1V8)) + (pad 40 smd rect (at 7.25 2.875 270) (size 0.3 1.25) (layers 4_bot B.Paste B.Mask) + (net 122 +1V8)) + (pad 39 smd rect (at 6.75 2.875 270) (size 0.3 1.25) (layers 4_bot B.Paste B.Mask) + (net 25 /hackrf_if/LCD_TE)) + (pad 38 smd rect (at 6.25 2.875 270) (size 0.3 1.25) (layers 4_bot B.Paste B.Mask) + (net 47 GND)) + (pad 37 smd rect (at 5.75 2.875 270) (size 0.3 1.25) (layers 4_bot B.Paste B.Mask) + (net 24 /hackrf_if/LCD_RS)) + (pad 36 smd rect (at 5.25 2.875 270) (size 0.3 1.25) (layers 4_bot B.Paste B.Mask) + (net 26 /hackrf_if/LCD_WR#)) + (pad 35 smd rect (at 4.75 2.875 270) (size 0.3 1.25) (layers 4_bot B.Paste B.Mask) + (net 22 /hackrf_if/LCD_RD#)) + (pad 34 smd rect (at 4.25 2.875 270) (size 0.3 1.25) (layers 4_bot B.Paste B.Mask) + (net 47 GND)) + (pad 33 smd rect (at 3.75 2.875 270) (size 0.3 1.25) (layers 4_bot B.Paste B.Mask)) + (pad 32 smd rect (at 3.25 2.875 270) (size 0.3 1.25) (layers 4_bot B.Paste B.Mask) + (net 6 /hackrf_if/LCD_DB0)) + (pad 31 smd rect (at 2.75 2.875 270) (size 0.3 1.25) (layers 4_bot B.Paste B.Mask) + (net 7 /hackrf_if/LCD_DB1)) + (pad 30 smd rect (at 2.25 2.875 270) (size 0.3 1.25) (layers 4_bot B.Paste B.Mask) + (net 14 /hackrf_if/LCD_DB2)) + (pad 29 smd rect (at 1.75 2.875 270) (size 0.3 1.25) (layers 4_bot B.Paste B.Mask) + (net 15 /hackrf_if/LCD_DB3)) + (pad 28 smd rect (at 1.25 2.875 270) (size 0.3 1.25) (layers 4_bot B.Paste B.Mask) + (net 16 /hackrf_if/LCD_DB4)) + (pad 27 smd rect (at 0.75 2.875 270) (size 0.3 1.25) (layers 4_bot B.Paste B.Mask) + (net 17 /hackrf_if/LCD_DB5)) + (pad 26 smd rect (at 0.25 2.875 270) (size 0.3 1.25) (layers 4_bot B.Paste B.Mask) + (net 18 /hackrf_if/LCD_DB6)) + (pad 25 smd rect (at -0.25 2.875 270) (size 0.3 1.25) (layers 4_bot B.Paste B.Mask) + (net 19 /hackrf_if/LCD_DB7)) + (pad 24 smd rect (at -0.75 2.875 270) (size 0.3 1.25) (layers 4_bot B.Paste B.Mask) + (net 20 /hackrf_if/LCD_DB8)) + (pad 23 smd rect (at -1.25 2.875 270) (size 0.3 1.25) (layers 4_bot B.Paste B.Mask) + (net 21 /hackrf_if/LCD_DB9)) + (pad 22 smd rect (at -1.75 2.875 270) (size 0.3 1.25) (layers 4_bot B.Paste B.Mask) + (net 8 /hackrf_if/LCD_DB10)) + (pad 21 smd rect (at -2.25 2.875 270) (size 0.3 1.25) (layers 4_bot B.Paste B.Mask) + (net 9 /hackrf_if/LCD_DB11)) + (pad 20 smd rect (at -2.75 2.875 270) (size 0.3 1.25) (layers 4_bot B.Paste B.Mask) + (net 10 /hackrf_if/LCD_DB12)) + (pad 19 smd rect (at -3.25 2.875 270) (size 0.3 1.25) (layers 4_bot B.Paste B.Mask) + (net 11 /hackrf_if/LCD_DB13)) + (pad 18 smd rect (at -3.75 2.875 270) (size 0.3 1.25) (layers 4_bot B.Paste B.Mask) + (net 12 /hackrf_if/LCD_DB14)) + (pad 17 smd rect (at -4.25 2.875 270) (size 0.3 1.25) (layers 4_bot B.Paste B.Mask) + (net 13 /hackrf_if/LCD_DB15)) + (pad 16 smd rect (at -4.75 2.875 270) (size 0.3 1.25) (layers 4_bot B.Paste B.Mask) + (net 47 GND)) + (pad 15 smd rect (at -5.25 2.875 270) (size 0.3 1.25) (layers 4_bot B.Paste B.Mask) + (net 47 GND)) + (pad 14 smd rect (at -5.75 2.875 270) (size 0.3 1.25) (layers 4_bot B.Paste B.Mask) + (net 47 GND)) + (pad 13 smd rect (at -6.25 2.875 270) (size 0.3 1.25) (layers 4_bot B.Paste B.Mask) + (net 47 GND)) + (pad 12 smd rect (at -6.75 2.875 270) (size 0.3 1.25) (layers 4_bot B.Paste B.Mask) + (net 47 GND)) + (pad 11 smd rect (at -7.25 2.875 270) (size 0.3 1.25) (layers 4_bot B.Paste B.Mask) + (net 47 GND)) + (pad 10 smd rect (at -7.75 2.875 270) (size 0.3 1.25) (layers 4_bot B.Paste B.Mask) + (net 23 /hackrf_if/LCD_RESET#)) + (pad 9 smd rect (at -8.25 2.875 270) (size 0.3 1.25) (layers 4_bot B.Paste B.Mask) + (net 47 GND)) + (pad 8 smd rect (at -8.75 2.875 270) (size 0.3 1.25) (layers 4_bot B.Paste B.Mask) + (net 47 GND)) + (pad 7 smd rect (at -9.25 2.875 270) (size 0.3 1.25) (layers 4_bot B.Paste B.Mask) + (net 47 GND)) + (pad 6 smd rect (at -9.75 2.875 270) (size 0.3 1.25) (layers 4_bot B.Paste B.Mask) + (net 122 +1V8)) + (pad 5 smd rect (at -10.25 2.875 270) (size 0.3 1.25) (layers 4_bot B.Paste B.Mask) + (net 69 /lcd_sw_sd/LEDK4)) + (pad 4 smd rect (at -10.75 2.875 270) (size 0.3 1.25) (layers 4_bot B.Paste B.Mask) + (net 68 /lcd_sw_sd/LEDK3)) + (pad 3 smd rect (at -11.25 2.875 270) (size 0.3 1.25) (layers 4_bot B.Paste B.Mask) + (net 66 /lcd_sw_sd/LEDK2)) + (pad 2 smd rect (at -11.75 2.875 270) (size 0.3 1.25) (layers 4_bot B.Paste B.Mask) + (net 67 /lcd_sw_sd/LEDK1)) + (pad 1 smd rect (at -12.25 2.875 270) (size 0.3 1.25) (layers 4_bot B.Paste B.Mask) + (net 121 +3V3)) + (model ${KISBLIB}/eastrising.pretty/ER-CON50HT-1.wrl + (at (xyz 0 0 0)) + (scale (xyz 0.3937 0.3937 0.3937)) + (rotate (xyz 0 0 180)) + ) + ) + + (module alps:ALPS_SCHA4B0419 (layer 4_bot) (tedit 5BD22B53) (tstamp 58FBAA83) + (at 68.4 114.6 180) + (path /53A9129D/53A8C6D0) + (attr smd) + (fp_text reference J2 (at -8.4 -6.5 270) (layer B.SilkS) + (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) + ) + (fp_text value MICROSD_DETSW (at 0 0 180) (layer B.Fab) + (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) + ) + (fp_line (start 0.27 -6.9725) (end -7.66 -6.9725) (layer B.SilkS) (width 0.12)) + (fp_line (start -7.6 -6.9125) (end -7.6 6.9125) (layer B.Fab) (width 0.025)) + (fp_line (start -7.6 6.9125) (end 7.65 6.9125) (layer B.Fab) (width 0.025)) + (fp_line (start 7.65 6.9125) (end 7.65 -6.9125) (layer B.Fab) (width 0.025)) + (fp_line (start 7.65 -6.9125) (end -7.6 -6.9125) (layer B.Fab) (width 0.025)) + (fp_line (start -7.66 -6.9725) (end -7.66 -5.5) (layer B.SilkS) (width 0.12)) + (fp_line (start -7.66 6.9725) (end 6.62 6.9725) (layer B.SilkS) (width 0.12)) + (fp_line (start 7.71 5.92) (end 7.71 -5.9) (layer B.SilkS) (width 0.12)) + (fp_line (start 6.42 -6.9725) (end 5.26 -6.9725) (layer B.SilkS) (width 0.12)) + (fp_line (start 0.95 -6.0125) (end -3.45 -6.0125) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.95 2.8875) (end 0.95 -6.0125) (layer B.CrtYd) (width 0.05)) + (fp_line (start -3.45 2.8875) (end 0.95 2.8875) (layer B.CrtYd) (width 0.05)) + (fp_line (start -3.45 -6.0125) (end -3.45 2.8875) (layer B.CrtYd) (width 0.05)) + (fp_line (start -7.45 1.0375) (end -7.45 -1.4675) (layer B.CrtYd) (width 0.05)) + (fp_line (start -5.2 1.0375) (end -7.45 1.0375) (layer B.CrtYd) (width 0.05)) + (fp_line (start -5.2 -2.5125) (end -5.2 1.0375) (layer B.CrtYd) (width 0.05)) + (fp_line (start -6.6 -2.5125) (end -5.2 -2.5125) (layer B.CrtYd) (width 0.05)) + (fp_line (start -6.6 -1.4675) (end -6.6 -2.5125) (layer B.CrtYd) (width 0.05)) + (fp_line (start -7.45 -1.4675) (end -6.6 -1.4675) (layer B.CrtYd) (width 0.05)) + (fp_line (start 9.05 -5.5) (end 9.06 3.5) (layer B.CrtYd) (width 0.05)) + (fp_line (start 9.95 -5.5) (end 9.95 3.5) (layer B.CrtYd) (width 0.05)) + (fp_line (start 13.25 -5.5) (end 13.25 3.5) (layer B.CrtYd) (width 0.05)) + (fp_line (start -7.66 6.9725) (end -7.66 6.85) (layer B.SilkS) (width 0.12)) + (fp_line (start -7.66 -2.97) (end -7.66 2.37) (layer B.SilkS) (width 0.12)) + (fp_line (start -7.66 3.38) (end -7.66 5.17) (layer B.SilkS) (width 0.12)) + (fp_line (start 7.95 5.85) (end 7.95 7.3) (layer B.CrtYd) (width 0.05)) + (fp_line (start 7.9 5.85) (end 7.95 5.85) (layer B.CrtYd) (width 0.05)) + (fp_line (start 7.9 -5.8) (end 7.9 5.85) (layer B.CrtYd) (width 0.05)) + (fp_line (start 8 -5.8) (end 7.9 -5.8) (layer B.CrtYd) (width 0.05)) + (fp_line (start 8 -7.1) (end 8 -5.8) (layer B.CrtYd) (width 0.05)) + (fp_line (start 7.9 -7.1) (end 8 -7.1) (layer B.CrtYd) (width 0.05)) + (fp_line (start 7.9 -7.1625) (end 7.9 -7.1) (layer B.CrtYd) (width 0.05)) + (fp_line (start 5.35 -7.1625) (end 7.9 -7.1625) (layer B.CrtYd) (width 0.05)) + (fp_line (start 5.35 -7.6) (end 5.35 -7.1625) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.2 -7.6) (end 5.35 -7.6) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.2 -7.1625) (end 0.2 -7.6) (layer B.CrtYd) (width 0.05)) + (fp_line (start -7.85 -7.1625) (end 0.2 -7.1625) (layer B.CrtYd) (width 0.05)) + (fp_line (start -7.85 -5.6) (end -7.85 -7.1625) (layer B.CrtYd) (width 0.05)) + (fp_line (start -8.1 -5.6) (end -7.85 -5.6) (layer B.CrtYd) (width 0.05)) + (fp_line (start -8.1 -2.9) (end -8.1 -5.6) (layer B.CrtYd) (width 0.05)) + (fp_line (start -7.85 -2.9) (end -8.1 -2.9) (layer B.CrtYd) (width 0.05)) + (fp_line (start -7.85 2.3) (end -7.85 -2.9) (layer B.CrtYd) (width 0.05)) + (fp_line (start -8.1 2.3) (end -7.85 2.3) (layer B.CrtYd) (width 0.05)) + (fp_line (start -8.1 3.45) (end -8.1 2.3) (layer B.CrtYd) (width 0.05)) + (fp_line (start -7.85 3.45) (end -8.1 3.45) (layer B.CrtYd) (width 0.05)) + (fp_line (start -7.85 5.1) (end -7.85 3.45) (layer B.CrtYd) (width 0.05)) + (fp_line (start -8.1 5.1) (end -7.85 5.1) (layer B.CrtYd) (width 0.05)) + (fp_line (start -8.1 6.95) (end -8.1 5.1) (layer B.CrtYd) (width 0.05)) + (fp_line (start -7.85 6.95) (end -8.1 6.95) (layer B.CrtYd) (width 0.05)) + (fp_line (start -7.85 7.1625) (end -7.85 6.95) (layer B.CrtYd) (width 0.05)) + (fp_line (start 6.55 7.1625) (end -7.85 7.1625) (layer B.CrtYd) (width 0.05)) + (fp_line (start 6.55 7.3) (end 6.55 7.1625) (layer B.CrtYd) (width 0.05)) + (fp_line (start 7.95 7.3) (end 6.55 7.3) (layer B.CrtYd) (width 0.05)) + (fp_text user OVERSTROKE (at 8.9 -0.9 90) (layer B.CrtYd) + (effects (font (size 0.2 0.2) (thickness 0.05)) (justify mirror)) + ) + (fp_text user INSERTED (at 9.8 -0.9 90) (layer B.CrtYd) + (effects (font (size 0.2 0.2) (thickness 0.05)) (justify mirror)) + ) + (fp_text user EJECTED (at 13.1 -0.9 90) (layer B.CrtYd) + (effects (font (size 0.2 0.2) (thickness 0.05)) (justify mirror)) + ) + (fp_text user %R (at 0 0 180) (layer B.Fab) + (effects (font (size 1 1) (thickness 0.025)) (justify mirror)) + ) + (pad SH smd rect (at 2.765 -7.1225 90) (size 0.42 4.63) (layers 4_bot B.Paste B.Mask) + (net 47 GND)) + (pad 8 smd rect (at 4.475 -4.775 90) (size 0.7 0.75) (layers 4_bot B.Paste B.Mask) + (net 32 /hackrf_if/SD_DAT1)) + (pad 7 smd rect (at 4.475 -3.775 90) (size 0.7 0.75) (layers 4_bot B.Paste B.Mask) + (net 31 /hackrf_if/SD_DAT0)) + (pad 6 smd rect (at 4.475 -2.775 90) (size 0.7 0.75) (layers 4_bot B.Paste B.Mask) + (net 47 GND)) + (pad 5 smd rect (at 4.475 -1.775 90) (size 0.7 0.75) (layers 4_bot B.Paste B.Mask) + (net 29 /hackrf_if/SD_CLK)) + (pad 4 smd rect (at 4.475 -0.775 90) (size 0.7 0.75) (layers 4_bot B.Paste B.Mask) + (net 121 +3V3)) + (pad 3 smd rect (at 4.475 0.225 90) (size 0.7 0.75) (layers 4_bot B.Paste B.Mask) + (net 30 /hackrf_if/SD_CMD)) + (pad 2 smd rect (at 4.475 1.225 90) (size 0.7 0.75) (layers 4_bot B.Paste B.Mask) + (net 34 /hackrf_if/SD_DAT3)) + (pad 1 smd rect (at 4.475 2.225 90) (size 0.7 0.75) (layers 4_bot B.Paste B.Mask) + (net 33 /hackrf_if/SD_DAT2)) + (pad 0 smd rect (at 5.675 0.725 90) (size 0.7 0.65) (layers 4_bot B.Paste B.Mask) + (net 47 GND)) + (pad 0 smd rect (at 5.675 -3.275 90) (size 0.7 0.65) (layers 4_bot B.Paste B.Mask) + (net 47 GND)) + (pad SH smd rect (at 7.25 6.575 90) (size 0.95 0.9) (layers 4_bot B.Paste B.Mask) + (net 47 GND)) + (pad SH smd rect (at 7.175 -6.46 90) (size 0.745 1.15) (layers 4_bot B.Paste B.Mask) + (net 47 GND)) + (pad SH smd rect (at -7.425 6.0125 90) (size 1.3 0.85) (layers 4_bot B.Paste B.Mask) + (net 47 GND)) + (pad B smd rect (at -7.475 2.875 90) (size 0.65 0.75) (layers 4_bot B.Paste B.Mask) + (net 28 /hackrf_if/SD_CD)) + (pad A smd rect (at -7.475 -3.475 90) (size 0.65 0.75) (layers 4_bot B.Paste B.Mask) + (net 47 GND)) + (pad SH smd rect (at -7.425 -4.7125 90) (size 1.2 0.85) (layers 4_bot B.Paste B.Mask) + (net 47 GND)) + (model ${KISBLIB}/alps.pretty/SCHA4B0419.STEP + (offset (xyz -7.505 0 1.32)) + (scale (xyz 1 1 1)) + (rotate (xyz 0 0 -90)) + ) + ) + + (module header:HEADER_11X2_REV_SM_254_AP locked (layer 4_bot) (tedit 5BD22CA3) (tstamp 53AA299C) + (at 123.5 143.25 90) + (descr "MLE TSHSM-1") + (path /53A8C780/53A8CDBE) + (attr smd) + (fp_text reference P28 (at -14.85 3.6 180) (layer B.SilkS) + (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) + ) + (fp_text value HACKRF_ONE_P28 (at 0 0 90) (layer B.Fab) + (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) + ) + (fp_line (start 13.39 2.5) (end 13.97 2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start 13.39 -2.5) (end 13.97 -2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start 10.85 2.5) (end 12.01 2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start 10.85 -2.5) (end 12.01 -2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start 8.31 2.5) (end 9.47 2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start 8.31 -2.5) (end 9.47 -2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start 5.77 2.5) (end 6.93 2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start 5.77 -2.5) (end 6.93 -2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start 3.23 2.5) (end 4.39 2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start 3.23 -2.5) (end 4.39 -2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start 0.69 2.5) (end 1.85 2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start 0.69 -2.5) (end 1.85 -2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start -1.85 2.5) (end -0.69 2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start -1.85 -2.5) (end -0.69 -2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start -4.39 2.5) (end -3.23 2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start -4.39 -2.5) (end -3.23 -2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start -6.93 2.5) (end -5.77 2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start -6.93 -2.5) (end -5.77 -2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start -9.47 2.5) (end -8.31 2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start -9.47 -2.5) (end -8.31 -2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start -12.01 2.5) (end -10.85 2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start 13.97 -2.5) (end -13.97 -2.5) (layer B.Fab) (width 0.025)) + (fp_line (start 13.97 2.5) (end 13.97 -2.5) (layer B.Fab) (width 0.025)) + (fp_line (start -13.97 2.5) (end 13.97 2.5) (layer B.Fab) (width 0.025)) + (fp_line (start -13.97 -2.5) (end -13.97 2.5) (layer B.Fab) (width 0.025)) + (fp_line (start 13.97 2.5) (end 13.97 -2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start -13.97 -2.5) (end -13.97 2.5) (layer B.SilkS) (width 0.12)) + (fp_circle (center -14 3.025) (end -14 2.9) (layer B.SilkS) (width 0.25)) + (fp_line (start -14.47 4.82) (end 14.47 4.82) (layer B.CrtYd) (width 0.05)) + (fp_line (start 14.47 4.82) (end 14.47 -4.82) (layer B.CrtYd) (width 0.05)) + (fp_line (start 14.47 -4.82) (end -14.47 -4.82) (layer B.CrtYd) (width 0.05)) + (fp_line (start -14.47 -4.82) (end -14.47 4.82) (layer B.CrtYd) (width 0.05)) + (fp_line (start -13.97 2.5) (end -13.39 2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start -12.01 -2.5) (end -10.85 -2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start -13.97 -2.5) (end -13.39 -2.5) (layer B.SilkS) (width 0.12)) + (fp_text user %R (at 0 0 90) (layer B.Fab) + (effects (font (size 1 1) (thickness 0.025)) (justify mirror)) + ) + (pad "" np_thru_hole circle (at 11.43 0) (size 1.95 1.95) (drill 1.95) (layers *.Cu *.Mask) + (clearance 0.4)) + (pad "" np_thru_hole circle (at -11.43 0) (size 1.95 1.95) (drill 1.95) (layers *.Cu *.Mask) + (clearance 0.4)) + (pad 21 smd rect (at 12.7 2.73) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask)) + (pad 22 smd rect (at 12.7 -2.73) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask)) + (pad 19 smd rect (at 10.16 2.73) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) + (net 85 /hackrf_if/I2S0_RX_SDA)) + (pad 20 smd rect (at 10.16 -2.73) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask)) + (pad 17 smd rect (at 7.62 2.73) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) + (net 65 /hackrf_if/H1_CPLD_TCK)) + (pad 18 smd rect (at 7.62 -2.73) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask)) + (pad 15 smd rect (at 5.08 2.73) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask)) + (pad 16 smd rect (at 5.08 -2.73) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask)) + (pad 13 smd rect (at 2.54 2.73) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask)) + (pad 14 smd rect (at 2.54 -2.73) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask)) + (pad 11 smd rect (at 0 2.73) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) + (net 29 /hackrf_if/SD_CLK)) + (pad 12 smd rect (at 0 -2.73) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) + (net 47 GND)) + (pad 9 smd rect (at -2.54 2.73) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) + (net 30 /hackrf_if/SD_CMD)) + (pad 10 smd rect (at -2.54 -2.73) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) + (net 64 /hackrf_if/PP_CPLD_TDO)) + (pad 7 smd rect (at -5.08 2.73) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) + (net 31 /hackrf_if/SD_DAT0)) + (pad 8 smd rect (at -5.08 -2.73) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) + (net 63 /hackrf_if/PP_CPLD_TMS)) + (pad 5 smd rect (at -7.62 2.73) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) + (net 33 /hackrf_if/SD_DAT2)) + (pad 6 smd rect (at -7.62 -2.73) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) + (net 32 /hackrf_if/SD_DAT1)) + (pad 3 smd rect (at -10.16 2.73) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) + (net 28 /hackrf_if/SD_CD)) + (pad 4 smd rect (at -10.16 -2.73) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) + (net 34 /hackrf_if/SD_DAT3)) + (pad 1 smd rect (at -12.7 2.73) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) + (net 121 +3V3)) + (pad 2 smd rect (at -12.7 -2.73) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) + (net 47 GND)) + (model ${KISBLIB}/header.pretty/TSM-111-01-L-DV-A-P-TR.stp + (offset (xyz 0 0 2.54)) + (scale (xyz 1 1 1)) + (rotate (xyz -90 0 0)) + ) + ) + + (module header:HEADER_11X2_REV_SM_254_AP locked (layer 4_bot) (tedit 5BD22C3E) (tstamp 53AA295A) + (at 171.76 143.25 90) + (descr "MLE TSHSM-1") + (path /53A8C780/53A8CDAE) + (attr smd) + (fp_text reference P20 (at -14.05 4.34 180) (layer B.SilkS) + (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) + ) + (fp_text value HACKRF_ONE_P20 (at 0 0 90) (layer B.Fab) + (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) + ) + (fp_line (start 13.39 2.5) (end 13.97 2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start 13.39 -2.5) (end 13.97 -2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start 10.85 2.5) (end 12.01 2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start 10.85 -2.5) (end 12.01 -2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start 8.31 2.5) (end 9.47 2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start 8.31 -2.5) (end 9.47 -2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start 5.77 2.5) (end 6.93 2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start 5.77 -2.5) (end 6.93 -2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start 3.23 2.5) (end 4.39 2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start 3.23 -2.5) (end 4.39 -2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start 0.69 2.5) (end 1.85 2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start 0.69 -2.5) (end 1.85 -2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start -1.85 2.5) (end -0.69 2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start -1.85 -2.5) (end -0.69 -2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start -4.39 2.5) (end -3.23 2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start -4.39 -2.5) (end -3.23 -2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start -6.93 2.5) (end -5.77 2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start -6.93 -2.5) (end -5.77 -2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start -9.47 2.5) (end -8.31 2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start -9.47 -2.5) (end -8.31 -2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start -12.01 2.5) (end -10.85 2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start 13.97 -2.5) (end -13.97 -2.5) (layer B.Fab) (width 0.025)) + (fp_line (start 13.97 2.5) (end 13.97 -2.5) (layer B.Fab) (width 0.025)) + (fp_line (start -13.97 2.5) (end 13.97 2.5) (layer B.Fab) (width 0.025)) + (fp_line (start -13.97 -2.5) (end -13.97 2.5) (layer B.Fab) (width 0.025)) + (fp_line (start 13.97 2.5) (end 13.97 -2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start -13.97 -2.5) (end -13.97 2.5) (layer B.SilkS) (width 0.12)) + (fp_circle (center -14 3.025) (end -14 2.9) (layer B.SilkS) (width 0.25)) + (fp_line (start -14.47 4.82) (end 14.47 4.82) (layer B.CrtYd) (width 0.05)) + (fp_line (start 14.47 4.82) (end 14.47 -4.82) (layer B.CrtYd) (width 0.05)) + (fp_line (start 14.47 -4.82) (end -14.47 -4.82) (layer B.CrtYd) (width 0.05)) + (fp_line (start -14.47 -4.82) (end -14.47 4.82) (layer B.CrtYd) (width 0.05)) + (fp_line (start -13.97 2.5) (end -13.39 2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start -12.01 -2.5) (end -10.85 -2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start -13.97 -2.5) (end -13.39 -2.5) (layer B.SilkS) (width 0.12)) + (fp_text user %R (at 0 0 90) (layer B.Fab) + (effects (font (size 1 1) (thickness 0.025)) (justify mirror)) + ) + (pad "" np_thru_hole circle (at 11.43 0) (size 1.95 1.95) (drill 1.95) (layers *.Cu *.Mask) + (clearance 0.4)) + (pad "" np_thru_hole circle (at -11.43 0) (size 1.95 1.95) (drill 1.95) (layers *.Cu *.Mask) + (clearance 0.4)) + (pad 21 smd rect (at 12.7 2.73) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) + (net 99 /hackrf_if/VBUS)) + (pad 22 smd rect (at 12.7 -2.73) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) + (net 72 /power/AUDIO_SVDD)) + (pad 19 smd rect (at 10.16 2.73) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) + (net 47 GND)) + (pad 20 smd rect (at 10.16 -2.73) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) + (net 45 /hackrf_if/TP_U)) + (pad 17 smd rect (at 7.62 2.73) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) + (net 100 /hackrf_if/VBUSCTRL)) + (pad 18 smd rect (at 7.62 -2.73) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) + (net 43 /hackrf_if/TP_L)) + (pad 15 smd rect (at 5.08 2.73) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) + (net 47 GND)) + (pad 16 smd rect (at 5.08 -2.73) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) + (net 42 /hackrf_if/TP_D)) + (pad 13 smd rect (at 2.54 2.73) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) + (net 47 GND)) + (pad 14 smd rect (at 2.54 -2.73) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) + (net 44 /hackrf_if/TP_R)) + (pad 11 smd rect (at 0 2.73) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) + (net 56 /hackrf_if/MCU_D6)) + (pad 12 smd rect (at 0 -2.73) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) + (net 55 /hackrf_if/MCU_D7)) + (pad 9 smd rect (at -2.54 2.73) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) + (net 54 /hackrf_if/MCU_D4)) + (pad 10 smd rect (at -2.54 -2.73) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) + (net 53 /hackrf_if/MCU_D5)) + (pad 7 smd rect (at -5.08 2.73) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) + (net 52 /hackrf_if/MCU_D2)) + (pad 8 smd rect (at -5.08 -2.73) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) + (net 51 /hackrf_if/MCU_D3)) + (pad 5 smd rect (at -7.62 2.73) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) + (net 50 /hackrf_if/MCU_D0)) + (pad 6 smd rect (at -7.62 -2.73) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) + (net 49 /hackrf_if/MCU_D1)) + (pad 3 smd rect (at -10.16 2.73) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) + (net 121 +3V3)) + (pad 4 smd rect (at -10.16 -2.73) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask)) + (pad 1 smd rect (at -12.7 2.73) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) + (net 46 /hackrf_if/VBAT)) + (pad 2 smd rect (at -12.7 -2.73) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask)) + (model ${KISBLIB}/header.pretty/TSM-111-01-L-DV-A-P-TR.stp + (offset (xyz 0 0 2.54)) + (scale (xyz 1 1 1)) + (rotate (xyz -90 0 0)) + ) + ) + + (module header:HEADER_13X2_REV_SM_254_AP locked (layer 4_bot) (tedit 5BD22C70) (tstamp 53AA297D) + (at 152.71 164.84 180) + (descr "MLE TSHSM-1") + (path /53A8C780/53A8CDB6) + (attr smd) + (fp_text reference P22 (at -16.59 4.29 270) (layer B.SilkS) + (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) + ) + (fp_text value HACKRF_ONE_P22 (at 0 0 180) (layer B.Fab) + (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) + ) + (fp_line (start 13.39 2.5) (end 14.55 2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start 13.39 -2.5) (end 14.55 -2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start 10.85 2.5) (end 12.01 2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start 10.85 -2.5) (end 12.01 -2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start 8.31 2.5) (end 9.47 2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start 8.31 -2.5) (end 9.47 -2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start 5.77 2.5) (end 6.93 2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start 5.77 -2.5) (end 6.93 -2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start 3.23 2.5) (end 4.39 2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start 3.23 -2.5) (end 4.39 -2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start 0.69 2.5) (end 1.85 2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start 0.69 -2.5) (end 1.85 -2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start -1.85 2.5) (end -0.69 2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start -1.85 -2.5) (end -0.69 -2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start -4.39 2.5) (end -3.23 2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start -4.39 -2.5) (end -3.23 -2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start -6.93 2.5) (end -5.77 2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start -6.93 -2.5) (end -5.77 -2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start -9.47 2.5) (end -8.31 2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start -9.47 -2.5) (end -8.31 -2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start -12.01 2.5) (end -10.85 2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start -12.01 -2.5) (end -10.85 -2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start -14.55 2.5) (end -13.39 2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start 16.51 -2.5) (end -16.51 -2.5) (layer B.Fab) (width 0.025)) + (fp_line (start 16.51 2.5) (end 16.51 -2.5) (layer B.Fab) (width 0.025)) + (fp_line (start -16.51 2.5) (end 16.51 2.5) (layer B.Fab) (width 0.025)) + (fp_line (start -16.51 -2.5) (end -16.51 2.5) (layer B.Fab) (width 0.025)) + (fp_line (start -15.93 -2.5) (end -16.51 -2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start 16.51 2.5) (end 16.51 -2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start -16.51 2.5) (end -15.93 2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start -16.51 -2.5) (end -16.51 2.5) (layer B.SilkS) (width 0.12)) + (fp_circle (center -16.6 3.025) (end -16.6 2.9) (layer B.SilkS) (width 0.25)) + (fp_line (start -17.01 4.82) (end 17.01 4.82) (layer B.CrtYd) (width 0.05)) + (fp_line (start 17.01 4.82) (end 17.01 -4.82) (layer B.CrtYd) (width 0.05)) + (fp_line (start 17.01 -4.82) (end -17.01 -4.82) (layer B.CrtYd) (width 0.05)) + (fp_line (start -17.01 -4.82) (end -17.01 4.82) (layer B.CrtYd) (width 0.05)) + (fp_line (start 15.93 -2.5) (end 16.51 -2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start 16.51 2.5) (end 15.93 2.5) (layer B.SilkS) (width 0.12)) + (fp_line (start -14.55 -2.5) (end -13.39 -2.5) (layer B.SilkS) (width 0.12)) + (fp_text user %R (at 0 0 180) (layer B.Fab) + (effects (font (size 1 1) (thickness 0.025)) (justify mirror)) + ) + (pad "" np_thru_hole circle (at 13.97 0 90) (size 1.95 1.95) (drill 1.95) (layers *.Cu *.Mask) + (clearance 0.4)) + (pad "" np_thru_hole circle (at -13.97 0 90) (size 1.95 1.95) (drill 1.95) (layers *.Cu *.Mask) + (clearance 0.4)) + (pad 25 smd rect (at 15.24 2.73 90) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask)) + (pad 26 smd rect (at 15.24 -2.73 90) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) + (net 3 /audio/SCL)) + (pad 23 smd rect (at 12.7 2.73 90) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) + (net 27 /hackrf_if/P2_8)) + (pad 24 smd rect (at 12.7 -2.73 90) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) + (net 4 /audio/SDA)) + (pad 21 smd rect (at 10.16 2.73 90) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) + (net 62 /hackrf_if/MCU_LCD_WR)) + (pad 22 smd rect (at 10.16 -2.73 90) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) + (net 61 /hackrf_if/MCU_DIR)) + (pad 19 smd rect (at 7.62 2.73 90) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) + (net 60 /hackrf_if/MCU_ADDR)) + (pad 20 smd rect (at 7.62 -2.73 90) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) + (net 59 /hackrf_if/MCU_IO_STBX)) + (pad 17 smd rect (at 5.08 2.73 90) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) + (net 84 /hackrf_if/I2S0_MCLK)) + (pad 18 smd rect (at 5.08 -2.73 90) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) + (net 47 GND)) + (pad 15 smd rect (at 2.54 2.73 90) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) + (net 83 /hackrf_if/I2S0_WS)) + (pad 16 smd rect (at 2.54 -2.73 90) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) + (net 82 /audio/BICK)) + (pad 13 smd rect (at 0 2.73 90) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) + (net 81 /hackrf_if/I2S0_TX_SDA)) + (pad 14 smd rect (at 0 -2.73 90) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask)) + (pad 11 smd rect (at -2.54 2.73 90) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) + (net 121 +3V3)) + (pad 12 smd rect (at -2.54 -2.73 90) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask)) + (pad 9 smd rect (at -5.08 2.73 90) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask)) + (pad 10 smd rect (at -5.08 -2.73 90) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) + (net 47 GND)) + (pad 7 smd rect (at -7.62 2.73 90) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask)) + (pad 8 smd rect (at -7.62 -2.73 90) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask)) + (pad 5 smd rect (at -10.16 2.73 90) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) + (net 58 /hackrf_if/MCU_LCD_RD)) + (pad 6 smd rect (at -10.16 -2.73 90) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) + (net 57 /hackrf_if/MCU_LCD_TE)) + (pad 3 smd rect (at -12.7 2.73 90) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) + (net 113 /hackrf_if/RESET#)) + (pad 4 smd rect (at -12.7 -2.73 90) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) + (net 47 GND)) + (pad 1 smd rect (at -15.24 2.73 90) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask)) + (pad 2 smd rect (at -15.24 -2.73 90) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) + (net 70 /hackrf_if/CLKIN)) + (model ${KISBLIB}/header.pretty/TSM-113-01-L-DV-A-P-TR.stp + (offset (xyz 0 0 2.54)) + (scale (xyz 1 1 1)) + (rotate (xyz -90 0 0)) + ) + ) + + (module bat_coin:MPD_BU2032SM-BT-G (layer 4_bot) (tedit 5BD22CB3) (tstamp 53AA25F0) + (at 96 162) + (path /58CFF3E3/58D008D0) + (attr smd) + (fp_text reference BT1 (at 13.6 -4.05) (layer B.SilkS) + (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) + ) + (fp_text value BATTERY (at 0 0) (layer B.Fab) + (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) + ) + (fp_line (start 14.3 3.5) (end 10.639 3.5) (layer B.Fab) (width 0.025)) + (fp_line (start 14.3 -3.5) (end 14.3 3.5) (layer B.Fab) (width 0.025)) + (fp_line (start 10.639 -3.5) (end 14.3 -3.5) (layer B.Fab) (width 0.025)) + (fp_line (start -14.3 3.5) (end -10.639 3.5) (layer B.Fab) (width 0.025)) + (fp_line (start -14.3 -3.5) (end -14.3 3.5) (layer B.Fab) (width 0.025)) + (fp_line (start -10.639 -3.5) (end -14.3 -3.5) (layer B.Fab) (width 0.025)) + (fp_line (start 7.838 -8) (end -7.838 -8) (layer B.Fab) (width 0.025)) + (fp_line (start 7.838 8) (end -7.838 8) (layer B.Fab) (width 0.025)) + (fp_arc (start 0 0) (end -7.838 -8) (angle -91.1) (layer B.Fab) (width 0.025)) + (fp_arc (start 0 0) (end 7.838 8) (angle -91.1) (layer B.Fab) (width 0.025)) + (fp_line (start 11.5 4.5) (end 11.5 5.5) (layer B.Fab) (width 0.025)) + (fp_line (start 12 5) (end 11 5) (layer B.Fab) (width 0.025)) + (fp_line (start -14.8 2.6) (end -14.8 4) (layer B.CrtYd) (width 0.05)) + (fp_line (start 14.8 4) (end 10.995 4) (layer B.CrtYd) (width 0.05)) + (fp_line (start 14.8 -4) (end 14.8 -2.6) (layer B.CrtYd) (width 0.05)) + (fp_line (start 10.995 -4) (end 14.8 -4) (layer B.CrtYd) (width 0.05)) + (fp_line (start -14.8 4) (end -10.995 4) (layer B.CrtYd) (width 0.05)) + (fp_line (start -14.8 -4) (end -14.8 -2.6) (layer B.CrtYd) (width 0.05)) + (fp_line (start -10.995 -4) (end -14.8 -4) (layer B.CrtYd) (width 0.05)) + (fp_line (start 6.164 -8.5) (end 8.04 -8.5) (layer B.CrtYd) (width 0.05)) + (fp_line (start -8.04 -8.5) (end -6.164 -8.5) (layer B.CrtYd) (width 0.05)) + (fp_line (start -6.164 8.5) (end -8.04 8.5) (layer B.CrtYd) (width 0.05)) + (fp_line (start 8.04 8.5) (end 6.164 8.5) (layer B.CrtYd) (width 0.05)) + (fp_arc (start 0 0) (end -10.995 4) (angle -26.5) (layer B.CrtYd) (width 0.05)) + (fp_arc (start 0 0) (end 10.995 -4) (angle -26.5) (layer B.CrtYd) (width 0.05)) + (fp_arc (start 0 0) (end -8.04 -8.5) (angle -26.6) (layer B.CrtYd) (width 0.05)) + (fp_arc (start 0 0) (end 8.04 8.5) (angle -26.6) (layer B.CrtYd) (width 0.05)) + (fp_arc (start 0 0) (end -6.164 8.5) (angle -71.8) (layer B.CrtYd) (width 0.05)) + (fp_arc (start 0 0) (end 6.164 -8.5) (angle -71.8) (layer B.CrtYd) (width 0.05)) + (fp_line (start 14.3 3.5) (end 10.639 3.5) (layer B.SilkS) (width 0.12)) + (fp_line (start 10.639 -3.5) (end 14.3 -3.5) (layer B.SilkS) (width 0.12)) + (fp_line (start -14.3 3.5) (end -10.639 3.5) (layer B.SilkS) (width 0.12)) + (fp_line (start -10.639 -3.5) (end -14.3 -3.5) (layer B.SilkS) (width 0.12)) + (fp_line (start 7.838 -8) (end -7.838 -8) (layer B.SilkS) (width 0.12)) + (fp_line (start 7.838 8) (end -7.838 8) (layer B.SilkS) (width 0.12)) + (fp_arc (start 0 0) (end -7.838 -8) (angle -91.1) (layer B.SilkS) (width 0.12)) + (fp_arc (start 0 0) (end 7.838 8) (angle -91.1) (layer B.SilkS) (width 0.12)) + (fp_line (start 11.5 4.5) (end 11.5 5.5) (layer B.SilkS) (width 0.12)) + (fp_line (start 12 5) (end 11 5) (layer B.SilkS) (width 0.12)) + (fp_line (start 16.65 -2.6) (end 14.8 -2.6) (layer B.CrtYd) (width 0.05)) + (fp_line (start 16.65 2.6) (end 16.65 -2.6) (layer B.CrtYd) (width 0.05)) + (fp_line (start 14.8 2.6) (end 16.65 2.6) (layer B.CrtYd) (width 0.05)) + (fp_line (start 14.8 2.6) (end 14.8 4) (layer B.CrtYd) (width 0.05)) + (fp_line (start -14.8 -2.6) (end -16.75 -2.6) (layer B.CrtYd) (width 0.05)) + (fp_line (start -16.75 -2.6) (end -16.75 2.6) (layer B.CrtYd) (width 0.05)) + (fp_line (start -16.75 2.6) (end -14.8 2.6) (layer B.CrtYd) (width 0.05)) + (fp_line (start -14.3 -3.5) (end -14.3 -2.28) (layer B.SilkS) (width 0.12)) + (fp_line (start -14.3 3.5) (end -14.3 2.28) (layer B.SilkS) (width 0.12)) + (fp_line (start 14.3 -3.5) (end 14.3 -2.28) (layer B.SilkS) (width 0.12)) + (fp_line (start 14.3 3.5) (end 14.3 2.28) (layer B.SilkS) (width 0.12)) + (fp_text user %R (at 0 0) (layer B.Fab) + (effects (font (size 1 1) (thickness 0.025)) (justify mirror)) + ) + (pad 2 smd rect (at -14.65 0 180) (size 3.2 4.2) (layers 4_bot B.Paste B.Mask) + (net 47 GND)) + (pad 1 smd rect (at 14.65 0 180) (size 3.2 4.2) (layers 4_bot B.Paste B.Mask) + (net 46 /hackrf_if/VBAT)) + (model ${KISBLIB}/bat_coin.pretty/BU2032SM-BT-GTR.STEP + (at (xyz 0 0 0)) + (scale (xyz 1 1 1)) + (rotate (xyz 90 180 0)) + ) + ) + + (module ipc_osccc:IPC_OSCCC320X250X110L75X100N (layer 4_bot) (tedit 5BD22C65) (tstamp 5B7B01BE) (at 175 163.65 270) (path /58CFF3E3/5B682C80) (attr smd) @@ -405,7 +1056,7 @@ (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) (fp_text user %R (at 0 0 270) (layer B.Fab) - (effects (font (size 0.6096 0.6096) (thickness 0.025)) (justify mirror)) + (effects (font (size 1 1) (thickness 0.025)) (justify mirror)) ) (fp_line (start -1.6 1.25) (end 1.6 1.25) (layer B.Fab) (width 0.025)) (fp_line (start 1.6 1.25) (end 1.6 -1.25) (layer B.Fab) (width 0.025)) @@ -435,7 +1086,7 @@ ) ) - (module ublox:MAX-M8 (layer 4_bot) (tedit 5B7AE9EA) (tstamp 5B7AF914) + (module ublox:MAX-M8 (layer 4_bot) (tedit 5BD22CCB) (tstamp 5B7AF914) (at 73.8 162.55 270) (path /5B7E0B2A/5B7E0C1A) (attr smd) @@ -445,6 +1096,9 @@ (fp_text value MAX-M8 (at 0 0 270) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) + (fp_text user %R (at 0 0 270) (layer B.Fab) + (effects (font (size 1 1) (thickness 0.025)) (justify mirror)) + ) (fp_line (start -4.85 5.05) (end 4.85 5.05) (layer B.Fab) (width 0.025)) (fp_line (start -4.85 -5.05) (end -4.85 5.05) (layer B.Fab) (width 0.025)) (fp_line (start 4.85 -5.05) (end -4.85 -5.05) (layer B.Fab) (width 0.025)) @@ -502,7 +1156,7 @@ ) ) - (module ipc_son:IPC_SON9P50_200X200X100L30X25T80X120N (layer 4_bot) (tedit 5B79FEB8) (tstamp 58E5E2FF) + (module ipc_son:IPC_SON9P50_200X200X100L30X25T80X120N (layer 4_bot) (tedit 5BD22FF5) (tstamp 58E5E2FF) (at 165 109.6) (path /53A8BFC3/58D9A047) (attr smd) @@ -512,6 +1166,9 @@ (fp_text value NUF4220MN (at 0 0) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) + (fp_text user %R (at 0 0 90) (layer B.Fab) + (effects (font (size 0.6 0.6) (thickness 0.025)) (justify mirror)) + ) (fp_line (start -1.615 1.25) (end 1.615 1.25) (layer B.CrtYd) (width 0.05)) (fp_line (start 1.615 1.25) (end 1.615 -1.25) (layer B.CrtYd) (width 0.05)) (fp_line (start 1.615 -1.25) (end -1.615 -1.25) (layer B.CrtYd) (width 0.05)) @@ -523,32 +1180,32 @@ (fp_line (start 1 1) (end 1 -1) (layer B.Fab) (width 0.025)) (fp_line (start 1 -1) (end -1 -1) (layer B.Fab) (width 0.025)) (fp_line (start -1 -1) (end -1 1) (layer B.Fab) (width 0.025)) - (pad 1 smd oval (at -0.995 0.75 90) (size 0.27 0.74) (layers 4_bot B.Paste B.Mask) + (pad 1 smd rect (at -0.995 0.75 90) (size 0.27 0.74) (layers 4_bot B.Paste B.Mask) (net 1 /audio/LHPOUT)) - (pad 2 smd oval (at -0.995 0.25 90) (size 0.27 0.74) (layers 4_bot B.Paste B.Mask) + (pad 2 smd rect (at -0.995 0.25 90) (size 0.27 0.74) (layers 4_bot B.Paste B.Mask) (net 47 GND)) - (pad 3 smd oval (at -0.995 -0.25 90) (size 0.27 0.74) (layers 4_bot B.Paste B.Mask) + (pad 3 smd rect (at -0.995 -0.25 90) (size 0.27 0.74) (layers 4_bot B.Paste B.Mask) (net 90 /audio/MIC)) - (pad 4 smd oval (at -0.995 -0.75 90) (size 0.27 0.74) (layers 4_bot B.Paste B.Mask) + (pad 4 smd rect (at -0.995 -0.75 90) (size 0.27 0.74) (layers 4_bot B.Paste B.Mask) (net 2 /audio/RHPOUT)) - (pad 5 smd oval (at 0.995 -0.75 270) (size 0.27 0.74) (layers 4_bot B.Paste B.Mask) + (pad 5 smd rect (at 0.995 -0.75 270) (size 0.27 0.74) (layers 4_bot B.Paste B.Mask) (net 89 /audio/RHPOUT_X)) - (pad 6 smd oval (at 0.995 -0.25 270) (size 0.27 0.74) (layers 4_bot B.Paste B.Mask) + (pad 6 smd rect (at 0.995 -0.25 270) (size 0.27 0.74) (layers 4_bot B.Paste B.Mask) (net 86 /audio/MIC_X)) - (pad 7 smd oval (at 0.995 0.25 270) (size 0.27 0.74) (layers 4_bot B.Paste B.Mask) + (pad 7 smd rect (at 0.995 0.25 270) (size 0.27 0.74) (layers 4_bot B.Paste B.Mask) (net 87 /audio/GND_X)) - (pad 8 smd oval (at 0.995 0.75 270) (size 0.27 0.74) (layers 4_bot B.Paste B.Mask) + (pad 8 smd rect (at 0.995 0.75 270) (size 0.27 0.74) (layers 4_bot B.Paste B.Mask) (net 88 /audio/LHPOUT_X)) (pad 9 smd rect (at 0 0) (size 0.8 1.2) (layers 4_bot B.Paste B.Mask) (net 47 GND) (solder_paste_margin -0.1)) - (model Housings_DFN_QFN.3dshapes/DFN-8-1EP_2x2mm_Pitch0.5mm.wrl + (model ${KISYS3DMOD}/Package_DFN_QFN.3dshapes/DFN-8-1EP_2x2mm_P0.5mm_EP1.05x1.75mm.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module ipc_qfn:IPC_QFN33P40_400X400X80L35X20T280N (layer 4_bot) (tedit 5B79B878) (tstamp 58D2EC5D) + (module ipc_qfn:IPC_QFN33P40_400X400X80L35X20T280N (layer 4_bot) (tedit 5BD6998F) (tstamp 58D2EC5D) (at 153.25 110.95 180) (path /53A8BFC3/58CC98F8) (attr smd) @@ -558,280 +1215,118 @@ (fp_text value AK4951EN (at 0 0 180) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) - (fp_line (start -2 -2) (end -2 2) (layer B.Fab) (width 0.025)) - (fp_line (start 2 -2) (end -2 -2) (layer B.Fab) (width 0.025)) - (fp_line (start 2 2) (end 2 -2) (layer B.Fab) (width 0.025)) - (fp_line (start -2 2) (end 2 2) (layer B.Fab) (width 0.025)) - (fp_circle (center -2.73 1.4) (end -2.605 1.4) (layer B.SilkS) (width 0.25)) - (fp_line (start -1.69 2.06) (end -2.06 2.06) (layer B.SilkS) (width 0.12)) - (fp_line (start 2.06 2.06) (end 1.69 2.06) (layer B.SilkS) (width 0.12)) - (fp_line (start 2.06 1.69) (end 2.06 2.06) (layer B.SilkS) (width 0.12)) - (fp_line (start 2.06 -2.06) (end 2.06 -1.69) (layer B.SilkS) (width 0.12)) - (fp_line (start 1.69 -2.06) (end 2.06 -2.06) (layer B.SilkS) (width 0.12)) - (fp_line (start -2.06 -2.06) (end -1.69 -2.06) (layer B.SilkS) (width 0.12)) - (fp_line (start -2.06 -1.69) (end -2.06 -2.06) (layer B.SilkS) (width 0.12)) - (fp_line (start -2.06 2.06) (end -2.06 1.69) (layer B.SilkS) (width 0.12)) - (fp_line (start -2.61 -2.61) (end -2.61 2.61) (layer B.CrtYd) (width 0.05)) - (fp_line (start 2.61 -2.61) (end -2.61 -2.61) (layer B.CrtYd) (width 0.05)) - (fp_line (start 2.61 2.61) (end 2.61 -2.61) (layer B.CrtYd) (width 0.05)) + (fp_poly (pts (xy 0.35 -0.35) (xy 1.25 -0.35) (xy 1.25 -1.25) (xy 0.35 -1.25)) (layer B.Paste) (width 0)) + (fp_poly (pts (xy -1.25 -0.35) (xy -0.35 -0.35) (xy -0.35 -1.25) (xy -1.25 -1.25)) (layer B.Paste) (width 0)) + (fp_poly (pts (xy -1.25 1.25) (xy -0.35 1.25) (xy -0.35 0.35) (xy -1.25 0.35)) (layer B.Paste) (width 0)) + (fp_poly (pts (xy 0.35 1.25) (xy 1.25 1.25) (xy 1.25 0.35) (xy 0.35 0.35)) (layer B.Paste) (width 0)) + (fp_poly (pts (xy 1.35 -0.25) (xy 0.25 -0.25) (xy 0.25 -1.35) (xy 1.35 -1.35)) (layer B.Mask) (width 0)) + (fp_poly (pts (xy -0.25 -0.25) (xy -1.35 -0.25) (xy -1.35 -1.35) (xy -0.25 -1.35)) (layer B.Mask) (width 0)) + (fp_poly (pts (xy -0.25 1.35) (xy -1.35 1.35) (xy -1.35 0.25) (xy -0.25 0.25)) (layer B.Mask) (width 0)) + (fp_poly (pts (xy 1.35 1.35) (xy 0.25 1.35) (xy 0.25 0.25) (xy 1.35 0.25)) (layer B.Mask) (width 0)) (fp_line (start -2.61 2.61) (end 2.61 2.61) (layer B.CrtYd) (width 0.05)) - (pad 33 thru_hole rect (at 0 1.15 180) (size 0.5 0.5) (drill 0.3048) (layers *.Cu B.Mask) + (fp_line (start 2.61 2.61) (end 2.61 -2.61) (layer B.CrtYd) (width 0.05)) + (fp_line (start 2.61 -2.61) (end -2.61 -2.61) (layer B.CrtYd) (width 0.05)) + (fp_line (start -2.61 -2.61) (end -2.61 2.61) (layer B.CrtYd) (width 0.05)) + (fp_line (start -2.06 2.06) (end -2.06 1.69) (layer B.SilkS) (width 0.12)) + (fp_line (start -2.06 -1.69) (end -2.06 -2.06) (layer B.SilkS) (width 0.12)) + (fp_line (start -2.06 -2.06) (end -1.69 -2.06) (layer B.SilkS) (width 0.12)) + (fp_line (start 1.69 -2.06) (end 2.06 -2.06) (layer B.SilkS) (width 0.12)) + (fp_line (start 2.06 -2.06) (end 2.06 -1.69) (layer B.SilkS) (width 0.12)) + (fp_line (start 2.06 1.69) (end 2.06 2.06) (layer B.SilkS) (width 0.12)) + (fp_line (start 2.06 2.06) (end 1.69 2.06) (layer B.SilkS) (width 0.12)) + (fp_line (start -1.69 2.06) (end -2.06 2.06) (layer B.SilkS) (width 0.12)) + (fp_circle (center -2.73 1.4) (end -2.605 1.4) (layer B.SilkS) (width 0.25)) + (fp_line (start -2 2) (end 2 2) (layer B.Fab) (width 0.025)) + (fp_line (start 2 2) (end 2 -2) (layer B.Fab) (width 0.025)) + (fp_line (start 2 -2) (end -2 -2) (layer B.Fab) (width 0.025)) + (fp_line (start -2 -2) (end -2 2) (layer B.Fab) (width 0.025)) + (fp_text user %R (at 0 0 180) (layer B.Fab) + (effects (font (size 1 1) (thickness 0.025)) (justify mirror)) + ) + (pad 33 thru_hole circle (at 0 0 180) (size 0.5 0.5) (drill 0.3048) (layers *.Cu F.Mask) (net 47 GND) (zone_connect 2)) - (pad 33 thru_hole rect (at 0 -1.15 180) (size 0.5 0.5) (drill 0.3048) (layers *.Cu B.Mask) + (pad 33 thru_hole circle (at 1.15 0 180) (size 0.5 0.5) (drill 0.3048) (layers *.Cu F.Mask) (net 47 GND) (zone_connect 2)) - (pad 33 thru_hole rect (at 1.15 0 180) (size 0.5 0.5) (drill 0.3048) (layers *.Cu B.Mask) + (pad 33 thru_hole circle (at -1.15 0 180) (size 0.5 0.5) (drill 0.3048) (layers *.Cu F.Mask) (net 47 GND) (zone_connect 2)) - (pad 33 thru_hole rect (at 0 0 180) (size 0.5 0.5) (drill 0.3048) (layers *.Cu B.Mask) + (pad 33 thru_hole circle (at 0 -1.15 180) (size 0.5 0.5) (drill 0.3048) (layers *.Cu F.Mask) (net 47 GND) (zone_connect 2)) - (pad 33 thru_hole rect (at -1.15 0 180) (size 0.5 0.5) (drill 0.3048) (layers *.Cu B.Mask) - (net 47 GND) (zone_connect 2)) - (pad 33 thru_hole rect (at -1.15 -1.15 180) (size 0.5 0.5) (drill 0.3048) (layers *.Cu B.Mask) - (net 47 GND) (zone_connect 2)) - (pad 33 thru_hole rect (at 1.15 -1.15 180) (size 0.5 0.5) (drill 0.3048) (layers *.Cu B.Mask) - (net 47 GND) (zone_connect 2)) - (pad 33 thru_hole rect (at 1.15 1.15 180) (size 0.5 0.5) (drill 0.3048) (layers *.Cu B.Mask) - (net 47 GND) (zone_connect 2)) - (pad 33 thru_hole rect (at -1.15 1.15 180) (size 0.5 0.5) (drill 0.3048) (layers *.Cu B.Mask) - (net 47 GND) (zone_connect 2)) - (pad 33 smd rect (at -0.675 -0.575 180) (size 1.45 1.05) (layers 4_bot B.Paste B.Mask) + (pad 33 smd rect (at 0 0 180) (size 2.8 2.8) (layers 4_bot) (net 47 GND) (solder_paste_margin -0.2)) - (pad 33 smd rect (at -0.575 -0.675 180) (size 1.05 1.45) (layers 4_bot B.Paste B.Mask) - (net 47 GND) (solder_paste_margin -0.2)) - (pad 33 smd rect (at 0.675 -0.575 180) (size 1.45 1.05) (layers 4_bot B.Paste B.Mask) - (net 47 GND) (solder_paste_margin -0.2)) - (pad 33 smd rect (at 0.575 -0.675 180) (size 1.05 1.45) (layers 4_bot B.Paste B.Mask) - (net 47 GND) (solder_paste_margin -0.2)) - (pad 33 smd rect (at 0.675 0.575 180) (size 1.45 1.05) (layers 4_bot B.Paste B.Mask) - (net 47 GND) (solder_paste_margin -0.2)) - (pad 33 smd rect (at 0.575 0.675 180) (size 1.05 1.45) (layers 4_bot B.Paste B.Mask) - (net 47 GND) (solder_paste_margin -0.2)) - (pad 33 smd rect (at -0.675 0.575 180) (size 1.45 1.05) (layers 4_bot B.Paste B.Mask) - (net 47 GND) (solder_paste_margin -0.2)) - (pad 33 smd rect (at -0.575 0.675 180) (size 1.05 1.45) (layers 4_bot B.Paste B.Mask) - (net 47 GND) (solder_paste_margin -0.2)) - (pad 32 smd oval (at -1.4 1.99) (size 0.22 0.74) (layers 4_bot B.Paste B.Mask) + (pad 33 thru_hole circle (at 0 1.15 180) (size 0.5 0.5) (drill 0.3048) (layers *.Cu F.Mask) + (net 47 GND) (zone_connect 2)) + (pad 32 smd oval (at -1.4 1.99) (size 0.2 0.74) (layers 4_bot B.Paste B.Mask) (net 93 "Net-(TP1-Pad1)")) - (pad 31 smd oval (at -1 1.99) (size 0.22 0.74) (layers 4_bot B.Paste B.Mask) + (pad 31 smd oval (at -1 1.99) (size 0.2 0.74) (layers 4_bot B.Paste B.Mask) (net 77 /audio/REGFIL)) - (pad 30 smd oval (at -0.6 1.99) (size 0.22 0.74) (layers 4_bot B.Paste B.Mask) + (pad 30 smd oval (at -0.6 1.99) (size 0.2 0.74) (layers 4_bot B.Paste B.Mask) (net 76 /audio/VCOM)) - (pad 29 smd oval (at -0.2 1.99) (size 0.22 0.74) (layers 4_bot B.Paste B.Mask) + (pad 29 smd oval (at -0.2 1.99) (size 0.2 0.74) (layers 4_bot B.Paste B.Mask) (net 47 GND)) - (pad 28 smd oval (at 0.2 1.99) (size 0.22 0.74) (layers 4_bot B.Paste B.Mask) + (pad 28 smd oval (at 0.2 1.99) (size 0.2 0.74) (layers 4_bot B.Paste B.Mask) (net 121 +3V3)) - (pad 27 smd oval (at 0.6 1.99) (size 0.22 0.74) (layers 4_bot B.Paste B.Mask) + (pad 27 smd oval (at 0.6 1.99) (size 0.2 0.74) (layers 4_bot B.Paste B.Mask) (net 74 /audio/CN)) - (pad 26 smd oval (at 1 1.99) (size 0.22 0.74) (layers 4_bot B.Paste B.Mask) + (pad 26 smd oval (at 1 1.99) (size 0.2 0.74) (layers 4_bot B.Paste B.Mask) (net 73 /audio/CP)) - (pad 25 smd oval (at 1.4 1.99) (size 0.22 0.74) (layers 4_bot B.Paste B.Mask) + (pad 25 smd oval (at 1.4 1.99) (size 0.2 0.74) (layers 4_bot B.Paste B.Mask) (net 47 GND)) - (pad 24 smd oval (at 1.99 1.4 90) (size 0.22 0.74) (layers 4_bot B.Paste B.Mask) + (pad 24 smd oval (at 1.99 1.4 90) (size 0.2 0.74) (layers 4_bot B.Paste B.Mask) (net 75 /audio/VEE)) - (pad 23 smd oval (at 1.99 1 90) (size 0.22 0.74) (layers 4_bot B.Paste B.Mask) + (pad 23 smd oval (at 1.99 1 90) (size 0.2 0.74) (layers 4_bot B.Paste B.Mask) (net 2 /audio/RHPOUT)) - (pad 22 smd oval (at 1.99 0.6 90) (size 0.22 0.74) (layers 4_bot B.Paste B.Mask) + (pad 22 smd oval (at 1.99 0.6 90) (size 0.2 0.74) (layers 4_bot B.Paste B.Mask) (net 1 /audio/LHPOUT)) - (pad 21 smd oval (at 1.99 0.2 90) (size 0.22 0.74) (layers 4_bot B.Paste B.Mask) + (pad 21 smd oval (at 1.99 0.2 90) (size 0.2 0.74) (layers 4_bot B.Paste B.Mask) (net 122 +1V8)) - (pad 20 smd oval (at 1.99 -0.2 90) (size 0.22 0.74) (layers 4_bot B.Paste B.Mask) + (pad 20 smd oval (at 1.99 -0.2 90) (size 0.2 0.74) (layers 4_bot B.Paste B.Mask) (net 119 /audio/SPP)) - (pad 19 smd oval (at 1.99 -0.6 90) (size 0.22 0.74) (layers 4_bot B.Paste B.Mask) + (pad 19 smd oval (at 1.99 -0.6 90) (size 0.2 0.74) (layers 4_bot B.Paste B.Mask) (net 120 /audio/SPN)) - (pad 18 smd oval (at 1.99 -1 90) (size 0.22 0.74) (layers 4_bot B.Paste B.Mask) + (pad 18 smd oval (at 1.99 -1 90) (size 0.2 0.74) (layers 4_bot B.Paste B.Mask) (net 72 /power/AUDIO_SVDD)) - (pad 17 smd oval (at 1.99 -1.4 90) (size 0.22 0.74) (layers 4_bot B.Paste B.Mask) + (pad 17 smd oval (at 1.99 -1.4 90) (size 0.2 0.74) (layers 4_bot B.Paste B.Mask) (net 47 GND)) - (pad 16 smd oval (at 1.4 -1.99 180) (size 0.22 0.74) (layers 4_bot B.Paste B.Mask) + (pad 16 smd oval (at 1.4 -1.99 180) (size 0.2 0.74) (layers 4_bot B.Paste B.Mask) (net 121 +3V3)) - (pad 15 smd oval (at 1 -1.99 180) (size 0.22 0.74) (layers 4_bot B.Paste B.Mask) + (pad 15 smd oval (at 1 -1.99 180) (size 0.2 0.74) (layers 4_bot B.Paste B.Mask) (net 84 /hackrf_if/I2S0_MCLK)) - (pad 14 smd oval (at 0.6 -1.99 180) (size 0.22 0.74) (layers 4_bot B.Paste B.Mask) + (pad 14 smd oval (at 0.6 -1.99 180) (size 0.2 0.74) (layers 4_bot B.Paste B.Mask) (net 115 /audio/BICK_R)) - (pad 13 smd oval (at 0.2 -1.99 180) (size 0.22 0.74) (layers 4_bot B.Paste B.Mask) + (pad 13 smd oval (at 0.2 -1.99 180) (size 0.2 0.74) (layers 4_bot B.Paste B.Mask) (net 116 /audio/LRCK_R)) - (pad 12 smd oval (at -0.2 -1.99 180) (size 0.22 0.74) (layers 4_bot B.Paste B.Mask) + (pad 12 smd oval (at -0.2 -1.99 180) (size 0.2 0.74) (layers 4_bot B.Paste B.Mask) (net 117 /audio/SDTO_R)) - (pad 11 smd oval (at -0.6 -1.99 180) (size 0.22 0.74) (layers 4_bot B.Paste B.Mask) + (pad 11 smd oval (at -0.6 -1.99 180) (size 0.2 0.74) (layers 4_bot B.Paste B.Mask) (net 81 /hackrf_if/I2S0_TX_SDA)) - (pad 10 smd oval (at -1 -1.99 180) (size 0.22 0.74) (layers 4_bot B.Paste B.Mask) + (pad 10 smd oval (at -1 -1.99 180) (size 0.2 0.74) (layers 4_bot B.Paste B.Mask) (net 4 /audio/SDA)) - (pad 9 smd oval (at -1.4 -1.99 180) (size 0.22 0.74) (layers 4_bot B.Paste B.Mask) + (pad 9 smd oval (at -1.4 -1.99 180) (size 0.2 0.74) (layers 4_bot B.Paste B.Mask) (net 3 /audio/SCL)) - (pad 8 smd oval (at -1.99 -1.4 270) (size 0.22 0.74) (layers 4_bot B.Paste B.Mask) + (pad 8 smd oval (at -1.99 -1.4 270) (size 0.2 0.74) (layers 4_bot B.Paste B.Mask) (net 114 /audio/PDN#_R)) - (pad 7 smd oval (at -1.99 -1 270) (size 0.22 0.74) (layers 4_bot B.Paste B.Mask) + (pad 7 smd oval (at -1.99 -1 270) (size 0.2 0.74) (layers 4_bot B.Paste B.Mask) (net 98 "Net-(TP6-Pad1)")) - (pad 6 smd oval (at -1.99 -0.6 270) (size 0.22 0.74) (layers 4_bot B.Paste B.Mask) + (pad 6 smd oval (at -1.99 -0.6 270) (size 0.2 0.74) (layers 4_bot B.Paste B.Mask) (net 97 "Net-(TP5-Pad1)")) - (pad 5 smd oval (at -1.99 -0.2 270) (size 0.22 0.74) (layers 4_bot B.Paste B.Mask) + (pad 5 smd oval (at -1.99 -0.2 270) (size 0.2 0.74) (layers 4_bot B.Paste B.Mask) (net 96 "Net-(TP4-Pad1)")) - (pad 4 smd oval (at -1.99 0.2 270) (size 0.22 0.74) (layers 4_bot B.Paste B.Mask) + (pad 4 smd oval (at -1.99 0.2 270) (size 0.2 0.74) (layers 4_bot B.Paste B.Mask) (net 91 "Net-(R18-Pad1)")) - (pad 3 smd oval (at -1.99 0.6 270) (size 0.22 0.74) (layers 4_bot B.Paste B.Mask) + (pad 3 smd oval (at -1.99 0.6 270) (size 0.2 0.74) (layers 4_bot B.Paste B.Mask) (net 79 "Net-(C25-Pad1)")) - (pad 2 smd oval (at -1.99 1 270) (size 0.22 0.74) (layers 4_bot B.Paste B.Mask) + (pad 2 smd oval (at -1.99 1 270) (size 0.2 0.74) (layers 4_bot B.Paste B.Mask) (net 95 "Net-(TP3-Pad1)")) - (pad 1 smd oval (at -1.99 1.4 270) (size 0.22 0.74) (layers 4_bot B.Paste B.Mask) + (pad 1 smd oval (at -1.99 1.4 270) (size 0.2 0.74) (layers 4_bot B.Paste B.Mask) (net 94 "Net-(TP2-Pad1)")) - (model Housings_DFN_QFN.3dshapes/QFN-32-1EP_4x4mm_Pitch0.4mm.wrl + (model ${KISYS3DMOD}/Package_DFN_QFN.3dshapes/QFN-32-1EP_4x4mm_P0.4mm_EP2.65x2.65mm.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module eastrising:ER-CON50HT-1 (layer 4_bot) (tedit 58FD8DA6) (tstamp 58B09183) - (at 87.3 137.5 270) - (path /53A9129D/58AE3A81) - (attr smd) - (fp_text reference J3 (at 13.75 -2.95 270) (layer B.SilkS) - (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) - ) - (fp_text value ER-TFT024-3_FPC (at 0 0 270) (layer B.Fab) - (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) - ) - (fp_line (start 15.05 0.6) (end 15.05 -2.5) (layer B.CrtYd) (width 0.05)) - (fp_line (start 15.05 -2.5) (end 12.65 -2.5) (layer B.CrtYd) (width 0.05)) - (fp_line (start 12.65 -2.5) (end 12.65 -3.75) (layer B.CrtYd) (width 0.05)) - (fp_line (start 12.65 -3.75) (end -12.65 -3.75) (layer B.CrtYd) (width 0.05)) - (fp_line (start -15.05 -2.5) (end -15.05 0.6) (layer B.CrtYd) (width 0.05)) - (fp_line (start -15.05 0.6) (end -15.6 0.6) (layer B.CrtYd) (width 0.05)) - (fp_line (start -15.6 0.6) (end -15.6 2.5) (layer B.CrtYd) (width 0.05)) - (fp_line (start -15.6 2.5) (end 15.6 2.5) (layer B.CrtYd) (width 0.05)) - (fp_line (start 15.6 2.5) (end 15.6 0.6) (layer B.CrtYd) (width 0.05)) - (fp_line (start 15.6 0.6) (end 15.05 0.6) (layer B.CrtYd) (width 0.05)) - (fp_line (start -12.65 -2.5) (end -15.05 -2.5) (layer B.CrtYd) (width 0.05)) - (fp_line (start -12.65 -3.75) (end -12.65 -2.5) (layer B.CrtYd) (width 0.05)) - (fp_line (start -15.385 2.31) (end 15.385 2.31) (layer B.SilkS) (width 0.12)) - (fp_line (start 15.385 2.31) (end 15.385 0.79) (layer B.SilkS) (width 0.12)) - (fp_line (start 15.385 0.79) (end 15 0.79) (layer B.SilkS) (width 0.12)) - (fp_line (start 14.735 -2.31) (end 12.675 -2.31) (layer B.SilkS) (width 0.12)) - (fp_line (start -14.735 -2.31) (end -12.675 -2.31) (layer B.SilkS) (width 0.12)) - (fp_line (start -15 0.79) (end -15.385 0.79) (layer B.SilkS) (width 0.12)) - (fp_line (start -15.385 0.79) (end -15.385 2.31) (layer B.SilkS) (width 0.12)) - (fp_circle (center 12.85 -2.75) (end 12.975 -2.75) (layer B.SilkS) (width 0.25)) - (fp_line (start 14.675 0.85) (end 15.325 0.85) (layer B.Fab) (width 0.025)) - (fp_line (start -15.325 0.85) (end -14.675 0.85) (layer B.Fab) (width 0.025)) - (fp_line (start -15.325 0.85) (end -15.325 2.25) (layer B.Fab) (width 0.025)) - (fp_line (start 15.325 0.85) (end 15.325 2.25) (layer B.Fab) (width 0.025)) - (fp_line (start 14.675 0.85) (end 14.675 -2.25) (layer B.Fab) (width 0.025)) - (fp_line (start -14.675 0.85) (end -14.675 -2.25) (layer B.Fab) (width 0.025)) - (fp_line (start -14.675 -2.25) (end 14.675 -2.25) (layer B.Fab) (width 0.025)) - (fp_line (start -15.325 2.25) (end 15.325 2.25) (layer B.Fab) (width 0.025)) - (fp_line (start 12.75 -0.5) (end 12.75 2.25) (layer B.Fab) (width 0.025)) - (fp_line (start -12.75 -0.5) (end 12.75 -0.5) (layer B.Fab) (width 0.025)) - (fp_line (start -12.75 2.25) (end -12.75 -0.5) (layer B.Fab) (width 0.025)) - (pad 1 smd oval (at 12.25 -2.875 270) (size 0.29 1.25) (layers 4_bot B.Paste B.Mask) - (net 121 +3V3)) - (pad 2 smd oval (at 11.75 -2.875 270) (size 0.29 1.25) (layers 4_bot B.Paste B.Mask) - (net 67 /lcd_sw_sd/LEDK1)) - (pad 3 smd oval (at 11.25 -2.875 270) (size 0.29 1.25) (layers 4_bot B.Paste B.Mask) - (net 66 /lcd_sw_sd/LEDK2)) - (pad 4 smd oval (at 10.75 -2.875 270) (size 0.29 1.25) (layers 4_bot B.Paste B.Mask) - (net 68 /lcd_sw_sd/LEDK3)) - (pad 5 smd oval (at 10.25 -2.875 270) (size 0.29 1.25) (layers 4_bot B.Paste B.Mask) - (net 69 /lcd_sw_sd/LEDK4)) - (pad 6 smd oval (at 9.75 -2.875 270) (size 0.29 1.25) (layers 4_bot B.Paste B.Mask) - (net 122 +1V8)) - (pad 7 smd oval (at 9.25 -2.875 270) (size 0.29 1.25) (layers 4_bot B.Paste B.Mask) - (net 47 GND)) - (pad 8 smd oval (at 8.75 -2.875 270) (size 0.29 1.25) (layers 4_bot B.Paste B.Mask) - (net 47 GND)) - (pad 9 smd oval (at 8.25 -2.875 270) (size 0.29 1.25) (layers 4_bot B.Paste B.Mask) - (net 47 GND)) - (pad 10 smd oval (at 7.75 -2.875 270) (size 0.29 1.25) (layers 4_bot B.Paste B.Mask) - (net 23 /hackrf_if/LCD_RESET#)) - (pad 11 smd oval (at 7.25 -2.875 270) (size 0.29 1.25) (layers 4_bot B.Paste B.Mask) - (net 47 GND)) - (pad 12 smd oval (at 6.75 -2.875 270) (size 0.29 1.25) (layers 4_bot B.Paste B.Mask) - (net 47 GND)) - (pad 13 smd oval (at 6.25 -2.875 270) (size 0.29 1.25) (layers 4_bot B.Paste B.Mask) - (net 47 GND)) - (pad 14 smd oval (at 5.75 -2.875 270) (size 0.29 1.25) (layers 4_bot B.Paste B.Mask) - (net 47 GND)) - (pad 15 smd oval (at 5.25 -2.875 270) (size 0.29 1.25) (layers 4_bot B.Paste B.Mask) - (net 47 GND)) - (pad 16 smd oval (at 4.75 -2.875 270) (size 0.29 1.25) (layers 4_bot B.Paste B.Mask) - (net 47 GND)) - (pad 17 smd oval (at 4.25 -2.875 270) (size 0.29 1.25) (layers 4_bot B.Paste B.Mask) - (net 13 /hackrf_if/LCD_DB15)) - (pad 18 smd oval (at 3.75 -2.875 270) (size 0.29 1.25) (layers 4_bot B.Paste B.Mask) - (net 12 /hackrf_if/LCD_DB14)) - (pad 19 smd oval (at 3.25 -2.875 270) (size 0.29 1.25) (layers 4_bot B.Paste B.Mask) - (net 11 /hackrf_if/LCD_DB13)) - (pad 20 smd oval (at 2.75 -2.875 270) (size 0.29 1.25) (layers 4_bot B.Paste B.Mask) - (net 10 /hackrf_if/LCD_DB12)) - (pad 21 smd oval (at 2.25 -2.875 270) (size 0.29 1.25) (layers 4_bot B.Paste B.Mask) - (net 9 /hackrf_if/LCD_DB11)) - (pad 22 smd oval (at 1.75 -2.875 270) (size 0.29 1.25) (layers 4_bot B.Paste B.Mask) - (net 8 /hackrf_if/LCD_DB10)) - (pad 23 smd oval (at 1.25 -2.875 270) (size 0.29 1.25) (layers 4_bot B.Paste B.Mask) - (net 21 /hackrf_if/LCD_DB9)) - (pad 24 smd oval (at 0.75 -2.875 270) (size 0.29 1.25) (layers 4_bot B.Paste B.Mask) - (net 20 /hackrf_if/LCD_DB8)) - (pad 25 smd oval (at 0.25 -2.875 270) (size 0.29 1.25) (layers 4_bot B.Paste B.Mask) - (net 19 /hackrf_if/LCD_DB7)) - (pad 26 smd oval (at -0.25 -2.875 270) (size 0.29 1.25) (layers 4_bot B.Paste B.Mask) - (net 18 /hackrf_if/LCD_DB6)) - (pad 27 smd oval (at -0.75 -2.875 270) (size 0.29 1.25) (layers 4_bot B.Paste B.Mask) - (net 17 /hackrf_if/LCD_DB5)) - (pad 28 smd oval (at -1.25 -2.875 270) (size 0.29 1.25) (layers 4_bot B.Paste B.Mask) - (net 16 /hackrf_if/LCD_DB4)) - (pad 29 smd oval (at -1.75 -2.875 270) (size 0.29 1.25) (layers 4_bot B.Paste B.Mask) - (net 15 /hackrf_if/LCD_DB3)) - (pad 30 smd oval (at -2.25 -2.875 270) (size 0.29 1.25) (layers 4_bot B.Paste B.Mask) - (net 14 /hackrf_if/LCD_DB2)) - (pad 31 smd oval (at -2.75 -2.875 270) (size 0.29 1.25) (layers 4_bot B.Paste B.Mask) - (net 7 /hackrf_if/LCD_DB1)) - (pad 32 smd oval (at -3.25 -2.875 270) (size 0.29 1.25) (layers 4_bot B.Paste B.Mask) - (net 6 /hackrf_if/LCD_DB0)) - (pad 33 smd oval (at -3.75 -2.875 270) (size 0.29 1.25) (layers 4_bot B.Paste B.Mask)) - (pad 34 smd oval (at -4.25 -2.875 270) (size 0.29 1.25) (layers 4_bot B.Paste B.Mask) - (net 47 GND)) - (pad 35 smd oval (at -4.75 -2.875 270) (size 0.29 1.25) (layers 4_bot B.Paste B.Mask) - (net 22 /hackrf_if/LCD_RD#)) - (pad 36 smd oval (at -5.25 -2.875 270) (size 0.29 1.25) (layers 4_bot B.Paste B.Mask) - (net 26 /hackrf_if/LCD_WR#)) - (pad 37 smd oval (at -5.75 -2.875 270) (size 0.29 1.25) (layers 4_bot B.Paste B.Mask) - (net 24 /hackrf_if/LCD_RS)) - (pad 38 smd oval (at -6.25 -2.875 270) (size 0.29 1.25) (layers 4_bot B.Paste B.Mask) - (net 47 GND)) - (pad 39 smd oval (at -6.75 -2.875 270) (size 0.29 1.25) (layers 4_bot B.Paste B.Mask) - (net 25 /hackrf_if/LCD_TE)) - (pad 40 smd oval (at -7.25 -2.875 270) (size 0.29 1.25) (layers 4_bot B.Paste B.Mask) - (net 122 +1V8)) - (pad 41 smd oval (at -7.75 -2.875 270) (size 0.29 1.25) (layers 4_bot B.Paste B.Mask) - (net 122 +1V8)) - (pad 42 smd oval (at -8.25 -2.875 270) (size 0.29 1.25) (layers 4_bot B.Paste B.Mask) - (net 121 +3V3)) - (pad 43 smd oval (at -8.75 -2.875 270) (size 0.29 1.25) (layers 4_bot B.Paste B.Mask) - (net 47 GND)) - (pad 44 smd oval (at -9.25 -2.875 270) (size 0.29 1.25) (layers 4_bot B.Paste B.Mask) - (net 44 /hackrf_if/TP_R)) - (pad 45 smd oval (at -9.75 -2.875 270) (size 0.29 1.25) (layers 4_bot B.Paste B.Mask) - (net 42 /hackrf_if/TP_D)) - (pad 46 smd oval (at -10.25 -2.875 270) (size 0.29 1.25) (layers 4_bot B.Paste B.Mask) - (net 43 /hackrf_if/TP_L)) - (pad 47 smd oval (at -10.75 -2.875 270) (size 0.29 1.25) (layers 4_bot B.Paste B.Mask) - (net 45 /hackrf_if/TP_U)) - (pad 48 smd oval (at -11.25 -2.875 270) (size 0.29 1.25) (layers 4_bot B.Paste B.Mask) - (net 47 GND)) - (pad 49 smd oval (at -11.75 -2.875 270) (size 0.29 1.25) (layers 4_bot B.Paste B.Mask) - (net 47 GND)) - (pad 50 smd oval (at -12.25 -2.875 270) (size 0.29 1.25) (layers 4_bot B.Paste B.Mask) - (net 47 GND)) - (pad SHLD smd rect (at -13.79 -0.55 270) (size 2 3) (layers 4_bot B.Paste B.Mask) - (net 47 GND)) - (pad SHLD smd rect (at 13.79 -0.55 270) (size 2 3) (layers 4_bot B.Paste B.Mask) - (net 47 GND)) - (model ${KISBLIB}/eastrising.pretty/ER-CON50HT-1.wrl - (at (xyz 0 0 0)) - (scale (xyz 0.3937 0.3937 0.3937)) - (rotate (xyz 0 0 0)) - ) - ) - - (module ipc_son:IPC_SON9P50_200X200X55L32X24T90X160N (layer 4_bot) (tedit 5B79FEF0) (tstamp 58D20D16) + (module ipc_son:IPC_SON9P50_200X200X55L32X24T90X160N (layer 4_bot) (tedit 5BD22CF5) (tstamp 58D20D16) (at 94.2 148.5 90) (path /53A9129D/58B747DD) (attr smd) @@ -841,6 +1336,9 @@ (fp_text value CAT4004[_AB] (at 0 0 90) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) + (fp_text user %R (at 0 0 90) (layer B.Fab) + (effects (font (size 1 1) (thickness 0.025)) (justify mirror)) + ) (fp_line (start -1.61 1.25) (end 1.61 1.25) (layer B.CrtYd) (width 0.05)) (fp_line (start 1.61 1.25) (end 1.61 -1.25) (layer B.CrtYd) (width 0.05)) (fp_line (start 1.61 -1.25) (end -1.61 -1.25) (layer B.CrtYd) (width 0.05)) @@ -852,40 +1350,44 @@ (fp_line (start 1 1) (end 1 -1) (layer B.Fab) (width 0.025)) (fp_line (start 1 -1) (end -1 -1) (layer B.Fab) (width 0.025)) (fp_line (start -1 -1) (end -1 1) (layer B.Fab) (width 0.025)) - (pad 1 smd oval (at -1.005 0.75 180) (size 0.26 0.71) (layers 4_bot B.Paste B.Mask) + (pad 1 smd rect (at -1.005 0.75 180) (size 0.26 0.71) (layers 4_bot B.Paste B.Mask) (net 5 /hackrf_if/LCD_BACKLIGHT)) - (pad 2 smd oval (at -1.005 0.25 180) (size 0.26 0.71) (layers 4_bot B.Paste B.Mask) + (pad 2 smd rect (at -1.005 0.25 180) (size 0.26 0.71) (layers 4_bot B.Paste B.Mask) (net 47 GND)) - (pad 3 smd oval (at -1.005 -0.25 180) (size 0.26 0.71) (layers 4_bot B.Paste B.Mask) + (pad 3 smd rect (at -1.005 -0.25 180) (size 0.26 0.71) (layers 4_bot B.Paste B.Mask) (net 67 /lcd_sw_sd/LEDK1)) - (pad 4 smd oval (at -1.005 -0.75 180) (size 0.26 0.71) (layers 4_bot B.Paste B.Mask) + (pad 4 smd rect (at -1.005 -0.75 180) (size 0.26 0.71) (layers 4_bot B.Paste B.Mask) (net 66 /lcd_sw_sd/LEDK2)) - (pad 5 smd oval (at 1.005 -0.75) (size 0.26 0.71) (layers 4_bot B.Paste B.Mask) + (pad 5 smd rect (at 1.005 -0.75) (size 0.26 0.71) (layers 4_bot B.Paste B.Mask) (net 68 /lcd_sw_sd/LEDK3)) - (pad 6 smd oval (at 1.005 -0.25) (size 0.26 0.71) (layers 4_bot B.Paste B.Mask) + (pad 6 smd rect (at 1.005 -0.25) (size 0.26 0.71) (layers 4_bot B.Paste B.Mask) (net 69 /lcd_sw_sd/LEDK4)) - (pad 7 smd oval (at 1.005 0.25) (size 0.26 0.71) (layers 4_bot B.Paste B.Mask) + (pad 7 smd rect (at 1.005 0.25) (size 0.26 0.71) (layers 4_bot B.Paste B.Mask) (net 71 "Net-(R20-Pad1)")) - (pad 8 smd oval (at 1.005 0.75) (size 0.26 0.71) (layers 4_bot B.Paste B.Mask) + (pad 8 smd rect (at 1.005 0.75) (size 0.26 0.71) (layers 4_bot B.Paste B.Mask) (net 121 +3V3)) (pad 9 smd rect (at 0 0 90) (size 0.85 1.6) (layers 4_bot B.Paste B.Mask) (net 47 GND) (solder_paste_margin -0.1)) - (model Housings_DFN_QFN.3dshapes/DFN-8-1EP_2x2mm_Pitch0.5mm.wrl + (model ${KISYS3DMOD}/Package_DFN_QFN.3dshapes/DFN-8-1EP_2x2mm_P0.5mm_EP1.05x1.75mm.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module ipc_qfn:IPC_QFN17P50_300X300X100L40X25T160N (layer 4_bot) (tedit 5B79B9C7) (tstamp 58F1AF31) + (module ipc_qfn:IPC_QFN17P50_300X300X100L40X25T160N (layer 4_bot) (tedit 5BD22C21) (tstamp 58F1AF31) (at 170.575 123.875 90) (path /58CFF3E3/58F1AA75) + (attr smd) (fp_text reference U6 (at -4.225 -1.275 90) (layer B.SilkS) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) (fp_text value BQ24075RGT (at 0 0 90) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) + (fp_text user %R (at 0 0 90) (layer B.Fab) + (effects (font (size 1 1) (thickness 0.025)) (justify mirror)) + ) (fp_line (start -2.115 2.115) (end 2.115 2.115) (layer B.CrtYd) (width 0.05)) (fp_line (start 2.115 2.115) (end 2.115 -2.115) (layer B.CrtYd) (width 0.05)) (fp_line (start 2.115 -2.115) (end -2.115 -2.115) (layer B.CrtYd) (width 0.05)) @@ -903,37 +1405,37 @@ (fp_line (start 1.5 1.5) (end 1.5 -1.5) (layer B.Fab) (width 0.025)) (fp_line (start 1.5 -1.5) (end -1.5 -1.5) (layer B.Fab) (width 0.025)) (fp_line (start -1.5 -1.5) (end -1.5 1.5) (layer B.Fab) (width 0.025)) - (pad 1 smd oval (at -1.435 0.75 180) (size 0.27 0.86) (layers 4_bot B.Paste B.Mask) + (pad 1 smd rect (at -1.435 0.75 180) (size 0.27 0.86) (layers 4_bot B.Paste B.Mask) (net 104 "Net-(R8-Pad1)")) - (pad 2 smd oval (at -1.435 0.25 180) (size 0.27 0.86) (layers 4_bot B.Paste B.Mask) + (pad 2 smd rect (at -1.435 0.25 180) (size 0.27 0.86) (layers 4_bot B.Paste B.Mask) (net 118 /power/BBAT)) - (pad 3 smd oval (at -1.435 -0.25 180) (size 0.27 0.86) (layers 4_bot B.Paste B.Mask) + (pad 3 smd rect (at -1.435 -0.25 180) (size 0.27 0.86) (layers 4_bot B.Paste B.Mask) (net 118 /power/BBAT)) - (pad 4 smd oval (at -1.435 -0.75 180) (size 0.27 0.86) (layers 4_bot B.Paste B.Mask) + (pad 4 smd rect (at -1.435 -0.75 180) (size 0.27 0.86) (layers 4_bot B.Paste B.Mask) (net 105 "Net-(R9-Pad1)")) - (pad 5 smd oval (at -0.75 -1.435 90) (size 0.27 0.86) (layers 4_bot B.Paste B.Mask) + (pad 5 smd rect (at -0.75 -1.435 90) (size 0.27 0.86) (layers 4_bot B.Paste B.Mask) (net 108 "Net-(R14-Pad1)")) - (pad 6 smd oval (at -0.25 -1.435 90) (size 0.27 0.86) (layers 4_bot B.Paste B.Mask) + (pad 6 smd rect (at -0.25 -1.435 90) (size 0.27 0.86) (layers 4_bot B.Paste B.Mask) (net 107 "Net-(R13-Pad2)")) - (pad 7 smd oval (at 0.25 -1.435 90) (size 0.27 0.86) (layers 4_bot B.Paste B.Mask) + (pad 7 smd rect (at 0.25 -1.435 90) (size 0.27 0.86) (layers 4_bot B.Paste B.Mask) (net 111 "Net-(D1-PadC)")) - (pad 8 smd oval (at 0.75 -1.435 90) (size 0.27 0.86) (layers 4_bot B.Paste B.Mask) + (pad 8 smd rect (at 0.75 -1.435 90) (size 0.27 0.86) (layers 4_bot B.Paste B.Mask) (net 47 GND)) - (pad 9 smd oval (at 1.435 -0.75) (size 0.27 0.86) (layers 4_bot B.Paste B.Mask) + (pad 9 smd rect (at 1.435 -0.75) (size 0.27 0.86) (layers 4_bot B.Paste B.Mask) (net 112 "Net-(D2-PadC)")) - (pad 10 smd oval (at 1.435 -0.25) (size 0.27 0.86) (layers 4_bot B.Paste B.Mask) + (pad 10 smd rect (at 1.435 -0.25) (size 0.27 0.86) (layers 4_bot B.Paste B.Mask) (net 72 /power/AUDIO_SVDD)) - (pad 11 smd oval (at 1.435 0.25) (size 0.27 0.86) (layers 4_bot B.Paste B.Mask) + (pad 11 smd rect (at 1.435 0.25) (size 0.27 0.86) (layers 4_bot B.Paste B.Mask) (net 72 /power/AUDIO_SVDD)) - (pad 12 smd oval (at 1.435 0.75) (size 0.27 0.86) (layers 4_bot B.Paste B.Mask) + (pad 12 smd rect (at 1.435 0.75) (size 0.27 0.86) (layers 4_bot B.Paste B.Mask) (net 102 "Net-(R4-Pad1)")) - (pad 13 smd oval (at 0.75 1.435 270) (size 0.27 0.86) (layers 4_bot B.Paste B.Mask) + (pad 13 smd rect (at 0.75 1.435 270) (size 0.27 0.86) (layers 4_bot B.Paste B.Mask) (net 99 /hackrf_if/VBUS)) - (pad 14 smd oval (at 0.25 1.435 270) (size 0.27 0.86) (layers 4_bot B.Paste B.Mask) + (pad 14 smd rect (at 0.25 1.435 270) (size 0.27 0.86) (layers 4_bot B.Paste B.Mask) (net 101 "Net-(R1-Pad1)")) - (pad 15 smd oval (at -0.25 1.435 270) (size 0.27 0.86) (layers 4_bot B.Paste B.Mask) + (pad 15 smd rect (at -0.25 1.435 270) (size 0.27 0.86) (layers 4_bot B.Paste B.Mask) (net 106 "Net-(R10-Pad1)")) - (pad 16 smd oval (at -0.75 1.435 270) (size 0.27 0.86) (layers 4_bot B.Paste B.Mask) + (pad 16 smd rect (at -0.75 1.435 270) (size 0.27 0.86) (layers 4_bot B.Paste B.Mask) (net 103 "Net-(R6-Pad1)")) (pad 17 smd rect (at 0 0 90) (size 0.9 1.6) (layers 4_bot B.Paste B.Mask) (net 47 GND) (solder_paste_margin -0.15)) @@ -947,22 +1449,26 @@ (net 47 GND) (zone_connect 2)) (pad 17 thru_hole rect (at -0.55 -0.55 90) (size 0.5 0.5) (drill 0.3048) (layers *.Cu B.Mask) (net 47 GND) (zone_connect 2)) - (model Housings_DFN_QFN.3dshapes/QFN-16-1EP_3x3mm_Pitch0.5mm.wrl + (model ${KISYS3DMOD}/Package_DFN_QFN.3dshapes/QFN-16-1EP_3x3mm_P0.5mm_EP1.8x1.8mm.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module jst:JST_S3B-PH-SM4-TB (layer 4_bot) (tedit 58F43DFE) (tstamp 58F8093C) + (module jst:JST_S3B-PH-SM4-TB (layer 4_bot) (tedit 5BD22B6A) (tstamp 58F8093C) (at 137.9 115.25 270) (path /53A8BFC3/58F82DA0) + (attr smd) (fp_text reference J1 (at 4.6 -4.45 270) (layer B.SilkS) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) (fp_text value HEADER_1X3 (at 0 0 270) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) + (fp_text user %R (at 0 0 270) (layer B.Fab) + (effects (font (size 1 1) (thickness 0.025)) (justify mirror)) + ) (fp_line (start -2.75 -4.05) (end -2.75 -5.45) (layer B.CrtYd) (width 0.05)) (fp_line (start -5.2 -4.05) (end -2.75 -4.05) (layer B.CrtYd) (width 0.05)) (fp_line (start -5.2 0.35) (end -5.2 -4.05) (layer B.CrtYd) (width 0.05)) @@ -998,22 +1504,26 @@ (net 47 GND)) (pad 3 smd rect (at -2 -3.45 270) (size 1 3.5) (layers 4_bot B.Paste B.Mask) (net 119 /audio/SPP)) - (model ${KISBLIB}/jst.pretty/S3B-PH-SM4-TB.wrl - (offset (xyz 9.899999851316919 -13.19999980175589 0)) - (scale (xyz 0.393701 0.393701 0.393701)) + (model ${KISBLIB}/jst.pretty/S3B-PH-SM4-TB.STEP + (offset (xyz 9.9 -13.2 0)) + (scale (xyz 1 1 1)) (rotate (xyz 90 180 0)) ) ) - (module jst:JST_S2B-PH-SM4-TB (layer 4_bot) (tedit 58F43DFE) (tstamp 58F1AEEF) + (module jst:JST_S2B-PH-SM4-TB (layer 4_bot) (tedit 5BD22BF3) (tstamp 58F1AEEF) (at 151.1 123.9 90) (path /58CFF3E3/58F1DD77) + (attr smd) (fp_text reference J4 (at 3.55 -4.4 90) (layer B.SilkS) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) (fp_text value HEADER_1X2 (at 0 0 90) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) + (fp_text user %R (at 0 0 90) (layer B.Fab) + (effects (font (size 1 1) (thickness 0.025)) (justify mirror)) + ) (fp_line (start -1.75 -4.05) (end -1.75 -5.45) (layer B.CrtYd) (width 0.05)) (fp_line (start -4.2 -4.05) (end -1.75 -4.05) (layer B.CrtYd) (width 0.05)) (fp_line (start -4.2 0.35) (end -4.2 -4.05) (layer B.CrtYd) (width 0.05)) @@ -1046,85 +1556,14 @@ (net 118 /power/BBAT)) (pad 2 smd rect (at -1 -3.45 90) (size 1 3.5) (layers 4_bot B.Paste B.Mask) (net 47 GND)) - (model ${KISBLIB}/jst.pretty/S2B-PH-SM4-TB.wrl - (offset (xyz 7.90000948135376 -13.1999988017559 0)) - (scale (xyz 0.393701 0.393701 0.393701)) + (model ${KISBLIB}/jst.pretty/S2B-PH-SM4-TB.STEP + (offset (xyz 7.9 -13.2 0)) + (scale (xyz 1 1 1)) (rotate (xyz 90 180 0)) ) ) - (module bat_coin:MPD_BU2032SM-BT-G (layer 4_bot) (tedit 58FCF037) (tstamp 53AA25F0) - (at 96 162 180) - (path /58CFF3E3/58D008D0) - (attr smd) - (fp_text reference BT1 (at -13.6 4.05 180) (layer B.SilkS) - (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) - ) - (fp_text value BATTERY (at 0 0 180) (layer B.Fab) - (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) - ) - (fp_line (start -14.3 -3.5) (end -14.3 -2.28) (layer B.SilkS) (width 0.12)) - (fp_line (start -14.3 3.5) (end -14.3 2.28) (layer B.SilkS) (width 0.12)) - (fp_line (start 14.3 -3.5) (end 14.3 -2.28) (layer B.SilkS) (width 0.12)) - (fp_line (start 14.3 3.5) (end 14.3 2.28) (layer B.SilkS) (width 0.12)) - (fp_line (start 16.75 -2.6) (end 14.8 -2.6) (layer B.CrtYd) (width 0.05)) - (fp_line (start 16.75 2.6) (end 16.75 -2.6) (layer B.CrtYd) (width 0.05)) - (fp_line (start 14.8 2.6) (end 16.75 2.6) (layer B.CrtYd) (width 0.05)) - (fp_line (start -14.8 -2.6) (end -14.8 -4) (layer B.CrtYd) (width 0.05)) - (fp_line (start -14.8 -2.6) (end -16.65 -2.6) (layer B.CrtYd) (width 0.05)) - (fp_line (start -16.65 -2.6) (end -16.65 2.6) (layer B.CrtYd) (width 0.05)) - (fp_line (start -16.65 2.6) (end -14.8 2.6) (layer B.CrtYd) (width 0.05)) - (fp_line (start -12 -5) (end -11 -5) (layer B.SilkS) (width 0.12)) - (fp_line (start -11.5 -4.5) (end -11.5 -5.5) (layer B.SilkS) (width 0.12)) - (fp_arc (start 0 0) (end -7.838 -8) (angle -91.1) (layer B.SilkS) (width 0.12)) - (fp_arc (start 0 0) (end 7.838 8) (angle -91.1) (layer B.SilkS) (width 0.12)) - (fp_line (start -7.838 -8) (end 7.838 -8) (layer B.SilkS) (width 0.12)) - (fp_line (start -7.838 8) (end 7.838 8) (layer B.SilkS) (width 0.12)) - (fp_line (start 10.639 3.5) (end 14.3 3.5) (layer B.SilkS) (width 0.12)) - (fp_line (start 14.3 -3.5) (end 10.639 -3.5) (layer B.SilkS) (width 0.12)) - (fp_line (start -10.639 3.5) (end -14.3 3.5) (layer B.SilkS) (width 0.12)) - (fp_line (start -14.3 -3.5) (end -10.639 -3.5) (layer B.SilkS) (width 0.12)) - (fp_arc (start 0 0) (end -6.164 8.5) (angle -71.8) (layer B.CrtYd) (width 0.05)) - (fp_arc (start 0 0) (end 6.164 -8.5) (angle -71.8) (layer B.CrtYd) (width 0.05)) - (fp_arc (start 0 0) (end -8.04 -8.5) (angle -26.6) (layer B.CrtYd) (width 0.05)) - (fp_arc (start 0 0) (end 8.04 8.5) (angle -26.6) (layer B.CrtYd) (width 0.05)) - (fp_arc (start 0 0) (end -10.995 4) (angle -26.5) (layer B.CrtYd) (width 0.05)) - (fp_arc (start 0 0) (end 10.995 -4) (angle -26.5) (layer B.CrtYd) (width 0.05)) - (fp_line (start -8.04 -8.5) (end -6.164 -8.5) (layer B.CrtYd) (width 0.05)) - (fp_line (start 6.164 -8.5) (end 8.04 -8.5) (layer B.CrtYd) (width 0.05)) - (fp_line (start 8.04 8.5) (end 6.164 8.5) (layer B.CrtYd) (width 0.05)) - (fp_line (start -6.164 8.5) (end -8.04 8.5) (layer B.CrtYd) (width 0.05)) - (fp_line (start 10.995 4) (end 14.8 4) (layer B.CrtYd) (width 0.05)) - (fp_line (start 14.8 4) (end 14.8 2.6) (layer B.CrtYd) (width 0.05)) - (fp_line (start 14.8 -4) (end 10.995 -4) (layer B.CrtYd) (width 0.05)) - (fp_line (start -10.995 4) (end -14.8 4) (layer B.CrtYd) (width 0.05)) - (fp_line (start -14.8 4) (end -14.8 2.6) (layer B.CrtYd) (width 0.05)) - (fp_line (start -14.8 -4) (end -10.995 -4) (layer B.CrtYd) (width 0.05)) - (fp_line (start 14.8 -2.6) (end 14.8 -4) (layer B.CrtYd) (width 0.05)) - (fp_line (start -12 -5) (end -11 -5) (layer B.Fab) (width 0.025)) - (fp_line (start -11.5 -4.5) (end -11.5 -5.5) (layer B.Fab) (width 0.025)) - (fp_arc (start 0 0) (end -7.838 -8) (angle -91.1) (layer B.Fab) (width 0.025)) - (fp_arc (start 0 0) (end 7.838 8) (angle -91.1) (layer B.Fab) (width 0.025)) - (fp_line (start -7.838 -8) (end 7.838 -8) (layer B.Fab) (width 0.025)) - (fp_line (start -7.838 8) (end 7.838 8) (layer B.Fab) (width 0.025)) - (fp_line (start 10.639 3.5) (end 14.3 3.5) (layer B.Fab) (width 0.025)) - (fp_line (start 14.3 3.5) (end 14.3 -3.5) (layer B.Fab) (width 0.025)) - (fp_line (start 14.3 -3.5) (end 10.639 -3.5) (layer B.Fab) (width 0.025)) - (fp_line (start -10.639 3.5) (end -14.3 3.5) (layer B.Fab) (width 0.025)) - (fp_line (start -14.3 3.5) (end -14.3 -3.5) (layer B.Fab) (width 0.025)) - (fp_line (start -14.3 -3.5) (end -10.639 -3.5) (layer B.Fab) (width 0.025)) - (pad 1 smd rect (at -14.65 0 180) (size 3.2 4.2) (layers 4_bot B.Paste B.Mask) - (net 46 /hackrf_if/VBAT)) - (pad 2 smd rect (at 14.65 0 180) (size 3.2 4.2) (layers 4_bot B.Paste B.Mask) - (net 47 GND)) - (model ${KISBLIB}/bat_coin.pretty/bu2032sm-bt-gtr.wrl - (at (xyz 0 0 0)) - (scale (xyz 0.393701 0.393701 0.393701)) - (rotate (xyz 270 0 0)) - ) - ) - - (module cui:CUI_SJ-43516-SMT locked (layer 4_bot) (tedit 58F43AAB) (tstamp 53AA3C96) + (module cui:CUI_SJ-43516-SMT locked (layer 4_bot) (tedit 5BD22BC0) (tstamp 53AA3C96) (at 172.1 114.8 180) (path /53A8BFC3/53A8C2C6) (attr smd) @@ -1134,6 +1573,9 @@ (fp_text value TRRS_SW_JACK (at 0 0 180) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) + (fp_text user %R (at 0 0 180) (layer B.Fab) + (effects (font (size 1 1) (thickness 0.025)) (justify mirror)) + ) (fp_line (start -7.75 -2.75) (end -7.75 -5.35) (layer B.CrtYd) (width 0.05)) (fp_line (start -8.75 -2.75) (end -7.75 -2.75) (layer B.CrtYd) (width 0.05)) (fp_line (start -8.75 2.75) (end -8.75 -2.75) (layer B.CrtYd) (width 0.05)) @@ -1202,120 +1644,7 @@ ) ) - (module alps:ALPS_SCHA4B0419 (layer 4_bot) (tedit 58FBA237) (tstamp 58FBAA83) - (at 68.4 114.6 90) - (path /53A9129D/53A8C6D0) - (attr smd) - (fp_text reference J2 (at -6.5 8.4 90) (layer B.SilkS) - (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) - ) - (fp_text value MICROSD_DETSW (at 0 0 90) (layer B.Fab) - (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) - ) - (fp_text user EJECTED (at -0.9 -13.1 90) (layer Cmts.User) - (effects (font (size 0.2 0.2) (thickness 0.05))) - ) - (fp_text user INSERTED (at -0.9 -9.8 90) (layer Cmts.User) - (effects (font (size 0.2 0.2) (thickness 0.05))) - ) - (fp_text user OVERSTROKE (at -0.9 -8.9 90) (layer Cmts.User) - (effects (font (size 0.2 0.2) (thickness 0.05))) - ) - (fp_line (start 7.3 -7.95) (end 7.3 -6.55) (layer B.CrtYd) (width 0.05)) - (fp_line (start 7.3 -6.55) (end 7.1625 -6.55) (layer B.CrtYd) (width 0.05)) - (fp_line (start 7.1625 -6.55) (end 7.1625 7.85) (layer B.CrtYd) (width 0.05)) - (fp_line (start 7.1625 7.85) (end 6.95 7.85) (layer B.CrtYd) (width 0.05)) - (fp_line (start 6.95 7.85) (end 6.95 8.1) (layer B.CrtYd) (width 0.05)) - (fp_line (start 6.95 8.1) (end 5.1 8.1) (layer B.CrtYd) (width 0.05)) - (fp_line (start 5.1 8.1) (end 5.1 7.85) (layer B.CrtYd) (width 0.05)) - (fp_line (start 5.1 7.85) (end 3.45 7.85) (layer B.CrtYd) (width 0.05)) - (fp_line (start 3.45 7.85) (end 3.45 8.1) (layer B.CrtYd) (width 0.05)) - (fp_line (start 3.45 8.1) (end 2.3 8.1) (layer B.CrtYd) (width 0.05)) - (fp_line (start 2.3 8.1) (end 2.3 7.85) (layer B.CrtYd) (width 0.05)) - (fp_line (start 2.3 7.85) (end -2.9 7.85) (layer B.CrtYd) (width 0.05)) - (fp_line (start -2.9 7.85) (end -2.9 8.1) (layer B.CrtYd) (width 0.05)) - (fp_line (start -2.9 8.1) (end -5.6 8.1) (layer B.CrtYd) (width 0.05)) - (fp_line (start -5.6 8.1) (end -5.6 7.85) (layer B.CrtYd) (width 0.05)) - (fp_line (start -5.6 7.85) (end -7.1625 7.85) (layer B.CrtYd) (width 0.05)) - (fp_line (start -7.1625 7.85) (end -7.1625 -0.2) (layer B.CrtYd) (width 0.05)) - (fp_line (start -7.1625 -0.2) (end -7.6 -0.2) (layer B.CrtYd) (width 0.05)) - (fp_line (start -7.6 -0.2) (end -7.6 -5.35) (layer B.CrtYd) (width 0.05)) - (fp_line (start -7.6 -5.35) (end -7.1625 -5.35) (layer B.CrtYd) (width 0.05)) - (fp_line (start -7.1625 -5.35) (end -7.1625 -7.9) (layer B.CrtYd) (width 0.05)) - (fp_line (start -7.1625 -7.9) (end -7.1 -7.9) (layer B.CrtYd) (width 0.05)) - (fp_line (start -7.1 -7.9) (end -7.1 -8) (layer B.CrtYd) (width 0.05)) - (fp_line (start -7.1 -8) (end -5.8 -8) (layer B.CrtYd) (width 0.05)) - (fp_line (start -5.8 -8) (end -5.8 -7.9) (layer B.CrtYd) (width 0.05)) - (fp_line (start -5.8 -7.9) (end 5.85 -7.9) (layer B.CrtYd) (width 0.05)) - (fp_line (start 5.85 -7.9) (end 5.85 -7.95) (layer B.CrtYd) (width 0.05)) - (fp_line (start 5.85 -7.95) (end 7.3 -7.95) (layer B.CrtYd) (width 0.05)) - (fp_line (start 3.38 7.66) (end 5.17 7.66) (layer B.SilkS) (width 0.12)) - (fp_line (start -2.97 7.66) (end 2.37 7.66) (layer B.SilkS) (width 0.12)) - (fp_line (start 6.9725 7.66) (end 6.85 7.66) (layer B.SilkS) (width 0.12)) - (fp_line (start -5.5 -13.25) (end 3.5 -13.25) (layer Cmts.User) (width 0.025)) - (fp_line (start -5.5 -9.95) (end 3.5 -9.95) (layer Cmts.User) (width 0.025)) - (fp_line (start -5.5 -9.05) (end 3.5 -9.06) (layer Cmts.User) (width 0.025)) - (fp_line (start -1.4675 7.45) (end -1.4675 6.6) (layer Cmts.User) (width 0.025)) - (fp_line (start -1.4675 6.6) (end -2.5125 6.6) (layer Cmts.User) (width 0.025)) - (fp_line (start -2.5125 6.6) (end -2.5125 5.2) (layer Cmts.User) (width 0.025)) - (fp_line (start -2.5125 5.2) (end 1.0375 5.2) (layer Cmts.User) (width 0.025)) - (fp_line (start 1.0375 5.2) (end 1.0375 7.45) (layer Cmts.User) (width 0.025)) - (fp_line (start 1.0375 7.45) (end -1.4675 7.45) (layer Cmts.User) (width 0.025)) - (fp_line (start -6.0125 3.45) (end 2.8875 3.45) (layer Cmts.User) (width 0.025)) - (fp_line (start 2.8875 3.45) (end 2.8875 -0.95) (layer Cmts.User) (width 0.025)) - (fp_line (start 2.8875 -0.95) (end -6.0125 -0.95) (layer Cmts.User) (width 0.025)) - (fp_line (start -6.0125 -0.95) (end -6.0125 3.45) (layer Cmts.User) (width 0.025)) - (fp_line (start -6.9725 -6.42) (end -6.9725 -5.26) (layer B.SilkS) (width 0.12)) - (fp_line (start 5.92 -7.71) (end -5.9 -7.71) (layer B.SilkS) (width 0.12)) - (fp_line (start 6.9725 7.66) (end 6.9725 -6.62) (layer B.SilkS) (width 0.12)) - (fp_line (start -6.9725 7.66) (end -5.5 7.66) (layer B.SilkS) (width 0.12)) - (fp_line (start -6.9125 -7.65) (end -6.9125 7.6) (layer B.Fab) (width 0.025)) - (fp_line (start 6.9125 -7.65) (end -6.9125 -7.65) (layer B.Fab) (width 0.025)) - (fp_line (start 6.9125 7.6) (end 6.9125 -7.65) (layer B.Fab) (width 0.025)) - (fp_line (start -6.9125 7.6) (end 6.9125 7.6) (layer B.Fab) (width 0.025)) - (fp_line (start -6.9725 -0.27) (end -6.9725 7.66) (layer B.SilkS) (width 0.12)) - (pad SH smd rect (at -4.7125 7.425 90) (size 1.2 0.85) (layers 4_bot B.Paste B.Mask) - (net 47 GND)) - (pad A smd rect (at -3.475 7.475 90) (size 0.65 0.75) (layers 4_bot B.Paste B.Mask) - (net 47 GND)) - (pad B smd rect (at 2.875 7.475 90) (size 0.65 0.75) (layers 4_bot B.Paste B.Mask) - (net 28 /hackrf_if/SD_CD)) - (pad SH smd rect (at 6.0125 7.425 90) (size 1.3 0.85) (layers 4_bot B.Paste B.Mask) - (net 47 GND)) - (pad SH smd rect (at -6.46 -7.175 90) (size 0.745 1.15) (layers 4_bot B.Paste B.Mask) - (net 47 GND)) - (pad SH smd rect (at 6.575 -7.25 90) (size 0.95 0.9) (layers 4_bot B.Paste B.Mask) - (net 47 GND)) - (pad 0 smd rect (at -3.275 -5.675 90) (size 0.7 0.65) (layers 4_bot B.Paste B.Mask) - (net 47 GND)) - (pad 0 smd rect (at 0.725 -5.675 90) (size 0.7 0.65) (layers 4_bot B.Paste B.Mask) - (net 47 GND)) - (pad 1 smd rect (at 2.225 -4.475 90) (size 0.7 0.75) (layers 4_bot B.Paste B.Mask) - (net 33 /hackrf_if/SD_DAT2)) - (pad 2 smd rect (at 1.225 -4.475 90) (size 0.7 0.75) (layers 4_bot B.Paste B.Mask) - (net 34 /hackrf_if/SD_DAT3)) - (pad 3 smd rect (at 0.225 -4.475 90) (size 0.7 0.75) (layers 4_bot B.Paste B.Mask) - (net 30 /hackrf_if/SD_CMD)) - (pad 4 smd rect (at -0.775 -4.475 90) (size 0.7 0.75) (layers 4_bot B.Paste B.Mask) - (net 121 +3V3)) - (pad 5 smd rect (at -1.775 -4.475 90) (size 0.7 0.75) (layers 4_bot B.Paste B.Mask) - (net 29 /hackrf_if/SD_CLK)) - (pad 6 smd rect (at -2.775 -4.475 90) (size 0.7 0.75) (layers 4_bot B.Paste B.Mask) - (net 47 GND)) - (pad 7 smd rect (at -3.775 -4.475 90) (size 0.7 0.75) (layers 4_bot B.Paste B.Mask) - (net 31 /hackrf_if/SD_DAT0)) - (pad 8 smd rect (at -4.775 -4.475 90) (size 0.7 0.75) (layers 4_bot B.Paste B.Mask) - (net 32 /hackrf_if/SD_DAT1)) - (pad SH smd rect (at -7.1225 -2.765 90) (size 0.42 4.63) (layers 4_bot B.Paste B.Mask) - (net 47 GND)) - (model ${KISBLIB}/alps.pretty/SCHA4B0419.wrl - (offset (xyz 0 7.504988687286377 1.3200125801754)) - (scale (xyz 0.393701 0.393701 0.393701)) - (rotate (xyz 0 0 0)) - ) - ) - - (module eastrising:ER-TFT024-3 locked (layer 1_top) (tedit 58FE2156) (tstamp 58A5FE6D) + (module eastrising:ER-TFT024-3 locked (layer 1_top) (tedit 5BD22D17) (tstamp 58A5FE6D) (at 95.25 137.5 270) (path /53A9129D/58A60E03) (fp_text reference LCD1 (at 16.5 -23.25 270) (layer F.SilkS) @@ -1324,6 +1653,9 @@ (fp_text value ER-TFT024-3_PANEL (at 0 0 270) (layer F.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12))) ) + (fp_text user %R (at 0 0 270) (layer F.Fab) + (effects (font (size 1 1) (thickness 0.025))) + ) (fp_line (start -18.5 20.78) (end -18.5 32.38) (layer B.CrtYd) (width 0.12)) (fp_line (start 18.5 20.78) (end 18.5 32.38) (layer B.CrtYd) (width 0.12)) (fp_line (start -12.75 20.78) (end -18.5 20.78) (layer B.CrtYd) (width 0.12)) @@ -1361,7 +1693,7 @@ ) ) - (module ck:CK_TSWB-3N-CB222_LFS locked (layer 1_top) (tedit 58FE20A6) (tstamp 53AA2AAD) + (module ck:CK_TSWB-3N-CB222_LFS locked (layer 1_top) (tedit 5BD22D44) (tstamp 53AA2AAD) (at 147.5 137.5 90) (path /53A9129D/53A8C6FD) (attr smd) @@ -1371,6 +1703,9 @@ (fp_text value CK_TSWB-3N-CB (at 0 0 90) (layer F.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12))) ) + (fp_text user %R (at 0 0 90) (layer F.Fab) + (effects (font (size 1 1) (thickness 0.025))) + ) (fp_circle (center 0 0) (end 11.45 0) (layer F.SilkS) (width 0.12)) (fp_circle (center 0 0) (end 4.05 0) (layer F.SilkS) (width 0.12)) (fp_circle (center 0 0) (end 16 0) (layer F.SilkS) (width 0.12)) @@ -1407,7 +1742,7 @@ (net 41 /hackrf_if/SW_U)) ) - (module ipc_sot:IPC_SOT23-5P95_275X135L40X40N (layer 4_bot) (tedit 58FD8D61) (tstamp 58FBD8CB) + (module ipc_sot:IPC_SOT23-5P95_275X135L40X40N (layer 4_bot) (tedit 5BD23001) (tstamp 58FBD8CB) (at 143.2 108.2) (path /58CFF3E3/58CFF91A) (attr smd) @@ -1417,6 +1752,9 @@ (fp_text value "TCR2EF18,LM(CT" (at 0 0) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) + (fp_text user %R (at 0 0 90) (layer B.Fab) + (effects (font (size 0.6 0.6) (thickness 0.025)) (justify mirror)) + ) (fp_line (start -2.105 1.7) (end 2.105 1.7) (layer B.CrtYd) (width 0.05)) (fp_line (start 2.105 1.7) (end 2.105 -1.7) (layer B.CrtYd) (width 0.05)) (fp_line (start 2.105 -1.7) (end -2.105 -1.7) (layer B.CrtYd) (width 0.05)) @@ -1438,14 +1776,14 @@ (net 48 "Net-(C39-Pad1)")) (pad 5 smd rect (at 1.165 0.95 270) (size 0.59 1.38) (layers 4_bot B.Paste B.Mask) (net 122 +1V8)) - (model TO_SOT_Packages_SMD.3dshapes/SOT-23-5.wrl + (model ${KISYS3DMOD}/Package_TO_SOT_SMD.3dshapes/SOT-23-5.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module ipc_resc:IPC_RESCAXS8P80_320X160X60L30X45N (layer 4_bot) (tedit 58FD8CA0) (tstamp 58F95A04) + (module ipc_rescax:IPC_RESCAXS8P80_320X160X60L30X45N (layer 4_bot) (tedit 5BD22BE0) (tstamp 5BD11DB9) (at 154.1 116.7 270) (path /53A8BFC3/58F9564A) (attr smd) @@ -1455,70 +1793,77 @@ (fp_text value 220R (at 0 0 270) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) - (fp_line (start -1.585 1.89) (end 1.585 1.89) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.585 1.89) (end 1.585 -1.89) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.585 -1.89) (end -1.585 -1.89) (layer B.CrtYd) (width 0.05)) - (fp_line (start -1.585 -1.89) (end -1.585 1.89) (layer B.CrtYd) (width 0.05)) - (fp_line (start -0.8 1.82) (end 0.8 1.82) (layer B.SilkS) (width 0.12)) - (fp_line (start 0.8 -1.82) (end -0.8 -1.82) (layer B.SilkS) (width 0.12)) + (fp_text user %R (at 0 0) (layer B.Fab) + (effects (font (size 1 1) (thickness 0.025)) (justify mirror)) + ) (fp_line (start -0.8 1.6) (end 0.8 1.6) (layer B.Fab) (width 0.025)) (fp_line (start 0.8 1.6) (end 0.8 -1.6) (layer B.Fab) (width 0.025)) (fp_line (start 0.8 -1.6) (end -0.8 -1.6) (layer B.Fab) (width 0.025)) (fp_line (start -0.8 -1.6) (end -0.8 1.6) (layer B.Fab) (width 0.025)) - (pad 1 smd rect (at -0.87 1.3) (size 0.68 0.93) (layers 4_bot B.Paste B.Mask) + (fp_line (start -0.175 -1.66) (end 0.175 -1.66) (layer B.SilkS) (width 0.12)) + (fp_line (start 0.175 1.66) (end -0.175 1.66) (layer B.SilkS) (width 0.12)) + (fp_line (start -1.485 1.92) (end 1.485 1.92) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.485 1.92) (end 1.485 -1.92) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.485 -1.92) (end -1.485 -1.92) (layer B.CrtYd) (width 0.05)) + (fp_line (start -1.485 -1.92) (end -1.485 1.92) (layer B.CrtYd) (width 0.05)) + (pad 1 smd rect (at -0.795 1.3) (size 0.74 0.88) (layers 4_bot B.Paste B.Mask) (net 115 /audio/BICK_R)) - (pad 2 smd rect (at -0.87 0.4) (size 0.48 0.93) (layers 4_bot B.Paste B.Mask) + (pad 2 smd rect (at -0.795 0.4) (size 0.54 0.88) (layers 4_bot B.Paste B.Mask) (net 116 /audio/LRCK_R)) - (pad 3 smd rect (at -0.87 -0.4) (size 0.48 0.93) (layers 4_bot B.Paste B.Mask) + (pad 3 smd rect (at -0.795 -0.4) (size 0.54 0.88) (layers 4_bot B.Paste B.Mask) (net 117 /audio/SDTO_R)) - (pad 4 smd rect (at -0.87 -1.3) (size 0.68 0.93) (layers 4_bot B.Paste B.Mask) + (pad 4 smd rect (at -0.795 -1.3) (size 0.74 0.88) (layers 4_bot B.Paste B.Mask) (net 114 /audio/PDN#_R)) - (pad 5 smd rect (at 0.87 -1.3 180) (size 0.68 0.93) (layers 4_bot B.Paste B.Mask) + (pad 5 smd rect (at 0.795 -1.3 180) (size 0.74 0.88) (layers 4_bot B.Paste B.Mask) (net 80 /hackrf_if/AUDIO_RESET#)) - (pad 6 smd rect (at 0.87 -0.4 180) (size 0.48 0.93) (layers 4_bot B.Paste B.Mask) + (pad 6 smd rect (at 0.795 -0.4 180) (size 0.54 0.88) (layers 4_bot B.Paste B.Mask) (net 85 /hackrf_if/I2S0_RX_SDA)) - (pad 7 smd rect (at 0.87 0.4 180) (size 0.48 0.93) (layers 4_bot B.Paste B.Mask) + (pad 7 smd rect (at 0.795 0.4 180) (size 0.54 0.88) (layers 4_bot B.Paste B.Mask) (net 83 /hackrf_if/I2S0_WS)) - (pad 8 smd rect (at 0.87 1.3 180) (size 0.68 0.93) (layers 4_bot B.Paste B.Mask) + (pad 8 smd rect (at 0.795 1.3 180) (size 0.74 0.88) (layers 4_bot B.Paste B.Mask) (net 82 /audio/BICK)) - (model Resistors_SMD.3dshapes/R_Array_Convex_4x0603.wrl + (model ${KISYS3DMOD}/Resistor_SMD.3dshapes/R_Array_Convex_4x0603.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module ipc_resc:IPC_RESC1608X55L25N (layer 4_bot) (tedit 58FD8CA7) (tstamp 58F8E7B2) + (module ipc_resc:IPC_RESC160X80X55L25N (layer 4_bot) (tedit 5BD22BD7) (tstamp 5BD11CD1) (at 157.05 114.5 270) (path /53A8BFC3/58CF5E5F) + (attr smd) (fp_text reference R2 (at 0 -1.25 270) (layer B.SilkS) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) (fp_text value 10K (at 0 0 270) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) - (fp_line (start -0.8 0.4) (end 0.8 0.4) (layer B.Fab) (width 0.025)) - (fp_line (start 0.8 0.4) (end 0.8 -0.4) (layer B.Fab) (width 0.025)) - (fp_line (start 0.8 -0.4) (end -0.8 -0.4) (layer B.Fab) (width 0.025)) + (fp_line (start -1.365 -0.665) (end -1.365 0.665) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.365 -0.665) (end -1.365 -0.665) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.365 0.665) (end 1.365 -0.665) (layer B.CrtYd) (width 0.05)) + (fp_line (start -1.365 0.665) (end 1.365 0.665) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.245 0.46) (end -0.245 0.46) (layer B.SilkS) (width 0.12)) + (fp_line (start -0.245 -0.46) (end 0.245 -0.46) (layer B.SilkS) (width 0.12)) (fp_line (start -0.8 -0.4) (end -0.8 0.4) (layer B.Fab) (width 0.025)) - (fp_line (start -0.8 0.645) (end 0.8 0.645) (layer B.SilkS) (width 0.12)) - (fp_line (start 0.8 -0.645) (end -0.8 -0.645) (layer B.SilkS) (width 0.12)) - (fp_line (start -1.465 0.715) (end 1.465 0.715) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.465 0.715) (end 1.465 -0.715) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.465 -0.715) (end -1.465 -0.715) (layer B.CrtYd) (width 0.05)) - (fp_line (start -1.465 -0.715) (end -1.465 0.715) (layer B.CrtYd) (width 0.05)) - (pad 1 smd rect (at -0.82 0 270) (size 0.79 0.93) (layers 4_bot B.Paste B.Mask) - (net 114 /audio/PDN#_R)) - (pad 2 smd rect (at 0.82 0 270) (size 0.79 0.93) (layers 4_bot B.Paste B.Mask) + (fp_line (start 0.8 -0.4) (end -0.8 -0.4) (layer B.Fab) (width 0.025)) + (fp_line (start 0.8 0.4) (end 0.8 -0.4) (layer B.Fab) (width 0.025)) + (fp_line (start -0.8 0.4) (end 0.8 0.4) (layer B.Fab) (width 0.025)) + (fp_text user %R (at 0 0 270) (layer B.Fab) + (effects (font (size 0.45 0.45) (thickness 0.025)) (justify mirror)) + ) + (pad 2 smd rect (at 0.795 0 270) (size 0.74 0.93) (layers 4_bot B.Paste B.Mask) (net 47 GND)) - (model Resistors_SMD.3dshapes/R_0603.wrl + (pad 1 smd rect (at -0.795 0 270) (size 0.74 0.93) (layers 4_bot B.Paste B.Mask) + (net 114 /audio/PDN#_R)) + (model ${KISYS3DMOD}/Resistor_SMD.3dshapes/R_0603_1608Metric.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module ipc_ledc:IPC_LEDC1608X90L40N (layer 4_bot) (tedit 58FD8B04) (tstamp 58F5B137) + (module ipc_ledc:IPC_LEDC1608X90L40N (layer 4_bot) (tedit 5BD22C06) (tstamp 58F5B137) (at 166.6 121.8 180) (path /58CFF3E3/58F5BA0B) (fp_text reference D2 (at 1 1.2 180) (layer B.SilkS) @@ -1527,6 +1872,9 @@ (fp_text value "LED 0603 yellow" (at 0 0 180) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) + (fp_text user %R (at 0 0 180) (layer B.Fab) + (effects (font (size 0.45 0.45) (thickness 0.025)) (justify mirror)) + ) (fp_line (start -0.8 0.4) (end 0.8 0.4) (layer B.Fab) (width 0.025)) (fp_line (start 0.8 0.4) (end 0.8 -0.4) (layer B.Fab) (width 0.025)) (fp_line (start 0.8 -0.4) (end -0.8 -0.4) (layer B.Fab) (width 0.025)) @@ -1546,14 +1894,14 @@ (net 112 "Net-(D2-PadC)")) (pad A smd rect (at 0.76 0 180) (size 0.91 0.93) (layers 4_bot B.Paste B.Mask) (net 110 "Net-(D2-PadA)")) - (model LEDs.3dshapes/LED_0603.wrl + (model ${KISYS3DMOD}/LED_SMD.3dshapes/LED_0603_1608Metric.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) - (rotate (xyz 0 0 180)) + (rotate (xyz 0 0 0)) ) ) - (module ipc_ledc:IPC_LEDC1608X90L40N (layer 4_bot) (tedit 58FD8AFC) (tstamp 58F5B131) + (module ipc_ledc:IPC_LEDC1608X90L40N (layer 4_bot) (tedit 5BD22C09) (tstamp 58F5B131) (at 166.6 123.3 180) (path /58CFF3E3/58F5B932) (fp_text reference D1 (at 1 -1.2 180) (layer B.SilkS) @@ -1562,6 +1910,9 @@ (fp_text value "LED 0603 green" (at 0 0 180) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) + (fp_text user %R (at 0 0 180) (layer B.Fab) + (effects (font (size 0.45 0.45) (thickness 0.025)) (justify mirror)) + ) (fp_line (start -0.8 0.4) (end 0.8 0.4) (layer B.Fab) (width 0.025)) (fp_line (start 0.8 0.4) (end 0.8 -0.4) (layer B.Fab) (width 0.025)) (fp_line (start 0.8 -0.4) (end -0.8 -0.4) (layer B.Fab) (width 0.025)) @@ -1581,14 +1932,14 @@ (net 111 "Net-(D1-PadC)")) (pad A smd rect (at 0.76 0 180) (size 0.91 0.93) (layers 4_bot B.Paste B.Mask) (net 109 "Net-(D1-PadA)")) - (model LEDs.3dshapes/LED_0603.wrl + (model ${KISYS3DMOD}/LED_SMD.3dshapes/LED_0603_1608Metric.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) - (rotate (xyz 0 0 180)) + (rotate (xyz 0 0 0)) ) ) - (module ipc_resc:IPC_RESC1608X55L25N (layer 4_bot) (tedit 58FD8B80) (tstamp 58F5BB55) + (module ipc_resc:IPC_RESC160X80X55L25N (layer 4_bot) (tedit 5B60D758) (tstamp 5BD11D8D) (at 161 110.2) (path /53A8BFC3/53A8C29C) (attr smd) @@ -1598,388 +1949,415 @@ (fp_text value 2K2 (at 0 0) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) + (fp_text user %R (at 0 0) (layer B.Fab) + (effects (font (size 0.45 0.45) (thickness 0.025)) (justify mirror)) + ) (fp_line (start -0.8 0.4) (end 0.8 0.4) (layer B.Fab) (width 0.025)) (fp_line (start 0.8 0.4) (end 0.8 -0.4) (layer B.Fab) (width 0.025)) (fp_line (start 0.8 -0.4) (end -0.8 -0.4) (layer B.Fab) (width 0.025)) (fp_line (start -0.8 -0.4) (end -0.8 0.4) (layer B.Fab) (width 0.025)) - (fp_line (start -0.8 0.645) (end 0.8 0.645) (layer B.SilkS) (width 0.12)) - (fp_line (start 0.8 -0.645) (end -0.8 -0.645) (layer B.SilkS) (width 0.12)) - (fp_line (start -1.465 0.715) (end 1.465 0.715) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.465 0.715) (end 1.465 -0.715) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.465 -0.715) (end -1.465 -0.715) (layer B.CrtYd) (width 0.05)) - (fp_line (start -1.465 -0.715) (end -1.465 0.715) (layer B.CrtYd) (width 0.05)) - (pad 1 smd rect (at -0.82 0) (size 0.79 0.93) (layers 4_bot B.Paste B.Mask) + (fp_line (start -0.245 -0.46) (end 0.245 -0.46) (layer B.SilkS) (width 0.12)) + (fp_line (start 0.245 0.46) (end -0.245 0.46) (layer B.SilkS) (width 0.12)) + (fp_line (start -1.365 0.665) (end 1.365 0.665) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.365 0.665) (end 1.365 -0.665) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.365 -0.665) (end -1.365 -0.665) (layer B.CrtYd) (width 0.05)) + (fp_line (start -1.365 -0.665) (end -1.365 0.665) (layer B.CrtYd) (width 0.05)) + (pad 1 smd rect (at -0.795 0) (size 0.74 0.93) (layers 4_bot B.Paste B.Mask) (net 91 "Net-(R18-Pad1)")) - (pad 2 smd rect (at 0.82 0) (size 0.79 0.93) (layers 4_bot B.Paste B.Mask) + (pad 2 smd rect (at 0.795 0) (size 0.74 0.93) (layers 4_bot B.Paste B.Mask) (net 90 /audio/MIC)) - (model Resistors_SMD.3dshapes/R_0603.wrl + (model ${KISYS3DMOD}/Resistor_SMD.3dshapes/R_0603_1608Metric.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module ipc_resc:IPC_RESC1005X40L25N (layer 4_bot) (tedit 58FD8852) (tstamp 58F45B53) + (module ipc_resc:IPC_RESC100X50X40L25N (layer 4_bot) (tedit 5BD22CF1) (tstamp 5BD11DAB) (at 94 145.8 180) (path /53A9129D/58B751E2) + (attr smd) (fp_text reference R20 (at 0 1 180) (layer B.SilkS) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) (fp_text value 3K9 (at 0 0 180) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) + (fp_text user %R (at 0 0 180) (layer B.Fab) + (effects (font (size 0.3 0.3) (thickness 0.025)) (justify mirror)) + ) (fp_line (start -0.5 0.25) (end 0.5 0.25) (layer B.Fab) (width 0.025)) (fp_line (start 0.5 0.25) (end 0.5 -0.25) (layer B.Fab) (width 0.025)) (fp_line (start 0.5 -0.25) (end -0.5 -0.25) (layer B.Fab) (width 0.025)) (fp_line (start -0.5 -0.25) (end -0.5 0.25) (layer B.Fab) (width 0.025)) - (fp_line (start -0.5 0.48) (end 0.5 0.48) (layer B.SilkS) (width 0.12)) - (fp_line (start 0.5 -0.48) (end -0.5 -0.48) (layer B.SilkS) (width 0.12)) - (fp_line (start -0.85 0.54) (end 0.85 0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start 0.85 0.54) (end 0.85 -0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start 0.85 -0.54) (end -0.85 -0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start -0.85 -0.54) (end -0.85 0.54) (layer B.CrtYd) (width 0.05)) - (pad 1 smd rect (at -0.43 0 180) (size 0.54 0.6) (layers 4_bot B.Paste B.Mask) + (fp_line (start -0.9 0.44) (end 0.9 0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.9 0.44) (end 0.9 -0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.9 -0.44) (end -0.9 -0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start -0.9 -0.44) (end -0.9 0.44) (layer B.CrtYd) (width 0.05)) + (pad 1 smd rect (at -0.46 0 180) (size 0.58 0.58) (layers 4_bot B.Paste B.Mask) (net 71 "Net-(R20-Pad1)")) - (pad 2 smd rect (at 0.43 0 180) (size 0.54 0.6) (layers 4_bot B.Paste B.Mask) + (pad 2 smd rect (at 0.46 0 180) (size 0.58 0.58) (layers 4_bot B.Paste B.Mask) (net 47 GND)) - (model Resistors_SMD.3dshapes/R_0402.wrl + (model ${KISYS3DMOD}/Resistor_SMD.3dshapes/R_0402_1005Metric.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module ipc_resc:IPC_RESC1005X40L25N (layer 4_bot) (tedit 58FD8841) (tstamp 58F45B4E) - (at 92.6 145.4 270) + (module ipc_resc:IPC_RESC100X50X40L25N (layer 4_bot) (tedit 5BD22CED) (tstamp 5BD11D9D) + (at 92.6 145.35 270) (path /53A9129D/53A91657) + (attr smd) (fp_text reference R19 (at -1.8 0 270) (layer B.SilkS) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) (fp_text value 10K (at 0 0 270) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) + (fp_text user %R (at 0 0 270) (layer B.Fab) + (effects (font (size 0.3 0.3) (thickness 0.025)) (justify mirror)) + ) (fp_line (start -0.5 0.25) (end 0.5 0.25) (layer B.Fab) (width 0.025)) (fp_line (start 0.5 0.25) (end 0.5 -0.25) (layer B.Fab) (width 0.025)) (fp_line (start 0.5 -0.25) (end -0.5 -0.25) (layer B.Fab) (width 0.025)) (fp_line (start -0.5 -0.25) (end -0.5 0.25) (layer B.Fab) (width 0.025)) - (fp_line (start -0.5 0.48) (end 0.5 0.48) (layer B.SilkS) (width 0.12)) - (fp_line (start 0.5 -0.48) (end -0.5 -0.48) (layer B.SilkS) (width 0.12)) - (fp_line (start -0.85 0.54) (end 0.85 0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start 0.85 0.54) (end 0.85 -0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start 0.85 -0.54) (end -0.85 -0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start -0.85 -0.54) (end -0.85 0.54) (layer B.CrtYd) (width 0.05)) - (pad 1 smd rect (at -0.43 0 270) (size 0.54 0.6) (layers 4_bot B.Paste B.Mask) + (fp_line (start -0.9 0.44) (end 0.9 0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.9 0.44) (end 0.9 -0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.9 -0.44) (end -0.9 -0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start -0.9 -0.44) (end -0.9 0.44) (layer B.CrtYd) (width 0.05)) + (pad 1 smd rect (at -0.46 0 270) (size 0.58 0.58) (layers 4_bot B.Paste B.Mask) (net 23 /hackrf_if/LCD_RESET#)) - (pad 2 smd rect (at 0.43 0 270) (size 0.54 0.6) (layers 4_bot B.Paste B.Mask) + (pad 2 smd rect (at 0.46 0 270) (size 0.58 0.58) (layers 4_bot B.Paste B.Mask) (net 47 GND)) - (model Resistors_SMD.3dshapes/R_0402.wrl + (model ${KISYS3DMOD}/Resistor_SMD.3dshapes/R_0402_1005Metric.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module ipc_resc:IPC_RESC1005X40L25N (layer 4_bot) (tedit 58FD8AE4) (tstamp 58F4592E) + (module ipc_resc:IPC_RESC100X50X40L25N (layer 4_bot) (tedit 5BD22C19) (tstamp 5BD11D7F) (at 167.9 125.15 270) (path /58CFF3E3/58F44903) + (attr smd) (fp_text reference R14 (at 1.75 1.8 270) (layer B.SilkS) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) (fp_text value 10K (at 0 0 270) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) + (fp_text user %R (at 0 0 270) (layer B.Fab) + (effects (font (size 0.3 0.3) (thickness 0.025)) (justify mirror)) + ) (fp_line (start -0.5 0.25) (end 0.5 0.25) (layer B.Fab) (width 0.025)) (fp_line (start 0.5 0.25) (end 0.5 -0.25) (layer B.Fab) (width 0.025)) (fp_line (start 0.5 -0.25) (end -0.5 -0.25) (layer B.Fab) (width 0.025)) (fp_line (start -0.5 -0.25) (end -0.5 0.25) (layer B.Fab) (width 0.025)) - (fp_line (start -0.5 0.48) (end 0.5 0.48) (layer B.SilkS) (width 0.12)) - (fp_line (start 0.5 -0.48) (end -0.5 -0.48) (layer B.SilkS) (width 0.12)) - (fp_line (start -0.85 0.54) (end 0.85 0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start 0.85 0.54) (end 0.85 -0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start 0.85 -0.54) (end -0.85 -0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start -0.85 -0.54) (end -0.85 0.54) (layer B.CrtYd) (width 0.05)) - (pad 1 smd rect (at -0.43 0 270) (size 0.54 0.6) (layers 4_bot B.Paste B.Mask) + (fp_line (start -0.9 0.44) (end 0.9 0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.9 0.44) (end 0.9 -0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.9 -0.44) (end -0.9 -0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start -0.9 -0.44) (end -0.9 0.44) (layer B.CrtYd) (width 0.05)) + (pad 1 smd rect (at -0.46 0 270) (size 0.58 0.58) (layers 4_bot B.Paste B.Mask) (net 108 "Net-(R14-Pad1)")) - (pad 2 smd rect (at 0.43 0 270) (size 0.54 0.6) (layers 4_bot B.Paste B.Mask) + (pad 2 smd rect (at 0.46 0 270) (size 0.58 0.58) (layers 4_bot B.Paste B.Mask) (net 47 GND)) - (model Resistors_SMD.3dshapes/R_0402.wrl + (model ${KISYS3DMOD}/Resistor_SMD.3dshapes/R_0402_1005Metric.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module ipc_resc:IPC_RESC1005X40L25N (layer 4_bot) (tedit 58FD8A87) (tstamp 58F45924) + (module ipc_resc:IPC_RESC100X50X40L25N (layer 4_bot) (tedit 5BD22C2B) (tstamp 5BD11D43) (at 174.35 125.15 270) (path /58CFF3E3/58F44562) + (attr smd) (fp_text reference R10 (at -0.05 -2.95 270) (layer B.SilkS) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) (fp_text value 10K (at 0 0 270) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) - (fp_line (start -0.5 0.25) (end 0.5 0.25) (layer B.Fab) (width 0.025)) - (fp_line (start 0.5 0.25) (end 0.5 -0.25) (layer B.Fab) (width 0.025)) - (fp_line (start 0.5 -0.25) (end -0.5 -0.25) (layer B.Fab) (width 0.025)) + (fp_line (start -0.9 -0.44) (end -0.9 0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.9 -0.44) (end -0.9 -0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.9 0.44) (end 0.9 -0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start -0.9 0.44) (end 0.9 0.44) (layer B.CrtYd) (width 0.05)) (fp_line (start -0.5 -0.25) (end -0.5 0.25) (layer B.Fab) (width 0.025)) - (fp_line (start -0.5 0.48) (end 0.5 0.48) (layer B.SilkS) (width 0.12)) - (fp_line (start 0.5 -0.48) (end -0.5 -0.48) (layer B.SilkS) (width 0.12)) - (fp_line (start -0.85 0.54) (end 0.85 0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start 0.85 0.54) (end 0.85 -0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start 0.85 -0.54) (end -0.85 -0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start -0.85 -0.54) (end -0.85 0.54) (layer B.CrtYd) (width 0.05)) - (pad 1 smd rect (at -0.43 0 270) (size 0.54 0.6) (layers 4_bot B.Paste B.Mask) - (net 106 "Net-(R10-Pad1)")) - (pad 2 smd rect (at 0.43 0 270) (size 0.54 0.6) (layers 4_bot B.Paste B.Mask) + (fp_line (start 0.5 -0.25) (end -0.5 -0.25) (layer B.Fab) (width 0.025)) + (fp_line (start 0.5 0.25) (end 0.5 -0.25) (layer B.Fab) (width 0.025)) + (fp_line (start -0.5 0.25) (end 0.5 0.25) (layer B.Fab) (width 0.025)) + (fp_text user %R (at 0 0 270) (layer B.Fab) + (effects (font (size 0.3 0.3) (thickness 0.025)) (justify mirror)) + ) + (pad 2 smd rect (at 0.46 0 270) (size 0.58 0.58) (layers 4_bot B.Paste B.Mask) (net 47 GND)) - (model Resistors_SMD.3dshapes/R_0402.wrl + (pad 1 smd rect (at -0.46 0 270) (size 0.58 0.58) (layers 4_bot B.Paste B.Mask) + (net 106 "Net-(R10-Pad1)")) + (model ${KISYS3DMOD}/Resistor_SMD.3dshapes/R_0402_1005Metric.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module ipc_resc:IPC_RESC1005X40L25N (layer 4_bot) (tedit 58FD8AAE) (tstamp 58F4591F) + (module ipc_resc:IPC_RESC100X50X40L25N (layer 4_bot) (tedit 5BD22C1E) (tstamp 5BD11D35) (at 168.2 126.55 180) (path /58CFF3E3/58F443CF) + (attr smd) (fp_text reference R9 (at 0 -1.05 180) (layer B.SilkS) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) (fp_text value 10K (at 0 0 180) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) - (fp_line (start -0.5 0.25) (end 0.5 0.25) (layer B.Fab) (width 0.025)) - (fp_line (start 0.5 0.25) (end 0.5 -0.25) (layer B.Fab) (width 0.025)) - (fp_line (start 0.5 -0.25) (end -0.5 -0.25) (layer B.Fab) (width 0.025)) + (fp_line (start -0.9 -0.44) (end -0.9 0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.9 -0.44) (end -0.9 -0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.9 0.44) (end 0.9 -0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start -0.9 0.44) (end 0.9 0.44) (layer B.CrtYd) (width 0.05)) (fp_line (start -0.5 -0.25) (end -0.5 0.25) (layer B.Fab) (width 0.025)) - (fp_line (start -0.5 0.48) (end 0.5 0.48) (layer B.SilkS) (width 0.12)) - (fp_line (start 0.5 -0.48) (end -0.5 -0.48) (layer B.SilkS) (width 0.12)) - (fp_line (start -0.85 0.54) (end 0.85 0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start 0.85 0.54) (end 0.85 -0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start 0.85 -0.54) (end -0.85 -0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start -0.85 -0.54) (end -0.85 0.54) (layer B.CrtYd) (width 0.05)) - (pad 1 smd rect (at -0.43 0 180) (size 0.54 0.6) (layers 4_bot B.Paste B.Mask) - (net 105 "Net-(R9-Pad1)")) - (pad 2 smd rect (at 0.43 0 180) (size 0.54 0.6) (layers 4_bot B.Paste B.Mask) + (fp_line (start 0.5 -0.25) (end -0.5 -0.25) (layer B.Fab) (width 0.025)) + (fp_line (start 0.5 0.25) (end 0.5 -0.25) (layer B.Fab) (width 0.025)) + (fp_line (start -0.5 0.25) (end 0.5 0.25) (layer B.Fab) (width 0.025)) + (fp_text user %R (at 0 0 180) (layer B.Fab) + (effects (font (size 0.3 0.3) (thickness 0.025)) (justify mirror)) + ) + (pad 2 smd rect (at 0.46 0 180) (size 0.58 0.58) (layers 4_bot B.Paste B.Mask) (net 47 GND)) - (model Resistors_SMD.3dshapes/R_0402.wrl + (pad 1 smd rect (at -0.46 0 180) (size 0.58 0.58) (layers 4_bot B.Paste B.Mask) + (net 105 "Net-(R9-Pad1)")) + (model ${KISYS3DMOD}/Resistor_SMD.3dshapes/R_0402_1005Metric.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module ipc_resc:IPC_RESC1005X40L25N (layer 4_bot) (tedit 58FD8A66) (tstamp 58F4591A) + (module ipc_resc:IPC_RESC100X50X40L25N (layer 4_bot) (tedit 5B60D758) (tstamp 5BD11D27) (at 173.9 128.2) (path /58CFF3E3/58F1E372) + (attr smd) (fp_text reference R8 (at 1.3 -1) (layer B.SilkS) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) (fp_text value 10K (at 0 0) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) - (fp_line (start -0.5 0.25) (end 0.5 0.25) (layer B.Fab) (width 0.025)) - (fp_line (start 0.5 0.25) (end 0.5 -0.25) (layer B.Fab) (width 0.025)) - (fp_line (start 0.5 -0.25) (end -0.5 -0.25) (layer B.Fab) (width 0.025)) + (fp_line (start -0.9 -0.44) (end -0.9 0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.9 -0.44) (end -0.9 -0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.9 0.44) (end 0.9 -0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start -0.9 0.44) (end 0.9 0.44) (layer B.CrtYd) (width 0.05)) (fp_line (start -0.5 -0.25) (end -0.5 0.25) (layer B.Fab) (width 0.025)) - (fp_line (start -0.5 0.48) (end 0.5 0.48) (layer B.SilkS) (width 0.12)) - (fp_line (start 0.5 -0.48) (end -0.5 -0.48) (layer B.SilkS) (width 0.12)) - (fp_line (start -0.85 0.54) (end 0.85 0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start 0.85 0.54) (end 0.85 -0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start 0.85 -0.54) (end -0.85 -0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start -0.85 -0.54) (end -0.85 0.54) (layer B.CrtYd) (width 0.05)) - (pad 1 smd rect (at -0.43 0) (size 0.54 0.6) (layers 4_bot B.Paste B.Mask) - (net 104 "Net-(R8-Pad1)")) - (pad 2 smd rect (at 0.43 0) (size 0.54 0.6) (layers 4_bot B.Paste B.Mask) + (fp_line (start 0.5 -0.25) (end -0.5 -0.25) (layer B.Fab) (width 0.025)) + (fp_line (start 0.5 0.25) (end 0.5 -0.25) (layer B.Fab) (width 0.025)) + (fp_line (start -0.5 0.25) (end 0.5 0.25) (layer B.Fab) (width 0.025)) + (fp_text user %R (at 0 0) (layer B.Fab) + (effects (font (size 0.3 0.3) (thickness 0.025)) (justify mirror)) + ) + (pad 2 smd rect (at 0.46 0) (size 0.58 0.58) (layers 4_bot B.Paste B.Mask) (net 47 GND)) - (model Resistors_SMD.3dshapes/R_0402.wrl + (pad 1 smd rect (at -0.46 0) (size 0.58 0.58) (layers 4_bot B.Paste B.Mask) + (net 104 "Net-(R8-Pad1)")) + (model ${KISYS3DMOD}/Resistor_SMD.3dshapes/R_0402_1005Metric.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module ipc_resc:IPC_RESC1005X40L25N (layer 4_bot) (tedit 58FD8A69) (tstamp 58F45915) + (module ipc_resc:IPC_RESC100X50X40L25N (layer 4_bot) (tedit 5BD22C38) (tstamp 5BD11D19) (at 176.25 128.2) (path /58CFF3E3/58F1F0EF) + (attr smd) (fp_text reference R7 (at 0.55 -1) (layer B.SilkS) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) (fp_text value 0R (at 0 0) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) + (fp_text user %R (at 0 0) (layer B.Fab) + (effects (font (size 0.3 0.3) (thickness 0.025)) (justify mirror)) + ) (fp_line (start -0.5 0.25) (end 0.5 0.25) (layer B.Fab) (width 0.025)) (fp_line (start 0.5 0.25) (end 0.5 -0.25) (layer B.Fab) (width 0.025)) (fp_line (start 0.5 -0.25) (end -0.5 -0.25) (layer B.Fab) (width 0.025)) (fp_line (start -0.5 -0.25) (end -0.5 0.25) (layer B.Fab) (width 0.025)) - (fp_line (start -0.5 0.48) (end 0.5 0.48) (layer B.SilkS) (width 0.12)) - (fp_line (start 0.5 -0.48) (end -0.5 -0.48) (layer B.SilkS) (width 0.12)) - (fp_line (start -0.85 0.54) (end 0.85 0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start 0.85 0.54) (end 0.85 -0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start 0.85 -0.54) (end -0.85 -0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start -0.85 -0.54) (end -0.85 0.54) (layer B.CrtYd) (width 0.05)) - (pad 1 smd rect (at -0.43 0) (size 0.54 0.6) (layers 4_bot B.Paste B.Mask) + (fp_line (start -0.9 0.44) (end 0.9 0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.9 0.44) (end 0.9 -0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.9 -0.44) (end -0.9 -0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start -0.9 -0.44) (end -0.9 0.44) (layer B.CrtYd) (width 0.05)) + (pad 1 smd rect (at -0.46 0) (size 0.58 0.58) (layers 4_bot B.Paste B.Mask) (net 99 /hackrf_if/VBUS)) - (pad 2 smd rect (at 0.43 0) (size 0.54 0.6) (layers 4_bot B.Paste B.Mask) + (pad 2 smd rect (at 0.46 0) (size 0.58 0.58) (layers 4_bot B.Paste B.Mask) (net 100 /hackrf_if/VBUSCTRL)) - (model Resistors_SMD.3dshapes/R_0402.wrl + (model ${KISYS3DMOD}/Resistor_SMD.3dshapes/R_0402_1005Metric.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module ipc_resc:IPC_RESC1005X40L25N (layer 4_bot) (tedit 58FD8A85) (tstamp 58F45910) + (module ipc_resc:IPC_RESC100X50X40L25N (layer 4_bot) (tedit 5BD22C28) (tstamp 5BD11D0B) (at 173.25 125.15 270) (path /58CFF3E3/58F1CC38) + (attr smd) (fp_text reference R6 (at -0.05 -3.25 270) (layer B.SilkS) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) (fp_text value 1K8 (at 0 0 270) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) + (fp_text user %R (at 0 0 270) (layer B.Fab) + (effects (font (size 0.3 0.3) (thickness 0.025)) (justify mirror)) + ) (fp_line (start -0.5 0.25) (end 0.5 0.25) (layer B.Fab) (width 0.025)) (fp_line (start 0.5 0.25) (end 0.5 -0.25) (layer B.Fab) (width 0.025)) (fp_line (start 0.5 -0.25) (end -0.5 -0.25) (layer B.Fab) (width 0.025)) (fp_line (start -0.5 -0.25) (end -0.5 0.25) (layer B.Fab) (width 0.025)) - (fp_line (start -0.5 0.48) (end 0.5 0.48) (layer B.SilkS) (width 0.12)) - (fp_line (start 0.5 -0.48) (end -0.5 -0.48) (layer B.SilkS) (width 0.12)) - (fp_line (start -0.85 0.54) (end 0.85 0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start 0.85 0.54) (end 0.85 -0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start 0.85 -0.54) (end -0.85 -0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start -0.85 -0.54) (end -0.85 0.54) (layer B.CrtYd) (width 0.05)) - (pad 1 smd rect (at -0.43 0 270) (size 0.54 0.6) (layers 4_bot B.Paste B.Mask) + (fp_line (start -0.9 0.44) (end 0.9 0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.9 0.44) (end 0.9 -0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.9 -0.44) (end -0.9 -0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start -0.9 -0.44) (end -0.9 0.44) (layer B.CrtYd) (width 0.05)) + (pad 1 smd rect (at -0.46 0 270) (size 0.58 0.58) (layers 4_bot B.Paste B.Mask) (net 103 "Net-(R6-Pad1)")) - (pad 2 smd rect (at 0.43 0 270) (size 0.54 0.6) (layers 4_bot B.Paste B.Mask) + (pad 2 smd rect (at 0.46 0 270) (size 0.58 0.58) (layers 4_bot B.Paste B.Mask) (net 47 GND)) - (model Resistors_SMD.3dshapes/R_0402.wrl + (model ${KISYS3DMOD}/Resistor_SMD.3dshapes/R_0402_1005Metric.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module ipc_resc:IPC_RESC1005X40L25N (layer 4_bot) (tedit 58FD8AF2) (tstamp 58F4590B) - (at 164.55 121.7 270) + (module ipc_resc:IPC_RESC100X50X40L25N (layer 4_bot) (tedit 5BD22C0E) (tstamp 5BD206B5) + (at 164.55 121.65 270) (path /58CFF3E3/58F1D207) + (attr smd) (fp_text reference R5 (at 0 1.05 270) (layer B.SilkS) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) (fp_text value 1K5 (at 0 0 270) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) + (fp_text user %R (at 0 0 270) (layer B.Fab) + (effects (font (size 0.3 0.3) (thickness 0.025)) (justify mirror)) + ) (fp_line (start -0.5 0.25) (end 0.5 0.25) (layer B.Fab) (width 0.025)) (fp_line (start 0.5 0.25) (end 0.5 -0.25) (layer B.Fab) (width 0.025)) (fp_line (start 0.5 -0.25) (end -0.5 -0.25) (layer B.Fab) (width 0.025)) (fp_line (start -0.5 -0.25) (end -0.5 0.25) (layer B.Fab) (width 0.025)) - (fp_line (start -0.5 0.48) (end 0.5 0.48) (layer B.SilkS) (width 0.12)) - (fp_line (start 0.5 -0.48) (end -0.5 -0.48) (layer B.SilkS) (width 0.12)) - (fp_line (start -0.85 0.54) (end 0.85 0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start 0.85 0.54) (end 0.85 -0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start 0.85 -0.54) (end -0.85 -0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start -0.85 -0.54) (end -0.85 0.54) (layer B.CrtYd) (width 0.05)) - (pad 1 smd rect (at -0.43 0 270) (size 0.54 0.6) (layers 4_bot B.Paste B.Mask) + (fp_line (start -0.9 0.44) (end 0.9 0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.9 0.44) (end 0.9 -0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.9 -0.44) (end -0.9 -0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start -0.9 -0.44) (end -0.9 0.44) (layer B.CrtYd) (width 0.05)) + (pad 1 smd rect (at -0.46 0 270) (size 0.58 0.58) (layers 4_bot B.Paste B.Mask) (net 72 /power/AUDIO_SVDD)) - (pad 2 smd rect (at 0.43 0 270) (size 0.54 0.6) (layers 4_bot B.Paste B.Mask) + (pad 2 smd rect (at 0.46 0 270) (size 0.58 0.58) (layers 4_bot B.Paste B.Mask) (net 110 "Net-(D2-PadA)")) - (model Resistors_SMD.3dshapes/R_0402.wrl + (model ${KISYS3DMOD}/Resistor_SMD.3dshapes/R_0402_1005Metric.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module ipc_resc:IPC_RESC1005X40L25N (layer 4_bot) (tedit 58FD9028) (tstamp 58F45906) - (at 172.15 120.9 90) + (module ipc_resc:IPC_RESC100X50X40L25N (layer 4_bot) (tedit 5BD22C00) (tstamp 5BD11CEF) + (at 172.15 120.85 90) (path /58CFF3E3/58F1CBFA) + (attr smd) (fp_text reference R4 (at 1.6 1.7 90) (layer B.SilkS) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) (fp_text value 1K91 (at 0 0 90) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) - (fp_line (start -0.5 0.25) (end 0.5 0.25) (layer B.Fab) (width 0.025)) - (fp_line (start 0.5 0.25) (end 0.5 -0.25) (layer B.Fab) (width 0.025)) - (fp_line (start 0.5 -0.25) (end -0.5 -0.25) (layer B.Fab) (width 0.025)) + (fp_line (start -0.9 -0.44) (end -0.9 0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.9 -0.44) (end -0.9 -0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.9 0.44) (end 0.9 -0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start -0.9 0.44) (end 0.9 0.44) (layer B.CrtYd) (width 0.05)) (fp_line (start -0.5 -0.25) (end -0.5 0.25) (layer B.Fab) (width 0.025)) - (fp_line (start -0.5 0.48) (end 0.5 0.48) (layer B.SilkS) (width 0.12)) - (fp_line (start 0.5 -0.48) (end -0.5 -0.48) (layer B.SilkS) (width 0.12)) - (fp_line (start -0.85 0.54) (end 0.85 0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start 0.85 0.54) (end 0.85 -0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start 0.85 -0.54) (end -0.85 -0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start -0.85 -0.54) (end -0.85 0.54) (layer B.CrtYd) (width 0.05)) - (pad 1 smd rect (at -0.43 0 90) (size 0.54 0.6) (layers 4_bot B.Paste B.Mask) - (net 102 "Net-(R4-Pad1)")) - (pad 2 smd rect (at 0.43 0 90) (size 0.54 0.6) (layers 4_bot B.Paste B.Mask) + (fp_line (start 0.5 -0.25) (end -0.5 -0.25) (layer B.Fab) (width 0.025)) + (fp_line (start 0.5 0.25) (end 0.5 -0.25) (layer B.Fab) (width 0.025)) + (fp_line (start -0.5 0.25) (end 0.5 0.25) (layer B.Fab) (width 0.025)) + (fp_text user %R (at 0 0 90) (layer B.Fab) + (effects (font (size 0.3 0.3) (thickness 0.025)) (justify mirror)) + ) + (pad 2 smd rect (at 0.46 0 90) (size 0.58 0.58) (layers 4_bot B.Paste B.Mask) (net 47 GND)) - (model Resistors_SMD.3dshapes/R_0402.wrl + (pad 1 smd rect (at -0.46 0 90) (size 0.58 0.58) (layers 4_bot B.Paste B.Mask) + (net 102 "Net-(R4-Pad1)")) + (model ${KISYS3DMOD}/Resistor_SMD.3dshapes/R_0402_1005Metric.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module ipc_resc:IPC_RESC1005X40L25N (layer 4_bot) (tedit 58FD8AEE) (tstamp 58F45901) - (at 164.55 123.4 90) + (module ipc_resc:IPC_RESC100X50X40L25N (layer 4_bot) (tedit 5BD22C12) (tstamp 5BD11CE1) + (at 164.55 123.45 90) (path /58CFF3E3/58F1D0EB) + (attr smd) (fp_text reference R3 (at 0 -1.05 90) (layer B.SilkS) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) (fp_text value 1K5 (at 0 0 90) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) - (fp_line (start -0.5 0.25) (end 0.5 0.25) (layer B.Fab) (width 0.025)) - (fp_line (start 0.5 0.25) (end 0.5 -0.25) (layer B.Fab) (width 0.025)) - (fp_line (start 0.5 -0.25) (end -0.5 -0.25) (layer B.Fab) (width 0.025)) + (fp_line (start -0.9 -0.44) (end -0.9 0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.9 -0.44) (end -0.9 -0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.9 0.44) (end 0.9 -0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start -0.9 0.44) (end 0.9 0.44) (layer B.CrtYd) (width 0.05)) (fp_line (start -0.5 -0.25) (end -0.5 0.25) (layer B.Fab) (width 0.025)) - (fp_line (start -0.5 0.48) (end 0.5 0.48) (layer B.SilkS) (width 0.12)) - (fp_line (start 0.5 -0.48) (end -0.5 -0.48) (layer B.SilkS) (width 0.12)) - (fp_line (start -0.85 0.54) (end 0.85 0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start 0.85 0.54) (end 0.85 -0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start 0.85 -0.54) (end -0.85 -0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start -0.85 -0.54) (end -0.85 0.54) (layer B.CrtYd) (width 0.05)) - (pad 1 smd rect (at -0.43 0 90) (size 0.54 0.6) (layers 4_bot B.Paste B.Mask) - (net 72 /power/AUDIO_SVDD)) - (pad 2 smd rect (at 0.43 0 90) (size 0.54 0.6) (layers 4_bot B.Paste B.Mask) + (fp_line (start 0.5 -0.25) (end -0.5 -0.25) (layer B.Fab) (width 0.025)) + (fp_line (start 0.5 0.25) (end 0.5 -0.25) (layer B.Fab) (width 0.025)) + (fp_line (start -0.5 0.25) (end 0.5 0.25) (layer B.Fab) (width 0.025)) + (fp_text user %R (at 0 0 90) (layer B.Fab) + (effects (font (size 0.3 0.3) (thickness 0.025)) (justify mirror)) + ) + (pad 2 smd rect (at 0.46 0 90) (size 0.58 0.58) (layers 4_bot B.Paste B.Mask) (net 109 "Net-(D1-PadA)")) - (model Resistors_SMD.3dshapes/R_0402.wrl + (pad 1 smd rect (at -0.46 0 90) (size 0.58 0.58) (layers 4_bot B.Paste B.Mask) + (net 72 /power/AUDIO_SVDD)) + (model ${KISYS3DMOD}/Resistor_SMD.3dshapes/R_0402_1005Metric.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module ipc_resc:IPC_RESC1005X40L25N (layer 4_bot) (tedit 58FD8A9B) (tstamp 58F458F7) + (module ipc_resc:IPC_RESC100X50X40L25N (layer 4_bot) (tedit 5BD22C2E) (tstamp 5BD11CC3) (at 175.45 125.15 270) (path /58CFF3E3/58F1CB6B) + (attr smd) (fp_text reference R1 (at -0.05 -2.65 270) (layer B.SilkS) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) (fp_text value R (at 0 0 270) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) + (fp_text user %R (at 0 0 270) (layer B.Fab) + (effects (font (size 0.3 0.3) (thickness 0.025)) (justify mirror)) + ) (fp_line (start -0.5 0.25) (end 0.5 0.25) (layer B.Fab) (width 0.025)) (fp_line (start 0.5 0.25) (end 0.5 -0.25) (layer B.Fab) (width 0.025)) (fp_line (start 0.5 -0.25) (end -0.5 -0.25) (layer B.Fab) (width 0.025)) (fp_line (start -0.5 -0.25) (end -0.5 0.25) (layer B.Fab) (width 0.025)) - (fp_line (start -0.5 0.48) (end 0.5 0.48) (layer B.SilkS) (width 0.12)) - (fp_line (start 0.5 -0.48) (end -0.5 -0.48) (layer B.SilkS) (width 0.12)) - (fp_line (start -0.85 0.54) (end 0.85 0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start 0.85 0.54) (end 0.85 -0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start 0.85 -0.54) (end -0.85 -0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start -0.85 -0.54) (end -0.85 0.54) (layer B.CrtYd) (width 0.05)) - (pad 1 smd rect (at -0.43 0 270) (size 0.54 0.6) (layers 4_bot B.Paste B.Mask) + (fp_line (start -0.9 0.44) (end 0.9 0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.9 0.44) (end 0.9 -0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.9 -0.44) (end -0.9 -0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start -0.9 -0.44) (end -0.9 0.44) (layer B.CrtYd) (width 0.05)) + (pad 1 smd rect (at -0.46 0 270) (size 0.58 0.58) (layers 4_bot B.Paste B.Mask) (net 101 "Net-(R1-Pad1)")) - (pad 2 smd rect (at 0.43 0 270) (size 0.54 0.6) (layers 4_bot B.Paste B.Mask) + (pad 2 smd rect (at 0.46 0 270) (size 0.58 0.58) (layers 4_bot B.Paste B.Mask) (net 47 GND)) - (model Resistors_SMD.3dshapes/R_0402.wrl + (model ${KISYS3DMOD}/Resistor_SMD.3dshapes/R_0402_1005Metric.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module ipc_capc:IPC_CAPC1005X55L25N (layer 4_bot) (tedit 58FD8C97) (tstamp 58EB01C7) + (module ipc_capc:IPC_CAPC100X50X55L25N (layer 4_bot) (tedit 5BD22BD4) (tstamp 5BD11AA9) (at 150.4 114.9 270) (path /53A8BFC3/53A8C6A5) (attr smd) @@ -1989,28 +2367,29 @@ (fp_text value 100N (at 0 0 270) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) + (fp_text user %R (at 0 0 270) (layer B.Fab) + (effects (font (size 0.3 0.3) (thickness 0.025)) (justify mirror)) + ) (fp_line (start -0.5 0.25) (end 0.5 0.25) (layer B.Fab) (width 0.025)) (fp_line (start 0.5 0.25) (end 0.5 -0.25) (layer B.Fab) (width 0.025)) (fp_line (start 0.5 -0.25) (end -0.5 -0.25) (layer B.Fab) (width 0.025)) (fp_line (start -0.5 -0.25) (end -0.5 0.25) (layer B.Fab) (width 0.025)) - (fp_line (start -0.5 0.48) (end 0.5 0.48) (layer B.SilkS) (width 0.12)) - (fp_line (start 0.5 -0.48) (end -0.5 -0.48) (layer B.SilkS) (width 0.12)) - (fp_line (start -0.85 0.54) (end 0.85 0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start 0.85 0.54) (end 0.85 -0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start 0.85 -0.54) (end -0.85 -0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start -0.85 -0.54) (end -0.85 0.54) (layer B.CrtYd) (width 0.05)) - (pad 1 smd rect (at -0.43 0 270) (size 0.54 0.6) (layers 4_bot B.Paste B.Mask) + (fp_line (start -0.9 0.44) (end 0.9 0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.9 0.44) (end 0.9 -0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.9 -0.44) (end -0.9 -0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start -0.9 -0.44) (end -0.9 0.44) (layer B.CrtYd) (width 0.05)) + (pad 1 smd rect (at -0.46 0 270) (size 0.58 0.58) (layers 4_bot B.Paste B.Mask) (net 121 +3V3)) - (pad 2 smd rect (at 0.43 0 270) (size 0.54 0.6) (layers 4_bot B.Paste B.Mask) + (pad 2 smd rect (at 0.46 0 270) (size 0.58 0.58) (layers 4_bot B.Paste B.Mask) (net 47 GND)) - (model Capacitors_SMD.3dshapes/C_0402.wrl + (model ${KISYS3DMOD}/Capacitor_SMD.3dshapes/C_0402_1005Metric.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module ipc_capc:IPC_CAPC1005X55L25N (layer 4_bot) (tedit 58FD8C17) (tstamp 58EB01D6) + (module ipc_capc:IPC_CAPC100X50X55L25N (layer 4_bot) (tedit 5BD22BC9) (tstamp 5BD11AB7) (at 148.4 111.4 270) (path /53A8BFC3/53A8C69F) (attr smd) @@ -2020,28 +2399,29 @@ (fp_text value 100N (at 0 0 270) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) - (fp_line (start -0.5 0.25) (end 0.5 0.25) (layer B.Fab) (width 0.025)) - (fp_line (start 0.5 0.25) (end 0.5 -0.25) (layer B.Fab) (width 0.025)) - (fp_line (start 0.5 -0.25) (end -0.5 -0.25) (layer B.Fab) (width 0.025)) + (fp_line (start -0.9 -0.44) (end -0.9 0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.9 -0.44) (end -0.9 -0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.9 0.44) (end 0.9 -0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start -0.9 0.44) (end 0.9 0.44) (layer B.CrtYd) (width 0.05)) (fp_line (start -0.5 -0.25) (end -0.5 0.25) (layer B.Fab) (width 0.025)) - (fp_line (start -0.5 0.48) (end 0.5 0.48) (layer B.SilkS) (width 0.12)) - (fp_line (start 0.5 -0.48) (end -0.5 -0.48) (layer B.SilkS) (width 0.12)) - (fp_line (start -0.85 0.54) (end 0.85 0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start 0.85 0.54) (end 0.85 -0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start 0.85 -0.54) (end -0.85 -0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start -0.85 -0.54) (end -0.85 0.54) (layer B.CrtYd) (width 0.05)) - (pad 1 smd rect (at -0.43 0 270) (size 0.54 0.6) (layers 4_bot B.Paste B.Mask) - (net 122 +1V8)) - (pad 2 smd rect (at 0.43 0 270) (size 0.54 0.6) (layers 4_bot B.Paste B.Mask) + (fp_line (start 0.5 -0.25) (end -0.5 -0.25) (layer B.Fab) (width 0.025)) + (fp_line (start 0.5 0.25) (end 0.5 -0.25) (layer B.Fab) (width 0.025)) + (fp_line (start -0.5 0.25) (end 0.5 0.25) (layer B.Fab) (width 0.025)) + (fp_text user %R (at 0 0 270) (layer B.Fab) + (effects (font (size 0.3 0.3) (thickness 0.025)) (justify mirror)) + ) + (pad 2 smd rect (at 0.46 0 270) (size 0.58 0.58) (layers 4_bot B.Paste B.Mask) (net 47 GND)) - (model Capacitors_SMD.3dshapes/C_0402.wrl + (pad 1 smd rect (at -0.46 0 270) (size 0.58 0.58) (layers 4_bot B.Paste B.Mask) + (net 122 +1V8)) + (model ${KISYS3DMOD}/Capacitor_SMD.3dshapes/C_0402_1005Metric.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module ipc_capc:IPC_CAPC1005X55L25N (layer 4_bot) (tedit 58FD8B8B) (tstamp 58EB01E5) + (module ipc_capc:IPC_CAPC100X50X55L25N (layer 4_bot) (tedit 5BD22B85) (tstamp 5BD11AC5) (at 153.6 105.3) (path /53A8BFC3/53A8C6B1) (attr smd) @@ -2051,28 +2431,29 @@ (fp_text value 100N (at 0 0) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) - (fp_line (start -0.5 0.25) (end 0.5 0.25) (layer B.Fab) (width 0.025)) - (fp_line (start 0.5 0.25) (end 0.5 -0.25) (layer B.Fab) (width 0.025)) - (fp_line (start 0.5 -0.25) (end -0.5 -0.25) (layer B.Fab) (width 0.025)) + (fp_line (start -0.9 -0.44) (end -0.9 0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.9 -0.44) (end -0.9 -0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.9 0.44) (end 0.9 -0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start -0.9 0.44) (end 0.9 0.44) (layer B.CrtYd) (width 0.05)) (fp_line (start -0.5 -0.25) (end -0.5 0.25) (layer B.Fab) (width 0.025)) - (fp_line (start -0.5 0.48) (end 0.5 0.48) (layer B.SilkS) (width 0.12)) - (fp_line (start 0.5 -0.48) (end -0.5 -0.48) (layer B.SilkS) (width 0.12)) - (fp_line (start -0.85 0.54) (end 0.85 0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start 0.85 0.54) (end 0.85 -0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start 0.85 -0.54) (end -0.85 -0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start -0.85 -0.54) (end -0.85 0.54) (layer B.CrtYd) (width 0.05)) - (pad 1 smd rect (at -0.43 0) (size 0.54 0.6) (layers 4_bot B.Paste B.Mask) - (net 121 +3V3)) - (pad 2 smd rect (at 0.43 0) (size 0.54 0.6) (layers 4_bot B.Paste B.Mask) + (fp_line (start 0.5 -0.25) (end -0.5 -0.25) (layer B.Fab) (width 0.025)) + (fp_line (start 0.5 0.25) (end 0.5 -0.25) (layer B.Fab) (width 0.025)) + (fp_line (start -0.5 0.25) (end 0.5 0.25) (layer B.Fab) (width 0.025)) + (fp_text user %R (at 0 0) (layer B.Fab) + (effects (font (size 0.3 0.3) (thickness 0.025)) (justify mirror)) + ) + (pad 2 smd rect (at 0.46 0) (size 0.58 0.58) (layers 4_bot B.Paste B.Mask) (net 47 GND)) - (model Capacitors_SMD.3dshapes/C_0402.wrl + (pad 1 smd rect (at -0.46 0) (size 0.58 0.58) (layers 4_bot B.Paste B.Mask) + (net 121 +3V3)) + (model ${KISYS3DMOD}/Capacitor_SMD.3dshapes/C_0402_1005Metric.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module ipc_capc:IPC_CAPC1005X55L25N (layer 4_bot) (tedit 58FD8C8C) (tstamp 58EB01F4) + (module ipc_capc:IPC_CAPC100X50X55L25N (layer 4_bot) (tedit 5BD22BCE) (tstamp 5BD11AD3) (at 148.4 114.2 180) (path /53A8BFC3/53A8C6AB) (attr smd) @@ -2082,28 +2463,29 @@ (fp_text value 100N (at 0 0 180) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) - (fp_line (start -0.5 0.25) (end 0.5 0.25) (layer B.Fab) (width 0.025)) - (fp_line (start 0.5 0.25) (end 0.5 -0.25) (layer B.Fab) (width 0.025)) - (fp_line (start 0.5 -0.25) (end -0.5 -0.25) (layer B.Fab) (width 0.025)) + (fp_line (start -0.9 -0.44) (end -0.9 0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.9 -0.44) (end -0.9 -0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.9 0.44) (end 0.9 -0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start -0.9 0.44) (end 0.9 0.44) (layer B.CrtYd) (width 0.05)) (fp_line (start -0.5 -0.25) (end -0.5 0.25) (layer B.Fab) (width 0.025)) - (fp_line (start -0.5 0.48) (end 0.5 0.48) (layer B.SilkS) (width 0.12)) - (fp_line (start 0.5 -0.48) (end -0.5 -0.48) (layer B.SilkS) (width 0.12)) - (fp_line (start -0.85 0.54) (end 0.85 0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start 0.85 0.54) (end 0.85 -0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start 0.85 -0.54) (end -0.85 -0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start -0.85 -0.54) (end -0.85 0.54) (layer B.CrtYd) (width 0.05)) - (pad 1 smd rect (at -0.43 0 180) (size 0.54 0.6) (layers 4_bot B.Paste B.Mask) - (net 72 /power/AUDIO_SVDD)) - (pad 2 smd rect (at 0.43 0 180) (size 0.54 0.6) (layers 4_bot B.Paste B.Mask) + (fp_line (start 0.5 -0.25) (end -0.5 -0.25) (layer B.Fab) (width 0.025)) + (fp_line (start 0.5 0.25) (end 0.5 -0.25) (layer B.Fab) (width 0.025)) + (fp_line (start -0.5 0.25) (end 0.5 0.25) (layer B.Fab) (width 0.025)) + (fp_text user %R (at 0 0 180) (layer B.Fab) + (effects (font (size 0.3 0.3) (thickness 0.025)) (justify mirror)) + ) + (pad 2 smd rect (at 0.46 0 180) (size 0.58 0.58) (layers 4_bot B.Paste B.Mask) (net 47 GND)) - (model Capacitors_SMD.3dshapes/C_0402.wrl + (pad 1 smd rect (at -0.46 0 180) (size 0.58 0.58) (layers 4_bot B.Paste B.Mask) + (net 72 /power/AUDIO_SVDD)) + (model ${KISYS3DMOD}/Capacitor_SMD.3dshapes/C_0402_1005Metric.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module ipc_capc:IPC_CAPC1005X55L25N (layer 4_bot) (tedit 58FD8DC8) (tstamp 58EB02C6) + (module ipc_capc:IPC_CAPC100X50X55L25N (layer 4_bot) (tedit 5BD22B58) (tstamp 5BD11BC1) (at 77.5 116.4) (path /53A9129D/53AA73CE) (attr smd) @@ -2113,28 +2495,29 @@ (fp_text value 100N (at 0 0) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) + (fp_text user %R (at 0 0) (layer B.Fab) + (effects (font (size 0.3 0.3) (thickness 0.025)) (justify mirror)) + ) (fp_line (start -0.5 0.25) (end 0.5 0.25) (layer B.Fab) (width 0.025)) (fp_line (start 0.5 0.25) (end 0.5 -0.25) (layer B.Fab) (width 0.025)) (fp_line (start 0.5 -0.25) (end -0.5 -0.25) (layer B.Fab) (width 0.025)) (fp_line (start -0.5 -0.25) (end -0.5 0.25) (layer B.Fab) (width 0.025)) - (fp_line (start -0.5 0.48) (end 0.5 0.48) (layer B.SilkS) (width 0.12)) - (fp_line (start 0.5 -0.48) (end -0.5 -0.48) (layer B.SilkS) (width 0.12)) - (fp_line (start -0.85 0.54) (end 0.85 0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start 0.85 0.54) (end 0.85 -0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start 0.85 -0.54) (end -0.85 -0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start -0.85 -0.54) (end -0.85 0.54) (layer B.CrtYd) (width 0.05)) - (pad 1 smd rect (at -0.43 0) (size 0.54 0.6) (layers 4_bot B.Paste B.Mask) + (fp_line (start -0.9 0.44) (end 0.9 0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.9 0.44) (end 0.9 -0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.9 -0.44) (end -0.9 -0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start -0.9 -0.44) (end -0.9 0.44) (layer B.CrtYd) (width 0.05)) + (pad 1 smd rect (at -0.46 0) (size 0.58 0.58) (layers 4_bot B.Paste B.Mask) (net 121 +3V3)) - (pad 2 smd rect (at 0.43 0) (size 0.54 0.6) (layers 4_bot B.Paste B.Mask) + (pad 2 smd rect (at 0.46 0) (size 0.58 0.58) (layers 4_bot B.Paste B.Mask) (net 47 GND)) - (model Capacitors_SMD.3dshapes/C_0402.wrl + (model ${KISYS3DMOD}/Capacitor_SMD.3dshapes/C_0402_1005Metric.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module ipc_capc:IPC_CAPC1005X55L25N (layer 4_bot) (tedit 58FD88BF) (tstamp 58EB02D5) + (module ipc_capc:IPC_CAPC100X50X55L25N (layer 4_bot) (tedit 5B60D756) (tstamp 5BD11BCF) (at 112.8 143.8) (path /53A8C780/53A8D527) (attr smd) @@ -2144,28 +2527,29 @@ (fp_text value 100N (at 0 0) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) + (fp_text user %R (at 0 0) (layer B.Fab) + (effects (font (size 0.3 0.3) (thickness 0.025)) (justify mirror)) + ) (fp_line (start -0.5 0.25) (end 0.5 0.25) (layer B.Fab) (width 0.025)) (fp_line (start 0.5 0.25) (end 0.5 -0.25) (layer B.Fab) (width 0.025)) (fp_line (start 0.5 -0.25) (end -0.5 -0.25) (layer B.Fab) (width 0.025)) (fp_line (start -0.5 -0.25) (end -0.5 0.25) (layer B.Fab) (width 0.025)) - (fp_line (start -0.5 0.48) (end 0.5 0.48) (layer B.SilkS) (width 0.12)) - (fp_line (start 0.5 -0.48) (end -0.5 -0.48) (layer B.SilkS) (width 0.12)) - (fp_line (start -0.85 0.54) (end 0.85 0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start 0.85 0.54) (end 0.85 -0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start 0.85 -0.54) (end -0.85 -0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start -0.85 -0.54) (end -0.85 0.54) (layer B.CrtYd) (width 0.05)) - (pad 1 smd rect (at -0.43 0) (size 0.54 0.6) (layers 4_bot B.Paste B.Mask) + (fp_line (start -0.9 0.44) (end 0.9 0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.9 0.44) (end 0.9 -0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.9 -0.44) (end -0.9 -0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start -0.9 -0.44) (end -0.9 0.44) (layer B.CrtYd) (width 0.05)) + (pad 1 smd rect (at -0.46 0) (size 0.58 0.58) (layers 4_bot B.Paste B.Mask) (net 121 +3V3)) - (pad 2 smd rect (at 0.43 0) (size 0.54 0.6) (layers 4_bot B.Paste B.Mask) + (pad 2 smd rect (at 0.46 0) (size 0.58 0.58) (layers 4_bot B.Paste B.Mask) (net 47 GND)) - (model Capacitors_SMD.3dshapes/C_0402.wrl + (model ${KISYS3DMOD}/Capacitor_SMD.3dshapes/C_0402_1005Metric.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module ipc_capc:IPC_CAPC1005X55L25N (layer 4_bot) (tedit 58FD887E) (tstamp 58EB02E4) + (module ipc_capc:IPC_CAPC100X50X55L25N (layer 4_bot) (tedit 5BD22D1D) (tstamp 5BD11BDD) (at 98 134 180) (path /53A8C780/53A8D548) (attr smd) @@ -2175,29 +2559,30 @@ (fp_text value 100N (at 0 0 180) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) + (fp_text user %R (at 0 0 180) (layer B.Fab) + (effects (font (size 0.3 0.3) (thickness 0.025)) (justify mirror)) + ) (fp_line (start -0.5 0.25) (end 0.5 0.25) (layer B.Fab) (width 0.025)) (fp_line (start 0.5 0.25) (end 0.5 -0.25) (layer B.Fab) (width 0.025)) (fp_line (start 0.5 -0.25) (end -0.5 -0.25) (layer B.Fab) (width 0.025)) (fp_line (start -0.5 -0.25) (end -0.5 0.25) (layer B.Fab) (width 0.025)) - (fp_line (start -0.5 0.48) (end 0.5 0.48) (layer B.SilkS) (width 0.12)) - (fp_line (start 0.5 -0.48) (end -0.5 -0.48) (layer B.SilkS) (width 0.12)) - (fp_line (start -0.85 0.54) (end 0.85 0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start 0.85 0.54) (end 0.85 -0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start 0.85 -0.54) (end -0.85 -0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start -0.85 -0.54) (end -0.85 0.54) (layer B.CrtYd) (width 0.05)) - (pad 1 smd rect (at -0.43 0 180) (size 0.54 0.6) (layers 4_bot B.Paste B.Mask) + (fp_line (start -0.9 0.44) (end 0.9 0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.9 0.44) (end 0.9 -0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.9 -0.44) (end -0.9 -0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start -0.9 -0.44) (end -0.9 0.44) (layer B.CrtYd) (width 0.05)) + (pad 1 smd rect (at -0.46 0 180) (size 0.58 0.58) (layers 4_bot B.Paste B.Mask) (net 122 +1V8)) - (pad 2 smd rect (at 0.43 0 180) (size 0.54 0.6) (layers 4_bot B.Paste B.Mask) + (pad 2 smd rect (at 0.46 0 180) (size 0.58 0.58) (layers 4_bot B.Paste B.Mask) (net 47 GND)) - (model Capacitors_SMD.3dshapes/C_0402.wrl + (model ${KISYS3DMOD}/Capacitor_SMD.3dshapes/C_0402_1005Metric.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module ipc_capc:IPC_CAPC1005X55L25N (layer 4_bot) (tedit 58FD88AC) (tstamp 58EB02F3) - (at 110.5 132.4 315) + (module ipc_capc:IPC_CAPC100X50X55L25N (layer 4_bot) (tedit 5BD22B0E) (tstamp 5BD11BEB) + (at 110.45 132.35 315) (path /53A8C780/53A8D542) (attr smd) (fp_text reference C30 (at -1.838478 0 315) (layer B.SilkS) @@ -2206,28 +2591,29 @@ (fp_text value 100N (at 0 0 315) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) - (fp_line (start -0.5 0.25) (end 0.5 0.25) (layer B.Fab) (width 0.025)) - (fp_line (start 0.5 0.25) (end 0.5 -0.25) (layer B.Fab) (width 0.025)) - (fp_line (start 0.5 -0.25) (end -0.5 -0.25) (layer B.Fab) (width 0.025)) + (fp_line (start -0.9 -0.44) (end -0.9 0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.9 -0.44) (end -0.9 -0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.9 0.44) (end 0.9 -0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start -0.9 0.44) (end 0.9 0.44) (layer B.CrtYd) (width 0.05)) (fp_line (start -0.5 -0.25) (end -0.5 0.25) (layer B.Fab) (width 0.025)) - (fp_line (start -0.5 0.48) (end 0.5 0.48) (layer B.SilkS) (width 0.12)) - (fp_line (start 0.5 -0.48) (end -0.5 -0.48) (layer B.SilkS) (width 0.12)) - (fp_line (start -0.85 0.54) (end 0.85 0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start 0.85 0.54) (end 0.85 -0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start 0.85 -0.54) (end -0.85 -0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start -0.85 -0.54) (end -0.85 0.54) (layer B.CrtYd) (width 0.05)) - (pad 1 smd rect (at -0.43 0 315) (size 0.54 0.6) (layers 4_bot B.Paste B.Mask) - (net 121 +3V3)) - (pad 2 smd rect (at 0.43 0 315) (size 0.54 0.6) (layers 4_bot B.Paste B.Mask) + (fp_line (start 0.5 -0.25) (end -0.5 -0.25) (layer B.Fab) (width 0.025)) + (fp_line (start 0.5 0.25) (end 0.5 -0.25) (layer B.Fab) (width 0.025)) + (fp_line (start -0.5 0.25) (end 0.5 0.25) (layer B.Fab) (width 0.025)) + (fp_text user %R (at 0 0 315) (layer B.Fab) + (effects (font (size 0.3 0.3) (thickness 0.025)) (justify mirror)) + ) + (pad 2 smd rect (at 0.46 0 315) (size 0.58 0.58) (layers 4_bot B.Paste B.Mask) (net 47 GND)) - (model Capacitors_SMD.3dshapes/C_0402.wrl + (pad 1 smd rect (at -0.46 0 315) (size 0.58 0.58) (layers 4_bot B.Paste B.Mask) + (net 121 +3V3)) + (model ${KISYS3DMOD}/Capacitor_SMD.3dshapes/C_0402_1005Metric.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module ipc_capc:IPC_CAPC1005X55L25N (layer 4_bot) (tedit 58FD8866) (tstamp 58EB0302) + (module ipc_capc:IPC_CAPC100X50X55L25N (layer 4_bot) (tedit 5BD22B27) (tstamp 5BD11BF9) (at 101.5 145.2 315) (path /53A8C780/53A8D54E) (attr smd) @@ -2237,29 +2623,30 @@ (fp_text value 100N (at 0 0 315) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) - (fp_line (start -0.5 0.25) (end 0.5 0.25) (layer B.Fab) (width 0.025)) - (fp_line (start 0.5 0.25) (end 0.5 -0.25) (layer B.Fab) (width 0.025)) - (fp_line (start 0.5 -0.25) (end -0.5 -0.25) (layer B.Fab) (width 0.025)) + (fp_line (start -0.9 -0.44) (end -0.9 0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.9 -0.44) (end -0.9 -0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.9 0.44) (end 0.9 -0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start -0.9 0.44) (end 0.9 0.44) (layer B.CrtYd) (width 0.05)) (fp_line (start -0.5 -0.25) (end -0.5 0.25) (layer B.Fab) (width 0.025)) - (fp_line (start -0.5 0.48) (end 0.5 0.48) (layer B.SilkS) (width 0.12)) - (fp_line (start 0.5 -0.48) (end -0.5 -0.48) (layer B.SilkS) (width 0.12)) - (fp_line (start -0.85 0.54) (end 0.85 0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start 0.85 0.54) (end 0.85 -0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start 0.85 -0.54) (end -0.85 -0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start -0.85 -0.54) (end -0.85 0.54) (layer B.CrtYd) (width 0.05)) - (pad 1 smd rect (at -0.43 0 315) (size 0.54 0.6) (layers 4_bot B.Paste B.Mask) - (net 122 +1V8)) - (pad 2 smd rect (at 0.43 0 315) (size 0.54 0.6) (layers 4_bot B.Paste B.Mask) + (fp_line (start 0.5 -0.25) (end -0.5 -0.25) (layer B.Fab) (width 0.025)) + (fp_line (start 0.5 0.25) (end 0.5 -0.25) (layer B.Fab) (width 0.025)) + (fp_line (start -0.5 0.25) (end 0.5 0.25) (layer B.Fab) (width 0.025)) + (fp_text user %R (at 0 0 315) (layer B.Fab) + (effects (font (size 0.3 0.3) (thickness 0.025)) (justify mirror)) + ) + (pad 2 smd rect (at 0.46 0 315) (size 0.58 0.58) (layers 4_bot B.Paste B.Mask) (net 47 GND)) - (model Capacitors_SMD.3dshapes/C_0402.wrl + (pad 1 smd rect (at -0.46 0 315) (size 0.58 0.58) (layers 4_bot B.Paste B.Mask) + (net 122 +1V8)) + (model ${KISYS3DMOD}/Capacitor_SMD.3dshapes/C_0402_1005Metric.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module ipc_capc:IPC_CAPC1005X55L25N (layer 4_bot) (tedit 58FD88A2) (tstamp 58EB0320) - (at 109.4 133.5 135) + (module ipc_capc:IPC_CAPC100X50X55L25N (layer 4_bot) (tedit 5BD22B06) (tstamp 5BD11C17) + (at 109.35 133.45 135) (path /53A8C780/53A8D56C) (attr smd) (fp_text reference C33 (at 1.838478 0 135) (layer B.SilkS) @@ -2268,28 +2655,29 @@ (fp_text value 100N (at 0 0 135) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) + (fp_text user %R (at 0 0 135) (layer B.Fab) + (effects (font (size 0.3 0.3) (thickness 0.025)) (justify mirror)) + ) (fp_line (start -0.5 0.25) (end 0.5 0.25) (layer B.Fab) (width 0.025)) (fp_line (start 0.5 0.25) (end 0.5 -0.25) (layer B.Fab) (width 0.025)) (fp_line (start 0.5 -0.25) (end -0.5 -0.25) (layer B.Fab) (width 0.025)) (fp_line (start -0.5 -0.25) (end -0.5 0.25) (layer B.Fab) (width 0.025)) - (fp_line (start -0.5 0.48) (end 0.5 0.48) (layer B.SilkS) (width 0.12)) - (fp_line (start 0.5 -0.48) (end -0.5 -0.48) (layer B.SilkS) (width 0.12)) - (fp_line (start -0.85 0.54) (end 0.85 0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start 0.85 0.54) (end 0.85 -0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start 0.85 -0.54) (end -0.85 -0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start -0.85 -0.54) (end -0.85 0.54) (layer B.CrtYd) (width 0.05)) - (pad 1 smd rect (at -0.43 0 135) (size 0.54 0.6) (layers 4_bot B.Paste B.Mask) + (fp_line (start -0.9 0.44) (end 0.9 0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.9 0.44) (end 0.9 -0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.9 -0.44) (end -0.9 -0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start -0.9 -0.44) (end -0.9 0.44) (layer B.CrtYd) (width 0.05)) + (pad 1 smd rect (at -0.46 0 135) (size 0.58 0.58) (layers 4_bot B.Paste B.Mask) (net 122 +1V8)) - (pad 2 smd rect (at 0.43 0 135) (size 0.54 0.6) (layers 4_bot B.Paste B.Mask) + (pad 2 smd rect (at 0.46 0 135) (size 0.58 0.58) (layers 4_bot B.Paste B.Mask) (net 47 GND)) - (model Capacitors_SMD.3dshapes/C_0402.wrl + (model ${KISYS3DMOD}/Capacitor_SMD.3dshapes/C_0402_1005Metric.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module ipc_capc:IPC_CAPC1005X55L25N (layer 4_bot) (tedit 58FD8888) (tstamp 58EB033E) + (module ipc_capc:IPC_CAPC100X50X55L25N (layer 4_bot) (tedit 5BD22CE9) (tstamp 5BD11C35) (at 92.8 129.6 90) (path /53A8C780/53A8D572) (attr smd) @@ -2299,58 +2687,63 @@ (fp_text value 100N (at 0 0 90) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) + (fp_text user %R (at 0 0 90) (layer B.Fab) + (effects (font (size 0.3 0.3) (thickness 0.025)) (justify mirror)) + ) (fp_line (start -0.5 0.25) (end 0.5 0.25) (layer B.Fab) (width 0.025)) (fp_line (start 0.5 0.25) (end 0.5 -0.25) (layer B.Fab) (width 0.025)) (fp_line (start 0.5 -0.25) (end -0.5 -0.25) (layer B.Fab) (width 0.025)) (fp_line (start -0.5 -0.25) (end -0.5 0.25) (layer B.Fab) (width 0.025)) - (fp_line (start -0.5 0.48) (end 0.5 0.48) (layer B.SilkS) (width 0.12)) - (fp_line (start 0.5 -0.48) (end -0.5 -0.48) (layer B.SilkS) (width 0.12)) - (fp_line (start -0.85 0.54) (end 0.85 0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start 0.85 0.54) (end 0.85 -0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start 0.85 -0.54) (end -0.85 -0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start -0.85 -0.54) (end -0.85 0.54) (layer B.CrtYd) (width 0.05)) - (pad 1 smd rect (at -0.43 0 90) (size 0.54 0.6) (layers 4_bot B.Paste B.Mask) + (fp_line (start -0.9 0.44) (end 0.9 0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.9 0.44) (end 0.9 -0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.9 -0.44) (end -0.9 -0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start -0.9 -0.44) (end -0.9 0.44) (layer B.CrtYd) (width 0.05)) + (pad 1 smd rect (at -0.46 0 90) (size 0.58 0.58) (layers 4_bot B.Paste B.Mask) (net 122 +1V8)) - (pad 2 smd rect (at 0.43 0 90) (size 0.54 0.6) (layers 4_bot B.Paste B.Mask) + (pad 2 smd rect (at 0.46 0 90) (size 0.58 0.58) (layers 4_bot B.Paste B.Mask) (net 47 GND)) - (model Capacitors_SMD.3dshapes/C_0402.wrl + (model ${KISYS3DMOD}/Capacitor_SMD.3dshapes/C_0402_1005Metric.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module ipc_capc:IPC_CAPC2012X135L45N (layer 4_bot) (tedit 58FD89F8) (tstamp 58EB0398) + (module ipc_capc:IPC_CAPC200X125X135L45N (layer 4_bot) (tedit 5BD22C49) (tstamp 5BD11C93) (at 173.6 158.7 180) (path /58CFF3E3/58D008E2) + (attr smd) (fp_text reference C41 (at -2.6 0 180) (layer B.SilkS) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) (fp_text value 10U (at 0 0 180) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) - (fp_line (start -1 0.625) (end 1 0.625) (layer B.Fab) (width 0.025)) - (fp_line (start 1 0.625) (end 1 -0.625) (layer B.Fab) (width 0.025)) - (fp_line (start 1 -0.625) (end -1 -0.625) (layer B.Fab) (width 0.025)) + (fp_line (start -1.565 -0.89) (end -1.565 0.89) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.565 -0.89) (end -1.565 -0.89) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.565 0.89) (end 1.565 -0.89) (layer B.CrtYd) (width 0.05)) + (fp_line (start -1.565 0.89) (end 1.565 0.89) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.185 0.685) (end -0.185 0.685) (layer B.SilkS) (width 0.12)) + (fp_line (start -0.185 -0.685) (end 0.185 -0.685) (layer B.SilkS) (width 0.12)) (fp_line (start -1 -0.625) (end -1 0.625) (layer B.Fab) (width 0.025)) - (fp_line (start -1 0.87) (end 1 0.87) (layer B.SilkS) (width 0.12)) - (fp_line (start 1 -0.87) (end -1 -0.87) (layer B.SilkS) (width 0.12)) - (fp_line (start -1.665 0.94) (end 1.665 0.94) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.665 0.94) (end 1.665 -0.94) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.665 -0.94) (end -1.665 -0.94) (layer B.CrtYd) (width 0.05)) - (fp_line (start -1.665 -0.94) (end -1.665 0.94) (layer B.CrtYd) (width 0.05)) - (pad 1 smd rect (at -0.89 0 180) (size 1.05 1.38) (layers 4_bot B.Paste B.Mask) - (net 46 /hackrf_if/VBAT)) - (pad 2 smd rect (at 0.89 0 180) (size 1.05 1.38) (layers 4_bot B.Paste B.Mask) + (fp_line (start 1 -0.625) (end -1 -0.625) (layer B.Fab) (width 0.025)) + (fp_line (start 1 0.625) (end 1 -0.625) (layer B.Fab) (width 0.025)) + (fp_line (start -1 0.625) (end 1 0.625) (layer B.Fab) (width 0.025)) + (fp_text user %R (at 0 0 180) (layer B.Fab) + (effects (font (size 0.6 0.6) (thickness 0.025)) (justify mirror)) + ) + (pad 2 smd rect (at 0.865 0 180) (size 1 1.38) (layers 4_bot B.Paste B.Mask) (net 47 GND)) - (model Capacitors_SMD.3dshapes/C_0805.wrl + (pad 1 smd rect (at -0.865 0 180) (size 1 1.38) (layers 4_bot B.Paste B.Mask) + (net 46 /hackrf_if/VBAT)) + (model ${KISYS3DMOD}/Capacitor_SMD.3dshapes/C_0805_2012Metric.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module ipc_capc:IPC_CAPC2012X135L45N (layer 4_bot) (tedit 58FE217E) (tstamp 58EB03B6) + (module ipc_capc:IPC_CAPC200X125X135L45N (layer 4_bot) (tedit 5BD22C68) (tstamp 5BD11CB3) (at 165.6 154.3 270) (path /53A8C780/53B1A065) (attr smd) @@ -2360,28 +2753,31 @@ (fp_text value 10U (at 0 0 270) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) + (fp_text user %R (at 0 0 270) (layer B.Fab) + (effects (font (size 0.6 0.6) (thickness 0.025)) (justify mirror)) + ) (fp_line (start -1 0.625) (end 1 0.625) (layer B.Fab) (width 0.025)) (fp_line (start 1 0.625) (end 1 -0.625) (layer B.Fab) (width 0.025)) (fp_line (start 1 -0.625) (end -1 -0.625) (layer B.Fab) (width 0.025)) (fp_line (start -1 -0.625) (end -1 0.625) (layer B.Fab) (width 0.025)) - (fp_line (start -1 0.87) (end 1 0.87) (layer B.SilkS) (width 0.12)) - (fp_line (start 1 -0.87) (end -1 -0.87) (layer B.SilkS) (width 0.12)) - (fp_line (start -1.665 0.94) (end 1.665 0.94) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.665 0.94) (end 1.665 -0.94) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.665 -0.94) (end -1.665 -0.94) (layer B.CrtYd) (width 0.05)) - (fp_line (start -1.665 -0.94) (end -1.665 0.94) (layer B.CrtYd) (width 0.05)) - (pad 1 smd rect (at -0.89 0 270) (size 1.05 1.38) (layers 4_bot B.Paste B.Mask) + (fp_line (start -0.185 -0.685) (end 0.185 -0.685) (layer B.SilkS) (width 0.12)) + (fp_line (start 0.185 0.685) (end -0.185 0.685) (layer B.SilkS) (width 0.12)) + (fp_line (start -1.565 0.89) (end 1.565 0.89) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.565 0.89) (end 1.565 -0.89) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.565 -0.89) (end -1.565 -0.89) (layer B.CrtYd) (width 0.05)) + (fp_line (start -1.565 -0.89) (end -1.565 0.89) (layer B.CrtYd) (width 0.05)) + (pad 1 smd rect (at -0.865 0 270) (size 1 1.38) (layers 4_bot B.Paste B.Mask) (net 121 +3V3)) - (pad 2 smd rect (at 0.89 0 270) (size 1.05 1.38) (layers 4_bot B.Paste B.Mask) + (pad 2 smd rect (at 0.865 0 270) (size 1 1.38) (layers 4_bot B.Paste B.Mask) (net 47 GND)) - (model Capacitors_SMD.3dshapes/C_0805.wrl + (model ${KISYS3DMOD}/Capacitor_SMD.3dshapes/C_0805_2012Metric.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module ipc_capc:IPC_CAPC2012X135L45N (layer 4_bot) (tedit 58FD8E38) (tstamp 58EB03A7) + (module ipc_capc:IPC_CAPC200X125X135L45N (layer 4_bot) (tedit 5BD22C6C) (tstamp 5BD11CA3) (at 155.2 157.9 180) (path /53A8C780/53B1911F) (attr smd) @@ -2391,28 +2787,31 @@ (fp_text value 10U (at 0 0 180) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) + (fp_text user %R (at 0 0 180) (layer B.Fab) + (effects (font (size 0.6 0.6) (thickness 0.025)) (justify mirror)) + ) (fp_line (start -1 0.625) (end 1 0.625) (layer B.Fab) (width 0.025)) (fp_line (start 1 0.625) (end 1 -0.625) (layer B.Fab) (width 0.025)) (fp_line (start 1 -0.625) (end -1 -0.625) (layer B.Fab) (width 0.025)) (fp_line (start -1 -0.625) (end -1 0.625) (layer B.Fab) (width 0.025)) - (fp_line (start -1 0.87) (end 1 0.87) (layer B.SilkS) (width 0.12)) - (fp_line (start 1 -0.87) (end -1 -0.87) (layer B.SilkS) (width 0.12)) - (fp_line (start -1.665 0.94) (end 1.665 0.94) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.665 0.94) (end 1.665 -0.94) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.665 -0.94) (end -1.665 -0.94) (layer B.CrtYd) (width 0.05)) - (fp_line (start -1.665 -0.94) (end -1.665 0.94) (layer B.CrtYd) (width 0.05)) - (pad 1 smd rect (at -0.89 0 180) (size 1.05 1.38) (layers 4_bot B.Paste B.Mask) + (fp_line (start -0.185 -0.685) (end 0.185 -0.685) (layer B.SilkS) (width 0.12)) + (fp_line (start 0.185 0.685) (end -0.185 0.685) (layer B.SilkS) (width 0.12)) + (fp_line (start -1.565 0.89) (end 1.565 0.89) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.565 0.89) (end 1.565 -0.89) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.565 -0.89) (end -1.565 -0.89) (layer B.CrtYd) (width 0.05)) + (fp_line (start -1.565 -0.89) (end -1.565 0.89) (layer B.CrtYd) (width 0.05)) + (pad 1 smd rect (at -0.865 0 180) (size 1 1.38) (layers 4_bot B.Paste B.Mask) (net 121 +3V3)) - (pad 2 smd rect (at 0.89 0 180) (size 1.05 1.38) (layers 4_bot B.Paste B.Mask) + (pad 2 smd rect (at 0.865 0 180) (size 1 1.38) (layers 4_bot B.Paste B.Mask) (net 47 GND)) - (model Capacitors_SMD.3dshapes/C_0805.wrl + (model ${KISYS3DMOD}/Capacitor_SMD.3dshapes/C_0805_2012Metric.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module ipc_capc:IPC_CAPC2012X135L45N (layer 4_bot) (tedit 58FD8D49) (tstamp 58EB0389) + (module ipc_capc:IPC_CAPC200X125X135L45N (layer 4_bot) (tedit 5BD22B9C) (tstamp 5BD11C83) (at 143.65 110.85 180) (path /58CFF3E3/58CFF92C) (attr smd) @@ -2422,28 +2821,31 @@ (fp_text value 10U (at 0 0 180) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) + (fp_text user %R (at 0 0 180) (layer B.Fab) + (effects (font (size 0.6 0.6) (thickness 0.025)) (justify mirror)) + ) (fp_line (start -1 0.625) (end 1 0.625) (layer B.Fab) (width 0.025)) (fp_line (start 1 0.625) (end 1 -0.625) (layer B.Fab) (width 0.025)) (fp_line (start 1 -0.625) (end -1 -0.625) (layer B.Fab) (width 0.025)) (fp_line (start -1 -0.625) (end -1 0.625) (layer B.Fab) (width 0.025)) - (fp_line (start -1 0.87) (end 1 0.87) (layer B.SilkS) (width 0.12)) - (fp_line (start 1 -0.87) (end -1 -0.87) (layer B.SilkS) (width 0.12)) - (fp_line (start -1.665 0.94) (end 1.665 0.94) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.665 0.94) (end 1.665 -0.94) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.665 -0.94) (end -1.665 -0.94) (layer B.CrtYd) (width 0.05)) - (fp_line (start -1.665 -0.94) (end -1.665 0.94) (layer B.CrtYd) (width 0.05)) - (pad 1 smd rect (at -0.89 0 180) (size 1.05 1.38) (layers 4_bot B.Paste B.Mask) + (fp_line (start -0.185 -0.685) (end 0.185 -0.685) (layer B.SilkS) (width 0.12)) + (fp_line (start 0.185 0.685) (end -0.185 0.685) (layer B.SilkS) (width 0.12)) + (fp_line (start -1.565 0.89) (end 1.565 0.89) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.565 0.89) (end 1.565 -0.89) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.565 -0.89) (end -1.565 -0.89) (layer B.CrtYd) (width 0.05)) + (fp_line (start -1.565 -0.89) (end -1.565 0.89) (layer B.CrtYd) (width 0.05)) + (pad 1 smd rect (at -0.865 0 180) (size 1 1.38) (layers 4_bot B.Paste B.Mask) (net 122 +1V8)) - (pad 2 smd rect (at 0.89 0 180) (size 1.05 1.38) (layers 4_bot B.Paste B.Mask) + (pad 2 smd rect (at 0.865 0 180) (size 1 1.38) (layers 4_bot B.Paste B.Mask) (net 47 GND)) - (model Capacitors_SMD.3dshapes/C_0805.wrl + (model ${KISYS3DMOD}/Capacitor_SMD.3dshapes/C_0805_2012Metric.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module ipc_capc:IPC_CAPC2012X135L45N (layer 4_bot) (tedit 58FD8D5A) (tstamp 58EB036B) + (module ipc_capc:IPC_CAPC200X125X135L45N (layer 4_bot) (tedit 5BD22B6F) (tstamp 5BD11C63) (at 140.1 108.2 90) (path /58CFF3E3/58CFF923) (attr smd) @@ -2453,28 +2855,31 @@ (fp_text value 10U (at 0 0 90) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) - (fp_line (start -1 0.625) (end 1 0.625) (layer B.Fab) (width 0.025)) - (fp_line (start 1 0.625) (end 1 -0.625) (layer B.Fab) (width 0.025)) - (fp_line (start 1 -0.625) (end -1 -0.625) (layer B.Fab) (width 0.025)) + (fp_line (start -1.565 -0.89) (end -1.565 0.89) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.565 -0.89) (end -1.565 -0.89) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.565 0.89) (end 1.565 -0.89) (layer B.CrtYd) (width 0.05)) + (fp_line (start -1.565 0.89) (end 1.565 0.89) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.185 0.685) (end -0.185 0.685) (layer B.SilkS) (width 0.12)) + (fp_line (start -0.185 -0.685) (end 0.185 -0.685) (layer B.SilkS) (width 0.12)) (fp_line (start -1 -0.625) (end -1 0.625) (layer B.Fab) (width 0.025)) - (fp_line (start -1 0.87) (end 1 0.87) (layer B.SilkS) (width 0.12)) - (fp_line (start 1 -0.87) (end -1 -0.87) (layer B.SilkS) (width 0.12)) - (fp_line (start -1.665 0.94) (end 1.665 0.94) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.665 0.94) (end 1.665 -0.94) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.665 -0.94) (end -1.665 -0.94) (layer B.CrtYd) (width 0.05)) - (fp_line (start -1.665 -0.94) (end -1.665 0.94) (layer B.CrtYd) (width 0.05)) - (pad 1 smd rect (at -0.89 0 90) (size 1.05 1.38) (layers 4_bot B.Paste B.Mask) - (net 121 +3V3)) - (pad 2 smd rect (at 0.89 0 90) (size 1.05 1.38) (layers 4_bot B.Paste B.Mask) + (fp_line (start 1 -0.625) (end -1 -0.625) (layer B.Fab) (width 0.025)) + (fp_line (start 1 0.625) (end 1 -0.625) (layer B.Fab) (width 0.025)) + (fp_line (start -1 0.625) (end 1 0.625) (layer B.Fab) (width 0.025)) + (fp_text user %R (at 0 0 90) (layer B.Fab) + (effects (font (size 0.6 0.6) (thickness 0.025)) (justify mirror)) + ) + (pad 2 smd rect (at 0.865 0 90) (size 1 1.38) (layers 4_bot B.Paste B.Mask) (net 47 GND)) - (model Capacitors_SMD.3dshapes/C_0805.wrl + (pad 1 smd rect (at -0.865 0 90) (size 1 1.38) (layers 4_bot B.Paste B.Mask) + (net 121 +3V3)) + (model ${KISYS3DMOD}/Capacitor_SMD.3dshapes/C_0805_2012Metric.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module ipc_capc:IPC_CAPC2012X135L45N (layer 4_bot) (tedit 58FD8859) (tstamp 58EB035C) + (module ipc_capc:IPC_CAPC200X125X135L45N (layer 4_bot) (tedit 5BD22CFD) (tstamp 5BD11C53) (at 97.4 144.6 270) (path /53A8C780/53A8D5E0) (attr smd) @@ -2484,28 +2889,31 @@ (fp_text value 10U (at 0 0 270) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) - (fp_line (start -1 0.625) (end 1 0.625) (layer B.Fab) (width 0.025)) - (fp_line (start 1 0.625) (end 1 -0.625) (layer B.Fab) (width 0.025)) - (fp_line (start 1 -0.625) (end -1 -0.625) (layer B.Fab) (width 0.025)) + (fp_line (start -1.565 -0.89) (end -1.565 0.89) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.565 -0.89) (end -1.565 -0.89) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.565 0.89) (end 1.565 -0.89) (layer B.CrtYd) (width 0.05)) + (fp_line (start -1.565 0.89) (end 1.565 0.89) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.185 0.685) (end -0.185 0.685) (layer B.SilkS) (width 0.12)) + (fp_line (start -0.185 -0.685) (end 0.185 -0.685) (layer B.SilkS) (width 0.12)) (fp_line (start -1 -0.625) (end -1 0.625) (layer B.Fab) (width 0.025)) - (fp_line (start -1 0.87) (end 1 0.87) (layer B.SilkS) (width 0.12)) - (fp_line (start 1 -0.87) (end -1 -0.87) (layer B.SilkS) (width 0.12)) - (fp_line (start -1.665 0.94) (end 1.665 0.94) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.665 0.94) (end 1.665 -0.94) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.665 -0.94) (end -1.665 -0.94) (layer B.CrtYd) (width 0.05)) - (fp_line (start -1.665 -0.94) (end -1.665 0.94) (layer B.CrtYd) (width 0.05)) - (pad 1 smd rect (at -0.89 0 270) (size 1.05 1.38) (layers 4_bot B.Paste B.Mask) - (net 122 +1V8)) - (pad 2 smd rect (at 0.89 0 270) (size 1.05 1.38) (layers 4_bot B.Paste B.Mask) + (fp_line (start 1 -0.625) (end -1 -0.625) (layer B.Fab) (width 0.025)) + (fp_line (start 1 0.625) (end 1 -0.625) (layer B.Fab) (width 0.025)) + (fp_line (start -1 0.625) (end 1 0.625) (layer B.Fab) (width 0.025)) + (fp_text user %R (at 0 0 270) (layer B.Fab) + (effects (font (size 0.6 0.6) (thickness 0.025)) (justify mirror)) + ) + (pad 2 smd rect (at 0.865 0 270) (size 1 1.38) (layers 4_bot B.Paste B.Mask) (net 47 GND)) - (model Capacitors_SMD.3dshapes/C_0805.wrl + (pad 1 smd rect (at -0.865 0 270) (size 1 1.38) (layers 4_bot B.Paste B.Mask) + (net 122 +1V8)) + (model ${KISYS3DMOD}/Capacitor_SMD.3dshapes/C_0805_2012Metric.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module ipc_capc:IPC_CAPC2012X135L45N (layer 4_bot) (tedit 58FD8891) (tstamp 58EB034D) + (module ipc_capc:IPC_CAPC200X125X135L45N (layer 4_bot) (tedit 5BD22B16) (tstamp 5BD11C43) (at 103.1 131.1 135) (path /53A8C780/53A8D5DA) (attr smd) @@ -2515,28 +2923,31 @@ (fp_text value 10U (at 0 0 135) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) - (fp_line (start -1 0.625) (end 1 0.625) (layer B.Fab) (width 0.025)) - (fp_line (start 1 0.625) (end 1 -0.625) (layer B.Fab) (width 0.025)) - (fp_line (start 1 -0.625) (end -1 -0.625) (layer B.Fab) (width 0.025)) + (fp_line (start -1.565 -0.89) (end -1.565 0.89) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.565 -0.89) (end -1.565 -0.89) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.565 0.89) (end 1.565 -0.89) (layer B.CrtYd) (width 0.05)) + (fp_line (start -1.565 0.89) (end 1.565 0.89) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.185 0.685) (end -0.185 0.685) (layer B.SilkS) (width 0.12)) + (fp_line (start -0.185 -0.685) (end 0.185 -0.685) (layer B.SilkS) (width 0.12)) (fp_line (start -1 -0.625) (end -1 0.625) (layer B.Fab) (width 0.025)) - (fp_line (start -1 0.87) (end 1 0.87) (layer B.SilkS) (width 0.12)) - (fp_line (start 1 -0.87) (end -1 -0.87) (layer B.SilkS) (width 0.12)) - (fp_line (start -1.665 0.94) (end 1.665 0.94) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.665 0.94) (end 1.665 -0.94) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.665 -0.94) (end -1.665 -0.94) (layer B.CrtYd) (width 0.05)) - (fp_line (start -1.665 -0.94) (end -1.665 0.94) (layer B.CrtYd) (width 0.05)) - (pad 1 smd rect (at -0.89 0 135) (size 1.05 1.38) (layers 4_bot B.Paste B.Mask) - (net 122 +1V8)) - (pad 2 smd rect (at 0.89 0 135) (size 1.05 1.38) (layers 4_bot B.Paste B.Mask) + (fp_line (start 1 -0.625) (end -1 -0.625) (layer B.Fab) (width 0.025)) + (fp_line (start 1 0.625) (end 1 -0.625) (layer B.Fab) (width 0.025)) + (fp_line (start -1 0.625) (end 1 0.625) (layer B.Fab) (width 0.025)) + (fp_text user %R (at 0 0 135) (layer B.Fab) + (effects (font (size 0.6 0.6) (thickness 0.025)) (justify mirror)) + ) + (pad 2 smd rect (at 0.865 0 135) (size 1 1.38) (layers 4_bot B.Paste B.Mask) (net 47 GND)) - (model Capacitors_SMD.3dshapes/C_0805.wrl + (pad 1 smd rect (at -0.865 0 135) (size 1 1.38) (layers 4_bot B.Paste B.Mask) + (net 122 +1V8)) + (model ${KISYS3DMOD}/Capacitor_SMD.3dshapes/C_0805_2012Metric.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module ipc_capc:IPC_CAPC2012X135L45N (layer 4_bot) (tedit 58FD88CA) (tstamp 58EB0311) + (module ipc_capc:IPC_CAPC200X125X135L45N (layer 4_bot) (tedit 5BD22C92) (tstamp 5BD11C07) (at 123.5 158.9 180) (path /53A8C780/53A8D5C2) (attr smd) @@ -2546,28 +2957,31 @@ (fp_text value 10U (at 0 0 180) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) + (fp_text user %R (at 0 0 180) (layer B.Fab) + (effects (font (size 0.6 0.6) (thickness 0.025)) (justify mirror)) + ) (fp_line (start -1 0.625) (end 1 0.625) (layer B.Fab) (width 0.025)) (fp_line (start 1 0.625) (end 1 -0.625) (layer B.Fab) (width 0.025)) (fp_line (start 1 -0.625) (end -1 -0.625) (layer B.Fab) (width 0.025)) (fp_line (start -1 -0.625) (end -1 0.625) (layer B.Fab) (width 0.025)) - (fp_line (start -1 0.87) (end 1 0.87) (layer B.SilkS) (width 0.12)) - (fp_line (start 1 -0.87) (end -1 -0.87) (layer B.SilkS) (width 0.12)) - (fp_line (start -1.665 0.94) (end 1.665 0.94) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.665 0.94) (end 1.665 -0.94) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.665 -0.94) (end -1.665 -0.94) (layer B.CrtYd) (width 0.05)) - (fp_line (start -1.665 -0.94) (end -1.665 0.94) (layer B.CrtYd) (width 0.05)) - (pad 1 smd rect (at -0.89 0 180) (size 1.05 1.38) (layers 4_bot B.Paste B.Mask) + (fp_line (start -0.185 -0.685) (end 0.185 -0.685) (layer B.SilkS) (width 0.12)) + (fp_line (start 0.185 0.685) (end -0.185 0.685) (layer B.SilkS) (width 0.12)) + (fp_line (start -1.565 0.89) (end 1.565 0.89) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.565 0.89) (end 1.565 -0.89) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.565 -0.89) (end -1.565 -0.89) (layer B.CrtYd) (width 0.05)) + (fp_line (start -1.565 -0.89) (end -1.565 0.89) (layer B.CrtYd) (width 0.05)) + (pad 1 smd rect (at -0.865 0 180) (size 1 1.38) (layers 4_bot B.Paste B.Mask) (net 121 +3V3)) - (pad 2 smd rect (at 0.89 0 180) (size 1.05 1.38) (layers 4_bot B.Paste B.Mask) + (pad 2 smd rect (at 0.865 0 180) (size 1 1.38) (layers 4_bot B.Paste B.Mask) (net 47 GND)) - (model Capacitors_SMD.3dshapes/C_0805.wrl + (model ${KISYS3DMOD}/Capacitor_SMD.3dshapes/C_0805_2012Metric.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module ipc_capc:IPC_CAPC2012X135L45N (layer 4_bot) (tedit 58FD8DD0) (tstamp 58EB02B7) + (module ipc_capc:IPC_CAPC200X125X135L45N (layer 4_bot) (tedit 5BD22B5C) (tstamp 5BD11BB1) (at 80.1 116) (path /53A9129D/53A8C71C) (attr smd) @@ -2577,28 +2991,31 @@ (fp_text value 10U (at 0 0) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) + (fp_text user %R (at 0 0) (layer B.Fab) + (effects (font (size 0.6 0.6) (thickness 0.025)) (justify mirror)) + ) (fp_line (start -1 0.625) (end 1 0.625) (layer B.Fab) (width 0.025)) (fp_line (start 1 0.625) (end 1 -0.625) (layer B.Fab) (width 0.025)) (fp_line (start 1 -0.625) (end -1 -0.625) (layer B.Fab) (width 0.025)) (fp_line (start -1 -0.625) (end -1 0.625) (layer B.Fab) (width 0.025)) - (fp_line (start -1 0.87) (end 1 0.87) (layer B.SilkS) (width 0.12)) - (fp_line (start 1 -0.87) (end -1 -0.87) (layer B.SilkS) (width 0.12)) - (fp_line (start -1.665 0.94) (end 1.665 0.94) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.665 0.94) (end 1.665 -0.94) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.665 -0.94) (end -1.665 -0.94) (layer B.CrtYd) (width 0.05)) - (fp_line (start -1.665 -0.94) (end -1.665 0.94) (layer B.CrtYd) (width 0.05)) - (pad 1 smd rect (at -0.89 0) (size 1.05 1.38) (layers 4_bot B.Paste B.Mask) + (fp_line (start -0.185 -0.685) (end 0.185 -0.685) (layer B.SilkS) (width 0.12)) + (fp_line (start 0.185 0.685) (end -0.185 0.685) (layer B.SilkS) (width 0.12)) + (fp_line (start -1.565 0.89) (end 1.565 0.89) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.565 0.89) (end 1.565 -0.89) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.565 -0.89) (end -1.565 -0.89) (layer B.CrtYd) (width 0.05)) + (fp_line (start -1.565 -0.89) (end -1.565 0.89) (layer B.CrtYd) (width 0.05)) + (pad 1 smd rect (at -0.865 0) (size 1 1.38) (layers 4_bot B.Paste B.Mask) (net 121 +3V3)) - (pad 2 smd rect (at 0.89 0) (size 1.05 1.38) (layers 4_bot B.Paste B.Mask) + (pad 2 smd rect (at 0.865 0) (size 1 1.38) (layers 4_bot B.Paste B.Mask) (net 47 GND)) - (model Capacitors_SMD.3dshapes/C_0805.wrl + (model ${KISYS3DMOD}/Capacitor_SMD.3dshapes/C_0805_2012Metric.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module ipc_capc:IPC_CAPC2012X135L45N (layer 4_bot) (tedit 58FD8CBE) (tstamp 58EB026C) + (module ipc_capc:IPC_CAPC200X125X135L45N (layer 4_bot) (tedit 5BD22BE7) (tstamp 5BD11B41) (at 148.1 115.7 180) (path /53A8BFC3/53A8C720) (attr smd) @@ -2608,28 +3025,31 @@ (fp_text value 10U (at 0 0 180) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) + (fp_text user %R (at 0 0 180) (layer B.Fab) + (effects (font (size 0.6 0.6) (thickness 0.025)) (justify mirror)) + ) (fp_line (start -1 0.625) (end 1 0.625) (layer B.Fab) (width 0.025)) (fp_line (start 1 0.625) (end 1 -0.625) (layer B.Fab) (width 0.025)) (fp_line (start 1 -0.625) (end -1 -0.625) (layer B.Fab) (width 0.025)) (fp_line (start -1 -0.625) (end -1 0.625) (layer B.Fab) (width 0.025)) - (fp_line (start -1 0.87) (end 1 0.87) (layer B.SilkS) (width 0.12)) - (fp_line (start 1 -0.87) (end -1 -0.87) (layer B.SilkS) (width 0.12)) - (fp_line (start -1.665 0.94) (end 1.665 0.94) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.665 0.94) (end 1.665 -0.94) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.665 -0.94) (end -1.665 -0.94) (layer B.CrtYd) (width 0.05)) - (fp_line (start -1.665 -0.94) (end -1.665 0.94) (layer B.CrtYd) (width 0.05)) - (pad 1 smd rect (at -0.89 0 180) (size 1.05 1.38) (layers 4_bot B.Paste B.Mask) + (fp_line (start -0.185 -0.685) (end 0.185 -0.685) (layer B.SilkS) (width 0.12)) + (fp_line (start 0.185 0.685) (end -0.185 0.685) (layer B.SilkS) (width 0.12)) + (fp_line (start -1.565 0.89) (end 1.565 0.89) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.565 0.89) (end 1.565 -0.89) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.565 -0.89) (end -1.565 -0.89) (layer B.CrtYd) (width 0.05)) + (fp_line (start -1.565 -0.89) (end -1.565 0.89) (layer B.CrtYd) (width 0.05)) + (pad 1 smd rect (at -0.865 0 180) (size 1 1.38) (layers 4_bot B.Paste B.Mask) (net 72 /power/AUDIO_SVDD)) - (pad 2 smd rect (at 0.89 0 180) (size 1.05 1.38) (layers 4_bot B.Paste B.Mask) + (pad 2 smd rect (at 0.865 0 180) (size 1 1.38) (layers 4_bot B.Paste B.Mask) (net 47 GND)) - (model Capacitors_SMD.3dshapes/C_0805.wrl + (model ${KISYS3DMOD}/Capacitor_SMD.3dshapes/C_0805_2012Metric.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module ipc_capc:IPC_CAPC2012X135L45N (layer 4_bot) (tedit 58FD8B93) (tstamp 58EB024E) + (module ipc_capc:IPC_CAPC200X125X135L45N (layer 4_bot) (tedit 5BD22B95) (tstamp 5BD11B21) (at 158.5 106.7 90) (path /53A8BFC3/53A8C72C) (attr smd) @@ -2639,28 +3059,31 @@ (fp_text value 10U (at 0 0 90) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) - (fp_line (start -1 0.625) (end 1 0.625) (layer B.Fab) (width 0.025)) - (fp_line (start 1 0.625) (end 1 -0.625) (layer B.Fab) (width 0.025)) - (fp_line (start 1 -0.625) (end -1 -0.625) (layer B.Fab) (width 0.025)) + (fp_line (start -1.565 -0.89) (end -1.565 0.89) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.565 -0.89) (end -1.565 -0.89) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.565 0.89) (end 1.565 -0.89) (layer B.CrtYd) (width 0.05)) + (fp_line (start -1.565 0.89) (end 1.565 0.89) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.185 0.685) (end -0.185 0.685) (layer B.SilkS) (width 0.12)) + (fp_line (start -0.185 -0.685) (end 0.185 -0.685) (layer B.SilkS) (width 0.12)) (fp_line (start -1 -0.625) (end -1 0.625) (layer B.Fab) (width 0.025)) - (fp_line (start -1 0.87) (end 1 0.87) (layer B.SilkS) (width 0.12)) - (fp_line (start 1 -0.87) (end -1 -0.87) (layer B.SilkS) (width 0.12)) - (fp_line (start -1.665 0.94) (end 1.665 0.94) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.665 0.94) (end 1.665 -0.94) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.665 -0.94) (end -1.665 -0.94) (layer B.CrtYd) (width 0.05)) - (fp_line (start -1.665 -0.94) (end -1.665 0.94) (layer B.CrtYd) (width 0.05)) - (pad 1 smd rect (at -0.89 0 90) (size 1.05 1.38) (layers 4_bot B.Paste B.Mask) - (net 121 +3V3)) - (pad 2 smd rect (at 0.89 0 90) (size 1.05 1.38) (layers 4_bot B.Paste B.Mask) + (fp_line (start 1 -0.625) (end -1 -0.625) (layer B.Fab) (width 0.025)) + (fp_line (start 1 0.625) (end 1 -0.625) (layer B.Fab) (width 0.025)) + (fp_line (start -1 0.625) (end 1 0.625) (layer B.Fab) (width 0.025)) + (fp_text user %R (at 0 0 90) (layer B.Fab) + (effects (font (size 0.6 0.6) (thickness 0.025)) (justify mirror)) + ) + (pad 2 smd rect (at 0.865 0 90) (size 1 1.38) (layers 4_bot B.Paste B.Mask) (net 47 GND)) - (model Capacitors_SMD.3dshapes/C_0805.wrl + (pad 1 smd rect (at -0.865 0 90) (size 1 1.38) (layers 4_bot B.Paste B.Mask) + (net 121 +3V3)) + (model ${KISYS3DMOD}/Capacitor_SMD.3dshapes/C_0805_2012Metric.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module ipc_capc:IPC_CAPC2012X135L45N (layer 4_bot) (tedit 58FD8CC5) (tstamp 58EB0212) + (module ipc_capc:IPC_CAPC200X125X135L45N (layer 4_bot) (tedit 5BD22BE3) (tstamp 5BD11AF1) (at 150.75 117.45 270) (path /53A8BFC3/53A8C70E) (attr smd) @@ -2670,88 +3093,99 @@ (fp_text value 10U (at 0 0 270) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) - (fp_line (start -1 0.625) (end 1 0.625) (layer B.Fab) (width 0.025)) - (fp_line (start 1 0.625) (end 1 -0.625) (layer B.Fab) (width 0.025)) - (fp_line (start 1 -0.625) (end -1 -0.625) (layer B.Fab) (width 0.025)) + (fp_line (start -1.565 -0.89) (end -1.565 0.89) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.565 -0.89) (end -1.565 -0.89) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.565 0.89) (end 1.565 -0.89) (layer B.CrtYd) (width 0.05)) + (fp_line (start -1.565 0.89) (end 1.565 0.89) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.185 0.685) (end -0.185 0.685) (layer B.SilkS) (width 0.12)) + (fp_line (start -0.185 -0.685) (end 0.185 -0.685) (layer B.SilkS) (width 0.12)) (fp_line (start -1 -0.625) (end -1 0.625) (layer B.Fab) (width 0.025)) - (fp_line (start -1 0.87) (end 1 0.87) (layer B.SilkS) (width 0.12)) - (fp_line (start 1 -0.87) (end -1 -0.87) (layer B.SilkS) (width 0.12)) - (fp_line (start -1.665 0.94) (end 1.665 0.94) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.665 0.94) (end 1.665 -0.94) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.665 -0.94) (end -1.665 -0.94) (layer B.CrtYd) (width 0.05)) - (fp_line (start -1.665 -0.94) (end -1.665 0.94) (layer B.CrtYd) (width 0.05)) - (pad 1 smd rect (at -0.89 0 270) (size 1.05 1.38) (layers 4_bot B.Paste B.Mask) - (net 121 +3V3)) - (pad 2 smd rect (at 0.89 0 270) (size 1.05 1.38) (layers 4_bot B.Paste B.Mask) + (fp_line (start 1 -0.625) (end -1 -0.625) (layer B.Fab) (width 0.025)) + (fp_line (start 1 0.625) (end 1 -0.625) (layer B.Fab) (width 0.025)) + (fp_line (start -1 0.625) (end 1 0.625) (layer B.Fab) (width 0.025)) + (fp_text user %R (at 0 0 270) (layer B.Fab) + (effects (font (size 0.6 0.6) (thickness 0.025)) (justify mirror)) + ) + (pad 2 smd rect (at 0.865 0 270) (size 1 1.38) (layers 4_bot B.Paste B.Mask) (net 47 GND)) - (model Capacitors_SMD.3dshapes/C_0805.wrl + (pad 1 smd rect (at -0.865 0 270) (size 1 1.38) (layers 4_bot B.Paste B.Mask) + (net 121 +3V3)) + (model ${KISYS3DMOD}/Capacitor_SMD.3dshapes/C_0805_2012Metric.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module ipc_capc:IPC_CAPC2012X135L45N (layer 4_bot) (tedit 58FD8AA6) (tstamp 58F1AEE1) + (module ipc_capc:IPC_CAPC200X125X135L45N (layer 4_bot) (tedit 5BD22C24) (tstamp 5BD11B61) (at 171.35 126.95) (path /58CFF3E3/58F1B1AB) + (attr smd) (fp_text reference C15 (at -0.05 1.45) (layer B.SilkS) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) (fp_text value 4U7 (at 0 0) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) + (fp_text user %R (at 0 0) (layer B.Fab) + (effects (font (size 0.6 0.6) (thickness 0.025)) (justify mirror)) + ) (fp_line (start -1 0.625) (end 1 0.625) (layer B.Fab) (width 0.025)) (fp_line (start 1 0.625) (end 1 -0.625) (layer B.Fab) (width 0.025)) (fp_line (start 1 -0.625) (end -1 -0.625) (layer B.Fab) (width 0.025)) (fp_line (start -1 -0.625) (end -1 0.625) (layer B.Fab) (width 0.025)) - (fp_line (start -1 0.87) (end 1 0.87) (layer B.SilkS) (width 0.12)) - (fp_line (start 1 -0.87) (end -1 -0.87) (layer B.SilkS) (width 0.12)) - (fp_line (start -1.665 0.94) (end 1.665 0.94) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.665 0.94) (end 1.665 -0.94) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.665 -0.94) (end -1.665 -0.94) (layer B.CrtYd) (width 0.05)) - (fp_line (start -1.665 -0.94) (end -1.665 0.94) (layer B.CrtYd) (width 0.05)) - (pad 1 smd rect (at -0.89 0) (size 1.05 1.38) (layers 4_bot B.Paste B.Mask) + (fp_line (start -0.185 -0.685) (end 0.185 -0.685) (layer B.SilkS) (width 0.12)) + (fp_line (start 0.185 0.685) (end -0.185 0.685) (layer B.SilkS) (width 0.12)) + (fp_line (start -1.565 0.89) (end 1.565 0.89) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.565 0.89) (end 1.565 -0.89) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.565 -0.89) (end -1.565 -0.89) (layer B.CrtYd) (width 0.05)) + (fp_line (start -1.565 -0.89) (end -1.565 0.89) (layer B.CrtYd) (width 0.05)) + (pad 1 smd rect (at -0.865 0) (size 1 1.38) (layers 4_bot B.Paste B.Mask) (net 118 /power/BBAT)) - (pad 2 smd rect (at 0.89 0) (size 1.05 1.38) (layers 4_bot B.Paste B.Mask) + (pad 2 smd rect (at 0.865 0) (size 1 1.38) (layers 4_bot B.Paste B.Mask) (net 47 GND)) - (model Capacitors_SMD.3dshapes/C_0805.wrl + (model ${KISYS3DMOD}/Capacitor_SMD.3dshapes/C_0805_2012Metric.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module ipc_capc:IPC_CAPC1608X90L35N (layer 4_bot) (tedit 58FD8C02) (tstamp 58EB037A) + (module ipc_capc:IPC_CAPC160X80X90L35N (layer 4_bot) (tedit 5BD22B77) (tstamp 5BD11C73) (at 143.8 105.8 180) (path /58CFF3E3/58CFF945) + (attr smd) (fp_text reference C39 (at 0.05 1.2 180) (layer B.SilkS) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) (fp_text value R (at 0 0 180) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) - (fp_line (start -0.8 0.4) (end 0.8 0.4) (layer B.Fab) (width 0.025)) - (fp_line (start 0.8 0.4) (end 0.8 -0.4) (layer B.Fab) (width 0.025)) - (fp_line (start 0.8 -0.4) (end -0.8 -0.4) (layer B.Fab) (width 0.025)) + (fp_line (start -1.365 -0.665) (end -1.365 0.665) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.365 -0.665) (end -1.365 -0.665) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.365 0.665) (end 1.365 -0.665) (layer B.CrtYd) (width 0.05)) + (fp_line (start -1.365 0.665) (end 1.365 0.665) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.145 0.46) (end -0.145 0.46) (layer B.SilkS) (width 0.12)) + (fp_line (start -0.145 -0.46) (end 0.145 -0.46) (layer B.SilkS) (width 0.12)) (fp_line (start -0.8 -0.4) (end -0.8 0.4) (layer B.Fab) (width 0.025)) - (fp_line (start -0.8 0.645) (end 0.8 0.645) (layer B.SilkS) (width 0.12)) - (fp_line (start 0.8 -0.645) (end -0.8 -0.645) (layer B.SilkS) (width 0.12)) - (fp_line (start -1.465 0.715) (end 1.465 0.715) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.465 0.715) (end 1.465 -0.715) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.465 -0.715) (end -1.465 -0.715) (layer B.CrtYd) (width 0.05)) - (fp_line (start -1.465 -0.715) (end -1.465 0.715) (layer B.CrtYd) (width 0.05)) - (pad 1 smd rect (at -0.77 0 180) (size 0.89 0.93) (layers 4_bot B.Paste B.Mask) - (net 48 "Net-(C39-Pad1)")) - (pad 2 smd rect (at 0.77 0 180) (size 0.89 0.93) (layers 4_bot B.Paste B.Mask) + (fp_line (start 0.8 -0.4) (end -0.8 -0.4) (layer B.Fab) (width 0.025)) + (fp_line (start 0.8 0.4) (end 0.8 -0.4) (layer B.Fab) (width 0.025)) + (fp_line (start -0.8 0.4) (end 0.8 0.4) (layer B.Fab) (width 0.025)) + (fp_text user %R (at 0 0 180) (layer B.Fab) + (effects (font (size 0.45 0.45) (thickness 0.025)) (justify mirror)) + ) + (pad 2 smd rect (at 0.745 0 180) (size 0.84 0.93) (layers 4_bot B.Paste B.Mask) (net 47 GND)) - (model Capacitors_SMD.3dshapes/C_0603.wrl + (pad 1 smd rect (at -0.745 0 180) (size 0.84 0.93) (layers 4_bot B.Paste B.Mask) + (net 48 "Net-(C39-Pad1)")) + (model ${KISYS3DMOD}/Capacitor_SMD.3dshapes/C_0603_1608Metric.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module ipc_capc:IPC_CAPC1608X90L35N (layer 4_bot) (tedit 58FD8B9A) (tstamp 58EB025D) + (module ipc_capc:IPC_CAPC160X80X90L35N (layer 4_bot) (tedit 5BD22B92) (tstamp 5BD11B31) (at 156.8 106.2 270) (path /53A8BFC3/53A8C6F0) (attr smd) @@ -2761,28 +3195,31 @@ (fp_text value 2U2 (at 0 0 270) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) - (fp_line (start -0.8 0.4) (end 0.8 0.4) (layer B.Fab) (width 0.025)) - (fp_line (start 0.8 0.4) (end 0.8 -0.4) (layer B.Fab) (width 0.025)) - (fp_line (start 0.8 -0.4) (end -0.8 -0.4) (layer B.Fab) (width 0.025)) + (fp_line (start -1.365 -0.665) (end -1.365 0.665) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.365 -0.665) (end -1.365 -0.665) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.365 0.665) (end 1.365 -0.665) (layer B.CrtYd) (width 0.05)) + (fp_line (start -1.365 0.665) (end 1.365 0.665) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.145 0.46) (end -0.145 0.46) (layer B.SilkS) (width 0.12)) + (fp_line (start -0.145 -0.46) (end 0.145 -0.46) (layer B.SilkS) (width 0.12)) (fp_line (start -0.8 -0.4) (end -0.8 0.4) (layer B.Fab) (width 0.025)) - (fp_line (start -0.8 0.645) (end 0.8 0.645) (layer B.SilkS) (width 0.12)) - (fp_line (start 0.8 -0.645) (end -0.8 -0.645) (layer B.SilkS) (width 0.12)) - (fp_line (start -1.465 0.715) (end 1.465 0.715) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.465 0.715) (end 1.465 -0.715) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.465 -0.715) (end -1.465 -0.715) (layer B.CrtYd) (width 0.05)) - (fp_line (start -1.465 -0.715) (end -1.465 0.715) (layer B.CrtYd) (width 0.05)) - (pad 1 smd rect (at -0.77 0 270) (size 0.89 0.93) (layers 4_bot B.Paste B.Mask) - (net 47 GND)) - (pad 2 smd rect (at 0.77 0 270) (size 0.89 0.93) (layers 4_bot B.Paste B.Mask) + (fp_line (start 0.8 -0.4) (end -0.8 -0.4) (layer B.Fab) (width 0.025)) + (fp_line (start 0.8 0.4) (end 0.8 -0.4) (layer B.Fab) (width 0.025)) + (fp_line (start -0.8 0.4) (end 0.8 0.4) (layer B.Fab) (width 0.025)) + (fp_text user %R (at 0 0 270) (layer B.Fab) + (effects (font (size 0.45 0.45) (thickness 0.025)) (justify mirror)) + ) + (pad 2 smd rect (at 0.745 0 270) (size 0.84 0.93) (layers 4_bot B.Paste B.Mask) (net 77 /audio/REGFIL)) - (model Capacitors_SMD.3dshapes/C_0603.wrl + (pad 1 smd rect (at -0.745 0 270) (size 0.84 0.93) (layers 4_bot B.Paste B.Mask) + (net 47 GND)) + (model ${KISYS3DMOD}/Capacitor_SMD.3dshapes/C_0603_1608Metric.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module ipc_capc:IPC_CAPC1608X90L35N (layer 4_bot) (tedit 58FD8BA8) (tstamp 58EB023F) + (module ipc_capc:IPC_CAPC160X80X90L35N (layer 4_bot) (tedit 5BD22B8E) (tstamp 5BD11B11) (at 155.3 106.2 270) (path /53A8BFC3/53A8C68D) (attr smd) @@ -2792,28 +3229,31 @@ (fp_text value 2U2 (at 0 0 270) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) + (fp_text user %R (at 0 0 270) (layer B.Fab) + (effects (font (size 0.45 0.45) (thickness 0.025)) (justify mirror)) + ) (fp_line (start -0.8 0.4) (end 0.8 0.4) (layer B.Fab) (width 0.025)) (fp_line (start 0.8 0.4) (end 0.8 -0.4) (layer B.Fab) (width 0.025)) (fp_line (start 0.8 -0.4) (end -0.8 -0.4) (layer B.Fab) (width 0.025)) (fp_line (start -0.8 -0.4) (end -0.8 0.4) (layer B.Fab) (width 0.025)) - (fp_line (start -0.8 0.645) (end 0.8 0.645) (layer B.SilkS) (width 0.12)) - (fp_line (start 0.8 -0.645) (end -0.8 -0.645) (layer B.SilkS) (width 0.12)) - (fp_line (start -1.465 0.715) (end 1.465 0.715) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.465 0.715) (end 1.465 -0.715) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.465 -0.715) (end -1.465 -0.715) (layer B.CrtYd) (width 0.05)) - (fp_line (start -1.465 -0.715) (end -1.465 0.715) (layer B.CrtYd) (width 0.05)) - (pad 1 smd rect (at -0.77 0 270) (size 0.89 0.93) (layers 4_bot B.Paste B.Mask) + (fp_line (start -0.145 -0.46) (end 0.145 -0.46) (layer B.SilkS) (width 0.12)) + (fp_line (start 0.145 0.46) (end -0.145 0.46) (layer B.SilkS) (width 0.12)) + (fp_line (start -1.365 0.665) (end 1.365 0.665) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.365 0.665) (end 1.365 -0.665) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.365 -0.665) (end -1.365 -0.665) (layer B.CrtYd) (width 0.05)) + (fp_line (start -1.365 -0.665) (end -1.365 0.665) (layer B.CrtYd) (width 0.05)) + (pad 1 smd rect (at -0.745 0 270) (size 0.84 0.93) (layers 4_bot B.Paste B.Mask) (net 47 GND)) - (pad 2 smd rect (at 0.77 0 270) (size 0.89 0.93) (layers 4_bot B.Paste B.Mask) + (pad 2 smd rect (at 0.745 0 270) (size 0.84 0.93) (layers 4_bot B.Paste B.Mask) (net 76 /audio/VCOM)) - (model Capacitors_SMD.3dshapes/C_0603.wrl + (model ${KISYS3DMOD}/Capacitor_SMD.3dshapes/C_0603_1608Metric.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module ipc_capc:IPC_CAPC1608X90L35N (layer 4_bot) (tedit 58FD8BD0) (tstamp 58EB0221) + (module ipc_capc:IPC_CAPC160X80X90L35N (layer 4_bot) (tedit 5BD22BA7) (tstamp 5BD11B01) (at 149.9 108.4 90) (path /53A8BFC3/53A8C6F6) (attr smd) @@ -2823,28 +3263,31 @@ (fp_text value 2U2 (at 0 0 90) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) + (fp_text user %R (at 0 0 90) (layer B.Fab) + (effects (font (size 0.45 0.45) (thickness 0.025)) (justify mirror)) + ) (fp_line (start -0.8 0.4) (end 0.8 0.4) (layer B.Fab) (width 0.025)) (fp_line (start 0.8 0.4) (end 0.8 -0.4) (layer B.Fab) (width 0.025)) (fp_line (start 0.8 -0.4) (end -0.8 -0.4) (layer B.Fab) (width 0.025)) (fp_line (start -0.8 -0.4) (end -0.8 0.4) (layer B.Fab) (width 0.025)) - (fp_line (start -0.8 0.645) (end 0.8 0.645) (layer B.SilkS) (width 0.12)) - (fp_line (start 0.8 -0.645) (end -0.8 -0.645) (layer B.SilkS) (width 0.12)) - (fp_line (start -1.465 0.715) (end 1.465 0.715) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.465 0.715) (end 1.465 -0.715) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.465 -0.715) (end -1.465 -0.715) (layer B.CrtYd) (width 0.05)) - (fp_line (start -1.465 -0.715) (end -1.465 0.715) (layer B.CrtYd) (width 0.05)) - (pad 1 smd rect (at -0.77 0 90) (size 0.89 0.93) (layers 4_bot B.Paste B.Mask) + (fp_line (start -0.145 -0.46) (end 0.145 -0.46) (layer B.SilkS) (width 0.12)) + (fp_line (start 0.145 0.46) (end -0.145 0.46) (layer B.SilkS) (width 0.12)) + (fp_line (start -1.365 0.665) (end 1.365 0.665) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.365 0.665) (end 1.365 -0.665) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.365 -0.665) (end -1.365 -0.665) (layer B.CrtYd) (width 0.05)) + (fp_line (start -1.365 -0.665) (end -1.365 0.665) (layer B.CrtYd) (width 0.05)) + (pad 1 smd rect (at -0.745 0 90) (size 0.84 0.93) (layers 4_bot B.Paste B.Mask) (net 75 /audio/VEE)) - (pad 2 smd rect (at 0.77 0 90) (size 0.89 0.93) (layers 4_bot B.Paste B.Mask) + (pad 2 smd rect (at 0.745 0 90) (size 0.84 0.93) (layers 4_bot B.Paste B.Mask) (net 47 GND)) - (model Capacitors_SMD.3dshapes/C_0603.wrl + (model ${KISYS3DMOD}/Capacitor_SMD.3dshapes/C_0603_1608Metric.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module ipc_capc:IPC_CAPC1608X90L35N (layer 4_bot) (tedit 58FD8BC3) (tstamp 58EB0203) + (module ipc_capc:IPC_CAPC160X80X90L35N (layer 4_bot) (tedit 5BD22B8A) (tstamp 5BD11AE1) (at 151.9 106.4 90) (path /53A8BFC3/53A8C687) (attr smd) @@ -2854,28 +3297,31 @@ (fp_text value 2U2 (at 0 0 90) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) - (fp_line (start -0.8 0.4) (end 0.8 0.4) (layer B.Fab) (width 0.025)) - (fp_line (start 0.8 0.4) (end 0.8 -0.4) (layer B.Fab) (width 0.025)) - (fp_line (start 0.8 -0.4) (end -0.8 -0.4) (layer B.Fab) (width 0.025)) + (fp_line (start -1.365 -0.665) (end -1.365 0.665) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.365 -0.665) (end -1.365 -0.665) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.365 0.665) (end 1.365 -0.665) (layer B.CrtYd) (width 0.05)) + (fp_line (start -1.365 0.665) (end 1.365 0.665) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.145 0.46) (end -0.145 0.46) (layer B.SilkS) (width 0.12)) + (fp_line (start -0.145 -0.46) (end 0.145 -0.46) (layer B.SilkS) (width 0.12)) (fp_line (start -0.8 -0.4) (end -0.8 0.4) (layer B.Fab) (width 0.025)) - (fp_line (start -0.8 0.645) (end 0.8 0.645) (layer B.SilkS) (width 0.12)) - (fp_line (start 0.8 -0.645) (end -0.8 -0.645) (layer B.SilkS) (width 0.12)) - (fp_line (start -1.465 0.715) (end 1.465 0.715) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.465 0.715) (end 1.465 -0.715) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.465 -0.715) (end -1.465 -0.715) (layer B.CrtYd) (width 0.05)) - (fp_line (start -1.465 -0.715) (end -1.465 0.715) (layer B.CrtYd) (width 0.05)) - (pad 1 smd rect (at -0.77 0 90) (size 0.89 0.93) (layers 4_bot B.Paste B.Mask) - (net 73 /audio/CP)) - (pad 2 smd rect (at 0.77 0 90) (size 0.89 0.93) (layers 4_bot B.Paste B.Mask) + (fp_line (start 0.8 -0.4) (end -0.8 -0.4) (layer B.Fab) (width 0.025)) + (fp_line (start 0.8 0.4) (end 0.8 -0.4) (layer B.Fab) (width 0.025)) + (fp_line (start -0.8 0.4) (end 0.8 0.4) (layer B.Fab) (width 0.025)) + (fp_text user %R (at 0 0 90) (layer B.Fab) + (effects (font (size 0.45 0.45) (thickness 0.025)) (justify mirror)) + ) + (pad 2 smd rect (at 0.745 0 90) (size 0.84 0.93) (layers 4_bot B.Paste B.Mask) (net 74 /audio/CN)) - (model Capacitors_SMD.3dshapes/C_0603.wrl + (pad 1 smd rect (at -0.745 0 90) (size 0.84 0.93) (layers 4_bot B.Paste B.Mask) + (net 73 /audio/CP)) + (model ${KISYS3DMOD}/Capacitor_SMD.3dshapes/C_0603_1608Metric.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module ipc_capc:IPC_CAPC1608X90L35N (layer 4_bot) (tedit 58FD8BD8) (tstamp 58EB0299) + (module ipc_capc:IPC_CAPC160X80X90L35N (layer 4_bot) (tedit 5BD22BA2) (tstamp 5BD11B91) (at 148.4 108.4 90) (path /53A8BFC3/53A8C284) (attr smd) @@ -2885,28 +3331,31 @@ (fp_text value 220N (at 0 0 90) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) - (fp_line (start -0.8 0.4) (end 0.8 0.4) (layer B.Fab) (width 0.025)) - (fp_line (start 0.8 0.4) (end 0.8 -0.4) (layer B.Fab) (width 0.025)) - (fp_line (start 0.8 -0.4) (end -0.8 -0.4) (layer B.Fab) (width 0.025)) + (fp_line (start -1.365 -0.665) (end -1.365 0.665) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.365 -0.665) (end -1.365 -0.665) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.365 0.665) (end 1.365 -0.665) (layer B.CrtYd) (width 0.05)) + (fp_line (start -1.365 0.665) (end 1.365 0.665) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.145 0.46) (end -0.145 0.46) (layer B.SilkS) (width 0.12)) + (fp_line (start -0.145 -0.46) (end 0.145 -0.46) (layer B.SilkS) (width 0.12)) (fp_line (start -0.8 -0.4) (end -0.8 0.4) (layer B.Fab) (width 0.025)) - (fp_line (start -0.8 0.645) (end 0.8 0.645) (layer B.SilkS) (width 0.12)) - (fp_line (start 0.8 -0.645) (end -0.8 -0.645) (layer B.SilkS) (width 0.12)) - (fp_line (start -1.465 0.715) (end 1.465 0.715) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.465 0.715) (end 1.465 -0.715) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.465 -0.715) (end -1.465 -0.715) (layer B.CrtYd) (width 0.05)) - (fp_line (start -1.465 -0.715) (end -1.465 0.715) (layer B.CrtYd) (width 0.05)) - (pad 1 smd rect (at -0.77 0 90) (size 0.89 0.93) (layers 4_bot B.Paste B.Mask) - (net 2 /audio/RHPOUT)) - (pad 2 smd rect (at 0.77 0 90) (size 0.89 0.93) (layers 4_bot B.Paste B.Mask) + (fp_line (start 0.8 -0.4) (end -0.8 -0.4) (layer B.Fab) (width 0.025)) + (fp_line (start 0.8 0.4) (end 0.8 -0.4) (layer B.Fab) (width 0.025)) + (fp_line (start -0.8 0.4) (end 0.8 0.4) (layer B.Fab) (width 0.025)) + (fp_text user %R (at 0 0 90) (layer B.Fab) + (effects (font (size 0.45 0.45) (thickness 0.025)) (justify mirror)) + ) + (pad 2 smd rect (at 0.745 0 90) (size 0.84 0.93) (layers 4_bot B.Paste B.Mask) (net 78 "Net-(C23-Pad2)")) - (model Capacitors_SMD.3dshapes/C_0603.wrl + (pad 1 smd rect (at -0.745 0 90) (size 0.84 0.93) (layers 4_bot B.Paste B.Mask) + (net 2 /audio/RHPOUT)) + (model ${KISYS3DMOD}/Capacitor_SMD.3dshapes/C_0603_1608Metric.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module ipc_capc:IPC_CAPC1608X90L35N (layer 4_bot) (tedit 58FD8C0E) (tstamp 58EB028A) + (module ipc_capc:IPC_CAPC160X80X90L35N (layer 4_bot) (tedit 5BD22B9F) (tstamp 5BD11B81) (at 146.05 108.4 90) (path /53A8BFC3/53A8C27E) (attr smd) @@ -2916,28 +3365,31 @@ (fp_text value 220N (at 0 0 90) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) + (fp_text user %R (at 0 0 90) (layer B.Fab) + (effects (font (size 0.45 0.45) (thickness 0.025)) (justify mirror)) + ) (fp_line (start -0.8 0.4) (end 0.8 0.4) (layer B.Fab) (width 0.025)) (fp_line (start 0.8 0.4) (end 0.8 -0.4) (layer B.Fab) (width 0.025)) (fp_line (start 0.8 -0.4) (end -0.8 -0.4) (layer B.Fab) (width 0.025)) (fp_line (start -0.8 -0.4) (end -0.8 0.4) (layer B.Fab) (width 0.025)) - (fp_line (start -0.8 0.645) (end 0.8 0.645) (layer B.SilkS) (width 0.12)) - (fp_line (start 0.8 -0.645) (end -0.8 -0.645) (layer B.SilkS) (width 0.12)) - (fp_line (start -1.465 0.715) (end 1.465 0.715) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.465 0.715) (end 1.465 -0.715) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.465 -0.715) (end -1.465 -0.715) (layer B.CrtYd) (width 0.05)) - (fp_line (start -1.465 -0.715) (end -1.465 0.715) (layer B.CrtYd) (width 0.05)) - (pad 1 smd rect (at -0.77 0 90) (size 0.89 0.93) (layers 4_bot B.Paste B.Mask) + (fp_line (start -0.145 -0.46) (end 0.145 -0.46) (layer B.SilkS) (width 0.12)) + (fp_line (start 0.145 0.46) (end -0.145 0.46) (layer B.SilkS) (width 0.12)) + (fp_line (start -1.365 0.665) (end 1.365 0.665) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.365 0.665) (end 1.365 -0.665) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.365 -0.665) (end -1.365 -0.665) (layer B.CrtYd) (width 0.05)) + (fp_line (start -1.365 -0.665) (end -1.365 0.665) (layer B.CrtYd) (width 0.05)) + (pad 1 smd rect (at -0.745 0 90) (size 0.84 0.93) (layers 4_bot B.Paste B.Mask) (net 1 /audio/LHPOUT)) - (pad 2 smd rect (at 0.77 0 90) (size 0.89 0.93) (layers 4_bot B.Paste B.Mask) + (pad 2 smd rect (at 0.745 0 90) (size 0.84 0.93) (layers 4_bot B.Paste B.Mask) (net 92 "Net-(C22-Pad2)")) - (model Capacitors_SMD.3dshapes/C_0603.wrl + (model ${KISYS3DMOD}/Capacitor_SMD.3dshapes/C_0603_1608Metric.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module ipc_capc:IPC_CAPC1608X90L35N (layer 4_bot) (tedit 58FD8B73) (tstamp 58EB02A8) + (module ipc_capc:IPC_CAPC160X80X90L35N (layer 4_bot) (tedit 5B60D757) (tstamp 5BD11BA1) (at 161 108.7) (path /53A8BFC3/53A8C2A2) (attr smd) @@ -2947,28 +3399,31 @@ (fp_text value 1U (at 0 0) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) + (fp_text user %R (at 0 0) (layer B.Fab) + (effects (font (size 0.45 0.45) (thickness 0.025)) (justify mirror)) + ) (fp_line (start -0.8 0.4) (end 0.8 0.4) (layer B.Fab) (width 0.025)) (fp_line (start 0.8 0.4) (end 0.8 -0.4) (layer B.Fab) (width 0.025)) (fp_line (start 0.8 -0.4) (end -0.8 -0.4) (layer B.Fab) (width 0.025)) (fp_line (start -0.8 -0.4) (end -0.8 0.4) (layer B.Fab) (width 0.025)) - (fp_line (start -0.8 0.645) (end 0.8 0.645) (layer B.SilkS) (width 0.12)) - (fp_line (start 0.8 -0.645) (end -0.8 -0.645) (layer B.SilkS) (width 0.12)) - (fp_line (start -1.465 0.715) (end 1.465 0.715) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.465 0.715) (end 1.465 -0.715) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.465 -0.715) (end -1.465 -0.715) (layer B.CrtYd) (width 0.05)) - (fp_line (start -1.465 -0.715) (end -1.465 0.715) (layer B.CrtYd) (width 0.05)) - (pad 1 smd rect (at -0.77 0) (size 0.89 0.93) (layers 4_bot B.Paste B.Mask) + (fp_line (start -0.145 -0.46) (end 0.145 -0.46) (layer B.SilkS) (width 0.12)) + (fp_line (start 0.145 0.46) (end -0.145 0.46) (layer B.SilkS) (width 0.12)) + (fp_line (start -1.365 0.665) (end 1.365 0.665) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.365 0.665) (end 1.365 -0.665) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.365 -0.665) (end -1.365 -0.665) (layer B.CrtYd) (width 0.05)) + (fp_line (start -1.365 -0.665) (end -1.365 0.665) (layer B.CrtYd) (width 0.05)) + (pad 1 smd rect (at -0.745 0) (size 0.84 0.93) (layers 4_bot B.Paste B.Mask) (net 79 "Net-(C25-Pad1)")) - (pad 2 smd rect (at 0.77 0) (size 0.89 0.93) (layers 4_bot B.Paste B.Mask) + (pad 2 smd rect (at 0.745 0) (size 0.84 0.93) (layers 4_bot B.Paste B.Mask) (net 90 /audio/MIC)) - (model Capacitors_SMD.3dshapes/C_0603.wrl + (model ${KISYS3DMOD}/Capacitor_SMD.3dshapes/C_0603_1608Metric.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module ipc_capc:IPC_CAPC1608X90L35N (layer 4_bot) (tedit 58FD8839) (tstamp 58EB027B) + (module ipc_capc:IPC_CAPC160X80X90L35N (layer 4_bot) (tedit 5BD22CF9) (tstamp 5BD11B51) (at 97.2 148.5 270) (path /53A9129D/58D0DFA2) (attr smd) @@ -2978,21 +3433,24 @@ (fp_text value 1U (at 0 0 270) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) + (fp_text user %R (at 0 0 270) (layer B.Fab) + (effects (font (size 0.45 0.45) (thickness 0.025)) (justify mirror)) + ) (fp_line (start -0.8 0.4) (end 0.8 0.4) (layer B.Fab) (width 0.025)) (fp_line (start 0.8 0.4) (end 0.8 -0.4) (layer B.Fab) (width 0.025)) (fp_line (start 0.8 -0.4) (end -0.8 -0.4) (layer B.Fab) (width 0.025)) (fp_line (start -0.8 -0.4) (end -0.8 0.4) (layer B.Fab) (width 0.025)) - (fp_line (start -0.8 0.645) (end 0.8 0.645) (layer B.SilkS) (width 0.12)) - (fp_line (start 0.8 -0.645) (end -0.8 -0.645) (layer B.SilkS) (width 0.12)) - (fp_line (start -1.465 0.715) (end 1.465 0.715) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.465 0.715) (end 1.465 -0.715) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.465 -0.715) (end -1.465 -0.715) (layer B.CrtYd) (width 0.05)) - (fp_line (start -1.465 -0.715) (end -1.465 0.715) (layer B.CrtYd) (width 0.05)) - (pad 1 smd rect (at -0.77 0 270) (size 0.89 0.93) (layers 4_bot B.Paste B.Mask) + (fp_line (start -0.145 -0.46) (end 0.145 -0.46) (layer B.SilkS) (width 0.12)) + (fp_line (start 0.145 0.46) (end -0.145 0.46) (layer B.SilkS) (width 0.12)) + (fp_line (start -1.365 0.665) (end 1.365 0.665) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.365 0.665) (end 1.365 -0.665) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.365 -0.665) (end -1.365 -0.665) (layer B.CrtYd) (width 0.05)) + (fp_line (start -1.365 -0.665) (end -1.365 0.665) (layer B.CrtYd) (width 0.05)) + (pad 1 smd rect (at -0.745 0 270) (size 0.84 0.93) (layers 4_bot B.Paste B.Mask) (net 121 +3V3)) - (pad 2 smd rect (at 0.77 0 270) (size 0.89 0.93) (layers 4_bot B.Paste B.Mask) + (pad 2 smd rect (at 0.745 0 270) (size 0.84 0.93) (layers 4_bot B.Paste B.Mask) (net 47 GND)) - (model Capacitors_SMD.3dshapes/C_0603.wrl + (model ${KISYS3DMOD}/Capacitor_SMD.3dshapes/C_0603_1608Metric.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) @@ -3077,7 +3535,7 @@ (net 93 "Net-(TP1-Pad1)")) ) - (module ipc_resc:IPC_RESC1608X55L25N (layer 4_bot) (tedit 58FD8BDE) (tstamp 58EB03F2) + (module ipc_resc:IPC_RESC160X80X55L25N (layer 4_bot) (tedit 5BD22B80) (tstamp 5BD11D61) (at 148.4 105.4 90) (path /53A8BFC3/53A8C26A) (attr smd) @@ -3087,28 +3545,31 @@ (fp_text value 33R (at 0 0 90) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) - (fp_line (start -0.8 0.4) (end 0.8 0.4) (layer B.Fab) (width 0.025)) - (fp_line (start 0.8 0.4) (end 0.8 -0.4) (layer B.Fab) (width 0.025)) - (fp_line (start 0.8 -0.4) (end -0.8 -0.4) (layer B.Fab) (width 0.025)) + (fp_line (start -1.365 -0.665) (end -1.365 0.665) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.365 -0.665) (end -1.365 -0.665) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.365 0.665) (end 1.365 -0.665) (layer B.CrtYd) (width 0.05)) + (fp_line (start -1.365 0.665) (end 1.365 0.665) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.245 0.46) (end -0.245 0.46) (layer B.SilkS) (width 0.12)) + (fp_line (start -0.245 -0.46) (end 0.245 -0.46) (layer B.SilkS) (width 0.12)) (fp_line (start -0.8 -0.4) (end -0.8 0.4) (layer B.Fab) (width 0.025)) - (fp_line (start -0.8 0.645) (end 0.8 0.645) (layer B.SilkS) (width 0.12)) - (fp_line (start 0.8 -0.645) (end -0.8 -0.645) (layer B.SilkS) (width 0.12)) - (fp_line (start -1.465 0.715) (end 1.465 0.715) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.465 0.715) (end 1.465 -0.715) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.465 -0.715) (end -1.465 -0.715) (layer B.CrtYd) (width 0.05)) - (fp_line (start -1.465 -0.715) (end -1.465 0.715) (layer B.CrtYd) (width 0.05)) - (pad 1 smd rect (at -0.82 0 90) (size 0.79 0.93) (layers 4_bot B.Paste B.Mask) - (net 78 "Net-(C23-Pad2)")) - (pad 2 smd rect (at 0.82 0 90) (size 0.79 0.93) (layers 4_bot B.Paste B.Mask) + (fp_line (start 0.8 -0.4) (end -0.8 -0.4) (layer B.Fab) (width 0.025)) + (fp_line (start 0.8 0.4) (end 0.8 -0.4) (layer B.Fab) (width 0.025)) + (fp_line (start -0.8 0.4) (end 0.8 0.4) (layer B.Fab) (width 0.025)) + (fp_text user %R (at 0 0 90) (layer B.Fab) + (effects (font (size 0.45 0.45) (thickness 0.025)) (justify mirror)) + ) + (pad 2 smd rect (at 0.795 0 90) (size 0.74 0.93) (layers 4_bot B.Paste B.Mask) (net 47 GND)) - (model Resistors_SMD.3dshapes/R_0603.wrl + (pad 1 smd rect (at -0.795 0 90) (size 0.74 0.93) (layers 4_bot B.Paste B.Mask) + (net 78 "Net-(C23-Pad2)")) + (model ${KISYS3DMOD}/Resistor_SMD.3dshapes/R_0603_1608Metric.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module ipc_resc:IPC_RESC1608X55L25N (layer 4_bot) (tedit 58FD8BF7) (tstamp 58EB03E3) + (module ipc_resc:IPC_RESC160X80X55L25N (layer 4_bot) (tedit 5BD22B7C) (tstamp 5BD11D51) (at 146.05 105.4 90) (path /53A8BFC3/53A8C264) (attr smd) @@ -3118,21 +3579,24 @@ (fp_text value 33R (at 0 0 90) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) + (fp_text user %R (at 0 0 90) (layer B.Fab) + (effects (font (size 0.45 0.45) (thickness 0.025)) (justify mirror)) + ) (fp_line (start -0.8 0.4) (end 0.8 0.4) (layer B.Fab) (width 0.025)) (fp_line (start 0.8 0.4) (end 0.8 -0.4) (layer B.Fab) (width 0.025)) (fp_line (start 0.8 -0.4) (end -0.8 -0.4) (layer B.Fab) (width 0.025)) (fp_line (start -0.8 -0.4) (end -0.8 0.4) (layer B.Fab) (width 0.025)) - (fp_line (start -0.8 0.645) (end 0.8 0.645) (layer B.SilkS) (width 0.12)) - (fp_line (start 0.8 -0.645) (end -0.8 -0.645) (layer B.SilkS) (width 0.12)) - (fp_line (start -1.465 0.715) (end 1.465 0.715) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.465 0.715) (end 1.465 -0.715) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.465 -0.715) (end -1.465 -0.715) (layer B.CrtYd) (width 0.05)) - (fp_line (start -1.465 -0.715) (end -1.465 0.715) (layer B.CrtYd) (width 0.05)) - (pad 1 smd rect (at -0.82 0 90) (size 0.79 0.93) (layers 4_bot B.Paste B.Mask) + (fp_line (start -0.245 -0.46) (end 0.245 -0.46) (layer B.SilkS) (width 0.12)) + (fp_line (start 0.245 0.46) (end -0.245 0.46) (layer B.SilkS) (width 0.12)) + (fp_line (start -1.365 0.665) (end 1.365 0.665) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.365 0.665) (end 1.365 -0.665) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.365 -0.665) (end -1.365 -0.665) (layer B.CrtYd) (width 0.05)) + (fp_line (start -1.365 -0.665) (end -1.365 0.665) (layer B.CrtYd) (width 0.05)) + (pad 1 smd rect (at -0.795 0 90) (size 0.74 0.93) (layers 4_bot B.Paste B.Mask) (net 92 "Net-(C22-Pad2)")) - (pad 2 smd rect (at 0.82 0 90) (size 0.79 0.93) (layers 4_bot B.Paste B.Mask) + (pad 2 smd rect (at 0.795 0 90) (size 0.74 0.93) (layers 4_bot B.Paste B.Mask) (net 47 GND)) - (model Resistors_SMD.3dshapes/R_0603.wrl + (model ${KISYS3DMOD}/Resistor_SMD.3dshapes/R_0603_1608Metric.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) @@ -3181,10 +3645,10 @@ (solder_mask_margin 0.8255) (clearance 1.0795)) ) - (module hole:HOLE_3200UM_VIAS locked (layer 1_top) (tedit 53AA3E1E) (tstamp 53AA27FC) + (module hole:HOLE_3200UM_VIAS locked (layer 1_top) (tedit 5BD2303B) (tstamp 53AA27FC) (at 64 104) (path /5369BC14) - (fp_text reference H5 (at 0 0) (layer F.SilkS) + (fp_text reference H5 (at 0 0) (layer F.SilkS) hide (effects (font (size 0.6096 0.6096) (thickness 0.12))) ) (fp_text value HOLE1 (at 0 0) (layer F.SilkS) @@ -3210,10 +3674,10 @@ (net 47 GND)) ) - (module hole:HOLE_3200UM_VIAS locked (layer 1_top) (tedit 53AA3E1E) (tstamp 53AA27EF) + (module hole:HOLE_3200UM_VIAS locked (layer 1_top) (tedit 5BD2304A) (tstamp 53AA27EF) (at 64 171) (path /5369BC00) - (fp_text reference H4 (at 0 0) (layer F.SilkS) + (fp_text reference H4 (at 0 0) (layer F.SilkS) hide (effects (font (size 0.6096 0.6096) (thickness 0.12))) ) (fp_text value HOLE1 (at 0 0) (layer F.SilkS) @@ -3239,10 +3703,10 @@ (net 47 GND)) ) - (module hole:HOLE_3200UM_VIAS locked (layer 1_top) (tedit 53AA3E1E) (tstamp 53AA27E2) + (module hole:HOLE_3200UM_VIAS locked (layer 1_top) (tedit 5BD23045) (tstamp 53AA27E2) (at 176 171) (path /5369BBEC) - (fp_text reference H3 (at 0 0) (layer F.SilkS) + (fp_text reference H3 (at 0 0) (layer F.SilkS) hide (effects (font (size 0.6096 0.6096) (thickness 0.12))) ) (fp_text value HOLE1 (at 0 0) (layer F.SilkS) @@ -3268,10 +3732,10 @@ (net 47 GND)) ) - (module hole:HOLE_3200UM_VIAS locked (layer 1_top) (tedit 53AA3E1E) (tstamp 53AA27D5) + (module hole:HOLE_3200UM_VIAS locked (layer 1_top) (tedit 5BD23040) (tstamp 53AA27D5) (at 176 104) (path /5369BBD8) - (fp_text reference H2 (at 0 0) (layer F.SilkS) + (fp_text reference H2 (at 0 0) (layer F.SilkS) hide (effects (font (size 0.6096 0.6096) (thickness 0.12))) ) (fp_text value HOLE1 (at 0 0) (layer F.SilkS) @@ -3297,97 +3761,107 @@ (net 47 GND)) ) - (module ipc_capc:IPC_CAPC2012X135L45N (layer 4_bot) (tedit 58FD8B18) (tstamp 58F1AEDB) + (module ipc_capc:IPC_CAPC200X125X135L45N (layer 4_bot) (tedit 5BD22C03) (tstamp 5BD11A99) (at 173.65 121.85 90) (path /58CFF3E3/58F1AC44) + (attr smd) (fp_text reference C1 (at -0.05 2.85 90) (layer B.SilkS) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) (fp_text value 1U (at 0 0 90) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) + (fp_text user %R (at 0 0 90) (layer B.Fab) + (effects (font (size 0.6 0.6) (thickness 0.025)) (justify mirror)) + ) (fp_line (start -1 0.625) (end 1 0.625) (layer B.Fab) (width 0.025)) (fp_line (start 1 0.625) (end 1 -0.625) (layer B.Fab) (width 0.025)) (fp_line (start 1 -0.625) (end -1 -0.625) (layer B.Fab) (width 0.025)) (fp_line (start -1 -0.625) (end -1 0.625) (layer B.Fab) (width 0.025)) - (fp_line (start -1 0.87) (end 1 0.87) (layer B.SilkS) (width 0.12)) - (fp_line (start 1 -0.87) (end -1 -0.87) (layer B.SilkS) (width 0.12)) - (fp_line (start -1.665 0.94) (end 1.665 0.94) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.665 0.94) (end 1.665 -0.94) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.665 -0.94) (end -1.665 -0.94) (layer B.CrtYd) (width 0.05)) - (fp_line (start -1.665 -0.94) (end -1.665 0.94) (layer B.CrtYd) (width 0.05)) - (pad 1 smd rect (at -0.89 0 90) (size 1.05 1.38) (layers 4_bot B.Paste B.Mask) + (fp_line (start -0.185 -0.685) (end 0.185 -0.685) (layer B.SilkS) (width 0.12)) + (fp_line (start 0.185 0.685) (end -0.185 0.685) (layer B.SilkS) (width 0.12)) + (fp_line (start -1.565 0.89) (end 1.565 0.89) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.565 0.89) (end 1.565 -0.89) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.565 -0.89) (end -1.565 -0.89) (layer B.CrtYd) (width 0.05)) + (fp_line (start -1.565 -0.89) (end -1.565 0.89) (layer B.CrtYd) (width 0.05)) + (pad 1 smd rect (at -0.865 0 90) (size 1 1.38) (layers 4_bot B.Paste B.Mask) (net 99 /hackrf_if/VBUS)) - (pad 2 smd rect (at 0.89 0 90) (size 1.05 1.38) (layers 4_bot B.Paste B.Mask) + (pad 2 smd rect (at 0.865 0 90) (size 1 1.38) (layers 4_bot B.Paste B.Mask) (net 47 GND)) - (model Capacitors_SMD.3dshapes/C_0805.wrl + (model ${KISYS3DMOD}/Capacitor_SMD.3dshapes/C_0805_2012Metric.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module ipc_capc:IPC_CAPC2012X135L45N (layer 4_bot) (tedit 58FD902D) (tstamp 58F1AEE7) + (module ipc_capc:IPC_CAPC200X125X135L45N (layer 4_bot) (tedit 5BD22BFB) (tstamp 5BD11B71) (at 170.6 120 90) (path /58CFF3E3/58F1AE50) + (attr smd) (fp_text reference C16 (at 1 2.35 90) (layer B.SilkS) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) (fp_text value 4U7 (at 0 0 90) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) - (fp_line (start -1 0.625) (end 1 0.625) (layer B.Fab) (width 0.025)) - (fp_line (start 1 0.625) (end 1 -0.625) (layer B.Fab) (width 0.025)) - (fp_line (start 1 -0.625) (end -1 -0.625) (layer B.Fab) (width 0.025)) + (fp_line (start -1.565 -0.89) (end -1.565 0.89) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.565 -0.89) (end -1.565 -0.89) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.565 0.89) (end 1.565 -0.89) (layer B.CrtYd) (width 0.05)) + (fp_line (start -1.565 0.89) (end 1.565 0.89) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.185 0.685) (end -0.185 0.685) (layer B.SilkS) (width 0.12)) + (fp_line (start -0.185 -0.685) (end 0.185 -0.685) (layer B.SilkS) (width 0.12)) (fp_line (start -1 -0.625) (end -1 0.625) (layer B.Fab) (width 0.025)) - (fp_line (start -1 0.87) (end 1 0.87) (layer B.SilkS) (width 0.12)) - (fp_line (start 1 -0.87) (end -1 -0.87) (layer B.SilkS) (width 0.12)) - (fp_line (start -1.665 0.94) (end 1.665 0.94) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.665 0.94) (end 1.665 -0.94) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.665 -0.94) (end -1.665 -0.94) (layer B.CrtYd) (width 0.05)) - (fp_line (start -1.665 -0.94) (end -1.665 0.94) (layer B.CrtYd) (width 0.05)) - (pad 1 smd rect (at -0.89 0 90) (size 1.05 1.38) (layers 4_bot B.Paste B.Mask) - (net 72 /power/AUDIO_SVDD)) - (pad 2 smd rect (at 0.89 0 90) (size 1.05 1.38) (layers 4_bot B.Paste B.Mask) + (fp_line (start 1 -0.625) (end -1 -0.625) (layer B.Fab) (width 0.025)) + (fp_line (start 1 0.625) (end 1 -0.625) (layer B.Fab) (width 0.025)) + (fp_line (start -1 0.625) (end 1 0.625) (layer B.Fab) (width 0.025)) + (fp_text user %R (at 0 0 90) (layer B.Fab) + (effects (font (size 0.6 0.6) (thickness 0.025)) (justify mirror)) + ) + (pad 2 smd rect (at 0.865 0 90) (size 1 1.38) (layers 4_bot B.Paste B.Mask) (net 47 GND)) - (model Capacitors_SMD.3dshapes/C_0805.wrl + (pad 1 smd rect (at -0.865 0 90) (size 1 1.38) (layers 4_bot B.Paste B.Mask) + (net 72 /power/AUDIO_SVDD)) + (model ${KISYS3DMOD}/Capacitor_SMD.3dshapes/C_0805_2012Metric.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module ipc_resc:IPC_RESC1005X40L25N (layer 4_bot) (tedit 58FD8AE6) (tstamp 58F45929) + (module ipc_resc:IPC_RESC100X50X40L25N (layer 4_bot) (tedit 5BD22C16) (tstamp 5BD11D71) (at 166.8 125.15 90) (path /58CFF3E3/58F4495E) + (attr smd) (fp_text reference R13 (at -1.75 -1.6 90) (layer B.SilkS) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) (fp_text value 10K (at 0 0 90) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) - (fp_line (start -0.5 0.25) (end 0.5 0.25) (layer B.Fab) (width 0.025)) - (fp_line (start 0.5 0.25) (end 0.5 -0.25) (layer B.Fab) (width 0.025)) - (fp_line (start 0.5 -0.25) (end -0.5 -0.25) (layer B.Fab) (width 0.025)) + (fp_line (start -0.9 -0.44) (end -0.9 0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.9 -0.44) (end -0.9 -0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.9 0.44) (end 0.9 -0.44) (layer B.CrtYd) (width 0.05)) + (fp_line (start -0.9 0.44) (end 0.9 0.44) (layer B.CrtYd) (width 0.05)) (fp_line (start -0.5 -0.25) (end -0.5 0.25) (layer B.Fab) (width 0.025)) - (fp_line (start -0.5 0.48) (end 0.5 0.48) (layer B.SilkS) (width 0.12)) - (fp_line (start 0.5 -0.48) (end -0.5 -0.48) (layer B.SilkS) (width 0.12)) - (fp_line (start -0.85 0.54) (end 0.85 0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start 0.85 0.54) (end 0.85 -0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start 0.85 -0.54) (end -0.85 -0.54) (layer B.CrtYd) (width 0.05)) - (fp_line (start -0.85 -0.54) (end -0.85 0.54) (layer B.CrtYd) (width 0.05)) - (pad 1 smd rect (at -0.43 0 90) (size 0.54 0.6) (layers 4_bot B.Paste B.Mask) - (net 72 /power/AUDIO_SVDD)) - (pad 2 smd rect (at 0.43 0 90) (size 0.54 0.6) (layers 4_bot B.Paste B.Mask) + (fp_line (start 0.5 -0.25) (end -0.5 -0.25) (layer B.Fab) (width 0.025)) + (fp_line (start 0.5 0.25) (end 0.5 -0.25) (layer B.Fab) (width 0.025)) + (fp_line (start -0.5 0.25) (end 0.5 0.25) (layer B.Fab) (width 0.025)) + (fp_text user %R (at 0 0 90) (layer B.Fab) + (effects (font (size 0.3 0.3) (thickness 0.025)) (justify mirror)) + ) + (pad 2 smd rect (at 0.46 0 90) (size 0.58 0.58) (layers 4_bot B.Paste B.Mask) (net 107 "Net-(R13-Pad2)")) - (model Resistors_SMD.3dshapes/R_0402.wrl + (pad 1 smd rect (at -0.46 0 90) (size 0.58 0.58) (layers 4_bot B.Paste B.Mask) + (net 72 /power/AUDIO_SVDD)) + (model ${KISYS3DMOD}/Resistor_SMD.3dshapes/R_0402_1005Metric.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module ipc_capc:IPC_CAPC2012X135L45N (layer 4_bot) (tedit 58FD88B7) (tstamp 58EB032F) + (module ipc_capc:IPC_CAPC200X125X135L45N (layer 4_bot) (tedit 5B60D756) (tstamp 5BD11C25) (at 114.1 139.9) (path /53A8C780/53A8D5C8) (attr smd) @@ -3397,326 +3871,31 @@ (fp_text value 10U (at 0 0) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) - (fp_line (start -1 0.625) (end 1 0.625) (layer B.Fab) (width 0.025)) - (fp_line (start 1 0.625) (end 1 -0.625) (layer B.Fab) (width 0.025)) - (fp_line (start 1 -0.625) (end -1 -0.625) (layer B.Fab) (width 0.025)) + (fp_line (start -1.565 -0.89) (end -1.565 0.89) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.565 -0.89) (end -1.565 -0.89) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.565 0.89) (end 1.565 -0.89) (layer B.CrtYd) (width 0.05)) + (fp_line (start -1.565 0.89) (end 1.565 0.89) (layer B.CrtYd) (width 0.05)) + (fp_line (start 0.185 0.685) (end -0.185 0.685) (layer B.SilkS) (width 0.12)) + (fp_line (start -0.185 -0.685) (end 0.185 -0.685) (layer B.SilkS) (width 0.12)) (fp_line (start -1 -0.625) (end -1 0.625) (layer B.Fab) (width 0.025)) - (fp_line (start -1 0.87) (end 1 0.87) (layer B.SilkS) (width 0.12)) - (fp_line (start 1 -0.87) (end -1 -0.87) (layer B.SilkS) (width 0.12)) - (fp_line (start -1.665 0.94) (end 1.665 0.94) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.665 0.94) (end 1.665 -0.94) (layer B.CrtYd) (width 0.05)) - (fp_line (start 1.665 -0.94) (end -1.665 -0.94) (layer B.CrtYd) (width 0.05)) - (fp_line (start -1.665 -0.94) (end -1.665 0.94) (layer B.CrtYd) (width 0.05)) - (pad 1 smd rect (at -0.89 0) (size 1.05 1.38) (layers 4_bot B.Paste B.Mask) - (net 121 +3V3)) - (pad 2 smd rect (at 0.89 0) (size 1.05 1.38) (layers 4_bot B.Paste B.Mask) + (fp_line (start 1 -0.625) (end -1 -0.625) (layer B.Fab) (width 0.025)) + (fp_line (start 1 0.625) (end 1 -0.625) (layer B.Fab) (width 0.025)) + (fp_line (start -1 0.625) (end 1 0.625) (layer B.Fab) (width 0.025)) + (fp_text user %R (at 0 0) (layer B.Fab) + (effects (font (size 0.6 0.6) (thickness 0.025)) (justify mirror)) + ) + (pad 2 smd rect (at 0.865 0) (size 1 1.38) (layers 4_bot B.Paste B.Mask) (net 47 GND)) - (model Capacitors_SMD.3dshapes/C_0805.wrl + (pad 1 smd rect (at -0.865 0) (size 1 1.38) (layers 4_bot B.Paste B.Mask) + (net 121 +3V3)) + (model ${KISYS3DMOD}/Capacitor_SMD.3dshapes/C_0805_2012Metric.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module header:HEADER_11X2_REV_SM_254_AP locked (layer 4_bot) (tedit 5919730F) (tstamp 53AA299C) - (at 123.5 143.25) - (descr "MLE TSHSM-1") - (path /53A8C780/53A8CDBE) - (attr smd) - (fp_text reference P28 (at 3.6 14.85) (layer B.SilkS) - (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) - ) - (fp_text value HACKRF_ONE_P28 (at 0 0) (layer B.Fab) - (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) - ) - (fp_line (start -2.5 13.97) (end -2.5 13.39) (layer B.SilkS) (width 0.12)) - (fp_line (start -2.5 12.01) (end -2.5 10.85) (layer B.SilkS) (width 0.12)) - (fp_line (start 2.5 13.97) (end 2.5 13.39) (layer B.SilkS) (width 0.12)) - (fp_line (start -4.82 14.47) (end 4.82 14.47) (layer B.CrtYd) (width 0.05)) - (fp_line (start -4.82 -14.47) (end -4.82 14.47) (layer B.CrtYd) (width 0.05)) - (fp_line (start 4.82 -14.47) (end -4.82 -14.47) (layer B.CrtYd) (width 0.05)) - (fp_line (start 4.82 14.47) (end 4.82 -14.47) (layer B.CrtYd) (width 0.05)) - (fp_circle (center 3.025 14) (end 2.9 14) (layer B.SilkS) (width 0.25)) - (fp_line (start -2.5 13.97) (end 2.5 13.97) (layer B.SilkS) (width 0.12)) - (fp_line (start 2.5 -13.97) (end -2.5 -13.97) (layer B.SilkS) (width 0.12)) - (fp_line (start -2.5 13.97) (end 2.5 13.97) (layer B.Fab) (width 0.025)) - (fp_line (start 2.5 13.97) (end 2.5 -13.97) (layer B.Fab) (width 0.025)) - (fp_line (start 2.5 -13.97) (end -2.5 -13.97) (layer B.Fab) (width 0.025)) - (fp_line (start -2.5 -13.97) (end -2.5 13.97) (layer B.Fab) (width 0.025)) - (fp_line (start 2.5 12.01) (end 2.5 10.85) (layer B.SilkS) (width 0.12)) - (fp_line (start -2.5 9.47) (end -2.5 8.31) (layer B.SilkS) (width 0.12)) - (fp_line (start 2.5 9.47) (end 2.5 8.31) (layer B.SilkS) (width 0.12)) - (fp_line (start -2.5 6.93) (end -2.5 5.77) (layer B.SilkS) (width 0.12)) - (fp_line (start 2.5 6.93) (end 2.5 5.77) (layer B.SilkS) (width 0.12)) - (fp_line (start -2.5 4.39) (end -2.5 3.23) (layer B.SilkS) (width 0.12)) - (fp_line (start 2.5 4.39) (end 2.5 3.23) (layer B.SilkS) (width 0.12)) - (fp_line (start -2.5 1.85) (end -2.5 0.69) (layer B.SilkS) (width 0.12)) - (fp_line (start 2.5 1.85) (end 2.5 0.69) (layer B.SilkS) (width 0.12)) - (fp_line (start -2.5 -0.69) (end -2.5 -1.85) (layer B.SilkS) (width 0.12)) - (fp_line (start 2.5 -0.69) (end 2.5 -1.85) (layer B.SilkS) (width 0.12)) - (fp_line (start -2.5 -3.23) (end -2.5 -4.39) (layer B.SilkS) (width 0.12)) - (fp_line (start 2.5 -3.23) (end 2.5 -4.39) (layer B.SilkS) (width 0.12)) - (fp_line (start -2.5 -5.77) (end -2.5 -6.93) (layer B.SilkS) (width 0.12)) - (fp_line (start 2.5 -5.77) (end 2.5 -6.93) (layer B.SilkS) (width 0.12)) - (fp_line (start -2.5 -8.31) (end -2.5 -9.47) (layer B.SilkS) (width 0.12)) - (fp_line (start 2.5 -8.31) (end 2.5 -9.47) (layer B.SilkS) (width 0.12)) - (fp_line (start -2.5 -10.85) (end -2.5 -12.01) (layer B.SilkS) (width 0.12)) - (fp_line (start 2.5 -10.85) (end 2.5 -12.01) (layer B.SilkS) (width 0.12)) - (fp_line (start -2.5 -13.39) (end -2.5 -13.97) (layer B.SilkS) (width 0.12)) - (fp_line (start 2.5 -13.39) (end 2.5 -13.97) (layer B.SilkS) (width 0.12)) - (pad 2 smd rect (at -2.73 12.7) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) - (net 47 GND)) - (pad 1 smd rect (at 2.73 12.7) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) - (net 121 +3V3)) - (pad 4 smd rect (at -2.73 10.16) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) - (net 34 /hackrf_if/SD_DAT3)) - (pad 3 smd rect (at 2.73 10.16) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) - (net 28 /hackrf_if/SD_CD)) - (pad 6 smd rect (at -2.73 7.62) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) - (net 32 /hackrf_if/SD_DAT1)) - (pad 5 smd rect (at 2.73 7.62) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) - (net 33 /hackrf_if/SD_DAT2)) - (pad 8 smd rect (at -2.73 5.08) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) - (net 63 /hackrf_if/PP_CPLD_TMS)) - (pad 7 smd rect (at 2.73 5.08) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) - (net 31 /hackrf_if/SD_DAT0)) - (pad 10 smd rect (at -2.73 2.54) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) - (net 64 /hackrf_if/PP_CPLD_TDO)) - (pad 9 smd rect (at 2.73 2.54) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) - (net 30 /hackrf_if/SD_CMD)) - (pad 12 smd rect (at -2.73 0) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) - (net 47 GND)) - (pad 11 smd rect (at 2.73 0) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) - (net 29 /hackrf_if/SD_CLK)) - (pad 14 smd rect (at -2.73 -2.54) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask)) - (pad 13 smd rect (at 2.73 -2.54) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask)) - (pad 16 smd rect (at -2.73 -5.08) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask)) - (pad 15 smd rect (at 2.73 -5.08) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask)) - (pad 18 smd rect (at -2.73 -7.62) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask)) - (pad 17 smd rect (at 2.73 -7.62) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) - (net 65 /hackrf_if/H1_CPLD_TCK)) - (pad 20 smd rect (at -2.73 -10.16) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask)) - (pad 19 smd rect (at 2.73 -10.16) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) - (net 85 /hackrf_if/I2S0_RX_SDA)) - (pad 22 smd rect (at -2.73 -12.7) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask)) - (pad 21 smd rect (at 2.73 -12.7) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask)) - (pad "" np_thru_hole circle (at 0 11.43) (size 1.95 1.95) (drill 1.95) (layers *.Cu *.Mask) - (clearance 0.4)) - (pad "" np_thru_hole circle (at 0 -11.43) (size 1.95 1.95) (drill 1.95) (layers *.Cu *.Mask) - (clearance 0.4)) - (model ${KISBLIB}/header.pretty/TSM-111-01-L-DV-A-P-TR.wrl - (offset (xyz 0 0 2.539999961853027)) - (scale (xyz 1 1 1)) - (rotate (xyz -90 0 90)) - ) - ) - - (module header:HEADER_11X2_REV_SM_254_AP locked (layer 4_bot) (tedit 5919731F) (tstamp 53AA295A) - (at 171.76 143.25) - (descr "MLE TSHSM-1") - (path /53A8C780/53A8CDAE) - (attr smd) - (fp_text reference P20 (at 4.34 14.05) (layer B.SilkS) - (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) - ) - (fp_text value HACKRF_ONE_P20 (at 0 0) (layer B.Fab) - (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) - ) - (fp_line (start -2.5 13.97) (end -2.5 13.39) (layer B.SilkS) (width 0.12)) - (fp_line (start -2.5 12.01) (end -2.5 10.85) (layer B.SilkS) (width 0.12)) - (fp_line (start 2.5 13.97) (end 2.5 13.39) (layer B.SilkS) (width 0.12)) - (fp_line (start -4.82 14.47) (end 4.82 14.47) (layer B.CrtYd) (width 0.05)) - (fp_line (start -4.82 -14.47) (end -4.82 14.47) (layer B.CrtYd) (width 0.05)) - (fp_line (start 4.82 -14.47) (end -4.82 -14.47) (layer B.CrtYd) (width 0.05)) - (fp_line (start 4.82 14.47) (end 4.82 -14.47) (layer B.CrtYd) (width 0.05)) - (fp_circle (center 3.025 14) (end 2.9 14) (layer B.SilkS) (width 0.25)) - (fp_line (start -2.5 13.97) (end 2.5 13.97) (layer B.SilkS) (width 0.12)) - (fp_line (start 2.5 -13.97) (end -2.5 -13.97) (layer B.SilkS) (width 0.12)) - (fp_line (start -2.5 13.97) (end 2.5 13.97) (layer B.Fab) (width 0.025)) - (fp_line (start 2.5 13.97) (end 2.5 -13.97) (layer B.Fab) (width 0.025)) - (fp_line (start 2.5 -13.97) (end -2.5 -13.97) (layer B.Fab) (width 0.025)) - (fp_line (start -2.5 -13.97) (end -2.5 13.97) (layer B.Fab) (width 0.025)) - (fp_line (start 2.5 12.01) (end 2.5 10.85) (layer B.SilkS) (width 0.12)) - (fp_line (start -2.5 9.47) (end -2.5 8.31) (layer B.SilkS) (width 0.12)) - (fp_line (start 2.5 9.47) (end 2.5 8.31) (layer B.SilkS) (width 0.12)) - (fp_line (start -2.5 6.93) (end -2.5 5.77) (layer B.SilkS) (width 0.12)) - (fp_line (start 2.5 6.93) (end 2.5 5.77) (layer B.SilkS) (width 0.12)) - (fp_line (start -2.5 4.39) (end -2.5 3.23) (layer B.SilkS) (width 0.12)) - (fp_line (start 2.5 4.39) (end 2.5 3.23) (layer B.SilkS) (width 0.12)) - (fp_line (start -2.5 1.85) (end -2.5 0.69) (layer B.SilkS) (width 0.12)) - (fp_line (start 2.5 1.85) (end 2.5 0.69) (layer B.SilkS) (width 0.12)) - (fp_line (start -2.5 -0.69) (end -2.5 -1.85) (layer B.SilkS) (width 0.12)) - (fp_line (start 2.5 -0.69) (end 2.5 -1.85) (layer B.SilkS) (width 0.12)) - (fp_line (start -2.5 -3.23) (end -2.5 -4.39) (layer B.SilkS) (width 0.12)) - (fp_line (start 2.5 -3.23) (end 2.5 -4.39) (layer B.SilkS) (width 0.12)) - (fp_line (start -2.5 -5.77) (end -2.5 -6.93) (layer B.SilkS) (width 0.12)) - (fp_line (start 2.5 -5.77) (end 2.5 -6.93) (layer B.SilkS) (width 0.12)) - (fp_line (start -2.5 -8.31) (end -2.5 -9.47) (layer B.SilkS) (width 0.12)) - (fp_line (start 2.5 -8.31) (end 2.5 -9.47) (layer B.SilkS) (width 0.12)) - (fp_line (start -2.5 -10.85) (end -2.5 -12.01) (layer B.SilkS) (width 0.12)) - (fp_line (start 2.5 -10.85) (end 2.5 -12.01) (layer B.SilkS) (width 0.12)) - (fp_line (start -2.5 -13.39) (end -2.5 -13.97) (layer B.SilkS) (width 0.12)) - (fp_line (start 2.5 -13.39) (end 2.5 -13.97) (layer B.SilkS) (width 0.12)) - (pad 2 smd rect (at -2.73 12.7) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask)) - (pad 1 smd rect (at 2.73 12.7) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) - (net 46 /hackrf_if/VBAT)) - (pad 4 smd rect (at -2.73 10.16) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask)) - (pad 3 smd rect (at 2.73 10.16) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) - (net 121 +3V3)) - (pad 6 smd rect (at -2.73 7.62) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) - (net 49 /hackrf_if/MCU_D1)) - (pad 5 smd rect (at 2.73 7.62) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) - (net 50 /hackrf_if/MCU_D0)) - (pad 8 smd rect (at -2.73 5.08) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) - (net 51 /hackrf_if/MCU_D3)) - (pad 7 smd rect (at 2.73 5.08) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) - (net 52 /hackrf_if/MCU_D2)) - (pad 10 smd rect (at -2.73 2.54) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) - (net 53 /hackrf_if/MCU_D5)) - (pad 9 smd rect (at 2.73 2.54) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) - (net 54 /hackrf_if/MCU_D4)) - (pad 12 smd rect (at -2.73 0) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) - (net 55 /hackrf_if/MCU_D7)) - (pad 11 smd rect (at 2.73 0) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) - (net 56 /hackrf_if/MCU_D6)) - (pad 14 smd rect (at -2.73 -2.54) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) - (net 44 /hackrf_if/TP_R)) - (pad 13 smd rect (at 2.73 -2.54) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) - (net 47 GND)) - (pad 16 smd rect (at -2.73 -5.08) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) - (net 42 /hackrf_if/TP_D)) - (pad 15 smd rect (at 2.73 -5.08) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) - (net 47 GND)) - (pad 18 smd rect (at -2.73 -7.62) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) - (net 43 /hackrf_if/TP_L)) - (pad 17 smd rect (at 2.73 -7.62) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) - (net 100 /hackrf_if/VBUSCTRL)) - (pad 20 smd rect (at -2.73 -10.16) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) - (net 45 /hackrf_if/TP_U)) - (pad 19 smd rect (at 2.73 -10.16) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) - (net 47 GND)) - (pad 22 smd rect (at -2.73 -12.7) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) - (net 72 /power/AUDIO_SVDD)) - (pad 21 smd rect (at 2.73 -12.7) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) - (net 99 /hackrf_if/VBUS)) - (pad "" np_thru_hole circle (at 0 11.43) (size 1.95 1.95) (drill 1.95) (layers *.Cu *.Mask) - (clearance 0.4)) - (pad "" np_thru_hole circle (at 0 -11.43) (size 1.95 1.95) (drill 1.95) (layers *.Cu *.Mask) - (clearance 0.4)) - (model ${KISBLIB}/header.pretty/TSM-111-01-L-DV-A-P-TR.wrl - (offset (xyz 0 0 2.539999961853027)) - (scale (xyz 1 1 1)) - (rotate (xyz -90 0 90)) - ) - ) - - (module header:HEADER_13X2_REV_SM_254_AP locked (layer 4_bot) (tedit 59197333) (tstamp 53AA297D) - (at 152.71 164.84 90) - (descr "MLE TSHSM-1") - (path /53A8C780/53A8CDB6) - (attr smd) - (fp_text reference P22 (at 4.29 16.59 90) (layer B.SilkS) - (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) - ) - (fp_text value HACKRF_ONE_P22 (at 0 0 90) (layer B.Fab) - (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) - ) - (fp_line (start -2.5 14.55) (end -2.5 13.39) (layer B.SilkS) (width 0.12)) - (fp_line (start 2.5 -16.51) (end 2.5 -15.93) (layer B.SilkS) (width 0.12)) - (fp_line (start -2.5 -15.93) (end -2.5 -16.51) (layer B.SilkS) (width 0.12)) - (fp_line (start -4.82 17.01) (end 4.82 17.01) (layer B.CrtYd) (width 0.05)) - (fp_line (start -4.82 -17.01) (end -4.82 17.01) (layer B.CrtYd) (width 0.05)) - (fp_line (start 4.82 -17.01) (end -4.82 -17.01) (layer B.CrtYd) (width 0.05)) - (fp_line (start 4.82 17.01) (end 4.82 -17.01) (layer B.CrtYd) (width 0.05)) - (fp_circle (center 3.025 16.6) (end 2.9 16.6) (layer B.SilkS) (width 0.25)) - (fp_line (start -2.5 16.51) (end 2.5 16.51) (layer B.SilkS) (width 0.12)) - (fp_line (start 2.5 16.51) (end 2.5 15.93) (layer B.SilkS) (width 0.12)) - (fp_line (start 2.5 -16.51) (end -2.5 -16.51) (layer B.SilkS) (width 0.12)) - (fp_line (start -2.5 15.93) (end -2.5 16.51) (layer B.SilkS) (width 0.12)) - (fp_line (start -2.5 16.51) (end 2.5 16.51) (layer B.Fab) (width 0.025)) - (fp_line (start 2.5 16.51) (end 2.5 -16.51) (layer B.Fab) (width 0.025)) - (fp_line (start 2.5 -16.51) (end -2.5 -16.51) (layer B.Fab) (width 0.025)) - (fp_line (start -2.5 -16.51) (end -2.5 16.51) (layer B.Fab) (width 0.025)) - (fp_line (start 2.5 14.55) (end 2.5 13.39) (layer B.SilkS) (width 0.12)) - (fp_line (start -2.5 12.01) (end -2.5 10.85) (layer B.SilkS) (width 0.12)) - (fp_line (start 2.5 12.01) (end 2.5 10.85) (layer B.SilkS) (width 0.12)) - (fp_line (start -2.5 9.47) (end -2.5 8.31) (layer B.SilkS) (width 0.12)) - (fp_line (start 2.5 9.47) (end 2.5 8.31) (layer B.SilkS) (width 0.12)) - (fp_line (start -2.5 6.93) (end -2.5 5.77) (layer B.SilkS) (width 0.12)) - (fp_line (start 2.5 6.93) (end 2.5 5.77) (layer B.SilkS) (width 0.12)) - (fp_line (start -2.5 4.39) (end -2.5 3.23) (layer B.SilkS) (width 0.12)) - (fp_line (start 2.5 4.39) (end 2.5 3.23) (layer B.SilkS) (width 0.12)) - (fp_line (start -2.5 1.85) (end -2.5 0.69) (layer B.SilkS) (width 0.12)) - (fp_line (start 2.5 1.85) (end 2.5 0.69) (layer B.SilkS) (width 0.12)) - (fp_line (start -2.5 -0.69) (end -2.5 -1.85) (layer B.SilkS) (width 0.12)) - (fp_line (start 2.5 -0.69) (end 2.5 -1.85) (layer B.SilkS) (width 0.12)) - (fp_line (start -2.5 -3.23) (end -2.5 -4.39) (layer B.SilkS) (width 0.12)) - (fp_line (start 2.5 -3.23) (end 2.5 -4.39) (layer B.SilkS) (width 0.12)) - (fp_line (start -2.5 -5.77) (end -2.5 -6.93) (layer B.SilkS) (width 0.12)) - (fp_line (start 2.5 -5.77) (end 2.5 -6.93) (layer B.SilkS) (width 0.12)) - (fp_line (start -2.5 -8.31) (end -2.5 -9.47) (layer B.SilkS) (width 0.12)) - (fp_line (start 2.5 -8.31) (end 2.5 -9.47) (layer B.SilkS) (width 0.12)) - (fp_line (start -2.5 -10.85) (end -2.5 -12.01) (layer B.SilkS) (width 0.12)) - (fp_line (start 2.5 -10.85) (end 2.5 -12.01) (layer B.SilkS) (width 0.12)) - (fp_line (start -2.5 -13.39) (end -2.5 -14.55) (layer B.SilkS) (width 0.12)) - (fp_line (start 2.5 -13.39) (end 2.5 -14.55) (layer B.SilkS) (width 0.12)) - (pad 2 smd rect (at -2.73 15.24 90) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) - (net 70 /hackrf_if/CLKIN)) - (pad 1 smd rect (at 2.73 15.24 90) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask)) - (pad 4 smd rect (at -2.73 12.7 90) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) - (net 47 GND)) - (pad 3 smd rect (at 2.73 12.7 90) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) - (net 113 /hackrf_if/RESET#)) - (pad 6 smd rect (at -2.73 10.16 90) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) - (net 57 /hackrf_if/MCU_LCD_TE)) - (pad 5 smd rect (at 2.73 10.16 90) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) - (net 58 /hackrf_if/MCU_LCD_RD)) - (pad 8 smd rect (at -2.73 7.62 90) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask)) - (pad 7 smd rect (at 2.73 7.62 90) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask)) - (pad 10 smd rect (at -2.73 5.08 90) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) - (net 47 GND)) - (pad 9 smd rect (at 2.73 5.08 90) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask)) - (pad 12 smd rect (at -2.73 2.54 90) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask)) - (pad 11 smd rect (at 2.73 2.54 90) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) - (net 121 +3V3)) - (pad 14 smd rect (at -2.73 0 90) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask)) - (pad 13 smd rect (at 2.73 0 90) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) - (net 81 /hackrf_if/I2S0_TX_SDA)) - (pad 16 smd rect (at -2.73 -2.54 90) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) - (net 82 /audio/BICK)) - (pad 15 smd rect (at 2.73 -2.54 90) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) - (net 83 /hackrf_if/I2S0_WS)) - (pad 18 smd rect (at -2.73 -5.08 90) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) - (net 47 GND)) - (pad 17 smd rect (at 2.73 -5.08 90) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) - (net 84 /hackrf_if/I2S0_MCLK)) - (pad 20 smd rect (at -2.73 -7.62 90) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) - (net 59 /hackrf_if/MCU_IO_STBX)) - (pad 19 smd rect (at 2.73 -7.62 90) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) - (net 60 /hackrf_if/MCU_ADDR)) - (pad 22 smd rect (at -2.73 -10.16 90) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) - (net 61 /hackrf_if/MCU_DIR)) - (pad 21 smd rect (at 2.73 -10.16 90) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) - (net 62 /hackrf_if/MCU_LCD_WR)) - (pad 24 smd rect (at -2.73 -12.7 90) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) - (net 4 /audio/SDA)) - (pad 23 smd rect (at 2.73 -12.7 90) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) - (net 27 /hackrf_if/P2_8)) - (pad 26 smd rect (at -2.73 -15.24 90) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask) - (net 3 /audio/SCL)) - (pad 25 smd rect (at 2.73 -15.24 90) (size 3.18 1.02) (layers 4_bot B.Paste B.Mask)) - (pad "" np_thru_hole circle (at 0 13.97 90) (size 1.95 1.95) (drill 1.95) (layers *.Cu *.Mask) - (clearance 0.4)) - (pad "" np_thru_hole circle (at 0 -13.97 90) (size 1.95 1.95) (drill 1.95) (layers *.Cu *.Mask) - (clearance 0.4)) - (model ${KISBLIB}/header.pretty/TSM-113-01-L-DV-A-P-TR.wrl - (offset (xyz 0 0 2.539999961853027)) - (scale (xyz 1 1 1)) - (rotate (xyz -90 0 90)) - ) - ) - - (module ipc_qfp:IPC_QFP65P40_900X900X120L60X18T450N (layer 4_bot) (tedit 59232C2C) (tstamp 58F11820) + (module ipc_qfp:IPC_QFP65P40_900X900X120L60X18T450N (layer 4_bot) (tedit 5BD749F4) (tstamp 58F11820) (at 105 139 225) (path /53A8C780/53A8D11B) (attr smd) @@ -3726,193 +3905,190 @@ (fp_text value 5M40ZE64 (at 0 0 225) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) - (fp_line (start -5.21 5.21) (end 5.21 5.21) (layer B.CrtYd) (width 0.05)) - (fp_line (start 5.21 5.21) (end 5.21 -5.21) (layer B.CrtYd) (width 0.05)) - (fp_line (start 5.21 -5.21) (end -5.21 -5.21) (layer B.CrtYd) (width 0.05)) - (fp_line (start -5.21 -5.21) (end -5.21 5.21) (layer B.CrtYd) (width 0.05)) - (fp_line (start -3.56 3.56) (end -3.56 3.3) (layer B.SilkS) (width 0.12)) - (fp_line (start -3.56 -3.3) (end -3.56 -3.56) (layer B.SilkS) (width 0.12)) - (fp_line (start -3.56 -3.56) (end -3.3 -3.56) (layer B.SilkS) (width 0.12)) - (fp_line (start 3.3 -3.56) (end 3.56 -3.56) (layer B.SilkS) (width 0.12)) - (fp_line (start 3.56 -3.56) (end 3.56 -3.3) (layer B.SilkS) (width 0.12)) - (fp_line (start 3.56 3.3) (end 3.56 3.56) (layer B.SilkS) (width 0.12)) - (fp_line (start 3.56 3.56) (end 3.3 3.56) (layer B.SilkS) (width 0.12)) - (fp_line (start -3.3 3.56) (end -3.56 3.56) (layer B.SilkS) (width 0.12)) - (fp_circle (center -5.33 3) (end -5.205 3) (layer B.SilkS) (width 0.25)) - (fp_line (start -3.5 3.5) (end 3.5 3.5) (layer B.Fab) (width 0.025)) - (fp_line (start 3.5 3.5) (end 3.5 -3.5) (layer B.Fab) (width 0.025)) - (fp_line (start 3.5 -3.5) (end -3.5 -3.5) (layer B.Fab) (width 0.025)) + (fp_text user %R (at 0 0 225) (layer B.Fab) + (effects (font (size 1 1) (thickness 0.025)) (justify mirror)) + ) + (fp_poly (pts (xy 1.1 -1.1) (xy 2.1 -1.1) (xy 2.1 -2.1) (xy 1.1 -2.1)) (layer B.Paste) (width 0)) + (fp_poly (pts (xy -0.5 -1.1) (xy 0.5 -1.1) (xy 0.5 -2.1) (xy -0.5 -2.1)) (layer B.Paste) (width 0)) + (fp_poly (pts (xy -2.1 -1.1) (xy -1.1 -1.1) (xy -1.1 -2.1) (xy -2.1 -2.1)) (layer B.Paste) (width 0)) + (fp_poly (pts (xy -2.1 0.5) (xy -1.1 0.5) (xy -1.1 -0.5) (xy -2.1 -0.5)) (layer B.Paste) (width 0)) + (fp_poly (pts (xy -0.5 0.5) (xy 0.5 0.5) (xy 0.5 -0.5) (xy -0.5 -0.5)) (layer B.Paste) (width 0)) + (fp_poly (pts (xy 1.1 0.5) (xy 2.1 0.5) (xy 2.1 -0.5) (xy 1.1 -0.5)) (layer B.Paste) (width 0)) + (fp_poly (pts (xy 1.1 2.1) (xy 2.1 2.1) (xy 2.1 1.1) (xy 1.1 1.1)) (layer B.Paste) (width 0)) + (fp_poly (pts (xy -0.5 2.1) (xy 0.5 2.1) (xy 0.5 1.1) (xy -0.5 1.1)) (layer B.Paste) (width 0)) + (fp_poly (pts (xy -0.6 0.6) (xy 0.6 0.6) (xy 0.6 -0.6) (xy -0.6 -0.6)) (layer B.Mask) (width 0)) + (fp_poly (pts (xy 1 0.6) (xy 2.2 0.6) (xy 2.2 -0.6) (xy 1 -0.6)) (layer B.Mask) (width 0)) + (fp_poly (pts (xy 1 -1) (xy 2.2 -1) (xy 2.2 -2.2) (xy 1 -2.2)) (layer B.Mask) (width 0)) + (fp_poly (pts (xy -0.6 -1) (xy 0.6 -1) (xy 0.6 -2.2) (xy -0.6 -2.2)) (layer B.Mask) (width 0)) + (fp_poly (pts (xy -2.2 -1) (xy -1 -1) (xy -1 -2.2) (xy -2.2 -2.2)) (layer B.Mask) (width 0)) + (fp_poly (pts (xy -2.2 0.6) (xy -1 0.6) (xy -1 -0.6) (xy -2.2 -0.6)) (layer B.Mask) (width 0)) + (fp_poly (pts (xy 1 2.2) (xy 2.2 2.2) (xy 2.2 1) (xy 1 1)) (layer B.Mask) (width 0)) + (fp_poly (pts (xy -0.6 2.2) (xy 0.6 2.2) (xy 0.6 1) (xy -0.6 1)) (layer B.Mask) (width 0)) + (fp_poly (pts (xy -2.2 2.2) (xy -1 2.2) (xy -1 1) (xy -2.2 1)) (layer B.Mask) (width 0)) (fp_line (start -3.5 -3.5) (end -3.5 3.5) (layer B.Fab) (width 0.025)) - (pad 65 smd rect (at -1.125 -1 225) (size 2.25 1.5) (layers 4_bot B.Paste B.Mask) - (net 47 GND) (solder_paste_margin -0.25)) - (pad 65 smd rect (at 1.125 -1 225) (size 2.25 1.5) (layers 4_bot B.Paste B.Mask) - (net 47 GND) (solder_paste_margin -0.25)) - (pad 65 smd rect (at 1.125 1 225) (size 2.25 1.5) (layers 4_bot B.Paste B.Mask) - (net 47 GND) (solder_paste_margin -0.25)) - (pad 65 smd rect (at -1 -1.125 225) (size 1.5 2.25) (layers 4_bot B.Paste B.Mask) - (net 47 GND) (solder_paste_margin -0.25)) - (pad 65 smd rect (at 1 -1.125 225) (size 1.5 2.25) (layers 4_bot B.Paste B.Mask) - (net 47 GND) (solder_paste_margin -0.25)) - (pad 65 smd rect (at 1 1.125 225) (size 1.5 2.25) (layers 4_bot B.Paste B.Mask) - (net 47 GND) (solder_paste_margin -0.25)) - (pad 65 smd rect (at -1 1.125 225) (size 1.5 2.25) (layers 4_bot B.Paste B.Mask) - (net 47 GND) (solder_paste_margin -0.25)) - (pad 1 smd oval (at -4.18 3 315) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (fp_line (start 3.5 -3.5) (end -3.5 -3.5) (layer B.Fab) (width 0.025)) + (fp_line (start 3.5 3.5) (end 3.5 -3.5) (layer B.Fab) (width 0.025)) + (fp_line (start -3.5 3.5) (end 3.5 3.5) (layer B.Fab) (width 0.025)) + (fp_circle (center -5.33 3) (end -5.205 3) (layer B.SilkS) (width 0.25)) + (fp_line (start -3.3 3.560001) (end -3.56 3.56) (layer B.SilkS) (width 0.12)) + (fp_line (start 3.56 3.56) (end 3.3 3.560001) (layer B.SilkS) (width 0.12)) + (fp_line (start 3.560001 3.3) (end 3.56 3.56) (layer B.SilkS) (width 0.12)) + (fp_line (start 3.56 -3.56) (end 3.560001 -3.3) (layer B.SilkS) (width 0.12)) + (fp_line (start 3.3 -3.560001) (end 3.56 -3.56) (layer B.SilkS) (width 0.12)) + (fp_line (start -3.56 -3.56) (end -3.3 -3.560001) (layer B.SilkS) (width 0.12)) + (fp_line (start -3.560001 -3.3) (end -3.56 -3.56) (layer B.SilkS) (width 0.12)) + (fp_line (start -3.56 3.56) (end -3.560001 3.3) (layer B.SilkS) (width 0.12)) + (fp_line (start -5.21 -5.21) (end -5.21 5.21) (layer B.CrtYd) (width 0.05)) + (fp_line (start 5.21 -5.21) (end -5.21 -5.21) (layer B.CrtYd) (width 0.05)) + (fp_line (start 5.21 5.21) (end 5.21 -5.21) (layer B.CrtYd) (width 0.05)) + (fp_line (start -5.21 5.21) (end 5.21 5.21) (layer B.CrtYd) (width 0.05)) + (fp_poly (pts (xy -2.1 2.1) (xy -1.1 2.1) (xy -1.1 1.1) (xy -2.1 1.1)) (layer B.Paste) (width 0)) + (pad 1 smd rect (at -4.18 3 315) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 42 /hackrf_if/TP_D)) - (pad 2 smd oval (at -4.18 2.6 315) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 2 smd rect (at -4.18 2.6 315) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 43 /hackrf_if/TP_L)) - (pad 3 smd oval (at -4.18 2.2 315) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 3 smd rect (at -4.18 2.2 315) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 45 /hackrf_if/TP_U)) - (pad 4 smd oval (at -4.18 1.8 315) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 4 smd rect (at -4.18 1.8 315) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 80 /hackrf_if/AUDIO_RESET#)) - (pad 5 smd oval (at -4.18 1.4 315) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 5 smd rect (at -4.18 1.4 315) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 126 /hackrf_if/REF_EN)) - (pad 6 smd oval (at -4.18 1 315) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 6 smd rect (at -4.18 1 315) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 121 +3V3)) - (pad 7 smd oval (at -4.18 0.6 315) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 7 smd rect (at -4.18 0.6 315) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 133 /hackrf_if/GPS_RESET#)) - (pad 8 smd oval (at -4.18 0.2 315) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 8 smd rect (at -4.18 0.2 315) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 122 +1V8)) - (pad 9 smd oval (at -4.18 -0.2 315) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 9 smd rect (at -4.18 -0.2 315) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 37 /hackrf_if/SW_R)) - (pad 10 smd oval (at -4.18 -0.6 315) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 10 smd rect (at -4.18 -0.6 315) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 35 /hackrf_if/SW_D)) - (pad 11 smd oval (at -4.18 -1 315) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 11 smd rect (at -4.18 -1 315) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 38 /hackrf_if/SW_ROT_A)) - (pad 12 smd oval (at -4.18 -1.4 315) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 12 smd rect (at -4.18 -1.4 315) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 39 /hackrf_if/SW_ROT_B)) - (pad 13 smd oval (at -4.18 -1.8 315) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 13 smd rect (at -4.18 -1.8 315) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 40 /hackrf_if/SW_SEL)) - (pad 14 smd oval (at -4.18 -2.2 315) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 14 smd rect (at -4.18 -2.2 315) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 63 /hackrf_if/PP_CPLD_TMS)) - (pad 15 smd oval (at -4.18 -2.6 315) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 15 smd rect (at -4.18 -2.6 315) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 85 /hackrf_if/I2S0_RX_SDA)) - (pad 16 smd oval (at -4.18 -3 315) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 16 smd rect (at -4.18 -3 315) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 65 /hackrf_if/H1_CPLD_TCK)) - (pad 17 smd oval (at -3 -4.18 225) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 17 smd rect (at -3 -4.18 225) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 64 /hackrf_if/PP_CPLD_TDO)) - (pad 18 smd oval (at -2.6 -4.18 225) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 18 smd rect (at -2.6 -4.18 225) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 55 /hackrf_if/MCU_D7)) - (pad 19 smd oval (at -2.2 -4.18 225) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 19 smd rect (at -2.2 -4.18 225) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 56 /hackrf_if/MCU_D6)) - (pad 20 smd oval (at -1.8 -4.18 225) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 20 smd rect (at -1.8 -4.18 225) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 54 /hackrf_if/MCU_D4)) - (pad 21 smd oval (at -1.4 -4.18 225) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 21 smd rect (at -1.4 -4.18 225) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 53 /hackrf_if/MCU_D5)) - (pad 22 smd oval (at -1 -4.18 225) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 22 smd rect (at -1 -4.18 225) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 51 /hackrf_if/MCU_D3)) - (pad 23 smd oval (at -0.6 -4.18 225) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 23 smd rect (at -0.6 -4.18 225) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 121 +3V3)) - (pad 24 smd oval (at -0.2 -4.18 225) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 24 smd rect (at -0.2 -4.18 225) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 52 /hackrf_if/MCU_D2)) - (pad 25 smd oval (at 0.2 -4.18 225) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 25 smd rect (at 0.2 -4.18 225) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 41 /hackrf_if/SW_U)) - (pad 26 smd oval (at 0.6 -4.18 225) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 26 smd rect (at 0.6 -4.18 225) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 50 /hackrf_if/MCU_D0)) - (pad 27 smd oval (at 1 -4.18 225) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 27 smd rect (at 1 -4.18 225) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 49 /hackrf_if/MCU_D1)) - (pad 28 smd oval (at 1.4 -4.18 225) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 28 smd rect (at 1.4 -4.18 225) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 36 /hackrf_if/SW_L)) - (pad 29 smd oval (at 1.8 -4.18 225) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 29 smd rect (at 1.8 -4.18 225) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 113 /hackrf_if/RESET#)) - (pad 30 smd oval (at 2.2 -4.18 225) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 30 smd rect (at 2.2 -4.18 225) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 58 /hackrf_if/MCU_LCD_RD)) - (pad 31 smd oval (at 2.6 -4.18 225) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 31 smd rect (at 2.6 -4.18 225) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 57 /hackrf_if/MCU_LCD_TE)) - (pad 32 smd oval (at 3 -4.18 225) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 32 smd rect (at 3 -4.18 225) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 59 /hackrf_if/MCU_IO_STBX)) - (pad 33 smd oval (at 4.18 -3 135) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 33 smd rect (at 4.18 -3 135) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 60 /hackrf_if/MCU_ADDR)) - (pad 34 smd oval (at 4.18 -2.6 135) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 34 smd rect (at 4.18 -2.6 135) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 27 /hackrf_if/P2_8)) - (pad 35 smd oval (at 4.18 -2.2 135) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 35 smd rect (at 4.18 -2.2 135) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 138 /hackrf_if/GPS_TIMEPULSE)) - (pad 36 smd oval (at 4.18 -1.8 135) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 36 smd rect (at 4.18 -1.8 135) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 139 /hackrf_if/GPS_TX_READY)) - (pad 37 smd oval (at 4.18 -1.4 135) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 37 smd rect (at 4.18 -1.4 135) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 5 /hackrf_if/LCD_BACKLIGHT)) - (pad 38 smd oval (at 4.18 -1 135) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 38 smd rect (at 4.18 -1 135) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 23 /hackrf_if/LCD_RESET#)) - (pad 39 smd oval (at 4.18 -0.6 135) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 39 smd rect (at 4.18 -0.6 135) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 122 +1V8)) - (pad 40 smd oval (at 4.18 -0.2 135) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 40 smd rect (at 4.18 -0.2 135) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 62 /hackrf_if/MCU_LCD_WR)) - (pad 41 smd oval (at 4.18 0.2 135) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 41 smd rect (at 4.18 0.2 135) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 122 +1V8)) - (pad 42 smd oval (at 4.18 0.6 135) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 42 smd rect (at 4.18 0.6 135) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 61 /hackrf_if/MCU_DIR)) - (pad 43 smd oval (at 4.18 1 135) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 43 smd rect (at 4.18 1 135) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 13 /hackrf_if/LCD_DB15)) - (pad 44 smd oval (at 4.18 1.4 135) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 44 smd rect (at 4.18 1.4 135) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 12 /hackrf_if/LCD_DB14)) - (pad 45 smd oval (at 4.18 1.8 135) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 45 smd rect (at 4.18 1.8 135) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 11 /hackrf_if/LCD_DB13)) - (pad 46 smd oval (at 4.18 2.2 135) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 46 smd rect (at 4.18 2.2 135) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 10 /hackrf_if/LCD_DB12)) - (pad 47 smd oval (at 4.18 2.6 135) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 47 smd rect (at 4.18 2.6 135) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 9 /hackrf_if/LCD_DB11)) - (pad 48 smd oval (at 4.18 3 135) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 48 smd rect (at 4.18 3 135) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 8 /hackrf_if/LCD_DB10)) - (pad 49 smd oval (at 3 4.18 45) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 49 smd rect (at 3 4.18 45) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 21 /hackrf_if/LCD_DB9)) - (pad 50 smd oval (at 2.6 4.18 45) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 50 smd rect (at 2.6 4.18 45) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 20 /hackrf_if/LCD_DB8)) - (pad 51 smd oval (at 2.2 4.18 45) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 51 smd rect (at 2.2 4.18 45) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 19 /hackrf_if/LCD_DB7)) - (pad 52 smd oval (at 1.8 4.18 45) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 52 smd rect (at 1.8 4.18 45) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 18 /hackrf_if/LCD_DB6)) - (pad 53 smd oval (at 1.4 4.18 45) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 53 smd rect (at 1.4 4.18 45) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 17 /hackrf_if/LCD_DB5)) - (pad 54 smd oval (at 1 4.18 45) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 54 smd rect (at 1 4.18 45) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 16 /hackrf_if/LCD_DB4)) - (pad 55 smd oval (at 0.6 4.18 45) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 55 smd rect (at 0.6 4.18 45) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 15 /hackrf_if/LCD_DB3)) - (pad 56 smd oval (at 0.2 4.18 45) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 56 smd rect (at 0.2 4.18 45) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 14 /hackrf_if/LCD_DB2)) - (pad 57 smd oval (at -0.2 4.18 45) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 57 smd rect (at -0.2 4.18 45) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 122 +1V8)) - (pad 58 smd oval (at -0.6 4.18 45) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 58 smd rect (at -0.6 4.18 45) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 7 /hackrf_if/LCD_DB1)) - (pad 59 smd oval (at -1 4.18 45) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 59 smd rect (at -1 4.18 45) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 6 /hackrf_if/LCD_DB0)) - (pad 60 smd oval (at -1.4 4.18 45) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 60 smd rect (at -1.4 4.18 45) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 22 /hackrf_if/LCD_RD#)) - (pad 61 smd oval (at -1.8 4.18 45) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 61 smd rect (at -1.8 4.18 45) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 26 /hackrf_if/LCD_WR#)) - (pad 62 smd oval (at -2.2 4.18 45) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 62 smd rect (at -2.2 4.18 45) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 24 /hackrf_if/LCD_RS)) - (pad 63 smd oval (at -2.6 4.18 45) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 63 smd rect (at -2.6 4.18 45) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 25 /hackrf_if/LCD_TE)) - (pad 64 smd oval (at -3 4.18 45) (size 0.24 1.56) (layers 4_bot B.Paste B.Mask) + (pad 64 smd rect (at -3 4.18 45) (size 0.2 1.56) (layers 4_bot B.Paste B.Mask) (net 44 /hackrf_if/TP_R)) - (pad 65 smd rect (at -1.125 1 225) (size 2.25 1.5) (layers 4_bot B.Paste B.Mask) - (net 47 GND) (solder_paste_margin -0.25)) - (pad 65 thru_hole rect (at -2 2 225) (size 0.5 0.5) (drill 0.3048) (layers *.Cu B.Mask) + (pad 65 smd rect (at 0 0 225) (size 4.5 4.5) (layers 4_bot) + (net 47 GND)) + (pad 65 thru_hole circle (at 0.8 0.8 225) (size 0.5 0.5) (drill 0.3048) (layers *.Cu F.Mask) (net 47 GND) (zone_connect 2)) - (pad 65 thru_hole rect (at 0 2.000001 225) (size 0.5 0.5) (drill 0.3048) (layers *.Cu B.Mask) + (pad 65 thru_hole circle (at 0.8 -0.8 225) (size 0.5 0.5) (drill 0.3048) (layers *.Cu F.Mask) (net 47 GND) (zone_connect 2)) - (pad 65 thru_hole rect (at 2 2 225) (size 0.5 0.5) (drill 0.3048) (layers *.Cu B.Mask) + (pad 65 thru_hole circle (at -0.8 -0.8 225) (size 0.5 0.5) (drill 0.3048) (layers *.Cu F.Mask) (net 47 GND) (zone_connect 2)) - (pad 65 thru_hole rect (at -2.000001 0 225) (size 0.5 0.5) (drill 0.3048) (layers *.Cu B.Mask) + (pad 65 thru_hole circle (at -0.8 0.8 225) (size 0.5 0.5) (drill 0.3048) (layers *.Cu F.Mask) (net 47 GND) (zone_connect 2)) - (pad 65 thru_hole rect (at -2 -2 225) (size 0.5 0.5) (drill 0.3048) (layers *.Cu B.Mask) - (net 47 GND) (zone_connect 2)) - (pad 65 thru_hole rect (at 0 0 225) (size 0.5 0.5) (drill 0.3048) (layers *.Cu B.Mask) - (net 47 GND) (zone_connect 2)) - (pad 65 thru_hole rect (at 0 -2.000001 225) (size 0.5 0.5) (drill 0.3048) (layers *.Cu B.Mask) - (net 47 GND) (zone_connect 2)) - (pad 65 thru_hole rect (at 2.000001 0 225) (size 0.5 0.5) (drill 0.3048) (layers *.Cu B.Mask) - (net 47 GND) (zone_connect 2)) - (pad 65 thru_hole rect (at 2 -2 225) (size 0.5 0.5) (drill 0.3048) (layers *.Cu B.Mask) - (net 47 GND) (zone_connect 2)) - (model Housings_QFP.3dshapes/TQFP-64_7x7mm_Pitch0.4mm.wrl + (model ${KISYS3DMOD}/Package_QFP.3dshapes/TQFP-64_7x7mm_P0.4mm.step (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) ) - (module ipc_capc:IPC_CAPC100X50X55L25N (layer 4_bot) (tedit 5B60D756) (tstamp 5B75C8BC) + (module ipc_capc:IPC_CAPC100X50X55L25N (layer 4_bot) (tedit 5BD22C57) (tstamp 5B75C8BC) (at 172.95 162.05 90) (path /58CFF3E3/5B682C91) (attr smd) @@ -3923,7 +4099,7 @@ (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) (fp_text user %R (at 0 0 90) (layer B.Fab) - (effects (font (size 0.6096 0.6096) (thickness 0.025)) (justify mirror)) + (effects (font (size 0.3 0.3) (thickness 0.025)) (justify mirror)) ) (fp_line (start -0.5 0.25) (end 0.5 0.25) (layer B.Fab) (width 0.025)) (fp_line (start 0.5 0.25) (end 0.5 -0.25) (layer B.Fab) (width 0.025)) @@ -3944,7 +4120,7 @@ ) ) - (module ipc_capc:IPC_CAPC100X50X55L25N (layer 4_bot) (tedit 5B60D756) (tstamp 5B6C18C3) + (module ipc_capc:IPC_CAPC100X50X55L25N (layer 4_bot) (tedit 5BD22C7E) (tstamp 5B6C18C3) (at 172.45 166.05 180) (path /58CFF3E3/5B682CB9) (attr smd) @@ -3963,7 +4139,7 @@ (fp_line (start 0.5 0.25) (end 0.5 -0.25) (layer B.Fab) (width 0.025)) (fp_line (start -0.5 0.25) (end 0.5 0.25) (layer B.Fab) (width 0.025)) (fp_text user %R (at 0 0 180) (layer B.Fab) - (effects (font (size 0.6096 0.6096) (thickness 0.025)) (justify mirror)) + (effects (font (size 0.3 0.3) (thickness 0.025)) (justify mirror)) ) (pad 2 smd rect (at 0.46 0 180) (size 0.58 0.58) (layers 4_bot B.Paste B.Mask) (net 124 "Net-(C17-Pad2)")) @@ -3976,7 +4152,7 @@ ) ) - (module ipc_capc:IPC_CAPC100X50X55L25N (layer 4_bot) (tedit 5B60D756) (tstamp 5B75C7E2) + (module ipc_capc:IPC_CAPC100X50X55L25N (layer 4_bot) (tedit 5BD22C4D) (tstamp 5B75C7E2) (at 170.2 162.1 90) (path /58CFF3E3/5B697E1B) (attr smd) @@ -3987,7 +4163,7 @@ (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) (fp_text user %R (at 0 0 90) (layer B.Fab) - (effects (font (size 0.6096 0.6096) (thickness 0.025)) (justify mirror)) + (effects (font (size 0.3 0.3) (thickness 0.025)) (justify mirror)) ) (fp_line (start -0.5 0.25) (end 0.5 0.25) (layer B.Fab) (width 0.025)) (fp_line (start 0.5 0.25) (end 0.5 -0.25) (layer B.Fab) (width 0.025)) @@ -4008,7 +4184,7 @@ ) ) - (module ipc_beadc:IPC_BEADC160X80X95L40N (layer 4_bot) (tedit 5B60D756) (tstamp 5B75C82F) + (module ipc_beadc:IPC_BEADC160X80X95L40N (layer 4_bot) (tedit 5BD22C52) (tstamp 5B75C82F) (at 171.8 161.6 270) (path /58CFF3E3/5B682CCB) (attr smd) @@ -4019,7 +4195,7 @@ (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) (fp_text user %R (at 0 0 270) (layer B.Fab) - (effects (font (size 0.6096 0.6096) (thickness 0.025)) (justify mirror)) + (effects (font (size 0.45 0.45) (thickness 0.025)) (justify mirror)) ) (fp_line (start -0.8 0.4) (end 0.8 0.4) (layer B.Fab) (width 0.025)) (fp_line (start 0.8 0.4) (end 0.8 -0.4) (layer B.Fab) (width 0.025)) @@ -4042,7 +4218,7 @@ ) ) - (module ipc_resc:IPC_RESC100X50X40L25N (layer 4_bot) (tedit 5B60D758) (tstamp 5B6C1903) + (module ipc_resc:IPC_RESC100X50X40L25N (layer 4_bot) (tedit 5BD22C5B) (tstamp 5B6C1903) (at 174.3 161.25) (path /58CFF3E3/5B6E2EB4) (attr smd) @@ -4053,7 +4229,7 @@ (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) (fp_text user %R (at 0 0) (layer B.Fab) - (effects (font (size 0.6096 0.6096) (thickness 0.025)) (justify mirror)) + (effects (font (size 0.3 0.3) (thickness 0.025)) (justify mirror)) ) (fp_line (start -0.5 0.25) (end 0.5 0.25) (layer B.Fab) (width 0.025)) (fp_line (start 0.5 0.25) (end 0.5 -0.25) (layer B.Fab) (width 0.025)) @@ -4074,7 +4250,7 @@ ) ) - (module ipc_resc:IPC_RESC100X50X40L25N (layer 4_bot) (tedit 5B60D758) (tstamp 5B75C883) + (module ipc_resc:IPC_RESC100X50X40L25N (layer 4_bot) (tedit 5BD22C5E) (tstamp 5B75C883) (at 176.1 161.25) (path /58CFF3E3/5B6D148B) (attr smd) @@ -4093,7 +4269,7 @@ (fp_line (start 0.5 0.25) (end 0.5 -0.25) (layer B.Fab) (width 0.025)) (fp_line (start -0.5 0.25) (end 0.5 0.25) (layer B.Fab) (width 0.025)) (fp_text user %R (at 0 0) (layer B.Fab) - (effects (font (size 0.6096 0.6096) (thickness 0.025)) (justify mirror)) + (effects (font (size 0.3 0.3) (thickness 0.025)) (justify mirror)) ) (pad 2 smd rect (at 0.46 0) (size 0.58 0.58) (layers 4_bot B.Paste B.Mask) (net 47 GND)) @@ -4106,7 +4282,7 @@ ) ) - (module ipc_resc:IPC_RESC100X50X40L25N (layer 4_bot) (tedit 5B60D758) (tstamp 5B6C3AC6) + (module ipc_resc:IPC_RESC100X50X40L25N (layer 4_bot) (tedit 5BD22C79) (tstamp 5B6C3AC6) (at 170.65 166.05) (path /58CFF3E3/5B682CA9) (attr smd) @@ -4117,7 +4293,7 @@ (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) (fp_text user %R (at 0 0) (layer B.Fab) - (effects (font (size 0.6096 0.6096) (thickness 0.025)) (justify mirror)) + (effects (font (size 0.3 0.3) (thickness 0.025)) (justify mirror)) ) (fp_line (start -0.5 0.25) (end 0.5 0.25) (layer B.Fab) (width 0.025)) (fp_line (start 0.5 0.25) (end 0.5 -0.25) (layer B.Fab) (width 0.025)) @@ -4138,18 +4314,18 @@ ) ) - (module ipc_resc:IPC_RESC100X50X40L25N (layer 4_bot) (tedit 5B60D758) (tstamp 5B6C1930) + (module ipc_resc:IPC_RESC100X50X40L25N (layer 4_bot) (tedit 5BD22C83) (tstamp 5B6C1930) (at 172.45 166.95) (path /58CFF3E3/5B682CD3) (attr smd) (fp_text reference R21 (at -0.35 3) (layer B.SilkS) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) - (fp_text value 33R (at 0 0) (layer B.Fab) + (fp_text value 100R (at 0 0) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) (fp_text user %R (at 0 0) (layer B.Fab) - (effects (font (size 0.6096 0.6096) (thickness 0.025)) (justify mirror)) + (effects (font (size 0.3 0.3) (thickness 0.025)) (justify mirror)) ) (fp_line (start -0.5 0.25) (end 0.5 0.25) (layer B.Fab) (width 0.025)) (fp_line (start 0.5 0.25) (end 0.5 -0.25) (layer B.Fab) (width 0.025)) @@ -4170,7 +4346,7 @@ ) ) - (module ipc_resc:IPC_RESC100X50X40L25N (layer 4_bot) (tedit 5B60D758) (tstamp 5B6C39D3) + (module ipc_resc:IPC_RESC100X50X40L25N (layer 4_bot) (tedit 5BD22C88) (tstamp 5B6C39D3) (at 170.65 166.95 180) (path /58CFF3E3/5B682CA2) (attr smd) @@ -4189,7 +4365,7 @@ (fp_line (start 0.5 0.25) (end 0.5 -0.25) (layer B.Fab) (width 0.025)) (fp_line (start -0.5 0.25) (end 0.5 0.25) (layer B.Fab) (width 0.025)) (fp_text user %R (at 0 0 180) (layer B.Fab) - (effects (font (size 0.6096 0.6096) (thickness 0.025)) (justify mirror)) + (effects (font (size 0.3 0.3) (thickness 0.025)) (justify mirror)) ) (pad 2 smd rect (at 0.46 0 180) (size 0.58 0.58) (layers 4_bot B.Paste B.Mask) (net 127 "Net-(R17-Pad1)")) @@ -4202,7 +4378,7 @@ ) ) - (module ipc_sot:IPC_SOT23-5P65_212X110L33X22N (layer 4_bot) (tedit 5B5CDD55) (tstamp 5B6BABEA) + (module ipc_sot:IPC_SOT23-5P65_212X110L33X22N (layer 4_bot) (tedit 5BD22FC7) (tstamp 5B6BABEA) (at 171.4 164.3 180) (path /58CFF3E3/5B682CC3) (attr smd) @@ -4212,8 +4388,8 @@ (fp_text value 74HC1G04GW (at 0 0 180) (layer B.Fab) (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) - (fp_text user %R (at 0 0 180) (layer B.Fab) - (effects (font (size 0.6096 0.6096) (thickness 0.025)) (justify mirror)) + (fp_text user %R (at 0 0 270) (layer B.Fab) + (effects (font (size 0.6 0.6) (thickness 0.025)) (justify mirror)) ) (fp_line (start -0.625 1.025) (end 0.625 1.025) (layer B.Fab) (width 0.025)) (fp_line (start 0.625 1.025) (end 0.625 -1.025) (layer B.Fab) (width 0.025)) @@ -4247,7 +4423,7 @@ ) ) - (module ipc_capc:IPC_CAPC100X50X55L25N (layer 4_bot) (tedit 5B60D756) (tstamp 5B7883B5) + (module ipc_capc:IPC_CAPC100X50X55L25N (layer 4_bot) (tedit 5BD22CC8) (tstamp 5B7883B5) (at 75.65 170.45 180) (path /5B7E0B2A/5B7E0D14) (attr smd) @@ -4266,7 +4442,7 @@ (fp_line (start 0.5 0.25) (end 0.5 -0.25) (layer B.Fab) (width 0.025)) (fp_line (start -0.5 0.25) (end 0.5 0.25) (layer B.Fab) (width 0.025)) (fp_text user %R (at 0 0 180) (layer B.Fab) - (effects (font (size 0.6096 0.6096) (thickness 0.025)) (justify mirror)) + (effects (font (size 0.3 0.3) (thickness 0.025)) (justify mirror)) ) (pad 2 smd rect (at 0.46 0 180) (size 0.58 0.58) (layers 4_bot B.Paste B.Mask) (net 47 GND)) @@ -4279,7 +4455,7 @@ ) ) - (module ipc_capc:IPC_CAPC100X50X55L25N (layer 4_bot) (tedit 5B60D756) (tstamp 5B78702B) + (module ipc_capc:IPC_CAPC100X50X55L25N (layer 4_bot) (tedit 5BD22CD6) (tstamp 5B78702B) (at 77.65 155.6) (path /5B7E0B2A/5B7E512B) (attr smd) @@ -4290,7 +4466,7 @@ (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) (fp_text user %R (at 0 0) (layer B.Fab) - (effects (font (size 0.6096 0.6096) (thickness 0.025)) (justify mirror)) + (effects (font (size 0.3 0.3) (thickness 0.025)) (justify mirror)) ) (fp_line (start -0.5 0.25) (end 0.5 0.25) (layer B.Fab) (width 0.025)) (fp_line (start 0.5 0.25) (end 0.5 -0.25) (layer B.Fab) (width 0.025)) @@ -4311,7 +4487,7 @@ ) ) - (module ipc_beadc:IPC_BEADC160X80X95L40N (layer 4_bot) (tedit 5B60D756) (tstamp 5B788D2D) + (module ipc_beadc:IPC_BEADC160X80X95L40N (layer 4_bot) (tedit 5BD22C99) (tstamp 5B788D2D) (at 135.95 171.8 180) (path /5B7E0B2A/5B7E9718) (attr smd) @@ -4332,7 +4508,7 @@ (fp_line (start 0.8 0.4) (end 0.8 -0.4) (layer B.Fab) (width 0.025)) (fp_line (start -0.8 0.4) (end 0.8 0.4) (layer B.Fab) (width 0.025)) (fp_text user %R (at 0 0 180) (layer B.Fab) - (effects (font (size 0.6096 0.6096) (thickness 0.025)) (justify mirror)) + (effects (font (size 0.45 0.45) (thickness 0.025)) (justify mirror)) ) (pad 2 smd rect (at 0.71 0 180) (size 0.95 0.97) (layers 4_bot B.Paste B.Mask) (net 129 "Net-(FB1-Pad2)")) @@ -4345,7 +4521,7 @@ ) ) - (module ipc_beadc:IPC_BEADC160X80X95L40N (layer 4_bot) (tedit 5B60D756) (tstamp 5B78990B) + (module ipc_beadc:IPC_BEADC160X80X95L40N (layer 4_bot) (tedit 5BD22C9D) (tstamp 5B78990B) (at 133.15 171.2 180) (path /5B7E0B2A/5B7E9798) (attr smd) @@ -4356,7 +4532,7 @@ (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) (fp_text user %R (at 0 0 180) (layer B.Fab) - (effects (font (size 0.6096 0.6096) (thickness 0.025)) (justify mirror)) + (effects (font (size 0.45 0.45) (thickness 0.025)) (justify mirror)) ) (fp_line (start -0.8 0.4) (end 0.8 0.4) (layer B.Fab) (width 0.025)) (fp_line (start 0.8 0.4) (end 0.8 -0.4) (layer B.Fab) (width 0.025)) @@ -4379,7 +4555,7 @@ ) ) - (module ipc_indc:IPC_INDC100X50X60L20N (layer 4_bot) (tedit 5B60D757) (tstamp 5B7AFBF8) + (module ipc_indc:IPC_INDC100X50X60L20N (layer 4_bot) (tedit 5BD22CC0) (tstamp 5B7AFBF8) (at 76.6 169.55 180) (path /5B7E0B2A/5B7E0E02) (attr smd) @@ -4390,7 +4566,7 @@ (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) (fp_text user %R (at 0 0 180) (layer B.Fab) - (effects (font (size 0.6096 0.6096) (thickness 0.025)) (justify mirror)) + (effects (font (size 0.3 0.3) (thickness 0.025)) (justify mirror)) ) (fp_line (start -0.5 0.25) (end 0.5 0.25) (layer B.Fab) (width 0.025)) (fp_line (start 0.5 0.25) (end 0.5 -0.25) (layer B.Fab) (width 0.025)) @@ -4413,7 +4589,7 @@ ) ) - (module amp_te:1909763-1 (layer 4_bot) (tedit 5B49377B) (tstamp 5B7AFCBE) + (module amp_te:1909763-1 (layer 4_bot) (tedit 5BD23017) (tstamp 5B7AFCBE) (at 81.4 169.55 90) (descr http://www.te.com/commerce/DocumentDelivery/DDEController?Action=srchrtrv&DocNm=1909763&DocType=Customer+Drawing&DocLang=English) (tags "AMP TE U.FL RF Connector") @@ -4425,7 +4601,7 @@ (effects (font (size 0.5 0.5) (thickness 0.025)) (justify mirror)) ) (fp_text user %R (at 0 0 90) (layer B.Fab) - (effects (font (size 0.6096 0.6096) (thickness 0.025)) (justify mirror)) + (effects (font (size 0.6 0.6) (thickness 0.025)) (justify mirror)) ) (fp_circle (center 0 0) (end 1 0) (layer B.Fab) (width 0.025)) (fp_line (start -1.3 1.3) (end 0.9 1.3) (layer B.Fab) (width 0.025)) @@ -4450,7 +4626,7 @@ ) ) - (module ipc_resc:IPC_RESC100X50X40L25N (layer 4_bot) (tedit 5B60D758) (tstamp 5B7AF3F2) + (module ipc_resc:IPC_RESC100X50X40L25N (layer 4_bot) (tedit 5BD22CD2) (tstamp 5B7AF3F2) (at 75.45 155.6) (path /5B7E0B2A/5B7ED5AD) (attr smd) @@ -4469,7 +4645,7 @@ (fp_line (start 0.5 0.25) (end 0.5 -0.25) (layer B.Fab) (width 0.025)) (fp_line (start -0.5 0.25) (end 0.5 0.25) (layer B.Fab) (width 0.025)) (fp_text user %R (at 0 0) (layer B.Fab) - (effects (font (size 0.6096 0.6096) (thickness 0.025)) (justify mirror)) + (effects (font (size 0.3 0.3) (thickness 0.025)) (justify mirror)) ) (pad 2 smd rect (at 0.46 0) (size 0.58 0.58) (layers 4_bot B.Paste B.Mask) (net 121 +3V3)) @@ -4482,7 +4658,7 @@ ) ) - (module ipc_resc:IPC_RESC100X50X40L25N (layer 4_bot) (tedit 5B60D758) (tstamp 5B78708E) + (module ipc_resc:IPC_RESC100X50X40L25N (layer 4_bot) (tedit 5BD22CAA) (tstamp 5B78708E) (at 111.7 158.95 180) (path /5B7E0B2A/5B7EC300) (attr smd) @@ -4501,7 +4677,7 @@ (fp_line (start 0.5 0.25) (end 0.5 -0.25) (layer B.Fab) (width 0.025)) (fp_line (start -0.5 0.25) (end 0.5 0.25) (layer B.Fab) (width 0.025)) (fp_text user %R (at 0 0 180) (layer B.Fab) - (effects (font (size 0.6096 0.6096) (thickness 0.025)) (justify mirror)) + (effects (font (size 0.3 0.3) (thickness 0.025)) (justify mirror)) ) (pad 2 smd rect (at 0.46 0 180) (size 0.58 0.58) (layers 4_bot B.Paste B.Mask) (net 132 "Net-(R23-Pad1)")) @@ -4514,7 +4690,7 @@ ) ) - (module ipc_resc:IPC_RESC100X50X40L25N (layer 4_bot) (tedit 5B60D758) (tstamp 5B787677) + (module ipc_resc:IPC_RESC100X50X40L25N (layer 4_bot) (tedit 5BD22CDA) (tstamp 5B787677) (at 79.55 157.3 90) (path /5B7E0B2A/5B7E62C8) (attr smd) @@ -4525,7 +4701,7 @@ (effects (font (size 0.6096 0.6096) (thickness 0.12)) (justify mirror)) ) (fp_text user %R (at 0 0 90) (layer B.Fab) - (effects (font (size 0.6096 0.6096) (thickness 0.025)) (justify mirror)) + (effects (font (size 0.3 0.3) (thickness 0.025)) (justify mirror)) ) (fp_line (start -0.5 0.25) (end 0.5 0.25) (layer B.Fab) (width 0.025)) (fp_line (start 0.5 0.25) (end 0.5 -0.25) (layer B.Fab) (width 0.025)) @@ -4546,7 +4722,7 @@ ) ) - (module ipc_resc:IPC_RESC100X50X40L25N (layer 4_bot) (tedit 5B60D758) (tstamp 5B7884EB) + (module ipc_resc:IPC_RESC100X50X40L25N (layer 4_bot) (tedit 5BD22CC4) (tstamp 5B7884EB) (at 74.75 169.55) (path /5B7E0B2A/5B78A3E5) (attr smd) @@ -4565,7 +4741,7 @@ (fp_line (start 0.5 0.25) (end 0.5 -0.25) (layer B.Fab) (width 0.025)) (fp_line (start -0.5 0.25) (end 0.5 0.25) (layer B.Fab) (width 0.025)) (fp_text user %R (at 0 0) (layer B.Fab) - (effects (font (size 0.6096 0.6096) (thickness 0.025)) (justify mirror)) + (effects (font (size 0.3 0.3) (thickness 0.025)) (justify mirror)) ) (pad 2 smd rect (at 0.46 0) (size 0.58 0.58) (layers 4_bot B.Paste B.Mask) (net 128 "Net-(C19-Pad1)")) @@ -4623,7 +4799,7 @@ (gr_text "Dimensions in inches, unless otherwise specified." (at 205 168) (layer Dwgs.User) (effects (font (size 1.5 1.5) (thickness 0.1)) (justify left)) ) - (gr_text "Notes, unless otherwise specified:\n\n1. Corner radii, inside: .047 min, unless otherwise stated.\n Corner radii, outside: break all sharp edges and corners.\n\n2. Tolerances:\n Warpage: .010/inch max along longest diag.\n Etching: +/-20% of master pattern.\n\n PTH hole diameter:\n < .100 +/- .003\n > .100 +/- .005\n < .016 + .003, -(hole diameter)\n NPTH hole diameter:\n < .100 +/- .002\n > .100 +/- .003\n\n Front-to-back reg: .005 max.\n (Do not use top-to-bottom pad alignment.)\n Hole plating: .001 min, .003 max.\n Hole diameters are finished sizes.\n\n3. Material: glass-epoxy resin sheet. Refer to board\n stackup for weight of Cu. 2 sides, flame-retardant.\n NEMA grade high temp FR4, TG requirement >= 170C.\n\n4. Finish: Soldermask over bare copper using LPI mask.\n Mask thickness: .0004 min, .0013 max.\n Color: Glossy Black\n\n5. Silkscreen legend to board using non-conductive,\n epoxy paint. Remove silkscreen from pads.\n Color: White\n\n6. Acceptability based on IPC-A-600 class 2 (latest revision).\n\n7. Test all boards for opens and shorts.\n\n8. No silkscreen on pads or test points.\n\n9. Do not block mask fine pitch SMD pads.\n\n10. No solder mask on fiducials.\n\n11. No solder mask may cover any gold fingers, if applicable.\n\n12. Do not use top-to-bottom pad alignment.\n Via alignment is recommended.\n\n13. Do not modify solder mask via flooding design.\n Do not modify solder mask chimney designs for test points.\n\n14. No Gerber modifications allowed without prior written\n approval, except for impedance trace width modifications\n to meet requirements, and the addition of tear drops where\n required.\n\n15. Raw material and finished PCB must be RoHS-compliant." (at 200 90) (layer Dwgs.User) + (gr_text "Notes, unless otherwise specified:\n\n1. Corner radii, inside: .047 min, unless otherwise stated.\n Corner radii, outside: break all sharp edges and corners.\n\n2. Tolerances:\n Warpage: .010/inch max along longest diag.\n Etching: +/-20% of master pattern.\n\n PTH hole diameter:\n < .100 +/- .003\n > .100 +/- .005\n < .016 + .003, -(hole diameter)\n NPTH hole diameter:\n < .100 +/- .002\n > .100 +/- .003\n\n Front-to-back reg: .005 max.\n (Do not use top-to-bottom pad alignment.)\n Hole plating: .001 min, .003 max.\n Hole diameters are finished sizes.\n\n3. Material: glass-epoxy resin sheet. Refer to board\n stackup for weight of Cu. 2 sides, flame-retardant.\n NEMA grade high temp FR4, TG requirement >= 150C.\n\n4. Finish: Soldermask over bare copper using LPI mask.\n Mask thickness: .0004 min, .0013 max.\n Color: Blue\n\n5. Silkscreen legend to board using non-conductive,\n epoxy paint. Remove silkscreen from pads.\n Color: White\n\n6. Acceptability based on IPC-A-600 class 2 (latest revision).\n\n7. Test all boards for opens and shorts.\n\n8. No silkscreen on pads or test points.\n\n9. Do not block mask fine pitch SMD pads.\n\n10. No solder mask on fiducials.\n\n11. No solder mask may cover any gold fingers, if applicable.\n\n12. Do not use top-to-bottom pad alignment.\n Via alignment is recommended.\n\n13. Do not modify solder mask via flooding design.\n Do not modify solder mask chimney designs for test points.\n\n14. No Gerber modifications allowed without prior written\n approval, except for impedance trace width modifications\n to meet requirements, and the addition of tear drops where\n required.\n\n15. Raw material and finished PCB must be RoHS-compliant." (at 200 90) (layer Dwgs.User) (effects (font (size 1.5 1.5) (thickness 0.1)) (justify left)) ) (dimension 75 (width 0.1) (layer Dwgs.User) @@ -4654,7 +4830,7 @@ (gr_line (start 45 25) (end 54 25) (layer Dwgs.User) (width 0.1)) (gr_line (start 28 25) (end 33 25) (layer Dwgs.User) (width 0.1)) (gr_line (start 20 25) (end 24 25) (layer Dwgs.User) (width 0.1)) - (gr_text "62 mil +/- 10%\nBoard Thickness" (at 107.5 41) (layer Dwgs.User) + (gr_text "1.6 mm +/- 10%\nBoard Thickness" (at 107.5 41) (layer Dwgs.User) (effects (font (size 1.5 1.5) (thickness 0.1)) (justify left)) ) (gr_line (start 105 49) (end 105.5 47.5) (layer Dwgs.User) (width 0.1)) @@ -4728,11 +4904,11 @@ (gr_line (start 77.5 33.7) (end 82.5 33.7) (layer Dwgs.User) (width 0.1)) (gr_line (start 77.5 35.2) (end 77.5 33.7) (layer Dwgs.User) (width 0.1)) (gr_line (start 72.5 35.2) (end 87.5 35.2) (layer Dwgs.User) (width 0.1)) - (gr_text "Material\n\n\nWhite\nBlack\n1.0 oz Copper + ENIG\nFR-4 TG170\n1.0 oz Copper\nFR-4 TG170\n1.0 oz Copper\nFR-4 TG170\n1.0 oz Copper + ENIG\nBlack\nWhite\n\nCenter line is finished edge\n" (at 45 40) (layer Dwgs.User) (tstamp 55E3838A) + (gr_text "Material\n\n\nWhite\nBlue\n1.0 oz Copper + ENIG\nFR-4 TG150\n1.0 oz Copper\nFR-4 TG150\n1.0 oz Copper\nFR-4 TG150\n1.0 oz Copper + ENIG\nBlue\nWhite\n\nCenter line is finished edge\n" (at 45 40) (layer Dwgs.User) (tstamp 55E3838A) (effects (font (size 1.5 1.5) (thickness 0.1)) (justify left)) ) - (gr_text "Thickness\n\n\n\n0.8 mil\n1.7 mil\n8.0 mil\n1.4 mil\n\n1.4 mil\n8.0 mil\n1.7 mil\n0.8 mil\n\n\n\n" (at 90.5 40) (layer Dwgs.User) (tstamp 55E381F6) - (effects (font (size 1.5 1.5) (thickness 0.1)) (justify left)) + (gr_text "Thickness\n\n\n\n0.8 mil\n35 um\n110 um\n35 um\n\n35 um\n110 um\n35 um\n0.8 mil\n\n\n\n" (at 101 40) (layer Dwgs.User) (tstamp 55E381F6) + (effects (font (size 1.5 1.5) (thickness 0.1)) (justify right)) ) (gr_text "Type\n\nSolder paste\nSilkscreen\nSolder mask\nSignal\nPrepreg\nPower\nCore\nPower\nPrepreg\nSignal\nSolder mask\nSilkscreen\nSolder paste\nBoard outline" (at 28 40) (layer Dwgs.User) (effects (font (size 1.5 1.5) (thickness 0.1)) (justify left)) @@ -4740,7 +4916,7 @@ (gr_text "File\n\n.GTP\n.GTO\n.GTS\n.GTL\n\n.G2\n\n.G3\n\n.GBL\n.GBS\n.GBO\n.GBP\n.GM1\n" (at 20 40) (layer Dwgs.User) (effects (font (size 1.5 1.5) (thickness 0.1)) (justify left)) ) - (gr_text 20180820 (at 75 164 180) (layer F.SilkS) + (gr_text 20181029 (at 75 164 180) (layer F.SilkS) (effects (font (size 1.524 0.762) (thickness 0.1524))) ) (gr_text 4 (at 64.025 156.325) (layer 4_bot) @@ -4771,10 +4947,10 @@ (gr_arc (start 176 104) (end 176 100) (angle 90) (layer Edge.Cuts) (width 0.381)) (gr_arc (start 64 171) (end 64 175) (angle 90) (layer Edge.Cuts) (width 0.381)) (gr_arc (start 64 104) (end 60 104) (angle 90) (layer Edge.Cuts) (width 0.381)) - (gr_line (start 87.94 126.74) (end 108.26 126.74) (layer Eco2.User) (width 0.1)) - (gr_line (start 108.26 126.74) (end 108.26 131.82) (layer Eco2.User) (width 0.1)) - (gr_line (start 108.26 131.82) (end 87.94 131.82) (layer Eco2.User) (width 0.1)) - (gr_line (start 87.94 131.82) (end 87.94 126.74) (layer Eco2.User) (width 0.1)) + (gr_line (start 87.94 126.74) (end 108.26 126.74) (layer B.CrtYd) (width 0.1)) + (gr_line (start 108.26 126.74) (end 108.26 131.82) (layer B.CrtYd) (width 0.1)) + (gr_line (start 108.26 131.82) (end 87.94 131.82) (layer B.CrtYd) (width 0.1)) + (gr_line (start 87.94 131.82) (end 87.94 126.74) (layer B.CrtYd) (width 0.1)) (segment (start 164.005 110.35) (end 163.35 110.35) (width 0.2) (layer 4_bot) (net 1) (status 10)) (segment (start 147.5 103.9) (end 147.7 103.7) (width 0.2) (layer 4_bot) (net 1) (tstamp 58F90BAB)) @@ -6183,12 +6359,14 @@ (segment (start 159.5 109.43) (end 160.23 108.7) (width 0.2) (layer 4_bot) (net 79) (tstamp 58EDB954) (status 20)) (segment (start 159.5 110) (end 159.5 109.43) (width 0.2) (layer 4_bot) (net 79) (tstamp 58EDB94E)) (segment (start 159.15 110.35) (end 159.5 110) (width 0.2) (layer 4_bot) (net 79) (tstamp 58EDB94A)) - (segment (start 106.682914 134.771501) (end 117.354415 124.1) (width 0.2) (layer 4_bot) (net 80) (status 10)) - (segment (start 155.4 117.57) (end 155.4 118.7) (width 0.2) (layer 4_bot) (net 80) (status 10)) - (segment (start 138.9 124.1) (end 117.354415 124.1) (width 0.2) (layer 4_bot) (net 80) (tstamp 58FC30BF)) - (segment (start 143.6 119.4) (end 138.9 124.1) (width 0.2) (layer 4_bot) (net 80) (tstamp 58FC30BB)) - (segment (start 154.7 119.4) (end 143.6 119.4) (width 0.2) (layer 4_bot) (net 80) (tstamp 58FC30B7)) - (segment (start 155.4 118.7) (end 154.7 119.4) (width 0.2) (layer 4_bot) (net 80) (tstamp 58FC30B0)) + (segment (start 108.15 133.304415) (end 106.682914 134.771501) (width 0.2) (layer 4_bot) (net 80)) + (segment (start 155.4 117.57) (end 155.4 118.7) (width 0.2) (layer 4_bot) (net 80)) + (segment (start 155.4 118.7) (end 154.7 119.4) (width 0.2) (layer 4_bot) (net 80)) + (segment (start 154.7 119.4) (end 143.6 119.4) (width 0.2) (layer 4_bot) (net 80)) + (segment (start 143.6 119.4) (end 138.9 124.1) (width 0.2) (layer 4_bot) (net 80)) + (segment (start 108.15 133.05) (end 108.15 133.304415) (width 0.2) (layer 4_bot) (net 80)) + (segment (start 117.1 124.1) (end 108.15 133.05) (width 0.2) (layer 4_bot) (net 80)) + (segment (start 138.9 124.1) (end 117.1 124.1) (width 0.2) (layer 4_bot) (net 80)) (segment (start 154 146.35) (end 155.95 144.4) (width 0.2) (layer 1_top) (net 81)) (segment (start 154.65 129.3) (end 154.65 124.85) (width 0.2) (layer 1_top) (net 81) (tstamp 58F9828F)) (segment (start 155.95 130.6) (end 154.65 129.3) (width 0.2) (layer 1_top) (net 81) (tstamp 58F98289)) @@ -6780,7 +6958,7 @@ ) ) ) - (zone (net 121) (net_name +3V3) (layer 2_pwr) (tstamp 5B79CB38) (hatch edge 0.508) + (zone (net 121) (net_name +3V3) (layer 2_pwr) (tstamp 5BD00446) (hatch edge 0.508) (priority 1) (connect_pads (clearance 0.2)) (min_thickness 0.2) @@ -6794,7 +6972,7 @@ ) ) ) - (zone (net 47) (net_name GND) (layer 3_gnd) (tstamp 5B79CB35) (hatch edge 0.508) + (zone (net 47) (net_name GND) (layer 3_gnd) (tstamp 5BD00443) (hatch edge 0.508) (connect_pads (clearance 0.2)) (min_thickness 0.2) (fill (arc_segments 16) (thermal_gap 0.2) (thermal_bridge_width 0.4)) @@ -6804,7 +6982,7 @@ ) ) ) - (zone (net 0) (net_name "") (layer B.Mask) (tstamp 5B79CB32) (hatch edge 0.508) + (zone (net 0) (net_name "") (layer B.Mask) (tstamp 5BD00440) (hatch edge 0.508) (connect_pads (clearance 0.2)) (min_thickness 0.2) (fill (arc_segments 16) (thermal_gap 0.2) (thermal_bridge_width 0.4)) @@ -6814,7 +6992,7 @@ ) ) ) - (zone (net 0) (net_name "") (layer F.Mask) (tstamp 5B79CB2F) (hatch edge 0.508) + (zone (net 0) (net_name "") (layer F.Mask) (tstamp 5BD0043D) (hatch edge 0.508) (connect_pads (clearance 0.2)) (min_thickness 0.2) (fill (arc_segments 16) (thermal_gap 0.2) (thermal_bridge_width 0.4)) @@ -6824,7 +7002,7 @@ ) ) ) - (zone (net 47) (net_name GND) (layer 2_pwr) (tstamp 5B79CB2C) (hatch edge 0.508) + (zone (net 47) (net_name GND) (layer 2_pwr) (tstamp 5BD0043A) (hatch edge 0.508) (connect_pads (clearance 0.2)) (min_thickness 0.2) (fill (arc_segments 16) (thermal_gap 0.2) (thermal_bridge_width 0.4)) @@ -6849,7 +7027,7 @@ ) ) ) - (zone (net 47) (net_name GND) (layer 1_top) (tstamp 5B79CB29) (hatch edge 0.508) + (zone (net 47) (net_name GND) (layer 1_top) (tstamp 5BD00437) (hatch edge 0.508) (connect_pads (clearance 0.2)) (min_thickness 0.2) (fill (arc_segments 16) (thermal_gap 0.2) (thermal_bridge_width 0.4)) @@ -6859,7 +7037,7 @@ ) ) ) - (zone (net 0) (net_name "") (layer B.SilkS) (tstamp 5B79CB26) (hatch edge 0.508) + (zone (net 0) (net_name "") (layer B.SilkS) (tstamp 5BD00434) (hatch edge 0.508) (connect_pads (clearance 0.2)) (min_thickness 0.2) (fill (arc_segments 16) (thermal_gap 0.2) (thermal_bridge_width 0.4)) @@ -6870,7 +7048,7 @@ ) ) ) - (zone (net 99) (net_name /hackrf_if/VBUS) (layer 2_pwr) (tstamp 5B79CB23) (hatch edge 0.508) + (zone (net 99) (net_name /hackrf_if/VBUS) (layer 2_pwr) (tstamp 5BD00431) (hatch edge 0.508) (priority 2) (connect_pads (clearance 0.2)) (min_thickness 0.2) @@ -6881,7 +7059,7 @@ ) ) ) - (zone (net 72) (net_name /power/AUDIO_SVDD) (layer 2_pwr) (tstamp 5B79CB20) (hatch edge 0.508) + (zone (net 72) (net_name /power/AUDIO_SVDD) (layer 2_pwr) (tstamp 5BD0042E) (hatch edge 0.508) (priority 3) (connect_pads (clearance 0.2)) (min_thickness 0.2) @@ -6894,7 +7072,7 @@ ) ) ) - (zone (net 47) (net_name GND) (layer 4_bot) (tstamp 5B79CB1D) (hatch edge 0.508) + (zone (net 47) (net_name GND) (layer 4_bot) (tstamp 5BD0042B) (hatch edge 0.508) (connect_pads (clearance 0.2)) (min_thickness 0.2) (fill (arc_segments 16) (thermal_gap 0.2) (thermal_bridge_width 0.4)) @@ -6913,7 +7091,7 @@ ) ) ) - (zone (net 99) (net_name /hackrf_if/VBUS) (layer 4_bot) (tstamp 5B79CB1A) (hatch edge 0.508) + (zone (net 99) (net_name /hackrf_if/VBUS) (layer 4_bot) (tstamp 5BD00428) (hatch edge 0.508) (connect_pads (clearance 0.2)) (min_thickness 0.2) (fill (arc_segments 16) (thermal_gap 0.2) (thermal_bridge_width 0.4)) @@ -6923,7 +7101,7 @@ ) ) ) - (zone (net 47) (net_name GND) (layer 4_bot) (tstamp 5B79CB17) (hatch edge 0.508) + (zone (net 47) (net_name GND) (layer 4_bot) (tstamp 5BD00425) (hatch edge 0.508) (connect_pads (clearance 0.2)) (min_thickness 0.2) (fill (arc_segments 16) (thermal_gap 0.2) (thermal_bridge_width 0.4)) @@ -6933,7 +7111,7 @@ ) ) ) - (zone (net 47) (net_name GND) (layer 4_bot) (tstamp 5B79CB14) (hatch edge 0.508) + (zone (net 47) (net_name GND) (layer 4_bot) (tstamp 5BD00422) (hatch edge 0.508) (connect_pads (clearance 0.2)) (min_thickness 0.2) (fill (arc_segments 16) (thermal_gap 0.2) (thermal_bridge_width 0.4)) @@ -6943,7 +7121,7 @@ ) ) ) - (zone (net 47) (net_name GND) (layer 4_bot) (tstamp 5B79CB11) (hatch edge 0.508) + (zone (net 47) (net_name GND) (layer 4_bot) (tstamp 5BD0041F) (hatch edge 0.508) (connect_pads (clearance 0.2)) (min_thickness 0.2) (fill (arc_segments 16) (thermal_gap 0.2) (thermal_bridge_width 0.4)) @@ -6953,7 +7131,7 @@ ) ) ) - (zone (net 72) (net_name /power/AUDIO_SVDD) (layer 4_bot) (tstamp 5B79CB0E) (hatch edge 0.508) + (zone (net 72) (net_name /power/AUDIO_SVDD) (layer 4_bot) (tstamp 5BD0041C) (hatch edge 0.508) (connect_pads (clearance 0.2)) (min_thickness 0.2) (fill (arc_segments 16) (thermal_gap 0.2) (thermal_bridge_width 0.4)) @@ -6963,7 +7141,7 @@ ) ) ) - (zone (net 72) (net_name /power/AUDIO_SVDD) (layer 4_bot) (tstamp 5B79CB0B) (hatch edge 0.508) + (zone (net 72) (net_name /power/AUDIO_SVDD) (layer 4_bot) (tstamp 5BD00419) (hatch edge 0.508) (connect_pads (clearance 0.2)) (min_thickness 0.2) (fill (arc_segments 16) (thermal_gap 0.2) (thermal_bridge_width 0.4)) @@ -6973,7 +7151,7 @@ ) ) ) - (zone (net 47) (net_name GND) (layer 4_bot) (tstamp 5B79CB08) (hatch edge 0.508) + (zone (net 47) (net_name GND) (layer 4_bot) (tstamp 5BD00416) (hatch edge 0.508) (connect_pads (clearance 0.2)) (min_thickness 0.2) (fill (arc_segments 16) (thermal_gap 0.2) (thermal_bridge_width 0.4)) @@ -6983,7 +7161,7 @@ ) ) ) - (zone (net 47) (net_name GND) (layer 4_bot) (tstamp 5B79CB05) (hatch edge 0.508) + (zone (net 47) (net_name GND) (layer 4_bot) (tstamp 5BD00413) (hatch edge 0.508) (connect_pads (clearance 0.2)) (min_thickness 0.2) (fill (arc_segments 16) (thermal_gap 0.2) (thermal_bridge_width 0.4)) @@ -6995,7 +7173,7 @@ ) ) ) - (zone (net 118) (net_name /power/BBAT) (layer 4_bot) (tstamp 5B79CB02) (hatch edge 0.508) + (zone (net 118) (net_name /power/BBAT) (layer 4_bot) (tstamp 5BD00410) (hatch edge 0.508) (connect_pads (clearance 0.2)) (min_thickness 0.2) (fill (arc_segments 16) (thermal_gap 0.2) (thermal_bridge_width 0.4)) @@ -7007,7 +7185,7 @@ ) ) ) - (zone (net 47) (net_name GND) (layer 4_bot) (tstamp 5B79CAFF) (hatch edge 0.508) + (zone (net 47) (net_name GND) (layer 4_bot) (tstamp 5BD0040D) (hatch edge 0.508) (connect_pads (clearance 0.2)) (min_thickness 0.2) (fill (arc_segments 16) (thermal_gap 0.2) (thermal_bridge_width 0.4)) @@ -7017,7 +7195,7 @@ ) ) ) - (zone (net 99) (net_name /hackrf_if/VBUS) (layer 4_bot) (tstamp 5B79CAFC) (hatch edge 0.508) + (zone (net 99) (net_name /hackrf_if/VBUS) (layer 4_bot) (tstamp 5BD0040A) (hatch edge 0.508) (connect_pads (clearance 0.2)) (min_thickness 0.2) (fill (arc_segments 16) (thermal_gap 0.2) (thermal_bridge_width 0.4)) @@ -7027,7 +7205,7 @@ ) ) ) - (zone (net 72) (net_name /power/AUDIO_SVDD) (layer 4_bot) (tstamp 5B79CAF9) (hatch edge 0.508) + (zone (net 72) (net_name /power/AUDIO_SVDD) (layer 4_bot) (tstamp 5BD00407) (hatch edge 0.508) (priority 1) (connect_pads (clearance 0.2)) (min_thickness 0.2) @@ -7038,7 +7216,7 @@ ) ) ) - (zone (net 47) (net_name GND) (layer 4_bot) (tstamp 5B79CAF6) (hatch edge 0.508) + (zone (net 47) (net_name GND) (layer 4_bot) (tstamp 5BD00404) (hatch edge 0.508) (connect_pads (clearance 0.2)) (min_thickness 0.2) (fill (arc_segments 16) (thermal_gap 0.2) (thermal_bridge_width 0.4)) @@ -7048,7 +7226,7 @@ ) ) ) - (zone (net 121) (net_name +3V3) (layer 4_bot) (tstamp 5B79CAF3) (hatch edge 0.508) + (zone (net 121) (net_name +3V3) (layer 4_bot) (tstamp 5BD00401) (hatch edge 0.508) (connect_pads (clearance 0.2)) (min_thickness 0.2) (fill (arc_segments 16) (thermal_gap 0.2) (thermal_bridge_width 0.4)) @@ -7058,7 +7236,7 @@ ) ) ) - (zone (net 121) (net_name +3V3) (layer 4_bot) (tstamp 5B79CAF0) (hatch edge 0.508) + (zone (net 121) (net_name +3V3) (layer 4_bot) (tstamp 5BD003FE) (hatch edge 0.508) (connect_pads (clearance 0.2)) (min_thickness 0.2) (fill (arc_segments 16) (thermal_gap 0.2) (thermal_bridge_width 0.4)) @@ -7068,7 +7246,7 @@ ) ) ) - (zone (net 47) (net_name GND) (layer 4_bot) (tstamp 5B79CAED) (hatch edge 0.508) + (zone (net 47) (net_name GND) (layer 4_bot) (tstamp 5BD003FB) (hatch edge 0.508) (connect_pads (clearance 0.2)) (min_thickness 0.2) (fill (arc_segments 16) (thermal_gap 0.2) (thermal_bridge_width 0.4)) @@ -7078,7 +7256,7 @@ ) ) ) - (zone (net 47) (net_name GND) (layer 4_bot) (tstamp 5B79CAEA) (hatch edge 0.508) + (zone (net 47) (net_name GND) (layer 4_bot) (tstamp 5BD003F8) (hatch edge 0.508) (connect_pads (clearance 0.2)) (min_thickness 0.2) (fill (arc_segments 16) (thermal_gap 0.2) (thermal_bridge_width 0.4)) @@ -7090,7 +7268,7 @@ ) ) ) - (zone (net 122) (net_name +1V8) (layer 2_pwr) (tstamp 5B79CAE7) (hatch edge 0.508) + (zone (net 122) (net_name +1V8) (layer 2_pwr) (tstamp 5BD003F5) (hatch edge 0.508) (priority 2) (connect_pads (clearance 0.2)) (min_thickness 0.2) @@ -7103,7 +7281,7 @@ ) ) ) - (zone (net 47) (net_name GND) (layer 4_bot) (tstamp 5B79CAE4) (hatch edge 0.508) + (zone (net 47) (net_name GND) (layer 4_bot) (tstamp 5BD003F2) (hatch edge 0.508) (priority 2) (connect_pads (clearance 0.2)) (min_thickness 0.2) @@ -7115,7 +7293,7 @@ ) ) ) - (zone (net 121) (net_name +3V3) (layer 4_bot) (tstamp 5B79CAE1) (hatch edge 0.508) + (zone (net 121) (net_name +3V3) (layer 4_bot) (tstamp 5BD003EF) (hatch edge 0.508) (priority 3) (connect_pads (clearance 0.2)) (min_thickness 0.2) @@ -7126,7 +7304,7 @@ ) ) ) - (zone (net 47) (net_name GND) (layer 4_bot) (tstamp 5B79CADE) (hatch edge 0.508) + (zone (net 47) (net_name GND) (layer 4_bot) (tstamp 5BD003EC) (hatch edge 0.508) (priority 3) (connect_pads (clearance 0.2)) (min_thickness 0.2) @@ -7137,7 +7315,7 @@ ) ) ) - (zone (net 121) (net_name +3V3) (layer 4_bot) (tstamp 5B79CADB) (hatch edge 0.508) + (zone (net 121) (net_name +3V3) (layer 4_bot) (tstamp 5BD003E9) (hatch edge 0.508) (priority 3) (connect_pads (clearance 0.2)) (min_thickness 0.2) diff --git a/hardware/portapack_h1/portapack_h1.net b/hardware/portapack_h1/portapack_h1.net index eac64e412..a1dadaf03 100644 --- a/hardware/portapack_h1/portapack_h1.net +++ b/hardware/portapack_h1/portapack_h1.net @@ -1,14 +1,14 @@ (export (version D) (design (source /home/jboone/src/portapack-hackrf/hardware/portapack_h1/portapack_h1.sch) - (date "Sun 19 Aug 2018 12:51:43 PM PDT") - (tool "Eeschema 5.0.0-fee4fd1~66~ubuntu18.04.1") + (date "Thu 25 Oct 2018 10:48:17 AM PDT") + (tool "Eeschema 5.0.1-33cea8e~68~ubuntu18.04.1") (sheet (number 1) (name /) (tstamps /) (title_block (title "PortaPack H1") (company "ShareBrained Technology, Inc.") - (rev 20180819) - (date 2018-08-19) + (rev 20181025) + (date 2018-10-25) (source portapack_h1.sch) (comment (number 1) (value "Copyright © 2014-2018 Jared Boone")) (comment (number 2) (value "License: GNU General Public License, version 2")) @@ -18,8 +18,8 @@ (title_block (title "PortaPack H1") (company "ShareBrained Technology, Inc.") - (rev 20180819) - (date 2018-08-19) + (rev 20181025) + (date 2018-10-25) (source audio.sch) (comment (number 1) (value "Copyright © 2014-2018 Jared Boone")) (comment (number 2) (value "License: GNU General Public License, version 2")) @@ -29,8 +29,8 @@ (title_block (title "PortaPack H1") (company "ShareBrained Technology, Inc.") - (rev 20180819) - (date 2018-08-19) + (rev 20181025) + (date 2018-10-25) (source lcd_sw_sd.sch) (comment (number 1) (value "Copyright © 2014-2018 Jared Boone")) (comment (number 2) (value "License: GNU General Public License, version 2")) @@ -40,8 +40,8 @@ (title_block (title "PortaPack H1") (company "ShareBrained Technology, Inc.") - (rev 20180819) - (date 2018-08-19) + (rev 20181025) + (date 2018-10-25) (source hackrf_if.sch) (comment (number 1) (value "Copyright © 2014-2018 Jared Boone")) (comment (number 2) (value "License: GNU General Public License, version 2")) @@ -51,8 +51,8 @@ (title_block (title "PortaPack H1") (company "ShareBrained Technology, Inc.") - (rev 20180819) - (date 2018-08-19) + (rev 20181025) + (date 2018-10-25) (source power.sch) (comment (number 1) (value "Copyright © 2014-2018 Jared Boone")) (comment (number 2) (value "License: GNU General Public License, version 2")) @@ -62,8 +62,8 @@ (title_block (title "PortaPack H1") (company "ShareBrained Technology, Inc.") - (rev 20180819) - (date 2018-08-19) + (rev 20181025) + (date 2018-10-25) (source gps.sch) (comment (number 1) (value "Copyright © 2014-2018 Jared Boone")) (comment (number 2) (value "License: GNU General Public License, version 2")) @@ -850,12 +850,10 @@ (tstamp 5B682C91)) (comp (ref R22) (value 33R) - (footprint ipc_resc:IPC_RESC160X80X55L25N) + (footprint ipc_resc:IPC_RESC100X50X40L25N) (datasheet ~) (fields - (field (name DNP) DNP) - (field (name Mfr) Yageo) - (field (name Part) RC0603FR-0733RL)) + (field (name DNP) DNP)) (libsource (lib Device) (part R) (description Resistor)) (sheetpath (names /power/) (tstamps /58CFF3E3/)) (tstamp 5B682CA2)) @@ -894,12 +892,12 @@ (sheetpath (names /power/) (tstamps /58CFF3E3/)) (tstamp 5B682CCB)) (comp (ref R21) - (value 33R) - (footprint ipc_resc:IPC_RESC160X80X55L25N) + (value 100R) + (footprint ipc_resc:IPC_RESC100X50X40L25N) (datasheet ~) (fields (field (name Mfr) Yageo) - (field (name Part) RC0603FR-0733RL)) + (field (name Part) RC0402FR-07100RL)) (libsource (lib Device) (part R) (description Resistor)) (sheetpath (names /power/) (tstamps /58CFF3E3/)) (tstamp 5B682CD3)) diff --git a/hardware/portapack_h1/portapack_h1.pdf b/hardware/portapack_h1/portapack_h1.pdf index d17471d797f507d65a63d326582183c3fed473fa..0ae7d1469f82ee8818fb8c959212e0d5ca3c0a81 100644 GIT binary patch literal 345665 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

^G@5P9__6p;!2v6<}IIbAy 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 A5C8xG literal 290759 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

1b

DYFAr)%4VX-u6 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 diff --git a/hardware/portapack_h1/portapack_h1.sch b/hardware/portapack_h1/portapack_h1.sch index 0d279e1bc..94352d602 100644 --- a/hardware/portapack_h1/portapack_h1.sch +++ b/hardware/portapack_h1/portapack_h1.sch @@ -6,8 +6,8 @@ $Descr A4 11693 8268 encoding utf-8 Sheet 1 6 Title "PortaPack H1" -Date "2018-08-20" -Rev "20180820" +Date "2018-10-29" +Rev "20181029" Comp "ShareBrained Technology, Inc." Comment1 "Copyright © 2014-2018 Jared Boone" Comment2 "License: GNU General Public License, version 2" diff --git a/hardware/portapack_h1/power.sch b/hardware/portapack_h1/power.sch index c25c4e6a5..a61c070f4 100644 --- a/hardware/portapack_h1/power.sch +++ b/hardware/portapack_h1/power.sch @@ -6,8 +6,8 @@ $Descr A4 11693 8268 encoding utf-8 Sheet 5 6 Title "PortaPack H1" -Date "2018-08-20" -Rev "20180820" +Date "2018-10-29" +Rev "20181029" Comp "ShareBrained Technology, Inc." Comment1 "Copyright © 2014-2018 Jared Boone" Comment2 "License: GNU General Public License, version 2" @@ -878,11 +878,9 @@ AR Path="/53A8C780/5B682CA2" Ref="R?" Part="1" AR Path="/58CFF3E3/5B682CA2" Ref="R22" Part="1" F 0 "R22" V 4050 6500 50 0000 C CNN F 1 "33R" V 4034 6500 50 0001 C CNN -F 2 "ipc_resc:IPC_RESC160X80X55L25N" V 4080 6500 50 0001 C CNN +F 2 "ipc_resc:IPC_RESC100X50X40L25N" V 4080 6500 50 0001 C CNN F 3 "~" H 4150 6500 50 0001 C CNN F 4 "DNP" V 4150 6500 50 0000 C CNN "DNP" -F 5 "Yageo" V 4150 6500 50 0001 C CNN "Mfr" -F 6 "RC0603FR-0733RL" V 4150 6500 50 0001 C CNN "Part" 1 4150 6500 0 1 1 0 $EndComp @@ -974,11 +972,11 @@ P 3550 7200 AR Path="/53A8C780/5B682CD3" Ref="R?" Part="1" AR Path="/58CFF3E3/5B682CD3" Ref="R21" Part="1" F 0 "R21" V 3450 7200 50 0000 C CNN -F 1 "33R" V 3550 7200 50 0000 C CNN -F 2 "ipc_resc:IPC_RESC160X80X55L25N" V 3480 7200 50 0001 C CNN +F 1 "100R" V 3550 7200 50 0000 C CNN +F 2 "ipc_resc:IPC_RESC100X50X40L25N" V 3480 7200 50 0001 C CNN F 3 "~" H 3550 7200 50 0001 C CNN F 4 "Yageo" V 3550 7200 50 0001 C CNN "Mfr" -F 5 "RC0603FR-0733RL" V 3550 7200 50 0001 C CNN "Part" +F 5 "RC0402FR-07100RL" V 3550 7200 50 0001 C CNN "Part" 1 3550 7200 0 1 1 0 $EndComp