Difference between revisions of "Minnowboard:MinnowMax"
KenMcGuire (talk | contribs) |
(Add information about adding PCIe cards via the Jetsam lure) |
||
(21 intermediate revisions by 8 users not shown) | |||
Line 1: | Line 1: | ||
[[File:Minnowboard.org.png|center|800px]] | [[File:Minnowboard.org.png|center|800px]] | ||
+ | '''NEWS: Interested in Google Summer of Code with MinnowBoard.org? Please visit our [[Minnowboard:GSoC2015|MinnowBoard GSoC2015 Page!]] | ||
{| class="wikitable" style="float: right;font-size: 75%;" width="25%" | {| class="wikitable" style="float: right;font-size: 75%;" width="25%" | ||
Line 104: | Line 105: | ||
* [[Minnowboard:MaxBios|UEFI / Bios - Getting to, options and defaults, telling what version]] | * [[Minnowboard:MaxBios|UEFI / Bios - Getting to, options and defaults, telling what version]] | ||
* [[Minnowboard:MaxLPSSSetup|Setting GPIO pin mux states]] | * [[Minnowboard:MaxLPSSSetup|Setting GPIO pin mux states]] | ||
+ | ---- | ||
+ | * [https://github.com/intel-iot-devkit/mraa|Common Library for accessing GPIOs (outside sysfs)] | ||
| width="50%" style="vertical-align: top;" | | | width="50%" style="vertical-align: top;" | | ||
* [http://www.minnowboard.org MinnowBoard Project Page] | * [http://www.minnowboard.org MinnowBoard Project Page] | ||
Line 119: | Line 122: | ||
* UEFI (Intel) | * UEFI (Intel) | ||
− | ** [ | + | ** [http://firmware.intel.com/projects/minnowboard-max http://firmware.intel.com/projects/minnowboard-max] |
+ | ** Source code is available from the [http://www.tianocore.org TianoCore] project, and can be browsed via the interface at [http://edk2.bluestop.org/diffusion/UDK/ http://edk2.bluestop.org/diffusion/UDK/] | ||
* Coreboot | * Coreboot | ||
** [http://review.coreboot.org/gitweb?p=coreboot.git;a=commit;h=e6df041b8bf8e37debc0d6a871080b64eea7a372 http://review.coreboot.org/gitweb?p=coreboot.git;a=commit;h=e6df041b8bf8e37debc0d6a871080b64eea7a372]] | ** [http://review.coreboot.org/gitweb?p=coreboot.git;a=commit;h=e6df041b8bf8e37debc0d6a871080b64eea7a372 http://review.coreboot.org/gitweb?p=coreboot.git;a=commit;h=e6df041b8bf8e37debc0d6a871080b64eea7a372]] | ||
** [[Minnowboard:MinnowMaxCoreboot|Coreboot build instructions]] | ** [[Minnowboard:MinnowMaxCoreboot|Coreboot build instructions]] | ||
+ | * ByoCore (Byosoft UDK2014) | ||
+ | ** [http://www.byosoft.com.cn/gj10/index.htm http://www.byosoft.com.cn/gj10/index.htm] | ||
==== Cases ==== | ==== Cases ==== | ||
− | * Half cases | + | * For Sale: |
− | ** John 'Warthog9' Hawley's | + | ** Full Case |
− | *** [https://github.com/warthog9/minnowboardmax-case https://github.com/warthog9/minnowboardmax-case] | + | *** [http://store.netgate.com/MBX/Case.aspx Netgate - MinnowBoard MAX Blue Enclosure] |
− | *** [http://www.thingiverse.com/thing:389100 http://www.thingiverse.com/thing:389100] | + | |
− | *** [http://www.shapeways.com/model/2205839/minnowboard-max-half-case.html?li=search-results&materialId=99 http://www.shapeways.com/model/2205839/minnowboard-max-half-case.html?li=search-results&materialId=99] | + | * 3D Printable: |
− | *** https://www.youtube.com/watch?v=WKLuHodiSfc | + | ** Half cases |
+ | *** John 'Warthog9' Hawley's | ||
+ | **** [https://github.com/warthog9/minnowboardmax-case https://github.com/warthog9/minnowboardmax-case] | ||
+ | **** [http://www.thingiverse.com/thing:389100 http://www.thingiverse.com/thing:389100] | ||
+ | **** [http://www.shapeways.com/model/2205839/minnowboard-max-half-case.html?li=search-results&materialId=99 http://www.shapeways.com/model/2205839/minnowboard-max-half-case.html?li=search-results&materialId=99] | ||
+ | **** https://www.youtube.com/watch?v=WKLuHodiSfc | ||
=== Accessories (Lures) === | === Accessories (Lures) === | ||
* Information on Lures can be found on the [[MinnowBoard:MaxLures|MinnowBoard MAX Lure wiki page]] | * Information on Lures can be found on the [[MinnowBoard:MaxLures|MinnowBoard MAX Lure wiki page]] | ||
+ | <br> | ||
+ | PCIe expansion cards can be added via the Jetsam lure: by itself, Jetsam allows both half and full-height mPCIe cards; full desktop-style x1 PCIe cards can be added via a mPCIe-PCIe adapter such as those available from [http://amfeltec.com/adapters/ Amfeltec] (e.g. [http://amfeltec.com/products/flexible-minipci-express-to-pci-express-adapter/ Flexible MiniPCI Express to PCI Express Adapter]). Although the electrical interface only supports x1, cards with up to x16 physical connections may be installed via an adapter such as those made by [http://www.startech.com/Cards-Adapters/Slot-Extension/ StarTech] (e.g. [http://www.startech.com/Cards-Adapters/Slot-Extension/PCI-Express-X1-to-X16-Low-Profile-Slot-Extension-Adapter~PEX1TO162 PCI Express X1 to X16 Low Profile Slot Extension Adapter]). | ||
<br> | <br> | ||
<br> | <br> | ||
Line 148: | Line 161: | ||
{| | {| | ||
|- style="vertical-align:top;" | |- style="vertical-align:top;" | ||
− | |The Minnowboard Max uses a 5.5 x 2.1mm barrel 5V power plug, and if bundled will ship with a 2.5A power supply. It is a Center Positive power supply, indicating that the center (tip) of the output plug is positive (+), the outer barrel is negative (-). | + | |The Minnowboard Max uses a 5.5 x 2.1mm barrel 5V power plug (+/- .25V or 4.75 - 5.25V), and if bundled will ship with a 2.5A power supply. It is a Center Positive power supply, indicating that the center (tip) of the output plug is positive (+), the outer barrel is negative (-).<br/> The 2.5A recommendation is just a simple calculation of:<br/> 500mA (USB2) + 900mA (USB3) + 500mA (core) + 500mA (other peripherals) = 2400mA |
| [[File:Centre-positive.svg|thumb|120px|Center Positive 5V connector]] | | [[File:Centre-positive.svg|thumb|120px|Center Positive 5V connector]] | ||
|} | |} | ||
Line 161: | Line 174: | ||
{| | {| | ||
|- style="vertical-align:top;" | |- style="vertical-align:top;" | ||
− | | rowspan="2" | The serial console port uses a 3.3v FTDI serial cable with a 6-pin connector. This is a reasonably common cable, also used on the Arduino Pro, Arduino Pro Mini and Arduino Lilypad. <br/> | + | | rowspan="2" | The serial console port (UART0) uses a 3.3v FTDI serial cable with a 6-pin connector. This is a reasonably common cable, also used on the Arduino Pro, Arduino Pro Mini and Arduino Lilypad. <br/> |
'''Pins and signal names are referenced from the cable''' | '''Pins and signal names are referenced from the cable''' | ||
* '''Pin 1:''' Ground (GND) (Closest to SATA connector) | * '''Pin 1:''' Ground (GND) (Closest to SATA connector) | ||
Line 179: | Line 192: | ||
* '''Sparkfun:''' [https://www.sparkfun.com/products/9717 https://www.sparkfun.com/products/9717] | * '''Sparkfun:''' [https://www.sparkfun.com/products/9717 https://www.sparkfun.com/products/9717] | ||
<br/><br/> | <br/><br/> | ||
+ | * '''/dev/ttyS0''' | ||
* '''Baud rate:''' 115200 | * '''Baud rate:''' 115200 | ||
* '''Hardware Flow Control:''' No | * '''Hardware Flow Control:''' No | ||
Line 190: | Line 204: | ||
{| | {| | ||
|- style="vertical-align:top;" | |- style="vertical-align:top;" | ||
− | | rowspan="2" | The serial console port can | + | | rowspan="2" | The serial console port (UART0) can be used with a 3.3v FTDI serial cable with a 4-pin connector. This is a reasonably common cable, also used on the Arduino Pro, Arduino Pro Mini and Arduino Lilypad. If you are using one of the 4-wire adapters, here are the connections: <br/> |
* '''Pin 1:BLACK''' - Ground (GND) (Closest to the SATA connector) | * '''Pin 1:BLACK''' - Ground (GND) (Closest to the SATA connector) | ||
Line 204: | Line 218: | ||
<br/><br/> | <br/><br/> | ||
+ | * '''/dev/ttyS0''' | ||
* '''Baud rate:''' 115200 | * '''Baud rate:''' 115200 | ||
* '''Hardware Flow Control:''' No | * '''Hardware Flow Control:''' No | ||
Line 211: | Line 226: | ||
| [[File:MinnowMax_-_Serial_Pinout_A1.png|thumb|400px|MinnowMax A1 Serial Pinout]] | | [[File:MinnowMax_-_Serial_Pinout_A1.png|thumb|400px|MinnowMax A1 Serial Pinout]] | ||
|} | |} | ||
+ | |||
+ | ==== High Speed UART1 ==== | ||
+ | |||
+ | Available on the Low Speed Expansion this Uart is 16550 compatible and appears as /dev/ttyS4 | ||
+ | |||
+ | CTS/RTS signaling is available | ||
+ | |||
+ | ==== High Speed UART2 ==== | ||
+ | |||
+ | Available on the Low Speed Expansion this Uart is 16550 compatible and appears as /dev/ttyS5 | ||
==== D1 (LED) ==== | ==== D1 (LED) ==== | ||
Line 240: | Line 265: | ||
! width="20%" | Name | ! width="20%" | Name | ||
! width="5%" | Pin | ! width="5%" | Pin | ||
− | ! width="5%" | Linux GPIO # | + | ! width="5%" | Linux GPIO # (<= 3.17) |
− | ! width="5%" | Linux GPIO # | + | ! width="5%" | Linux GPIO # (>= 3.18) |
+ | ! width="5%" | Linux GPIO # (>= 3.18) | ||
+ | ! width="5%" | Linux GPIO # (<= 3.17) | ||
! width="5%" | Pin | ! width="5%" | Pin | ||
! width="20%" | Name | ! width="20%" | Name | ||
Line 249: | Line 276: | ||
| Gnd | | Gnd | ||
| style="border-style: solid; border-width: 1px;text-align:center;" | 1 | | style="border-style: solid; border-width: 1px;text-align:center;" | 1 | ||
− | | colspan= | + | | colspan=4 | |
| style="border-style: solid; border-width: 1px;text-align:center;" | 2 | | style="border-style: solid; border-width: 1px;text-align:center;" | 2 | ||
| Gnd | | Gnd | ||
Line 257: | Line 284: | ||
| VCC | | VCC | ||
| style="border-style: solid; border-width: 1px;text-align:center;" | 3 | | style="border-style: solid; border-width: 1px;text-align:center;" | 3 | ||
− | | colspan= | + | | colspan=4 | |
| style="border-style: solid; border-width: 1px;text-align:center;" | 4 | | style="border-style: solid; border-width: 1px;text-align:center;" | 4 | ||
| +3V3 | | +3V3 | ||
Line 266: | Line 293: | ||
| style="border-style: solid; border-width: 1px;text-align:center;" | 5 | | style="border-style: solid; border-width: 1px;text-align:center;" | 5 | ||
| style="border-style: solid; border-width: 1px;text-align:center;background-color: lightblue;" | 220 | | style="border-style: solid; border-width: 1px;text-align:center;background-color: lightblue;" | 220 | ||
+ | | style="border-style: solid; border-width: 1px;text-align:center;background-color: lightblue;" | 476 | ||
+ | | style="border-style: solid; border-width: 1px;text-align:center;background-color: #FF99CC;" | 481 | ||
| style="border-style: solid; border-width: 1px;text-align:center;background-color: #FF99CC;" | 225 | | style="border-style: solid; border-width: 1px;text-align:center;background-color: #FF99CC;" | 225 | ||
| style="border-style: solid; border-width: 1px;text-align:center;" | 6 | | style="border-style: solid; border-width: 1px;text-align:center;" | 6 | ||
Line 275: | Line 304: | ||
| style="border-style: solid; border-width: 1px;text-align:center;" | 7 | | style="border-style: solid; border-width: 1px;text-align:center;" | 7 | ||
| style="border-style: solid; border-width: 1px;text-align:center;background-color: lightblue;" | 221 | | style="border-style: solid; border-width: 1px;text-align:center;background-color: lightblue;" | 221 | ||
+ | | style="border-style: solid; border-width: 1px;text-align:center;background-color: lightblue;" | 477 | ||
+ | | style="border-style: solid; border-width: 1px;text-align:center;background-color: #FF99CC;" | 480 | ||
| style="border-style: solid; border-width: 1px;text-align:center;background-color: #FF99CC;" | 224 | | style="border-style: solid; border-width: 1px;text-align:center;background-color: #FF99CC;" | 224 | ||
| style="border-style: solid; border-width: 1px;text-align:center;" | 8 | | style="border-style: solid; border-width: 1px;text-align:center;" | 8 | ||
Line 284: | Line 315: | ||
| style="border-style: solid; border-width: 1px;text-align:center;" | 9 | | style="border-style: solid; border-width: 1px;text-align:center;" | 9 | ||
| style="border-style: solid; border-width: 1px;text-align:center;background-color: lightblue;" | 222 | | style="border-style: solid; border-width: 1px;text-align:center;background-color: lightblue;" | 222 | ||
+ | | style="border-style: solid; border-width: 1px;text-align:center;background-color: lightblue;" | 478 | ||
+ | | style="border-style: solid; border-width: 1px;text-align:center;background-color: lightblue;" | 483 | ||
| style="border-style: solid; border-width: 1px;text-align:center;background-color: lightblue;" | 227 | | style="border-style: solid; border-width: 1px;text-align:center;background-color: lightblue;" | 227 | ||
| style="border-style: solid; border-width: 1px;text-align:center;" | 10 | | style="border-style: solid; border-width: 1px;text-align:center;" | 10 | ||
Line 293: | Line 326: | ||
| style="border-style: solid; border-width: 1px;text-align:center;" | 11 | | style="border-style: solid; border-width: 1px;text-align:center;" | 11 | ||
| style="border-style: solid; border-width: 1px;text-align:center;background-color: lightblue;" | 223 | | style="border-style: solid; border-width: 1px;text-align:center;background-color: lightblue;" | 223 | ||
+ | | style="border-style: solid; border-width: 1px;text-align:center;background-color: lightblue;" | 479 | ||
+ | | style="border-style: solid; border-width: 1px;text-align:center;background-color: lightblue;" | 484 | ||
| style="border-style: solid; border-width: 1px;text-align:center;background-color: lightblue;" | 226 | | style="border-style: solid; border-width: 1px;text-align:center;background-color: lightblue;" | 226 | ||
| style="border-style: solid; border-width: 1px;text-align:center;" | 12 | | style="border-style: solid; border-width: 1px;text-align:center;" | 12 | ||
Line 302: | Line 337: | ||
| style="border-style: solid; border-width: 1px;text-align:center;" | 13 | | style="border-style: solid; border-width: 1px;text-align:center;" | 13 | ||
| style="border-style: solid; border-width: 1px;text-align:center;background-color: #FF99CC;" | 243 | | style="border-style: solid; border-width: 1px;text-align:center;background-color: #FF99CC;" | 243 | ||
+ | | style="border-style: solid; border-width: 1px;text-align:center;background-color: #FF99CC;" | 499 | ||
+ | | style="border-style: solid; border-width: 1px;text-align:center;background-color: lightblue;" | 472 | ||
| style="border-style: solid; border-width: 1px;text-align:center;background-color: lightblue;" | 216 | | style="border-style: solid; border-width: 1px;text-align:center;background-color: lightblue;" | 216 | ||
| style="border-style: solid; border-width: 1px;text-align:center;" | 14 | | style="border-style: solid; border-width: 1px;text-align:center;" | 14 | ||
Line 311: | Line 348: | ||
| style="border-style: solid; border-width: 1px;text-align:center;" | 15 | | style="border-style: solid; border-width: 1px;text-align:center;" | 15 | ||
| style="border-style: solid; border-width: 1px;text-align:center;background-color: #FF99CC;" | 242 | | style="border-style: solid; border-width: 1px;text-align:center;background-color: #FF99CC;" | 242 | ||
+ | | style="border-style: solid; border-width: 1px;text-align:center;background-color: #FF99CC;" | 498 | ||
+ | | style="border-style: solid; border-width: 1px;text-align:center;background-color: lightblue;" | 473 | ||
| style="border-style: solid; border-width: 1px;text-align:center;background-color: lightblue;" | 217 | | style="border-style: solid; border-width: 1px;text-align:center;background-color: lightblue;" | 217 | ||
| style="border-style: solid; border-width: 1px;text-align:center;" | 16 | | style="border-style: solid; border-width: 1px;text-align:center;" | 16 | ||
Line 320: | Line 359: | ||
| style="border-style: solid; border-width: 1px;text-align:center;" | 17 | | style="border-style: solid; border-width: 1px;text-align:center;" | 17 | ||
| style="border-style: solid; border-width: 1px;text-align:center;background-color: #FF99CC;" | 229 | | style="border-style: solid; border-width: 1px;text-align:center;background-color: #FF99CC;" | 229 | ||
+ | | style="border-style: solid; border-width: 1px;text-align:center;background-color: #FF99CC;" | 485 | ||
+ | | style="border-style: solid; border-width: 1px;text-align:center;background-color: lightblue;" | 475 | ||
| style="border-style: solid; border-width: 1px;text-align:center;background-color: lightblue;" | 219 | | style="border-style: solid; border-width: 1px;text-align:center;background-color: lightblue;" | 219 | ||
| style="border-style: solid; border-width: 1px;text-align:center;" | 18 | | style="border-style: solid; border-width: 1px;text-align:center;" | 18 | ||
Line 329: | Line 370: | ||
| style="border-style: solid; border-width: 1px;text-align:center;" | 19 | | style="border-style: solid; border-width: 1px;text-align:center;" | 19 | ||
| style="border-style: solid; border-width: 1px;text-align:center;background-color: #FF99CC;" | 228 | | style="border-style: solid; border-width: 1px;text-align:center;background-color: #FF99CC;" | 228 | ||
+ | | style="border-style: solid; border-width: 1px;text-align:center;background-color: #FF99CC;" | 484 | ||
+ | | style="border-style: solid; border-width: 1px;text-align:center;background-color: lightblue;" | 474 | ||
| style="border-style: solid; border-width: 1px;text-align:center;background-color: lightblue;" | 218 | | style="border-style: solid; border-width: 1px;text-align:center;background-color: lightblue;" | 218 | ||
| style="border-style: solid; border-width: 1px;text-align:center;" | 20 | | style="border-style: solid; border-width: 1px;text-align:center;" | 20 | ||
Line 338: | Line 381: | ||
| style="border-style: solid; border-width: 1px;text-align:center;" | 21 | | style="border-style: solid; border-width: 1px;text-align:center;" | 21 | ||
| style="border-style: solid; border-width: 1px;text-align:center;background-color: lightblue;" | 82 | | style="border-style: solid; border-width: 1px;text-align:center;background-color: lightblue;" | 82 | ||
+ | | style="border-style: solid; border-width: 1px;text-align:center;background-color: lightblue;" | 338 | ||
+ | | style="border-style: solid; border-width: 1px;text-align:center;background-color: lightblue;" | 504 | ||
| style="border-style: solid; border-width: 1px;text-align:center;background-color: lightblue;" | 248 | | style="border-style: solid; border-width: 1px;text-align:center;background-color: lightblue;" | 248 | ||
| style="border-style: solid; border-width: 1px;text-align:center;" | 22 | | style="border-style: solid; border-width: 1px;text-align:center;" | 22 | ||
Line 347: | Line 392: | ||
| style="border-style: solid; border-width: 1px;text-align:center;" | 23 | | style="border-style: solid; border-width: 1px;text-align:center;" | 23 | ||
| style="border-style: solid; border-width: 1px;text-align:center;background-color: lightblue;" | 83 | | style="border-style: solid; border-width: 1px;text-align:center;background-color: lightblue;" | 83 | ||
+ | | style="border-style: solid; border-width: 1px;text-align:center;background-color: lightblue;" | 339 | ||
+ | | style="border-style: solid; border-width: 1px;text-align:center;background-color: lightblue;" | 505 | ||
| style="border-style: solid; border-width: 1px;text-align:center;background-color: lightblue;" | 249 | | style="border-style: solid; border-width: 1px;text-align:center;background-color: lightblue;" | 249 | ||
| style="border-style: solid; border-width: 1px;text-align:center;" | 24 | | style="border-style: solid; border-width: 1px;text-align:center;" | 24 | ||
Line 353: | Line 400: | ||
|- | |- | ||
| GPIO / Wakeup | | GPIO / Wakeup | ||
− | | | + | | GPIO_S5_2 |
| style="border-style: solid; border-width: 1px;text-align:center;" | 25 | | style="border-style: solid; border-width: 1px;text-align:center;" | 25 | ||
| style="border-style: solid; border-width: 1px;text-align:center;background-color: lightblue;" | 84 | | style="border-style: solid; border-width: 1px;text-align:center;background-color: lightblue;" | 84 | ||
+ | | style="border-style: solid; border-width: 1px;text-align:center;background-color: lightblue;" | 340 | ||
+ | | style="border-style: solid; border-width: 1px;text-align:center;background-color: lightblue;" | 464 | ||
| style="border-style: solid; border-width: 1px;text-align:center;background-color: lightblue;" | 208 | | style="border-style: solid; border-width: 1px;text-align:center;background-color: lightblue;" | 208 | ||
| style="border-style: solid; border-width: 1px;text-align:center;" | 26 | | style="border-style: solid; border-width: 1px;text-align:center;" | 26 | ||
Line 388: | Line 437: | ||
* '''A99215TR-ND''' - CONN PLUG 60POS .8MM FH 8H GOLD | * '''A99215TR-ND''' - CONN PLUG 60POS .8MM FH 8H GOLD | ||
* '''A99209TR-ND''' - CONN PLUG 60POS .8MM FH 7H GOLD | * '''A99209TR-ND''' - CONN PLUG 60POS .8MM FH 7H GOLD | ||
+ | |||
===== Layout ===== | ===== Layout ===== | ||
{| width="85%" style="text-align:center;" | {| width="85%" style="text-align:center;" | ||
Line 642: | Line 692: | ||
==== Power Connection J2 (SIP2_FAN) ==== | ==== Power Connection J2 (SIP2_FAN) ==== | ||
This is a 5V 2-pin pin out originally intended to be used for a CPU fan. The single core (E3815) and the dual core (E3825) however use passive heat sinks, and thus do not, under normal circumstances, need a fan. It is theoretically possible to pull upwards of 1A through this port, however you should refer to the released schematics to verify that number before attempting to use this for anything. | This is a 5V 2-pin pin out originally intended to be used for a CPU fan. The single core (E3815) and the dual core (E3825) however use passive heat sinks, and thus do not, under normal circumstances, need a fan. It is theoretically possible to pull upwards of 1A through this port, however you should refer to the released schematics to verify that number before attempting to use this for anything. | ||
+ | |||
+ | The pins have a 2.54mm pitch. These [https://www.sparkfun.com/products/10571 Screw Terminals 2.54mm Pitch] are an example of a compatible component. | ||
'''NOTE:''' This is not populated on the Single, or Dual core boards. This can be populated if needed, and will provide the above power | '''NOTE:''' This is not populated on the Single, or Dual core boards. This can be populated if needed, and will provide the above power | ||
Line 652: | Line 704: | ||
! width="25%" | Description | ! width="25%" | Description | ||
|- | |- | ||
− | | | + | | +5VSB |
| style="border-style: solid; border-width: 1px;text-align:center;" | 1 | | style="border-style: solid; border-width: 1px;text-align:center;" | 1 | ||
| style="border-style: solid; border-width: 1px;text-align:center;" | 2 | | style="border-style: solid; border-width: 1px;text-align:center;" | 2 | ||
− | | | + | | Ground |
|} | |} | ||
+ | |||
+ | '''NOTE:''' If you are using an A0 board, the pinout is reversed. Always verify pin output, preferably with a multimeter, before using J2. | ||
==== Switch Jumper J5 ==== | ==== Switch Jumper J5 ==== | ||
Line 697: | Line 751: | ||
This is a jumper point, mostly available for debugging, that enables the sd card write protect explictily. This is not populated on production boards. | This is a jumper point, mostly available for debugging, that enables the sd card write protect explictily. This is not populated on production boards. | ||
+ | |||
+ | ==== RTC Battery Holder ==== | ||
+ | |||
+ | The RTC Battery Holder is not populated on the shipping boards, however it is a fairly simple part to add | ||
+ | |||
+ | '''Known Compatible parts:''' | ||
+ | {| border="1" style="border-collapse:collapse" | ||
+ | ! Part number | ||
+ | ! Part Data Sheet | ||
+ | ! Where to purchase from | ||
+ | |- | ||
+ | | BS-1225-PC | ||
+ | | [http://www.memoryprotectiondevices.com/datasheets/BS-1225-PC-datasheet.pdf Data Sheet] | ||
+ | | [http://www.digikey.com/product-detail/en/BS-1225-PC/BS-1225-PC-ND/3029215 http://www.digikey.com/product-detail/en/BS-1225-PC/BS-1225-PC-ND/3029215] | ||
+ | |- | ||
+ | |} | ||
+ | |||
+ | '''NOTE:''' While the battery holder is not neccisarily populated, it's also possible a resistor needed for the correct option may also be missing. Check [[Minnowboard:MinnowMax#RTC|MinnowBoard MAX RTC Hardware Known Issues]] | ||
==== GPIO for 1GB vs 2GB ==== | ==== GPIO for 1GB vs 2GB ==== | ||
Line 707: | Line 779: | ||
1 - 2/4GB configuration | 1 - 2/4GB configuration | ||
− | the 2GB and 4GB configurations are the same since the 4GB configuration is a double die of the 2GB. You only need to initialize enough memory in order for Linux to boot and program the I2C EEPROM. | + | the 2GB and 4GB configurations are the same since the 4GB configuration |
+ | is a double die of the 2GB. You only need to initialize enough memory | ||
+ | in order for Linux to boot and program the I2C EEPROM. | ||
How a firmware should initialize the board for memory given the above: | How a firmware should initialize the board for memory given the above: | ||
Line 721: | Line 795: | ||
The MinnowBoard Max is intended to comply with all requirements and guidelines set forth by the Open Source Hardware Association (http://www.oshwa.org/) | The MinnowBoard Max is intended to comply with all requirements and guidelines set forth by the Open Source Hardware Association (http://www.oshwa.org/) | ||
+ | ==== A2 ==== | ||
+ | <br> | ||
+ | * [[media:002-0004205_reva2_SCH_PUBLIC.pdf|Schematic (PDF)]] | ||
+ | * [[media:MinnowMax_RevA2_dsn.zip|Schematic (Orcad DSN)]] | ||
+ | * [[media:MinnowMax_RevA2_brd.zip|Board Layout (Allegro BRD)]] | ||
+ | * [[media:MinnowMax_RevA2_mfg.zip|Gerbers]] | ||
+ | * [[media:MinnowMax_RevA2_bom.zip|Bill of Materials]] | ||
+ | <br> | ||
+ | <br> | ||
+ | |||
+ | ==== A1 ==== | ||
<br> | <br> | ||
* [[media:MinnowMax_RevA1_sch.pdf|Schematic (PDF)]] | * [[media:MinnowMax_RevA1_sch.pdf|Schematic (PDF)]] | ||
Line 811: | Line 896: | ||
---- | ---- | ||
==== A2 ==== | ==== A2 ==== | ||
+ | ---- | ||
+ | ==== A3 ==== | ||
+ | ---- | ||
+ | ==== A4 ==== | ||
---- | ---- |
Revision as of 17:01, 2 March 2015
NEWS: Interested in Google Summer of Code with MinnowBoard.org? Please visit our MinnowBoard GSoC2015 Page!
Category | Feature |
---|---|
Core Logic |
|
Integrated Intel® HD Graphics With Open Source hardware-accelerated drivers for Linux OS | |
Memory |
|
8 MB SPI Flash System Firmware Memory | |
Video | Intel® HD Graphics HDMI (micro HDMI connector) |
Audio | Digital via HDMI |
Analog To be available separately via MinnowBoard MAX Lure (sold separately) | |
I/O | 1 – Micro SDSDIO |
1 – SATA2 3Gb/sec (Port multipliers not supported via on-board SATA) | |
1 – USB 3.0 (host) | |
1 – USB 2.0 (host) | |
1 – Serial debug via FTDI cable (sold separately) | |
10/100/1000 Ethernet RJ-45 connector | |
Experimenter Features |
8 – Buffered GPIO pins 2 pins support PWM |
I2C & SPI bus | |
2 - 16550 HS UARTS one with CTS/RTS | |
System Firmware Flash Programming Header | |
Board Dimensions | 99 x 74mm (2.9 x 3.9in) |
Temperature Range | 0 – 70 deg C Contact CirtcuitCo for industrial temp range needs |
Power | 5V DC Sold separately in configurations appropriate to your region |
Operating Systems |
|
System Boot Firmware | UEFI Firmware |
Coreboot (in development) | |
Note: These features may be subject to change without notice. Hardware design files will be made available shortly after the board enters final production. Current estimate of public availability is June 2014. |
Contents
- 1 Resources
- 2 Accessories (Lures)
- 3 Hardware Notes
- 3.1 Board Layout
- 3.2 Power Plug
- 3.3 6-Wire Serial Console
- 3.4 4-Wire Serial Console
- 3.5 High Speed UART1
- 3.6 High Speed UART2
- 3.7 D1 (LED)
- 3.8 D2 (LED)
- 3.9 HDMI
- 3.10 Ethernet
- 3.11 Low Speed Expansion (Top)
- 3.12 High Speed Expansion (Bottom)
- 3.13 SPI Header to Firmware flashing J1
- 3.14 Power Connection J2 (SIP2_FAN)
- 3.15 Switch Jumper J5
- 3.16 SATA LED J6
- 3.17 SD Card Write Protect J7
- 3.18 RTC Battery Holder
- 3.19 GPIO for 1GB vs 2GB
- 4 Design Files
- 5 Known Issues
Resources
|
Firmware
- UEFI (Intel)
- http://firmware.intel.com/projects/minnowboard-max
- Source code is available from the TianoCore project, and can be browsed via the interface at http://edk2.bluestop.org/diffusion/UDK/
- Coreboot
- ByoCore (Byosoft UDK2014)
Cases
- For Sale:
- Full Case
- 3D Printable:
Accessories (Lures)
- Information on Lures can be found on the MinnowBoard MAX Lure wiki page
PCIe expansion cards can be added via the Jetsam lure: by itself, Jetsam allows both half and full-height mPCIe cards; full desktop-style x1 PCIe cards can be added via a mPCIe-PCIe adapter such as those available from Amfeltec (e.g. Flexible MiniPCI Express to PCI Express Adapter). Although the electrical interface only supports x1, cards with up to x16 physical connections may be installed via an adapter such as those made by StarTech (e.g. PCI Express X1 to X16 Low Profile Slot Extension Adapter).
Hardware Notes
Board Layout
Power Plug
The Minnowboard Max uses a 5.5 x 2.1mm barrel 5V power plug (+/- .25V or 4.75 - 5.25V), and if bundled will ship with a 2.5A power supply. It is a Center Positive power supply, indicating that the center (tip) of the output plug is positive (+), the outer barrel is negative (-). The 2.5A recommendation is just a simple calculation of: 500mA (USB2) + 900mA (USB3) + 500mA (core) + 500mA (other peripherals) = 2400mA |
- North American Power Supply from Digikey - 5V@2.5A -CUI EPSA050250U-P5P-EJ
- European Power Supply from Digikey - 5V@2.5A - CUI EPSA050250UE-P5P-EJ
- Powe Supply from Sparkfun - 5V@2A - TOL-12889
- Power Supply from Adafruit - 5V@2A - PRODUCT-ID:276
- Power Supply from SeeedStudio - 5V@2A SKU: POW06182B
6-Wire Serial Console
The serial console port (UART0) uses a 3.3v FTDI serial cable with a 6-pin connector. This is a reasonably common cable, also used on the Arduino Pro, Arduino Pro Mini and Arduino Lilypad. Pins and signal names are referenced from the cable
|
4-Wire Serial Console
The serial console port (UART0) can be used with a 3.3v FTDI serial cable with a 4-pin connector. This is a reasonably common cable, also used on the Arduino Pro, Arduino Pro Mini and Arduino Lilypad. If you are using one of the 4-wire adapters, here are the connections:
The RED wire is power and is internally not connected on the MinnowMax. Places that carry the appropriate Cable:
|
High Speed UART1
Available on the Low Speed Expansion this Uart is 16550 compatible and appears as /dev/ttyS4
CTS/RTS signaling is available
High Speed UART2
Available on the Low Speed Expansion this Uart is 16550 compatible and appears as /dev/ttyS5
D1 (LED)
This is the power indicator, when lit power is being supplied to the board
D2 (LED)
This is the On/Off status indicator. When lit the system is running.
HDMI
The MinnowMax uses a Type D micro-HDMI connector. This is a standard port, for which cables and adapters can be readily picked up from most electronics stores
Ethernet
The MinnowMax uses a Realtek RTL8111GS-CG PCIe based chipset to provide 10/100/1000 ethernet connection. the results of some performance tests using iperf are available HERE.
Low Speed Expansion (Top)
The low speed connector uses 0.1" (2.54 mm) Male header pins in a 2 x 13 array, for a total of 26 pins. Pin 1 is the in the row closest to the power connector, and closest to the board edge.
NOTE: All I/O on the Low Speed Expansion is at 3.3V levels. THE PINS ARE NOT 5v TOLERANT
Layout
Description | Name | Pin | Linux GPIO # (<= 3.17) | Linux GPIO # (>= 3.18) | Linux GPIO # (>= 3.18) | Linux GPIO # (<= 3.17) | Pin | Name | Description |
---|---|---|---|---|---|---|---|---|---|
Ground | Gnd | 1 | 2 | Gnd | Ground | ||||
+5V Power | VCC | 3 | 4 | +3V3 | + 3.3V Power | ||||
SPI Chip Select 1 | GPIO_SPI_CS# | 5 | 220 | 476 | 481 | 225 | 6 | GPIO_UART1_TXD | UART Transmit |
Master In / Slave Out | GPIO_SPI_MISO | 7 | 221 | 477 | 480 | 224 | 8 | GPIO_UART1_RXD | UART Receive |
Master Out / Slave In | GPIO_SPI_MOSI | 9 | 222 | 478 | 483 | 227 | 10 | GPIO_UART1_CTS | CTS / GPIO |
SPI Clock | GPIO_SPI_CLK | 11 | 223 | 479 | 484 | 226 | 12 | GPIO_UART1_RTS | RTS / GPIO |
Clock / GPIO | GPIO_I2C_SCL (I2C #5) | 13 | 243 | 499 | 472 | 216 | 14 | GPIO_I2S_CLK | Clock / GPIO |
Data / GPIO | GPIO_I2C_SDA (I2C #5) | 15 | 242 | 498 | 473 | 217 | 16 | GPIO_I2S_FRM | Frame / GPIO |
UART Transmit / GPIO | GPIO_UART2_TXD | 17 | 229 | 485 | 475 | 219 | 18 | GPIO_I2S_DO | Data Out / GPIO |
UART Receive / GPIO | GPIO_UART2_RXD | 19 | 228 | 484 | 474 | 218 | 20 | GPIO_I2S_DI | Data In / GPIO |
GPIO / Wakeup | GPIO_S5_0 | 21 | 82 | 338 | 504 | 248 | 22 | GPIO_PWM0 | PWM / GPIO |
GPIO / Wakeup | GPIO_S5_1 | 23 | 83 | 339 | 505 | 249 | 24 | GPIO_PWM1 | PWM / GPIO |
GPIO / Wakeup | GPIO_S5_2 | 25 | 84 | 340 | 464 | 208 | 26 | GPIO_IBL_8254 | Timer / GPIO |
NOTE: Pins 5-26 are shown above with their PRIMARY configuration, any pin may be switched to being a generic GPIO as well. This would give a total of 22 GPIOs, with two of those being PWM capable.
Denotes Pins that have issues with firmware prior to 0.71 (8/13/2014 build) | |
Denotes Pins that have been tested and work as expected. Remember to drive the pin to ground. |
High Speed Expansion (Bottom)
The High speed connector uses a TE Connectivity compatible 60-pin header. The generally recommended header is the 3-5177986-2, or the 60POS .8MM FH 8H GOLD part that rises 7.85mm, allowing for 3/8" standoffs at the corners to be used to attach the lure to the minnowboard.
Link to connector used: http://www.digikey.com/product-detail/en/5177985-2/A99190CT-ND/1894007. mating connectors are listed at the bottom but include:
- A99196DKR-ND - CONN PLUG 60POS .8MM FH 5H GOLD
- A115336-ND - CONN PLUG 60POS DL BRD/BRD VERT
- 5179030-2-ND - CONN PLUG 60POS FH .8MM BRD-BRD
- 5177984-2-ND - CONN PLUG 60POS VERT FH .8MM
- A99215CT-ND - CONN PLUG 60POS .8MM FH 8H GOLD <-- Recommended connector
- A99209CT-ND - CONN PLUG 60POS .8MM FH 7H GOLD
- A99203CT-ND - CONN PLUG 60POS .8MM FH 6H GOLD
- A99196CT-ND - CONN PLUG 60POS .8MM FH 5H GOLD
- A99215TR-ND - CONN PLUG 60POS .8MM FH 8H GOLD
- A99209TR-ND - CONN PLUG 60POS .8MM FH 7H GOLD
Layout
Description | Pin | Pin | Description |
---|---|---|---|
Ground | 1 | 2 | Ground |
mSATA_TX_P | 3 | 4 | mSATA_RX_P |
mSATA_TX_N | 5 | 6 | mSATA_RX_N |
+5V SB | 7 | 8 | +5V SB |
mPCIE_REFCLK_P | 9 | 10 | USB_HOST_DP |
mPCIE_REFCLK_N | 11 | 12 | USB_HOST_DN |
Ground | 13 | 14 | Ground |
mPCIE_TX_P | 15 | 16 | mPCIE_RX_P |
mPCIE_TX_N | 17 | 18 | mPCIE_RX_N |
+5V SB | 19 | 20 | +5V SB |
EXP_I2C_SCL (I2C #6) | 21 | 22 | mPCIE_WAKEB |
EXP_I2C_SDA (I2C #6) | 23 | 24 | mPCIe_CLKREQ3_B |
Ground | 25 | 26 | Ground |
EXP_GPIO1 | 27 | 28 | EXP_GPIO3 |
EXP_GPIO2 | 29 | 30 | EXP_GPIO4 |
+5V SB | 31 | 32 | +5V SB |
EXP_GPIO6 (XDP_H_OBSDATA_A1) | 33 | 34 | EXP_GPIO5 (XDP_H_OBSDATA_A0) |
EXP_GPIO7 (XDP_H_OBSDATA_A2) | 35 | 36 | EXP_GPIO8 (XDP_H_OBSDATA_A3) |
Ground | 37 | 38 | Ground |
XDP_H_PRDYB | 39 | 40 | XDP_H_PREQB_PB |
PMC_RSMRST | 41 | 42 | FP_PWRBTN |
+5V SB | 43 | 44 | +5V SB |
PMC_CORE_PWROK | 45 | 46 | PMC_RSTBTN |
PMC_PLTRST_R_V1P8 | 47 | 48 | ILB_RTC_TESTB |
Ground | 49 | 50 | Ground |
51 | 52 | XDP_H_TRSTB | |
53 | 54 | XDP_H_TCK | |
+V1P8A | 55 | 56 | XDP_H_TMS |
+V1P8A | 57 | 58 | XDP_H_TDI |
Ground | 59 | 60 | Ground |
GPIO Mapping
Name | Pin | Linux GPIO # | Linux GPIO # | Pin | Name |
---|---|---|---|---|---|
EXP_I2C_SCL (I2C #6) | 21 | 245 | |||
EXP_I2C_SDA (I2C #6) | 23 | 244 | |||
[...] | |||||
EXP_GPIO1 | 27 | 109 | 111 | 28 | EXP_GPIO3 |
EXP_GPIO2 | 29 | 110 | 112 | 30 | EXP_GPIO4 |
[...] | |||||
EXP_GPIO6 | 33 | 105 | 106 | 34 | EXP_GPIO5 |
EXP_GPIO7 | 35 | 107 | 108 | 36 | EXP_GPIO8 |
NOTE: The I2C pins have the same property as the pins in the Low Speed Expansion Header, in that their primary purpose is I2C, but can be switched to GPIO in the firmware. In firmware this is the I2C #6
Denotes Pins that have issues with firmware prior to 0.71 (8/13/2014 build) | |
Denotes Pins that have been tested and work as expected. Remember to drive the pin to ground. |
SPI Header to Firmware flashing J1
This is a pinned out port to allow for external flashing of the boot spi. Dediprog and Flyswatter devices have been tested and verified to work with this.
Layout
Description | Pin | Pin | Description |
---|---|---|---|
DDP_1V8 | 1 | 2 | Ground |
DDP_SPI_CS | 3 | 4 | DDP_SPI_CLK |
DDP_SPI_MISO | 5 | 6 | DDP_SPI_MOSI |
7 | 8 | DDP_IO3L |
Power Connection J2 (SIP2_FAN)
This is a 5V 2-pin pin out originally intended to be used for a CPU fan. The single core (E3815) and the dual core (E3825) however use passive heat sinks, and thus do not, under normal circumstances, need a fan. It is theoretically possible to pull upwards of 1A through this port, however you should refer to the released schematics to verify that number before attempting to use this for anything.
The pins have a 2.54mm pitch. These Screw Terminals 2.54mm Pitch are an example of a compatible component.
NOTE: This is not populated on the Single, or Dual core boards. This can be populated if needed, and will provide the above power
Layout
Description | Pin | Pin | Description |
---|---|---|---|
+5VSB | 1 | 2 | Ground |
NOTE: If you are using an A0 board, the pinout is reversed. Always verify pin output, preferably with a multimeter, before using J2.
Switch Jumper J5
This pin is intended to allow for power toggling via a remote switch or relay. It is fundamentally no different than pressing SW1, and behaves identically.
NOTE: This is not populated, by default.
Layout
Description | Pin | Pin | Description |
---|---|---|---|
+5VSB | 1 | 2 | Ground |
SATA LED J6
J6 header is allows for an external LED to be connected to the SATA interface's activity signal. when a LED is connected to this header it will blink based on the amount of SATA read/write activity.
NOTE: This is not populated, by default.
Layout
Description | Pin | Pin | Description |
---|---|---|---|
1 | 2 | +V1P8S |
SD Card Write Protect J7
This is a jumper point, mostly available for debugging, that enables the sd card write protect explictily. This is not populated on production boards.
RTC Battery Holder
The RTC Battery Holder is not populated on the shipping boards, however it is a fairly simple part to add
Known Compatible parts:
Part number | Part Data Sheet | Where to purchase from |
---|---|---|
BS-1225-PC | Data Sheet | http://www.digikey.com/product-detail/en/BS-1225-PC/BS-1225-PC-ND/3029215 |
NOTE: While the battery holder is not neccisarily populated, it's also possible a resistor needed for the correct option may also be missing. Check MinnowBoard MAX RTC Hardware Known Issues
GPIO for 1GB vs 2GB
This is mostly for firmware development, but there is a specific GPIO set, at manufacture time, that determines 1GB or 2GB(or more) memory sizes.
GPIO_S5_5 is the GPIO that will determine the memory configuration. 0 - 1GB configuration 1 - 2/4GB configuration the 2GB and 4GB configurations are the same since the 4GB configuration is a double die of the 2GB. You only need to initialize enough memory in order for Linux to boot and program the I2C EEPROM.
How a firmware should initialize the board for memory given the above:
- Read the SPD, if it's valid use that and DO NOT do anything with the GPIO_S5_5 pin
- IF the SPD is invalid/empty, read GPIO_S5_5
- If GPIO_S5_5 is 0 - use the hard coded 1GB configuration
- If GPIO_S5_5 is 1 - use a hard coded 2GB configuration (even if the board has 4GB of memory)
Design Files
NOTE: All design files are released under Creative Commons CC-BY-SA (http://creativecommons.org/)
The MinnowBoard Max is intended to comply with all requirements and guidelines set forth by the Open Source Hardware Association (http://www.oshwa.org/)
A2
A1
Known Issues
MinnowBoard-MAX Open Bugs (Bugzilla)
- Bugzilla:
We currently use the YoctoProject Bugzilla instance at http://bugzilla.yoctoproject.org - Bug Triage link can be found at: https://wiki.yoctoproject.org/wiki/Minnow_Bug_Triage
Firmware
See the bug list, linked above.
NVRam issue
There are some reports of corruption of the UEFI firmware
Symptoms are no display, 2 leds on, and this serial output trace :
>>>>SecStartup >>>>MemoryInit Done >>>>BdsEntry
Hints :
- https://dockr.eurogiciel.fr/blogs/embedded/tizen-minnowboard-max
- http://lists.elinux.org/pipermail/elinux-minnowboard/Week-of-Mon-20140721/000203.html
- http://lists.elinux.org/pipermail/elinux-minnowboard/Week-of-Mon-20140804/000236.html
- http://irc.minnowboard.org/%23minnowboard.2014-08-07.log.html
- http://lists.elinux.org/pipermail/elinux-minnowboard/Week-of-Mon-20140811/000309.html# Important - Firmware Update
- https://bugzilla.yoctoproject.org/show_bug.cgi?id=6585#c26
Resources :
- http://www.elinux.org/Minnowboard:SPI_Boot_flash : said to apply to Max
- http://www.elinux.org/Minnowboard:Hardware_Revisions
- MinnowBoard Bugs
This should be resolved in firmware's after 8/13/2014
Monitors
There is an issue with regards to some monitors not being able to display from the MinnowBoard MAX. Most monitors seem to be fine, but some will either completely not show a display (even at firmware boot-up) or may only show a display after the operating system is booting.
This turns out to be an issue with regards to HDMI vs. DVI detection and initialization. A work around is being added into the firmware to resolve this.
This is fixed in firmware's after 8/13/2014
There have been some additional reports that some monitors may still not be working in the FIRMWARE, but are working once the OS (Linux) comes up. If you have a monitor that is having a problem please file a bug on our Bugzilla and be sure to include the make, model, native resolution and the exact cabling used to connect the monitor to the MinnowBoard MAX
All Hardware revisions
RTC
- The RTC may not function correctly (when a battery is added) because resistor R278 (back side of the board) may be missing. Adding a 1K or 2K resistorshould resolve this.
USB
There is a potential issue when using a powered USB Hub. If the hub, erroneously, provides power over the USB 3 or USB 2 input connector, the MinnowBoard MAX will use that as power. This is in violation of the USB spec, and will be rectified in a later revision of the MinnowBoard MAX.
Hubs known to cause this:
- iXCC 7 Port USB 3.0 Hub
It is suggested that you check powered USB hubs to confirm that they do not provide power back to the board, as described, and if a hub is found to do this, please report it here. A hub found to be doing this should be used without being externally powered if used at all.
NOTE: This is not an indication that hubs do not work, or that USB does not work. This is merely an indication that some powered hubs violate the USB spec, and there is a flaw (a diode that should be added) in the MAX design. USB Hubs work fine.
- Another issue might appear if a wireless USB dongle operating at 2.4 GHz (e.g., a wireless receiver for input devices) is connected to the USB2.0 port together with an USB3.0 device attached to the USB3.0 host connector. In this case the device connected to the USB dongle can become unresponsive. A solution is to connect the dongle to the USB2.0 port using an extension cable or a USB hub.
NOTE: This problem is caused by radio frequency interference from the USB3.0 connection. This seems to be a general USB3.0 issue. Information on this can be found at Intel.com