From RepRap
Revision as of 17:33, 22 April 2012 by Ari (talk | contribs) (expansion header: 5V tolerance added)
Jump to: navigation, search
Crystal Clear action run.png

Release status: Design

design of Harvey
CAD Models
External Link

Harvey is yet another reprap electronics / reprap controller Board. It is built around a STM32F102 Cortex M3 and uses Sanyo LV8549M Stepper Drivers, everything on one small PCB.

Beware, this has not yet been assembled and tested. If anyone feels like checking the design, please do so. In #reprap I'm gnurbs, jabber mesages go to [email protected]


This Board was designed by ari, with his personal design conceptions: SMD-Parts where available, single sided, very compact single PCB. In fact it is so small, it will need a Heat spreader for the stepper drivers. Ari finds SMD-parts more convenient, especially if one produces the pcb oneself - less drilling.

Logic power (+3.3V) is supplied by USB, Power (VDD) by a 5.5/2.5 mm Jack. 8-16V are allowed, the actual voltage is measured by the µC. Up to 20V nothing will be fried but the steppers cannot be used. maybe add a fat diode for reverse voltage protection at the power jack. One of the IBM-thinkpad laptop power supplies should do. In the last sentence put emphasis on IBM as in not Lenovo. Those are 16V and have a fitting jack.


symbol definition
Pex expansion Header
Pprog programming header


This Board features an STM32F102 microcontroller. relevant for this Board:

  • 72 MHz Cortex M3 core - Ari got the slower 48 MHz Version, make sure you get the faster one.
  • DMA
  • builtin USB
  • 2 Timers with 4 PWM channels each
  • 12-bit ADC

programming header

Pprog is the programming header. You can flash the µC over USART1 when BOOT0 is asserted during reset. These plus USART1s clock are on the header. I think you could also use this as a second SPI

expansion header

This header is intended for future extension. It has all the unsused pins of the STM32, with several interfaces available:

  • JTAG
  • SPI
  • I2C
  • USART1

All but one Pin are 5V tolerant. Again PB5/Pex:8 is not 5V tolerant! Should you want to design a 5V Logiclevel expansion make absolutely sure not to use PB5.

maybe a board with lcd, sd-slot and some buttons would be nice to have as an expansion :D Ethernet, too

PWM Channels

I just thought I connected two pairs of stepper to the same PWM channel, so I'm listing all of them here B:=TIM2_CH, C:=TIM3_CH

B3 eEn
B4 xEn
C2 yEn
C1 zEn


Stepper Drivers are Sanyo LV8549M which are pretty dumb but require no external parts. They are not much more than two H-bridges that are controlled by two pins setting the pase and one enable. Being H-Bridges they cannot do microstepping on their own, but doing this by hand should be possible. They have an enable-pin that is said to accept PWM for current setting, but the datasheet gives no details. They are wired to PWM-channels of the µC anyway.

Two PWM channels are wired to FETs (IRLML6344TRPbF with 29 mOhm R_ds(on), spec'ed to 1.3A, that gives 20W on each teater - that's a little little. However, they are also spec'ed to 0.8 W Power dissipation, which makes me think 4A could also be possible. Thinking about this, one should propably use other connectors for the heaters.


  • connect Boot0 to Pex:11 - done but to be reverted - I thought this could be used as GPIO when not in reset.
  • put a cap between nRST and GND
  • rewire {bPWM,ePWM}^{eEn,xEn} -.-
  • check if all pins on the expansion Header are 5V-tolerant. - PB5 is not

maybe +3.3, VDD and status LED would be nice.