User Tools

Site Tools

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
gen7_board-arm_2.0 [2016/02/23 20:41] – [How to Get It] Describe on making PCBs DIY. Traumfluggen7_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 ======
  
 {{ :gen7:gen7_board-arm_2.0_front.jpeg?direct&300|Generation 7 Electronics version 2.0 in all its glory!}} {{ :gen7:gen7_board-arm_2.0_front.jpeg?direct&300|Generation 7 Electronics version 2.0 in all its glory!}}
Line 10: Line 10:
 Status: shipping. Status: shipping.
  
-====== Features =====+===== Features =====
  
 {{ :gen7:gen7_2.0_features.jpeg?direct&800 |All the features of a Gen7-ARM v2.0 and where they're located.}} {{ :gen7:gen7_2.0_features.jpeg?direct&800 |All the features of a Gen7-ARM v2.0 and where they're located.}}
Line 25: Line 25:
   * Board size 110\_x 90\_mm.   * Board size 110\_x 90\_mm.
  
-====== How to Get It ======+===== How to Get It =====
  
-{{ :Gen7:Gen7 2.0 Layout.png?300|Preview of the layout.}}+{{ :Gen7:Gen7 2.0 Layout.png?300|Preview of the layout, seen from the component side.}}
 {{ :Gen7:Gen7 2.0 PCB.jpeg?300|An isolation milled Gen7-ARM PCB.}} {{ :Gen7:Gen7 2.0 PCB.jpeg?300|An isolation milled Gen7-ARM PCB.}}
 +
 +==== Buying ====
  
 PCBs, Components and Connector kits are currently sold on the [[start|front page]] of this wiki. PCBs, Components and Connector kits are currently sold on the [[start|front page]] of this wiki.
  
-===== PCBs =====+==== 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://github.com/Traumflug/Generation_7_Electronics/tree/Gen7Board-ARM-2.0/release%20documents|Gen7's Github repository]]. 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://github.com/Traumflug/Generation_7_Electronics/tree/Gen7Board-ARM-2.0/release%20documents|Gen7's Github repository]].
Line 38: Line 40:
 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. 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 =====+==== Components ====
  
