/behringer-xtouch-mini-fw

Alternative firmware for a Behringer X-Touch Mini (NOT YET WORKING!)

Primary LanguageMakefile

ICs used

1x  ic2              stm23f103rb
                     ARM Cortex-M3 MCU with 128 Kbytes Flash, 72 MHz CPU

16x ic3-9,12-19,21   74hc595
                     8-bit serial in, parallel out shift register

5x  ic10,11,22,23,24 74hc165
                     8-bit parallel load shift register

1x  ic20             3.3v LDO

*** Shift register chains ***
	parallel input, serial output

	GND->IC22->IC23->IC24 74HC164, parallel input
		clk -> ARM pin   58=PB6
		load -> ARM pin  59=PB7
		data -> ARM pin  61=PB8

	IC10, IC11 share clock, load, 74HC165 parallel input
		clk         57=PB5
		load        30=PB11 
		data ic11   29=PB10	
		data ic10   27=PB1

Shift-register driving the LEDs, one long chain, 74HC595, parallel output

	IC12->21->13->6->14->7->15->8->16->17->9->18->19->5->4->3
		data    36=PB15 SPI2_MOSI
		clk     34=PB13 SPI2_SCK
		latch   53=PC12 (?)  

R185 near JTAG (10k) pulls Pin60/BOOT0 down to GND.

JTAG is not active when user code is running, but when you enable
the bootloader by pulling boot0 high (3.3v), you'll get...

$ openocd
Open On-Chip Debugger 0.10.0
Licensed under GNU GPL v2
For bug reports, read
        http://openocd.org/doc/doxygen/bugs.html
Info : auto-selecting first available session transport "jtag". To override use 'transport select <transport>'.
adapter speed: 1000 kHz
adapter_nsrst_delay: 100
jtag_ntrst_delay: 100
none separate
cortex_m reset_config sysresetreq
Info : No device selected, using first device.
Info : J-Link ARM V8 compiled May 27 2009 17:31:22
Info : Hardware version: 8.00
Info : VTarget = 3.287 V
Info : clock speed 1000 kHz
Info : JTAG tap: stm32f1x.cpu tap/device found: 0x3ba00477 (mfg: 0x23b (ARM Ltd.), part: 0xba00, ver: 0x3)
Info : JTAG tap: stm32f1x.bs tap/device found: 0x16410041 (mfg: 0x020 (STMicroelectronics), part: 0x6410, ver: 0x1)
Info : stm32f1x.cpu: hardware has 6 breakpoints, 4 watchpoints