Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
gen7_board-arm_2.0 [2016/01/31 21:33] – [Uploading Firmware] Use Makefile instead of Makefile-ARM. Traumflug | gen7_board-arm_2.0 [2023/10/30 23:53] (current) – external edit (unknown user) | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ======Gen7 Board-ARM v2.0====== | + | ====== Gen7 Board-ARM v2.0 ====== |
- | {{ : | + | {{ : |
- | {{ : | + | {{ : |
[[Generation 7 Electronics]] Board-ARM v2.0 is the first Gen7 based on an ARM, an LPC1114FN28. Like all earlier Gen7s it's still easily DIY-able, because this FN28 comes with through-hole pins spaced at 0.1" (2.54\_mm). | [[Generation 7 Electronics]] Board-ARM v2.0 is the first Gen7 based on an ARM, an LPC1114FN28. Like all earlier Gen7s it's still easily DIY-able, because this FN28 comes with through-hole pins spaced at 0.1" (2.54\_mm). | ||
Line 8: | Line 8: | ||
Compared to earlier Gen7s it's considerably faster. It has been demonstrated to deliver as many as 130' | Compared to earlier Gen7s it's considerably faster. It has been demonstrated to deliver as many as 130' | ||
- | Status: | + | Status: |
- | ======Features===== | + | ===== Features ===== |
+ | {{ : | ||
+ | |||
+ | * LPC1114FN28 MCU, a 32-bit ARM CortexM0+. | ||
+ | * Onboard USB-serial adapter, implemented with an MCP2200. | ||
* Support for up to 4 stepper drivers in the " | * Support for up to 4 stepper drivers in the " | ||
* Support for extruder and heated bed. | * Support for extruder and heated bed. | ||
* Support for two SPI devices (e.g. SD card and display). | * Support for two SPI devices (e.g. SD card and display). | ||
+ | * Support for always-on fans (5,\_7\_or 12\_volts). | ||
* No power supply wiring neccessary, just plug an unmodified ATX supply in and be ready. | * No power supply wiring neccessary, just plug an unmodified ATX supply in and be ready. | ||
* Software power on/off. | * Software power on/off. | ||
* Oversized high current tracks and MOSFETs for reliable, cool operations. | * Oversized high current tracks and MOSFETs for reliable, cool operations. | ||
* Board size 110\_x 90\_mm. | * Board size 110\_x 90\_mm. | ||
+ | |||
+ | ===== How to Get It ===== | ||
+ | |||
+ | {{ :Gen7:Gen7 2.0 Layout.png? | ||
+ | {{ :Gen7:Gen7 2.0 PCB.jpeg? | ||
+ | |||
+ | ==== Buying ==== | ||
+ | |||
+ | PCBs, Components and Connector kits are currently sold on the [[start|front page]] of this wiki. | ||
+ | |||
+ | ==== Making a PCB yourself ==== | ||
+ | |||
+ | As Gen7 is designed to be manufactured on a RepRap, you can make PCBs yourself instead of [[start|buying]]. How to do this on a RepRap or a general milling machine is described at [[PCB Manufacturing]]. Gerbers, PDFs and such are in [[https:// | ||
+ | |||
+ | Yet another way is to purchase from one of the many houses specialized in manufacturing prototype PCBs. Gen7 is single sided, so this won't cost a fortune. If you want to sell excess copies, ask [[mah@jump-ing.de|Traumflug]] for a commercial license. | ||
+ | |||
+ | ==== Components ==== | ||
+ | |||
+ | If you want to assemble the collection yourself, see the [[#Parts Lists|Parts Lists]] section. | ||
+ | |||
+ | ===== Parts Lists ===== | ||
+ | |||
+ | To assemble or verify these lists, open the layout with gEDA/PCB and export a " | ||
+ | |||
+ | Special considerations: | ||
+ | |||
+ | * The Pololu Stepper Drivers come with their male headers, so there' | ||
+ | * Resistors with 0.25\_watts are on the safe side, even if the footprint name reads " | ||
+ | * The Pololus can be operated with up to 35\_volts, some compatible stepper drivers even with up to 45\_V, so you may want like-rated electrolytic capacitors. | ||
+ | * Most Pololus require heatsinks, so make sure you get them with the Pololus or get separate ones. | ||
+ | |||
+ | ==== Electronic Components ==== | ||
+ | |||
+ | This list is ordered to match the order of assembly. | ||
+ | |||
+ | ^Name ^Count | ||
+ | |MCP2200 | ||
+ | |Wire 0.56\_mm | ||
+ | |Resistor 10\_Ohms | ||
+ | |Resistor 560\_Ohms | ||
+ | |Resistor 1\_kOhms | ||
+ | |Resistor 4.7\_kOhms | 1|RT2 | | | ||
+ | |Resistor 10\_kOhms | ||
+ | |Resistor 1\_MOhms | ||
+ | |Diode 1N4004 | ||
+ | |Coil 10\_uH | ||
+ | |Crystal 12\_MHz | ||
+ | |Ceramic Capacitor 0.1\_uF | 10|C8 C9 C10 C11 C12 C13 C14 C16 C17 C19 | | | ||
+ | |Ceramic Capacitor 22\_pF | 2|C3 C4 | | | ||
+ | |LED 3\_mm Green | ||
+ | |LED 3\_mm Yellow | ||
+ | |Reset Switch | ||
+ | |Electrolytic Capacitor 10\_uF | 4|C2 C5 CT1 CT2 | | | ||
+ | |Electrolytic Capacitor 100\_uF | 3|C1 C6 C7 | | | ||
+ | |Jumper 1\_Pair | ||
+ | |Jumper 2\_Pairs | ||
+ | |Jumper 3\_Pairs | ||
+ | |Pololu Headers | ||
+ | |LP2950L-33-T92 | ||
+ | |MOSFET 2N7000 | ||
+ | |Socket 28\_Pins | ||
+ | |LPC1114FN28 | ||
+ | |MOSFET IRLB\_8743 | ||
+ | |||
+ | ==== Connectors ==== | ||
+ | |||
+ | This list is ordered to match the order of assembly. | ||
+ | |||
+ | ^Name | ||
+ | |Molex KK254 2 Pin Header | ||
+ | |Cable Connector for the above | 6| | ||
+ | |Crimp Contact for the above | 12| | ||
+ | |Molex KK254 4 Pin Header | ||
+ | |Cable Connector for the above | 4| | ||
+ | |Crimp Contact for the above | 16| | ||
+ | |Molex KK254 6 Pin Header | ||
+ | |USB-B Connector | ||
+ | |Header Molex 26-48-1045 (2\_Pin) | | ||
+ | |Cable Connector for the above | 1| | ||
+ | |Crimp Contact for the above | 2| | ||
+ | |Screw Terminal 2\_Pin | ||
+ | |Disk Power Header | ||
+ | |ATX12V Header 8\_Pin | ||
+ | |ATX24 Header | ||
+ | |||
+ | ==== Miscellaneous ==== | ||
+ | |||
+ | To connect your Gen7 with a PC, you need a generic USB device cable. | ||
+ | |||
+ | Last not least, you need stepper drivers. Since Pololu offered their [[https:// | ||
+ | |||
+ | A few commonly seen drivers: | ||
+ | |||
+ | ^Name/ | ||
+ | |[[https:// | ||
+ | |[[http:// | ||
+ | |[[https:// | ||
+ | |[[http:// | ||
+ | |||
+ | |||
+ | ===== Assembly ===== | ||
+ | |||
+ | As this is done only once in a Gen7's lifetime and comes with lots of pictures, assembly instructions have been moved over to the [[Gen7 Board-ARM 2.0 Assembly]] page. | ||
- | ======Commissioning====== | + | ===== Commissioning ===== |
Soldering completed? Fine. All obvious flaws, if any, fixed? Excellent. | Soldering completed? Fine. All obvious flaws, if any, fixed? Excellent. | ||
- | =====Voltage Measurements===== | + | ==== Voltage Measurements ==== |
I'ts good manufacturing practice to do some measurements on the board before inserting the central chip, the MCU. Not only because the MCU is the most expensive part on the board, also because this parts connects many other parts together, so a fault in one section harms then other sections, too. | I'ts good manufacturing practice to do some measurements on the board before inserting the central chip, the MCU. Not only because the MCU is the most expensive part on the board, also because this parts connects many other parts together, so a fault in one section harms then other sections, too. | ||
Line 31: | Line 139: | ||
For all these measurements a cheapo voltage meter is entirely sufficient. | For all these measurements a cheapo voltage meter is entirely sufficient. | ||
- | ====Measure Standby Voltages==== | + | === Measure Standby Voltages === |
* Plug the ATX24 connector of your ATX power supply (PSU) into the board. PSUs with only 20 pins on this connector work, too. | * Plug the ATX24 connector of your ATX power supply (PSU) into the board. PSUs with only 20 pins on this connector work, too. | ||
Line 47: | Line 155: | ||
With these steps done you can be reasonably sure to not burn your LPC1114 when inserting. | With these steps done you can be reasonably sure to not burn your LPC1114 when inserting. | ||
- | ====Measure Full Voltages==== | + | === Measure Full Voltages === |
Next step is to measure voltages with the power supply turned on. | Next step is to measure voltages with the power supply turned on. | ||
Line 57: | Line 165: | ||
At this point the PSU should turn on, which can be recognized by its fan turning on as well. The green LED near the yellow LED should light up as well. | At this point the PSU should turn on, which can be recognized by its fan turning on as well. The green LED near the yellow LED should light up as well. | ||
- | {{ : | + | {{ : |
As before, measure all voltages shown in the picture. The 12\_V and the two 3.3\_V measurements repeat on each stepper driver socket. Also measure all the Standby voltages again, including the zero volts pins on the LPC1114 socket. | As before, measure all voltages shown in the picture. The 12\_V and the two 3.3\_V measurements repeat on each stepper driver socket. Also measure all the Standby voltages again, including the zero volts pins on the LPC1114 socket. | ||
Line 65: | Line 173: | ||
Having this done you can remove the paperclip from the ATX24 connector. The controller will turn on and off the PSU on it's own before too long. | Having this done you can remove the paperclip from the ATX24 connector. The controller will turn on and off the PSU on it's own before too long. | ||
- | =====Verifying USB and Serial===== | + | ==== Verifying USB and Serial ==== |
That's right, the USB adapter can be tested before inserting the LPC1114. | That's right, the USB adapter can be tested before inserting the LPC1114. | ||
- | ==== USB Adapter Checks | + | === USB Adapter Checks === |
* Connect the power supply, the yellow LED should light up. | * Connect the power supply, the yellow LED should light up. | ||
Line 78: | Line 186: | ||
That's it already, if the device appears, it works. | That's it already, if the device appears, it works. | ||
- | ==== USB and Serial Troubleshooting | + | === USB and Serial Troubleshooting === |
* [[gen7_troubleshooting# | * [[gen7_troubleshooting# | ||
- | =====Inserting the LPC1114===== | + | |
+ | ==== Inserting the LPC1114 ==== | ||
Finally the central part, the LPC1114 can be inserted into its socket. These chips have a groove at one end. This groove should point to the ATX24 connector. | Finally the central part, the LPC1114 can be inserted into its socket. These chips have a groove at one end. This groove should point to the ATX24 connector. | ||
- | Sometimes it's neccessary to bend both pin rows a bit closer together. | + | Sometimes it's neccessary to bend both pin rows a bit closer together |
Then press the chip carefully in and ... hardware is completed. Yikes! | Then press the chip carefully in and ... hardware is completed. Yikes! | ||
- | ======Firmware====== | + | ===== Firmware ===== |
Gen7-ARM runs [[Teacup Firmware]]. Not yet fully integrated into Configtool, yet, so configuring and uploading a firmware takes several steps. | Gen7-ARM runs [[Teacup Firmware]]. Not yet fully integrated into Configtool, yet, so configuring and uploading a firmware takes several steps. | ||
- | =====Configuring Firmware===== | + | ==== Prerequisites ==== |
+ | |||
+ | You need a compiler, of course. While it's likely possible to get away with Arduino IDE somehow, please prefer [[Compiler for ARM#GNU ARM Embedded Toolchain|GNU ARM Embedded Toolchain]], | ||
+ | |||
+ | Having this toolchain available you're ready to go. | ||
+ | |||
+ | ==== Configuring Firmware ==== | ||
For this part we can use the convenient Configtool. | For this part we can use the convenient Configtool. | ||
Line 106: | Line 221: | ||
In the unlikely case you have to adjust something on the board, e.g. the pinout, you have to do this with a text editor directly in // | In the unlikely case you have to adjust something on the board, e.g. the pinout, you have to do this with a text editor directly in // | ||
- | =====Compiling Firmware==== | + | ==== Compiling Firmware === |
// | // | ||
Line 118: | Line 233: | ||
It should build flawlessly, taking only a few seconds. | It should build flawlessly, taking only a few seconds. | ||
- | =====Uploading Firmware===== | + | ==== Uploading Firmware ==== |
The LPC1114 comes with a bootloader already installed, so unlike with AVRs, no bootloader upload neccessary. If you didn't already, find and install a tool named // | The LPC1114 comes with a bootloader already installed, so unlike with AVRs, no bootloader upload neccessary. If you didn't already, find and install a tool named // | ||
Line 134: | Line 249: | ||
For details on uploading firmware in general see [[LPC1114 Bootloader]]. Technical detail: setting the programming jumper pulls PIO0_1 low; PIO0_1 is also used for the Step signal of the Z axis. | For details on uploading firmware in general see [[LPC1114 Bootloader]]. Technical detail: setting the programming jumper pulls PIO0_1 low; PIO0_1 is also used for the Step signal of the Z axis. | ||
- | ======TODO====== | + | ===== TODO ===== |
Board-ARM v2.0 is the latest development, | Board-ARM v2.0 is the latest development, | ||
- | ===Make auto-reset work=== | + | === Make auto-reset work === |
For an idea using the serial control lines see http:// | For an idea using the serial control lines see http:// | ||
- | ======History====== | + | ===== History ===== |
- | ====December 2012==== | + | ==== December 2012 ==== |
{{ gen7: | {{ gen7: | ||
Line 151: | Line 266: | ||
The first ARM based Generation 7 Electronics was created. It was mostly a Gen7 v1.4.1 with the ATmega replaced by an NXP LPC1114FN28. It worked on the spot. | The first ARM based Generation 7 Electronics was created. It was mostly a Gen7 v1.4.1 with the ATmega replaced by an NXP LPC1114FN28. It worked on the spot. | ||
- | ====February 2013==== | + | ==== February 2013 ==== |
- | {{ youtube> | + | {{ youtube> |
RepRap user Bobc was the first to run a printer with a Gen7-ARM. | RepRap user Bobc was the first to run a printer with a Gen7-ARM. | ||
See also his [[http:// | See also his [[http:// | ||
+ | |||
+ | ==== Mid 2015 ==== | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | Instead of slowly fading away from DIYers memories due to the lack of new versions/ | ||
gen7_board-arm_2.0.1454272415.txt.gz · Last modified: 2018/05/27 16:10 (external edit)