-If you want to assemble the collection yourself, see the [[#Parts Lists | Parts Lists]] section.+If you want to assemble the collection yourself, see the [[#Parts Lists|Parts Lists]] section.
  
-===== Making a PCB Do It Yourself =====+===== Parts Lists =====
  
-TBD +To assemble or verify these lists, open the layout with gEDA/PCB and export a "BOM". This will give you a list of all required components. 
-====Components =====+ 
 +Special considerations: 
 + 
 +  * The Pololu Stepper Drivers come with their male headers, so there's no need to purchase these separately. 
 +  * Resistors with 0.25\_watts are on the safe side, even if the footprint name reads "0.125"
 +  * 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  ^Designations   ^Remarks ^ 
 +|MCP2200                  1|U7             |This is the USB-TTL adapter chip.| 
 +|Wire 0.56\_mm       | 60\_cm|               |For 9 bridges.| 
 +|Resistor 10\_Ohms        2|R11 R12        | | 
 +|Resistor 560\_Ohms  |      3|R14 R19 R22    | | 
 +|Resistor 1\_kOhms        7|R2 R4 R6 R8 R10 R16 RT1 | | 
 +|Resistor 4.7\_kOhms |      1|RT2            | | 
 +|Resistor 10\_kOhms  |      3|R1 R3 R30      | | 
 +|Resistor 1\_MOhms        2|R5 R7          | | 
 +|Diode 1N4004        |      2|D1 D2          | | 
 +|Coil 10\_uH              1|L1             | | 
 +|Crystal 12\_MHz          1|U6             | | 
 +|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          3|LED2 LED5 LED6 | | 
 +|LED 3\_mm Yellow    |      1|LED3           | | 
 +|Reset Switch        |      1|RESET          | | 
 +|Electrolytic Capacitor 10\_uF | 4|C2 C5 CT1 CT2 | | 
 +|Electrolytic Capacitor 100\_uF | 3|C1 C6 C7 | | 
 +|Jumper 1\_Pair      |      1|J20            | | 
 +|Jumper 2\_Pairs          1|Fan            | | 
 +|Jumper 3\_Pairs          4|J1...J12       | | 
 +|Pololu Headers      |      8|U2 U3 U4 U5    |You want 8x 8\_pins.|  
 +|LP2950L-33-T92      |      1|Q3             |3.3\_V voltage regulator.| 
 +|MOSFET 2N7000            1|Q4             | | 
 +|Socket 28\_Pins          1|U1             |300\_mil wide version.| 
 +|LPC1114FN28              1|               |This is the main MCU.| 
 +|MOSFET IRLB\_8743        2|Q1 Q2          | 
 + 
 +==== Connectors ==== 
 + 
 +This list is ordered to match the order of assembly. 
 + 
 +^Name                             ^Count ^Designations ^ 
 +|Molex KK254 2 Pin Header             6|Z_MIN Y_MIN X_MIN TEMP_EXT TEMP_BED EXT_RESET | 
 +|Cable Connector for the above    |     6| 
 +|Crimp Contact for the above      |    12| 
 +|Molex KK254 4 Pin Header             4|X_MOT Y_MOT Z_MOT E_MOT | 
 +|Cable Connector for the above    |     4| 
 +|Crimp Contact for the above      |    16| 
 +|Molex KK254 6 Pin Header             6|SPI1 SPI2 | 
 +|USB-B Connector                  |     1|CONN4 | 
 +|Header Molex 26-48-1045 (2\_Pin) |     1|HEATER_EXT | 
 +|Cable Connector for the above    |     1| 
 +|Crimp Contact for the above      |     2| 
 +|Screw Terminal 2\_Pin            |     1|HEATER_BED | 
 +|Disk Power Header                |     1|CONN2 | 
 +|ATX12V Header 8\_Pin                 1|CONN3 | 
 +|ATX24 Header                         1|CONN1 | 
 + 
 +==== 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://www.pololu.com/product/1201|A4983 Stepper Motor Driver Carrier]], it's board size and pinout has become kind of a de-facto standard, so many other vendors designed with the same metrics, but other stepper driver chips. All of these compatibles should work fine on a Gen7 board, you can even mix them (different types for each axis). 
 + 
 +A few commonly seen drivers: 
 + 
 +^Name/Link   ^Remarks ^ 
 +|[[https://www.pololu.com/product/1182|Pololu A4988 Stepper Motor Driver Carrier]] | | 
 +|[[http://reprap.org/wiki/StepStick|StepStick]] | Open Source! | 
 +|[[https://www.pololu.com/product/2133|Pololu DRV8825 Stepper Motor Driver Carrier, High Current]] | | 
 +|[[http://www.watterott.com/de/SilentStepStick-with-Pins|Watterott SilentStepStick]] |Trinamic TMC2100 based, Open Source. |
  
-If you want to assemble the collection yourself, see the [[#Parts Lists|Parts Lists]] section. 
  
-====== Parts Lists ======+===== Assembly =====
  
-TBD+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.
  
-====== Assembly ====== 
  
-TBD +===== 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 66: 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 82: 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 92: 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.
  
-{{ :gen7:gen7_2.0_full_power_measurements.jpeg?direct&600 |Additional voltage measurements with turned on power supply. Standby measurements should be still valid.}}+{{ :gen7:gen7_2.0_full_power_measurements.jpeg?direct&600 |Additional voltage measurements with turned on power supply. Standby measurements should be still valid. Unlike in the picture, the LPC1114 socket should be still empty.}}
  
 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 100: 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 113: 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#serial_loopback_test|Serial Loopback Test]]   * [[gen7_troubleshooting#serial_loopback_test|Serial Loopback Test]]
-=====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 to make it fit.
  
 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]], which is provided by ARM employees. 
 + 
 +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 141: 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 //board.gen7-arm.h//, after saving //config.h// like shown above. 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 //board.gen7-arm.h//, after saving //config.h// like shown above.
  
-=====Compiling Firmware====+==== Compiling Firmware ===
  
 //Makefile-ARM// is a prepared makefile, but needs some adjustments to your local environment. First, make a copy and name it //Makefile//. //Makefile-ARM// is a prepared makefile, but needs some adjustments to your local environment. First, make a copy and name it //Makefile//.
Line 153: 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 //[[https://github.com/Zuph/lpc21isp|lpc21isp]]//. The version coming with Debian/Ubuntu's packaging system works just fine. 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 //[[https://github.com/Zuph/lpc21isp|lpc21isp]]//. The version coming with Debian/Ubuntu's packaging system works just fine.
Line 169: 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, so let's collect here experience and possible enhancements for the next version. Board-ARM v2.0 is the latest development, so let's collect here experience and possible enhancements for the next version.
  
-===Make auto-reset work===+=== Make auto-reset work ===
  
 For an idea using the serial control lines see http://www.mikrocontroller.net/topic/281717#2977141. Not sure wether this can really work for programming, though and for printing it's sometimes even counterproductive (like when continueing an aborted print). For an idea using the serial control lines see http://www.mikrocontroller.net/topic/281717#2977141. Not sure wether this can really work for programming, though and for printing it's sometimes even counterproductive (like when continueing an aborted print).
  
  
-====== History =====+===== History =====
- +
-==== Mid 2015 ====== +
- +
-{{ :gen7:gen7_board-arm_2.0_beta_front.jpeg?direct&300|The second prototype with all the planned v2.0 features on board.}} +
- +
-Instead of slowly fading away from DIYers memories due to the lack of new versions/features/whatever, Generation 7 Electronics gets more and more attention. So development was picked up again. A lot of smaller refinements happened and, most importantly, a generic, fast port of [[Teacup Firmware]] to ARM was done. Suddenly a Gen7 could outperform a Smoothieboard.+
  
 ==== December 2012 ==== ==== December 2012 ====
Line 194: Line 268:
 ==== February 2013 ==== ==== February 2013 ====
  
-{{ youtube>C57Tim6LcPA|Bobc's proof of concept video}}+{{ youtube>C57Tim6LcPA?300x225&rel=0|Bobc's proof of concept video}}
  
 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://forums.reprap.org/read.php?181,63487,184195#msg-184195|RepRap forum post]]. To get a working firmware he ported Teacup Firmware to [[http://www.chibios.org|ChibiOS]]. Later investigations showed that this choice didn't exactly result in the best possible performance, but this didn't matter at that time. See also his [[http://forums.reprap.org/read.php?181,63487,184195#msg-184195|RepRap forum post]]. To get a working firmware he ported Teacup Firmware to [[http://www.chibios.org|ChibiOS]]. Later investigations showed that this choice didn't exactly result in the best possible performance, but this didn't matter at that time.
 +
 +==== Mid 2015 ====
 +
 +{{ :gen7:gen7_board-arm_2.0_beta_front.jpeg?direct&300|The second prototype with all the planned v2.0 features on board.}}
 +
 +Instead of slowly fading away from DIYers memories due to the lack of new versions/features/whatever, Generation 7 Electronics gets more and more attention. So development was picked up again. A lot of smaller refinements happened and, most importantly, a generic, fast port of [[Teacup Firmware]] to ARM was done. Suddenly a Gen7 could outperform a Smoothieboard.
  
  
gen7_board-arm_2.0.1456256488.txt.gz · Last modified: 2018/05/27 16:10 (external edit)