krüe :: cansynth

cansynth

front view of cansynth circuit board

The cansynth board provides a platform for experimenting with the use of CAN networking in synthesizer applications. Each node contains an atmel at90can128, 128k sram, and 64k of eeprom. There are 8 analog inputs, 8 analog outputs, and 12 digital input/output lines. The CAN interface is capable of running at the maximum 1Mbps.

status

The cansynth boards have arrived. Cost is $20 per board plus shipping. (plus a little more to cover paypal's cut if you pay by credit card). The picture above is of the prototype. The current boards have soldermask and silkscreen.

software

The netsynth code has been moved here.

schematic

cansynth-2005.09.19.ps
Added load capacitors for rtc crystal.
cansynth-2005.08.21.ps
Reverted back to db9 connector for rs232. Reversed dac outputs and two switches of s1 to make the pcb layout simpler. Connected ale to the address latch. Minor changes to get the netlist correct.
cansynth-2005.08.13.ps
Filled in the rest of the component values and labeled all connectors. Used a DIP switch instead of jumpers for CAN termination; made power on CAN connectors switchable.
cansynth-2005.08.12.ps
Used the correct pinout for the modular connectors. Also filled in some component values.
cansynth-2005.08.11.ps
initial revision.

pcb

The pcb is 4"x3". All parts are mounted on the top side. Everything is surface mount save the various through-hole connectors.

cansynth-2005.09.19.pcb
Corrected layer names. Added load capacitors for rtc crystal. Changed url on silkscreen.
cansynth-2005.08.30.pcb
initial revision.

parts

ref part vendor description package digikey part number
u1 at90can128-16ai atmel avr mcu with can interface tqfp64 at90can128-16ai-nd
u6 ata6660 atmel can transceiver so8(150mil) ata6660-tapct-nd
u3 cy7c1019 cypress 128k sram soj32(400mil) 428-1004-nd
u7 adm101e analog devices rs232 level converter msop10 adm101earm-nd
u4 ad5328 analog devices 12bit octal dac tssop16 ad5328bru-nd
x2 cm519-32.768kdzftr citizen 32.768kHz crystal 300-8194-1-nd
x1 cs10-16.000mabjtr citizen 16.000MHz crystal 300-8096-1-nd
u8 74hc4053 texas instruments triple analog switch so16(150mil) 296-9220-5-nd
u2 74ahc573 texas instruments d-type transparent latch so20(300mil) 296-4612-5-nd
u9 ref192 analog devices 2.5V precision reference so8(150mil) ref192es-nd
u5 at24c512 atmel 64k serial eeprom so8(150mil) at24c512n-10si2.7-nd
c3,c4,c21,c22 ecj-1vc1h220j panasonic 22pF 50V ceramic capacitor 0603 pcc220acvct-nd
c5 ecj-1vb1c103k panasonic 10nF 16V ceramic capacitor 0603 pcc1750ct-nd
c6,c7,c8, c9,c10,c11, c12,c13,c14, c15,c16,c17, c18,c19,c20 ecj-1vb1c104k panasonic 100nF 16V ceramic capacitor 0603 pcc1762ct-nd
c2 ecj-3yb1c106k panasonic 10uF 16V ceramic capacitor 1206 pcc2413ct-nd
c1 ecj-4yb1c476m panasonic 47uF 16V ceramic capacitor 1210 pcc2335ct-nd
l1 elj-fa100jf panasonic 10uH inductor 140mA 1210 pcd1817ct-nd
s1 219-4lpst cts 4 position spst dip switch ct2194lpst-nd
r4,r5 rc0603fr-0762rl yageo 62r 1% resistor 0603 311-62.0hrct-nd
r1 rc0603fr-0710kl yageo 10k 1% resistor 0603 311-10.0khrct-nd
r2,r3 rc0603fr-071k8l yageo 1k8 1% resistor 0603 311-1.80khrct-nd
h1 2510-6002ub 3m 10 position header mhb10k-nd
h2 2516-6002ub 3m 16 position header mhb16k-nd
h3,h4 2520-6002ub 3m 20 position header mhb20k-nd
j3,j4 rj11-4l2-b tyco rj11 jack with ferrite block ccm9012-nd
j2 747844-6 tyco db9 female connector a23305-nd
j1 1725656 phoenix contact 2 position screw terminal 277-1273-nd

choices

The parts listed above are for a fully-configured board. Some components can be left out or exchanged depending on your needs and budget.

ad53x8

The ad53x8 series of dacs from analog devices comes in 8bit (ad5308), 10bit (ad5318), and 12bit (ad5328) versions. All share the same pinout and software protocol and will work in the cansynth board. Each version also has both A and B grades with differing error specifications.

ref19x

The ref19x series of voltage references (also from analog devices) has many versions with different voltages. Each voltage also has a range of lettered grades with different accuracy and stability.

Pick a reference voltage suitable for your application. I chose 2.5v in the table above but I've also used 2.048v. The ad53x8 can optionally multiply the reference by 2 for added flexibility. However, the adc in the at90can128 doesn't have this feature. Both dac and adc can use avcc for a reference as well and the external reference can be omitted in this case. (You can of course still mount it and switch between references; or use both -- the ad53x8 can select a different reference for each group of 4 outputs.)

at90can128

When I designed the cansynth, the at90can128 was the only CAN-enabled AVR around. Now it looks like the at90can32 and at90can64 are finally available. They are pin-compatible with the at90can128 and have identical peripherals, differing only in the amounts of each type of memory: flash, ram, and eeprom. If you don't need as much memory, they can be used instead of the at90can128.

cy7c1019

The cy7c1019 provides 128k of external sram. If your application doesn't need this extra memory you can omit this chip along with the 74ahc573 latch. Note that you still can't use ports a and c because they aren't brought out to pin headers.

at24c512

The at24c512 provides 64k of external eeprom. If your application doesn't need this extra memory you can omit this chip. You can also mount a chip with a different amount of memory as long as it's in the 24xx series. Note that when I checked the smaller sized devices were not necessarily cheaper (economies of scale and all that). As with the cy7c1019, you can't use the i2c pins for other purposes because they aren't brought out to pin headers.

samples

A fully configured cansynth will cost about $80 in parts, but your first two don't have to cost that much. Analog Devices will let you order two samples each of ad53x8, ref19x, and adm101e, taking about $30 off of each board if you get the expensive versions (and you should -- they're free!). Atmel will let you sample up to five of certain parts, but they take a while to ship and don't inform you on the status of your request. Some people have requested samples of the at90can128 and ata6660 but have not received them yet. I will update this section if they are successful. Along with the ad53x8, the at90can128 is the other expensive chip on this board and samples from Atmel would reduce the price another $18 or so.

references

http://netsynth.org/
a forum and wiki for discussion of networkable synthesizers.