embedded arm project description...suggestions?

From: Rick (rick_at_skyko.com)
Date: 02/13/04


Date: Fri, 13 Feb 2004 19:26:43 GMT

I am putting together a laser light show controller aimed at the intermediate
hobbyist level (hobbyists who have already spent around $1000 or more for high
speed galvos and amps). The options available to someone interested in a small
to medium laser show controller are limited. There are a few cheap/free designs
based on somewhat outdated equipment (modifying the 8bit sound output DACs from
an amiga 500, 1200 or similar) and some parallel port designs priced in the $400
to $500 range (with rather limited features and requiring a pc). From there,
the hobbyist has to move up to something like the Pangolin LD2000 entry level
system for $2000.

My goal is to make a small controller based on the atmel arm7 processor
(specifically the AT91R40008) which can operate in stand alone mode with the
laser show graphics stored on a compact flash disk, or operate connected to a PC
(serial port or ethernet). Since the 40008 has two high speed uarts, I would
like to hang a RS-485 level shifter from one of them and support DMX512
commands. Ideally, the user could implement the device as a DMX512 master for
controlling other equipment (lighting, fog machines, etc). I made a DMX512
controller using an AVR a few years ago, and several local theatre houses have
used it to control all the lighting, so that part will be pretty easy to
implement. Most of the laser guys also like to have MIDI control, so I need to
provide for that as well.

I just found out that Pangolin has recently come out with a credit card sized
device for around $700 that is basically a standalone ILDA file playback module,
using images stored on a compact flash (doh!). So much for innovation on my
part, but I still believe the device I am planning would have merit if it had at
least as many features, expandability, high speed computer interface, and a
price of around half of this low end commercial product. I am happy that most
of the components needed are relatively inexpensive, with the majority of the
costs predicted to be in the 4 layer circuit board, processor, and DAC.

Here is what I have decided to include so far:

Atmel AT91R40008 arm7 uC with 256k internal sram. About $16 in quantity 25

8 channels of 12 bit analog output, buffered to a +/-10 volt bipolar signal on
at least two of the outputs, with the remaining outputs buffered to a unipolar 0
to 5 volt signal. I am considering the TLV5610 which is a 8 channel r2r
buffered 12 bit DAC controlled via a high speed SPI interface. It has a
settling time in fast mode of 1uS, and all 8 outputs can be updated
simultaneously. The atmel 40008 does not have a hardware SPI, but I believe
this can be done without too much worry in software. This chip is around $12.75
in quantity 25.

2 Meg (1Meg x 16) of 70ns flash, hooked up to the external memory bus of the
40008. This will contain program code and some sample graphics, probably a
simple font, and maybe a game or two (imagine playing tempest on a 20' x 20'
wall). Fortunately, flash is dirt cheap now, so this will be under $4 in
quantity 25.

Compact Flash slot. This will be connected to the external memory bus of the
40008 and allow the user to have massive storage capability for the rather large
graphics files. It will allow the unit to operate in standalone mode. There
may be potential for adding features via this slot in the future.

Ethernet. I am a bit stuck here. Originally I thought to use the compact flash
slot for ethernet expansion, with the idea that you don't need graphics storage
if you have a high speed connection to the host computer, but now I am thinking
it might be better to include something like a CS8900A or RTL8019AS for cheap
10baseT or possibly the LAN91C111 or the Davicom DM9000E for a more expensive
10/100 solution. I am guessing the 10baseT solution to be under $10 for chip
and magnetics in quantity 25, and the 10/100 solution to be $20 to $30. I don't
know which way to go on this. Suggestions?

485/232 ports. I will implement RS485 with one of the little 8 pin chips (about
$2) for the DMX 512 interface and use a common chip ($2) for a RS-232 port.

Midi. Honestly, I have not yet researched this interface so do not know what is
required. Hopefully not much! :-)

12 bit ADC hanging on the memory bus of the 40008. I have another project that
could use this same board but it needs 3 channels of 12 bit A/D. I am thinking
of using an ADC12048 8 channel 12bit + sign 200ksps ADC that costs about $5.50
in quantity 25.

4 layer circuit board. I am not even considering a 2 layer board for this
design, although that would be quite a bit cheaper in the low quantities I need.
I am estimating (hopefully) no more than about $500 for 25 boards including
solder mask and top silk, thus bringing the circuit board cost to about $20
each.

Random parts, including crystal(s), op-amps, connectors, resistors, caps,
regulators, etc. Ballpark range of $20.

So, in summary:

AT91R40008 256k sram on chip
1Meg x 16 flash
8 channel 12 bit DAC
8 channel 12 bit ADC
10/100 ethernet
compact flash slot
RS422/485
RS232
Midi

Estimated total cost per stuffed board (if I do the soldering for free, heh heh)
for quantity 25:
$102.25

I could get the costs down quite a bit if I were making a board that had a
broader appeal than the rather vertical laser show hobbyist market. Does this
sound like a platform that might have some market for general purpose use? If I
knew I could sell them, I could do a run of 50 or 100 instead of 25 (at least on
the circuit board) and drop total cost a bit. Most of the real work is going to
be in the laser show firmware and host computer software, although it is
relatively simple to make an ILDA file player and do a simple game or two for
starters. I think making the entire design as open and publicly available as
possible would encourage people to use it...possibly a circuit cellar article or
something to get things going. (I know, cart, horse, and all). Opinions?

Thanks,

Rick



Relevant Pages

  • Re: PWM control
    ... I need a PWM controller to set the ... manual control that I can set for intensity. ... Because the laser is so old Synrad no longer has any info on it. ... Synrad did say it was controlled by a PWM signal. ...
    (sci.electronics.design)
  • RE: STOP: 0x0000007B
    ... After getting past the FBA with a new compact flash card (same brand, ... Transcend Industrial DMA) and a new CF2IDE adapter, I ... Warning:Could not find a driver for Video Controller ... Info:Adding SiS 900-Based PCI Fast Ethernet Adapter to the component. ...
    (microsoft.public.windowsxp.embedded)
  • PWM control
    ... I need a PWM controller to set the ... manual control that I can set for intensity. ... Because the laser is so old Synrad no longer has any info on it. ...
    (sci.electronics.design)
  • Re: HP 5501B
    ... The controller doesn't turn on the laser tube until the heater ... a different HeNe laser power supply which possibly draws more current ... but the system turns the laser on and then aborts after about a second. ...
    (sci.optics)
  • Re: HP 5501B
    ... There is no power to the HeNe laser power supply. ... The controller doesn't turn on the laser tube until the heater ... >>LED then starts flashing, the laser turns on a minute or so later, ...
    (sci.optics)