Rawcoco: Difference between revisions

From SGMK-SSAM-WIKI
Jump to navigation Jump to search
Line 106: Line 106:


= Software =
= Software =
Currently used/evaluated tools and sources to get the board up and running:
* free / open-source tools for ARM development (gcc-none-eabi toolchain, OpenOCD)
* STM32CubeMX and sample code by ST
* Code::Blocks as an IDE


== USB HID Device ==
== USB HID Device ==
Line 111: Line 118:
Status: Mouse, Keyboard, Gamepad HID devices are working.
Status: Mouse, Keyboard, Gamepad HID devices are working.


== USB Serial (CDC) ==
== USB MIDI ==


symbols can be sent
Not working (yet). USB MIDI devices are more complicated to implement (USB Audio Device Class, [http://www.usb.org/developers/docs/devclass_docs/midi10.pdf MIDIstreaming]), whereas HID devices are almost trivial to implement and modify.


== USB MIDI ==
== USB Serial (CDC) ==


Note working (yet). USB MIDI devices are more complicated to implement (USB Audio Device Class, [http://www.usb.org/developers/docs/devclass_docs/midi10.pdf MIDIstreaming]), whereas HID devices are almost trivial to implement and modify.
Characters can be sent!

Revision as of 03:33, 27 March 2016

Overview

A capacitive touch sensing USB device.

A 32-bit version/descendant of the Cocomake7.

A work in progress prototype to learn more about ARM dev, STM32 peripherals and compare results with the AVR and teensy based versions.

The goal is to make a versatile, affordable and creative plaything, that can be used for electronics and interaction/game design workshops.


Hardware

General Notes

Microcontroller:

  • STM32F042F6P6
  • Crystal-less USB with integrated USB (fullspeed) PHY
  • Capacitive touch sensing peripheral
  • Cost: ~$2 on Aliexpress (Chips Store)


SWD Pinout (topview, USB plug on the left):

  • VDD
  • SWCLK
  • VSS
  • SWDIO


Touchpad (TSC) order (topview, USB plug on the left):

  • G1_IO4
  • G1_IO3
  • G1_IO2
  • G2_IO4
  • G2_IO3
  • G2_IO2

Revision 0.03

A test PCB with 6 touch pads lined up in a row. Easy to breakout, by cutting the PCB traces...

No USB protection, optimized for simplicity, size and cost.

Features

  • 6 touchpads
  • micro USB port
  • debug LED
  • I2C / SWD connector

BOM

Reference	Value		Footprint		Digikey				Comment		Count	Unit Cost	SUM

rawcoco:U1	STM32F042F6Px	w_smd_dil:tssop-20	STM32F042F6P6-ND		not available	0	1.48 EUR	0.00 EUR
rawcoco:U2	TLV70033DDCR	w_smd_trans:sot23-5	296-27937-1-ND					1	0.48 EUR	0.48 EUR
							
rawcoco:C1	100n		mylib:c_0402_mod0	490-10777-1-ND					1	0.09 EUR	0.09 EUR
rawcoco:C8 C9	1u		mylib:c_0603_mod0	490-6423-1-ND 					2	0.09 EUR	0.18 EUR
rawcoco:C10 C11	1n		mylib:c_0402_mod0	490-6349-1-ND					2	0.09 EUR	0.18 EUR
							
rawcoco:D1	LED		w_smd_leds:Led_0402	511-1651-1-ND					1	0.41 EUR	0.41 EUR
							
rawcoco:R1	470R		mylib:r_0402_mod0	CR0402-FX-4700GLFCT-ND 	470 Ohm			1	0.09 EUR	0.09 EUR
rawcoco:R7-R12	1k		mylib:r_0402_mod0	CR0402-FX-1001GLFCT-ND				6	0.09 EUR	0.54 EUR
							
rawcoco:CON1	USB-MINI-B_mod0	mylib:conn_usb_B_micro_smd-2_mod0wHoles	WM17141CT-ND			1	0.91 EUR	0.91 EUR
							
rawcoco:K1 K2	CONN_3		mylib:pin_header_3x1_1.27mm_pitch					2	0.00 EUR	0.00 EUR
rawcoco:P1 P2	CONN_4		mylib:pin_header_4x1_1.27mm_pitch					2	0.00 EUR	0.00 EUR
rawcoco:P4-P6	CONN_1		mylib:pin_header_1x1_1.27mm_pitch					3	0.00 EUR	0.00 EUR

											SUM		22			2.88 €


Digikey BOM (MCU not included):

1,296-27937-1-ND,rawcoco:U2
1,490-10777-1-ND,rawcoco:C1
2,490-6423-1-ND ,rawcoco:C8 C9
2,490-6349-1-ND,rawcoco:C10 C11
1,511-1651-1-ND,rawcoco:D1
1,CR0402-FX-4700GLFCT-ND ,rawcoco:R1
6,CR0402-FX-1001GLFCT-ND,rawcoco:R7-R12
1,WM17141CT-ND,rawcoco:CON1


PCB

Get it at: OSHPark

Errata / Known Bugs

  • tie PB8 to ground -> BOOT0

Software

Currently used/evaluated tools and sources to get the board up and running:

  • free / open-source tools for ARM development (gcc-none-eabi toolchain, OpenOCD)
  • STM32CubeMX and sample code by ST
  • Code::Blocks as an IDE


USB HID Device

Status: Mouse, Keyboard, Gamepad HID devices are working.

USB MIDI

Not working (yet). USB MIDI devices are more complicated to implement (USB Audio Device Class, MIDIstreaming), whereas HID devices are almost trivial to implement and modify.

USB Serial (CDC)

Characters can be sent!