diff --git a/flight-panel-2021-11/Flight Panel 2021-11 Board.pdf b/flight-panel-2021-11/Flight Panel 2021-11 Board.pdf new file mode 100644 index 0000000..4b47739 Binary files /dev/null and b/flight-panel-2021-11/Flight Panel 2021-11 Board.pdf differ diff --git a/flight-panel-2021-11/Flight Panel 2021-11 Schematic.pdf b/flight-panel-2021-11/Flight Panel 2021-11 Schematic.pdf index e16985a..d72dba7 100644 Binary files a/flight-panel-2021-11/Flight Panel 2021-11 Schematic.pdf and b/flight-panel-2021-11/Flight Panel 2021-11 Schematic.pdf differ diff --git a/flight-panel-2021-11/Flight Panel 2021-11.brd b/flight-panel-2021-11/Flight Panel 2021-11.brd index 6a71362..36b46f6 100644 --- a/flight-panel-2021-11/Flight Panel 2021-11.brd +++ b/flight-panel-2021-11/Flight Panel 2021-11.brd @@ -6,7 +6,7 @@ - + @@ -78,14 +78,14 @@ - - + + - + - - + + @@ -174,99 +174,21 @@ - - - - - - -The stars don't look bigger, -but they do look brighter. + + + + + + + + + + + + + - -<h3>SparkFun Aesthetics</h3> -This library contiains non-functional items such as logos, build/ordering notes, frame blocks, etc. -<br> -<br> -We've spent an enormous amount of time creating and checking these footprints and parts, but it is <b> the end user's responsibility</b> to ensure correctness and suitablity for a given componet or application. -<br> -<br>If you enjoy using this library, please buy one of our products at <a href=" www.sparkfun.com">SparkFun.com</a>. -<br> -<br> -<b>Licensing:</b> Creative Commons ShareAlike 4.0 International - https://creativecommons.org/licenses/by-sa/4.0/ -<br> -<br> -You are welcome to use this library for commercial purposes. For attribution, we ask that when you begin to sell your device using our footprint, you email us with a link to the product being sold. We want bragging rights that we helped (in a very small part) to create your 8th world wonder. We would like the opportunity to feature your device on our homepage. - - -<h3>Creative Commons License Template</h3> -<p>CC BY-SA 4.0 License with <a href="https://creativecommons.org/licenses/by-sa/4.0/">link to license</a> and placeholder for designer name.</p> -<p>Devices using: -<ul><li>FRAME_LEDGER</li> -<li>FRAME_LETTER</li></ul></p> -Released under the Creative Commons Attribution Share-Alike 4.0 License - https://creativecommons.org/licenses/by-sa/4.0/ -Designed by: - - - - -<h3>SparkFun Connectors</h3> -This library contains electrically-functional connectors. -<br> -<br> -We've spent an enormous amount of time creating and checking these footprints and parts, but it is <b> the end user's responsibility</b> to ensure correctness and suitablity for a given componet or application. -<br> -<br>If you enjoy using this library, please buy one of our products at <a href=" www.sparkfun.com">SparkFun.com</a>. -<br> -<br> -<b>Licensing:</b> Creative Commons ShareAlike 4.0 International - https://creativecommons.org/licenses/by-sa/4.0/ -<br> -<br> -You are welcome to use this library for commercial purposes. For attribution, we ask that when you begin to sell your device using our footprint, you email us with a link to the product being sold. We want bragging rights that we helped (in a very small part) to create your 8th world wonder. We would like the opportunity to feature your device on our homepage. - - -<h3>Plated Through Hole - 3 Pin Locking Footprint</h3> -Pins are staggered 0.005" off center to lock pins while soldering. -<p>Specifications: -<ul><li>Pin count:3</li> -<li>Pin pitch:0.1"</li> -</ul></p> -<p>Example device(s): -<ul><li>CONN_03</li> -</ul></p> - - - - - - - - - - - - - - - - - - - - - - - - - - ->NAME ->VALUE - - - <h3>SparkFun Electronics' preferred foot prints</h3> This library contains footprints for SparkFun breakout boards, microcontrollers (Arduino, Particle, Teensy, etc.), breadboards, non-RF modules, etc. @@ -411,244 +333,118 @@ Locking footprint for headers. - + +<h3>SparkFun Connectors</h3> +This library contains electrically-functional connectors. +<br> +<br> +We've spent an enormous amount of time creating and checking these footprints and parts, but it is <b> the end user's responsibility</b> to ensure correctness and suitablity for a given componet or application. +<br> +<br>If you enjoy using this library, please buy one of our products at <a href=" www.sparkfun.com">SparkFun.com</a>. +<br> +<br> +<b>Licensing:</b> Creative Commons ShareAlike 4.0 International - https://creativecommons.org/licenses/by-sa/4.0/ +<br> +<br> +You are welcome to use this library for commercial purposes. For attribution, we ask that when you begin to sell your device using our footprint, you email us with a link to the product being sold. We want bragging rights that we helped (in a very small part) to create your 8th world wonder. We would like the opportunity to feature your device on our homepage. - -<h3>CH74HC4067 Breakout Shield</h3> -Fits the <a href="https://www.sparkfun.com/products/9056">SparkFun 16-channel Analog/Digital Multiplexer Breakout</a>. -<br/><br/> -Holes are offset 0.005" to hold pins in place while soldering. + +<h3>Plated Through Hole - 3 Pin Locking Footprint</h3> +Pins are staggered 0.005" off center to lock pins while soldering. <p>Specifications: -<ul><li>Pin count:24</li> +<ul><li>Pin count:3</li> <li>Pin pitch:0.1"</li> +</ul></p> +<p>Example device(s): +<ul><li>CONN_03</li> </ul></p> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ->Name ->Value - - - - -chan0 -chan1 -chan2 -chan3 -chan4 -chan5 -chan6 -chan7 -chan8 -chan9 -chan10 -chan11 -chan12 -chan13 -chan14 -chan15 -com -vcc -gnd -en -s0 -s1 -s2 -s3 + + + + + + + + + + + + + + + + + + + + + + + + + + +>NAME +>VALUE + + + + +<h3>SparkFun Discrete Semiconductors</h3> +This library contains diodes, optoisolators, TRIACs, MOSFETs, transistors, etc. +<br> +<br> +We've spent an enormous amount of time creating and checking these footprints and parts, but it is <b> the end user's responsibility</b> to ensure correctness and suitablity for a given componet or application. +<br> +<br>If you enjoy using this library, please buy one of our products at <a href=" www.sparkfun.com">SparkFun.com</a>. +<br> +<br> +<b>Licensing:</b> Creative Commons ShareAlike 4.0 International - https://creativecommons.org/licenses/by-sa/4.0/ +<br> +<br> +You are welcome to use this library for commercial purposes. For attribution, we ask that when you begin to sell your device using our footprint, you email us with a link to the product being sold. We want bragging rights that we helped (in a very small part) to create your 8th world wonder. We would like the opportunity to feature your device on our homepage. + + + + + + + + + + + + + +>Name +>Value + + + + +<h3>SparkFun Aesthetics</h3> +This library contiains non-functional items such as logos, build/ordering notes, frame blocks, etc. +<br> +<br> +We've spent an enormous amount of time creating and checking these footprints and parts, but it is <b> the end user's responsibility</b> to ensure correctness and suitablity for a given componet or application. +<br> +<br>If you enjoy using this library, please buy one of our products at <a href=" www.sparkfun.com">SparkFun.com</a>. +<br> +<br> +<b>Licensing:</b> Creative Commons ShareAlike 4.0 International - https://creativecommons.org/licenses/by-sa/4.0/ +<br> +<br> +You are welcome to use this library for commercial purposes. For attribution, we ask that when you begin to sell your device using our footprint, you email us with a link to the product being sold. We want bragging rights that we helped (in a very small part) to create your 8th world wonder. We would like the opportunity to feature your device on our homepage. + + +<h3>Creative Commons License Template</h3> +<p>CC BY-SA 4.0 License with <a href="https://creativecommons.org/licenses/by-sa/4.0/">link to license</a> and placeholder for designer name.</p> +<p>Devices using: +<ul><li>FRAME_LEDGER</li> +<li>FRAME_LETTER</li></ul></p> +Released under the Creative Commons Attribution Share-Alike 4.0 License + https://creativecommons.org/licenses/by-sa/4.0/ +Designed by: @@ -845,557 +641,612 @@ design rules under a new name. - - - + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - + + - - - - + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + - - - - - - - + + + + + + + + + + + + + + + + + + + + + + - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + - - - - - - - - - - - - + + + + - - - - - - - + + + + + - - - - - - - - - - + + + + - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - + + + + - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/flight-panel-2021-11/Flight Panel 2021-11.sch b/flight-panel-2021-11/Flight Panel 2021-11.sch index c69d921..114cd97 100644 --- a/flight-panel-2021-11/Flight Panel 2021-11.sch +++ b/flight-panel-2021-11/Flight Panel 2021-11.sch @@ -22,7 +22,7 @@ - + @@ -78,14 +78,14 @@ - - + + - + - - + + @@ -173,11 +173,6 @@ -<h3>Flight Panel Connection Shield - 2021-11 edition</h3> - -<p>A "shield" board for combining an Arduino Uno Rev3 and a <a href="https://www.sparkfun.com/products/9056">16-channel sparkfun multiplexer breakout board</a> into a flight control panel. Provides support for 22 "standard" buttons, (momentary or toggle) 2 rotary encoders, and 3 buttons guarded behind a 2-stage key/lock switch.</p> - -<p>Note the idiosyncratic layout of the header pins - they are all 3 pin headers. This is due to the original wiring for this project using a standard Arduino "sensor shield" and is not actually ideal.</p> <h3>SparkFun Aesthetics</h3> @@ -292,6 +287,677 @@ You are welcome to use this library for commercial purposes. For attribution, we + +<h3>SparkFun Electronics' preferred foot prints</h3> +This library contains footprints for SparkFun breakout boards, microcontrollers (Arduino, Particle, Teensy, etc.), breadboards, non-RF modules, etc. +<br> +<br> +We've spent an enormous amount of time creating and checking these footprints and parts, but it is <b> the end user's responsibility</b> to ensure correctness and suitablity for a given componet or application. +<br> +<br>If you enjoy using this library, please buy one of our products at <a href=" www.sparkfun.com">SparkFun.com</a>. +<br> +<br> +<b>Licensing:</b> Creative Commons ShareAlike 4.0 International - https://creativecommons.org/licenses/by-sa/4.0/ +<br> +<br> +You are welcome to use this library for commercial purposes. For attribution, we ask that when you begin to sell your device using our footprint, you email us with a link to the product being sold. We want bragging rights that we helped (in a very small part) to create your 8th world wonder. We would like the opportunity to feature your device on our homepage. + + +<h3>Arduino Uno-Compatible Footprint</h3> +No holes, no ICSP connections. +<p>Specifications: +<ul><li>Pin count: 32</li> +<li>Pin pitch: 0.1"</li> +<li>Area:2.1x2.35"</li> +</ul></p> +<p>Example device(s): +<ul><li>Arduino Uno R3 Shield</li> +</ul></p> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +GND +GND ++5V +RST +VIN ++3.3V +0 +1 +2 +3 +4 +5 +GND +13 +12 +11 +AREF +10 +9 +8 +7 +6 +5 +4 +3 +2 +TX +RX + + +SDA +SCL + + +IOREF + + + + + + + + +RST +ISP + +USB +POWER JACK +>NAME +>VALUE + + +<h3>Arduino Uno-Compatible Footprint</h3> +No holes, no ICSP connections, no silk labels. +<p>Specifications: +<ul><li>Pin count: 32</li> +<li>Pin pitch: 0.1"</li> +<li>Area:2.1x2.35"</li> +</ul></p> +<p>Example device(s): +<ul><li>Arduino Uno R3 Shield</li> +</ul></p> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +RST +ISP + + +>NAME +>VALUE +USB +PWR JACK + + +<h3>Arduino Uno-Compatible Footprint</h3> +No holes, no ICSP connections. +Locking footprint for headers. +<p>Specifications: +<ul><li>Pin count: 32</li> +<li>Pin pitch: 0.1"</li> +<li>Area:2.1x2.35"</li> +</ul></p> +<p>Example device(s): +<ul><li>Arduino Uno R3 Shield</li> +</ul></p> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +GND +GND ++5V +RST +VIN ++3.3V +0 +1 +2 +3 +4 +5 +Analog In +GND +13 +12 +11 +AREF +10 +9 +8 +7 +6 +5 +4 +3 +2 +TX +RX + + +SDA +SCL + + +IOREF + + + + + + + + +RST +ISP + +>NAME +>VALUE +USB +PWR JACK + + +<h3>Arduino Uno-Compatible Footprint</h3> +No holes, no ICSP connections, no silk labels. +Looking footprint for headers. +<p>Specifications: +<ul><li>Pin count: 32</li> +<li>Pin pitch: 0.1"</li> +<li>Area:2.1x2.35"</li> +</ul></p> +<p>Example device(s): +<ul><li>Arduino Uno R3 Shield</li> +</ul></p> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +RST +ISP + +>NAME +>VALUE +USB +PWR JACK + + + + +<h3>Arduino Uno R3-No ICSP</h3> +<p>Symbol showing all standard pins on Arduino Uno R3 footprint (no ICSP pins)</p> + + + + +>Name +>Value + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +<h3>Arduino R3 Shield Footprint</h3> + +Shield form compatible with the Arduino Uno R3. + +<p>SparkFun Products: +<ul><li><a href=https://www.sparkfun.com/products/13120>MG2639 Cellular Shield</a></li> +<li><a href=https://www.sparkfun.com/products/12898>MIDI Shield</a> +<li><a href=https://www.sparkfun.com/products/11417>R3 Stackable Headers Kit</a> +</ul></p> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <h3>SparkFun Connectors</h3> This library contains electrically-functional connectors. @@ -1314,9 +1980,9 @@ Part Number: HA-522 - -<h3>SparkFun Electronics' preferred foot prints</h3> -This library contains footprints for SparkFun breakout boards, microcontrollers (Arduino, Particle, Teensy, etc.), breadboards, non-RF modules, etc. + +<h3>SparkFun Discrete Semiconductors</h3> +This library contains diodes, optoisolators, TRIACs, MOSFETs, transistors, etc. <br> <br> We've spent an enormous amount of time creating and checking these footprints and parts, but it is <b> the end user's responsibility</b> to ensure correctness and suitablity for a given componet or application. @@ -1329,973 +1995,182 @@ We've spent an enormous amount of time creating and checking these footprints an <br> You are welcome to use this library for commercial purposes. For attribution, we ask that when you begin to sell your device using our footprint, you email us with a link to the product being sold. We want bragging rights that we helped (in a very small part) to create your 8th world wonder. We would like the opportunity to feature your device on our homepage. - -<h3>Arduino Uno-Compatible Footprint</h3> -No holes, no ICSP connections. -<p>Specifications: -<ul><li>Pin count: 32</li> -<li>Pin pitch: 0.1"</li> -<li>Area:2.1x2.35"</li> -</ul></p> -<p>Example device(s): -<ul><li>Arduino Uno R3 Shield</li> -</ul></p> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -GND -GND -+5V -RST -VIN -+3.3V -0 -1 -2 -3 -4 -5 -GND -13 -12 -11 -AREF -10 -9 -8 -7 -6 -5 -4 -3 -2 -TX -RX - - -SDA -SCL - - -IOREF - - - - - - - - -RST -ISP - -USB -POWER JACK ->NAME ->VALUE + + + + + + + + + + + + + + +>Name +>Value - -<h3>Arduino Uno-Compatible Footprint</h3> -No holes, no ICSP connections, no silk labels. -<p>Specifications: -<ul><li>Pin count: 32</li> -<li>Pin pitch: 0.1"</li> -<li>Area:2.1x2.35"</li> -</ul></p> -<p>Example device(s): -<ul><li>Arduino Uno R3 Shield</li> -</ul></p> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -RST -ISP - - ->NAME ->VALUE -USB -PWR JACK + +SOD-323 (Small Outline Diode) + + + +>NAME +>VALUE + + + + + + - -<h3>Arduino Uno-Compatible Footprint</h3> -No holes, no ICSP connections. -Locking footprint for headers. -<p>Specifications: -<ul><li>Pin count: 32</li> -<li>Pin pitch: 0.1"</li> -<li>Area:2.1x2.35"</li> -</ul></p> -<p>Example device(s): -<ul><li>Arduino Uno R3 Shield</li> -</ul></p> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -GND -GND -+5V -RST -VIN -+3.3V -0 -1 -2 -3 -4 -5 -Analog In -GND -13 -12 -11 -AREF -10 -9 -8 -7 -6 -5 -4 -3 -2 -TX -RX - - -SDA -SCL - - -IOREF - - - - - - - - -RST -ISP - ->NAME ->VALUE -USB -PWR JACK + + + + + + + + + + + + +>Name +>Value - -<h3>Arduino Uno-Compatible Footprint</h3> -No holes, no ICSP connections, no silk labels. -Looking footprint for headers. -<p>Specifications: -<ul><li>Pin count: 32</li> -<li>Pin pitch: 0.1"</li> -<li>Area:2.1x2.35"</li> -</ul></p> -<p>Example device(s): -<ul><li>Arduino Uno R3 Shield</li> -</ul></p> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -RST -ISP - ->NAME ->VALUE -USB -PWR JACK + + + + + + + + + + + + + + + + + +>Name +>Value + + + + + + + + + + + + + + + +>Name +>Value + + + + - -<h3>Arduino Uno R3-No ICSP</h3> -<p>Symbol showing all standard pins on Arduino Uno R3 footprint (no ICSP pins)</p> - - - - ->Name ->Value - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + +Conventional Si diode + + +>NAME +>VALUE + + + + + + + + + - -<h3>Arduino R3 Shield Footprint</h3> - -Shield form compatible with the Arduino Uno R3. - -<p>SparkFun Products: -<ul><li><a href=https://www.sparkfun.com/products/13120>MG2639 Cellular Shield</a></li> -<li><a href=https://www.sparkfun.com/products/12898>MIDI Shield</a> -<li><a href=https://www.sparkfun.com/products/11417>R3 Stackable Headers Kit</a> + +<h3>Diode</h3> +<p>These are standard reverse protection diodes and small signal diodes.</p> +<p><b>SparkFun Products:</b> +<ul><li><a href=”https://www.sparkfun.com/products/11177”>SparkFun SparkPunk Sound Kit</a></li> +<li><a href=”https://www.sparkfun.com/products/13231”>SparkFun ESP8266 Thing</a></li> </ul></p> - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + + + + - - - - - - - -<h3>CH74HC4067 Breakout Shield</h3> -Fits the <a href="https://www.sparkfun.com/products/9056">SparkFun 16-channel Analog/Digital Multiplexer Breakout</a>. -<br/><br/> -Holes are offset 0.005" to hold pins in place while soldering. -<p>Specifications: -<ul><li>Pin count:24</li> -<li>Pin pitch:0.1"</li> -</ul></p> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ->Name ->Value - - - - -chan0 -chan1 -chan2 -chan3 -chan4 -chan5 -chan6 -chan7 -chan8 -chan9 -chan10 -chan11 -chan12 -chan13 -chan14 -chan15 -com -vcc -gnd -en -s0 -s1 -s2 -s3 - - - - -CD74HC4067 breakout board - - - - - - - - - - - - - - - - - - - - - - - - - - - - ->Name ->Value - - - - -Sparkfun CD74HC4067 breakout board shield footprint - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - + + - + + + + @@ -2319,14 +2194,6 @@ You are welcome to use this library for commercial purposes. For attribution, we - -<h3>Ground Supply (Earth Ground Symbol)</h3> - - - - ->VALUE - <h3>Digital Ground Supply</h3> @@ -2335,20 +2202,6 @@ You are welcome to use this library for commercial purposes. For attribution, we - -<h3>Ground Supply (Earth Ground style)</h3> -<p>Ground supply with a traditional "earth ground" symbol.</p> - - - - - - - - - - - <h3>Ground Supply Symbol</h3> <p>Generic signal ground supply symbol.</p> @@ -2377,65 +2230,55 @@ You are welcome to use this library for commercial purposes. For attribution, we - + - - - - - + - - - - - - - + + + - - + - - - - - - - - - - - - + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -2450,674 +2293,689 @@ You are welcome to use this library for commercial purposes. For attribution, we - - - + + + - - - + + + - - - + + - - - + + + - - - + + - - - + + + - - - + + - - - + + + - - - + + - - - + + + - - - + + - - + + + - - - + + - - - + + + - - - + + - - - + + + - - - + + - - - + + + - - - + + - - - + + + - - - + + - - - + + + - - - + + - - - + + + - - - + + - - - + + + - - - + + - - - + + + - - - + + - - - + + + - - + + - - - - - - - - - - - + + + - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + - - - + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + - + - - - - - + + + + + + + + + + + + + + + + + + + + + + + + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + - + - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - + + + + - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/flight-panel-2021-11/flight-panel.ino b/flight-panel-2021-11/flight-panel.ino index 97a74bf..8a14fa3 100644 --- a/flight-panel-2021-11/flight-panel.ino +++ b/flight-panel-2021-11/flight-panel.ino @@ -1,75 +1,82 @@ #include -#include +#include Joystick joystick(false); // These defines match the board schematic -#define ENC1 2, 3 -#define ENC2 4, 5 -#define BTN1 6 -#define BTN2 7 -#define BTN3 8 -#define BTN4 9 -#define BTN5 10 -#define BTN6 11 -#define BTN7 12 -#define BTN8 13 -#define BTN9 A0 +#define ENC1 2, 4 +#define ENC2 3, 5 -// Buttons 10 and higher are all on A1 (the MUX signal pin), these are multiplexer channel IDs -#define BTN10 0 -#define BTN11 1 -#define BTN12 2 -#define BTN13 3 -#define BTN14 4 -#define BTN15 5 -#define BTN16 6 -#define BTN17 7 -#define BTN18 8 -#define BTN19 9 -#define BTN20 10 -#define BTN21 11 -#define BTN22 12 -#define KBTN1 13 -#define KBTN2 14 -#define KBTN3 15 +// Matrix defines +#define R0 6 +#define R1 7 +#define R2 8 +#define R3 9 +#define R4 10 +#define C0 A3 +#define C1 A2 +#define C2 A1 +#define C3 A0 + +#define BTN1 R0,C0 +#define BTN2 R1,C0 +#define BTN3 R2,C0 +#define BTN4 R3,C0 +#define BTN5 R4,C0 +#define BTN6 R0,C1 +#define BTN7 R1,C1 +#define BTN8 R2,C1 +#define BTN9 R3,C1 +#define BTN10 R0,C2 +#define BTN11 R1,C2 +#define BTN12 R2,C2 +#define BTN13 R3,C2 +#define BTN14 R0,C3 +#define BTN15 R1,C3 +#define BTN16 R2,C3 +#define BTN17 R3,C3 +#define KBTN1 R4,C1 +#define KBTN2 R4,C2 +#define KBTN3 R4,C3 void setup() { // Encoders joystick.AddEncoder(ENC1, ENCODER_PULSED_SPLIT); joystick.AddEncoder(ENC2, ENCODER_PULSED_SPLIT); - // // Power switches - joystick.AddButton(BTN1, BUTTON_PULSED_DOUBLE_ACTION_SPLIT); - joystick.AddButton(BTN2, BUTTON_PULSED_DOUBLE_ACTION_SPLIT); - joystick.AddButton(BTN3, BUTTON_PULSED_DOUBLE_ACTION_SPLIT); - joystick.AddButton(BTN4, BUTTON_PULSED_DOUBLE_ACTION_SPLIT); - - // // HUD modes - joystick.AddButton(BTN5, BUTTON_PASSTHRU); - joystick.AddButton(BTN6, BUTTON_PASSTHRU); - joystick.AddButton(BTN7, BUTTON_PASSTHRU); - - // // Mining Modules - joystick.AddButton(BTN8, BUTTON_PASSTHRU); - joystick.AddButton(BTN9, BUTTON_PASSTHRU); - joystick.AddButton(BTN10, BUTTON_PASSTHRU, true, mux); - - // // Flight Modes - joystick.AddButton(BTN11, BUTTON_PASSTHRU, true, mux); - joystick.AddButton(BTN12, BUTTON_PASSTHRU, true, mux); - joystick.AddButton(BTN13, BUTTON_PASSTHRU, true, mux); - joystick.AddButton(BTN14, BUTTON_PASSTHRU, true, mux); - - // // Doors & Lights - joystick.AddButton(BTN15, BUTTON_PULSED_DOUBLE_ACTION, true, mux); - joystick.AddButton(BTN16, BUTTON_PULSED_DOUBLE_ACTION_SPLIT, true, mux); - joystick.AddButton(BTN17, BUTTON_PULSED_DOUBLE_ACTION_SPLIT, true, mux); + // We will add the 2-stage "key buttons" in a slightly odd order + // in order to keep columns together for faster scanning. + Matrix* matrix = new Matrix({C0, C1, C2, C3}, 4); - // // Emergency Panel - joystick.AddButton(KBTN1, BUTTON_PASSTHRU); - joystick.AddButton(KBTN2, BUTTON_PASSTHRU); - joystick.AddButton(KBTN3, BUTTON_PASSTHRU); + // Flight modes + joystick.AddMatrixButton(BTN1, matrix, BUTTON_PASSTHRU); + joystick.AddMatrixButton(BTN2, matrix, BUTTON_PASSTHRU); + joystick.AddMatrixButton(BTN3, matrix, BUTTON_PASSTHRU); + joystick.AddMatrixButton(BTN4, matrix, BUTTON_PASSTHRU); + + // Lights and Doors + joystick.AddMatrixButton(BTN5, matrix, BUTTON_PULSED_DOUBLE_ACTION); + joystick.AddMatrixButton(BTN6, matrix, BUTTON_PULSED_DOUBLE_ACTION_SPLIT); + joystick.AddMatrixButton(BTN7, matrix, BUTTON_PULSED_DOUBLE_ACTION_SPLIT); + + // Mining modules (plus first keybutton) + joystick.AddMatrixButton(BTN8, matrix, BUTTON_PASSTHRU); + joystick.AddMatrixButton(BTN9, matrix, BUTTON_PASSTHRU); + joystick.AddMatrixButton(KBTN1, matrix, BUTTON_PASSTHRU); + joystick.AddMatrixButton(BTN10, matrix, BUTTON_PASSTHRU); + + // HUD modes + joystick.AddMatrixButton(BTN11, matrix, BUTTON_PASSTHRU); + joystick.AddMatrixButton(BTN12, matrix, BUTTON_PASSTHRU); + joystick.AddMatrixButton(BTN13, matrix, BUTTON_PASSTHRU); + + // Flight modes (and latter 2 keybuttons) + joystick.AddMatrixButton(KBTN2, matrix, BUTTON_PASSTHRU); + joystick.AddMatrixButton(BTN14, matrix, BUTTON_PULSED_DOUBLE_ACTION_SPLIT); + joystick.AddMatrixButton(BTN15, matrix, BUTTON_PULSED_DOUBLE_ACTION_SPLIT); + joystick.AddMatrixButton(BTN16, matrix, BUTTON_PULSED_DOUBLE_ACTION_SPLIT); + joystick.AddMatrixButton(BTN17, matrix, BUTTON_PULSED_DOUBLE_ACTION_SPLIT); + joystick.AddMatrixButton(KBTN3, matrix, BUTTON_PASSTHRU); joystick.Init(); }