Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
Mulle programmer board
The Mulle programmer board provides pin headers for all pins on the expansion port, as well as an on board JTAG programmer for flashing the Mulle.
For more information on connecting the hardware, see Connecting the hardware
The programmer board consists of a Mulle socket, a USB port, a UART+JTAG USB interface chip, a reset button, three status LEDs and a number of pin headers.
The USB port is used to provide power to the Mulle as well as a JTAG interface for the developer.
Note: The reset button (SW1) and reset LED (LED2) is located in the lower right corner of the board on some revisions of the board (serial numbers 1xx)
The LEDs indicate the following:
- LED1: USB +5V is available as VUSB
- LED2: Hardware reset on the Mulle is currently being asserted.
- LED3: Mulle VBAT is powered.
Note: If the program flash of the connected Mulle device does not contain any executable code, LED2 will glow softly (actually pulsing at a high frequency because of repeated hardware resets triggered by the Mulle itself).
The jumpers JP7, JP8 near the top of the board are used for connecting the Mulle to the USB interface.
- JP7: Connect a jumper vertically between VUSB and VCHR to provide VCHR to the Mulle.
- JP8: Connect two jumpers horizontally between PTC4/TX and USB UART RX, and PTC3/RX and USB UART TX to connect Mulle UART1 to the USB interface.
Technical note: The UART interface is connected to interface 1 on the FTDI chip, the JTAG is located on interface 2.
The pin headers JP2,3,5,6 offer access to the Mulle expansion port pins.
- JP2, JP3: Each expansion port pin, in the same order as in the expansion port.
- JP5, JP6: Power pins. 3V3 on JP6 is powered by the programmer board on-board 3.3 V regulator, VSEC is powered by the Mulle VSEC 3.3 V regulator.
The button SW1 (RESET) is used to manually reset the connected Mulle.
Note: On some programming boards (serial numbers 1xx), RESET will be held down by the USB interface when the board is connected to a USB port until OpenOCD is started for the first time. After starting OpenOCD once, the RESET signal will be released. A workaround (if working with the Contiki sources) is to perform a JTAG reset using
make reset in the project directory.
Powering the JTAG interface
The JTAG interface on the Programmer board takes its power from the Programmer board's own 3.3V power supply, which in turn is powered from the VCHR supply. VCHR should not exceed 5.5V, both for the Mulle and for the programmer board, but anything from 3.6V and up is OK.
The most straightforward way to power the programmer is by placing a jumper between the VUSB and VCHR pins close to the USB connector. VUSB is normally around 5V when powered from a computer and can provide up to 500mA of current.