Page 1 of 2 12 LastLast
Results 1 to 10 of 12

Thread: Unveiling my homebrew 16-bit laser controller.

  1. #1
    Join Date
    Jun 2005
    Location
    SoCal
    Posts
    506

    Default Unveiling my homebrew 16-bit laser controller.

    I'm finally done with the logic checks for my homebuilt laser controller.
    So I'm giving a sneak preview (like a photonlexicon exclusive or something).

    I'm what you could call a professional hobbyist. 15 years ago, I had some
    dreams of making money by doing shows, I got some equipment and learned
    how hard and annoying being a laserist is first hand. So... I've long since
    relegated this to being a pure hobby. Here in Southern California, we've been
    gathering like-minded laser hobbyist and we spend most of our free time
    tinkering with this gear. I do have a day job as an engineer (with a really
    long scary title as corporations are sometimes wont to do), but luckily it
    isn't soul sucking and leaves enough creativity to do fun projects for myself
    while I'm at home.

    I call this whole project "Ghettolaze" since, love it or hate it, ghetto really
    seems to permeate the whole industry. It's a scarily common occurance to see
    $4000 optics attached with hot glue and heatguns instead of bragg mounts.


    The new prototype I layed out. I used DIPs wherever possible since I'll have to hand solder all the components. It's going to be fabbed on a 4-layer board.

    This is a system designed with a "cost (and especially time) is no object" mentality.
    Every single chip has absolutely insane specs, the opamps alone
    cost $50 a piece. As I already own a nice Pangolin Pro, I thought
    it would be fun and interesting to design something completely different given the same
    budget as buying another pangolin board. It's not designed to compete with
    Pangolin as I have no interest in implementing features like synchronizing
    with SMPTE timebase codes or anything like that... Most of the features
    of Pangolin would be useful if you did professional shows synchronized to
    lighting and video systems... Rather it was designed to give me extreme
    flexibility in some specific areas that I really wanted.


    This is my last quick sanity check of the traces I laid out for this controller before fabbing!
    High resolution version: (http://photonlexicon.com/gallery/alb...MG_1202?full=1)

    The board has 2 x 16-bit DACs for X & Y, 8 x 8-bit DACS for color, 16 TTL channels.
    It has two onboard microprocessors, an 8051 and an SX52 clocked at 100Mhz.
    The 8051 is dedicated to the USB 2.0 High speed protocol (480Mbps) and has
    three endpoints defined. The SX52 is used with 4Mb offboard 12ns SRAM to
    provide the frame storage and timing... The micro code for both processors was
    coded in pure assembly with speed and accuracy as the primary goals.
    (That part really sucked btw, the SX52's datasheet is tome length! It
    had so much data it made my eyes cross and it was dull enough that it
    could put computers to sleep.)

    The basic architectures is "framebuffer", its easier to think of it as a
    vector based video card. It supports variable scanrates in a single
    frame and can adjust all of its parameters realtime on the fly...

    It starts to differentiate itself from other systems by maintaining
    ludicrous levels of precision at high speeds. The system is designed
    to stay within microvolt range accuracy even at 150Kpps scanning,
    not a trivial task, in fact a somewhat stupid idea since you'd be
    stretching the limits of resolution on even modern 'scopes! Every stage
    was bench tested and a test rig was build for every single component.

    I started with opamps designed to operate with high slew rates off of
    20-bit DACS in scientific instruments with less than 1 LSB error.
    I selected 16-bit DACs which can maintain less than 1/2LSB error while
    driven into the Mhz range. I would have selected a higher resolution DACs
    but I discovered that even when you say cost is no object, there is a
    tradeoff between maximum accuracy vs accuracy at high speeds. Meaning
    that a more accurate DAC will likely be less accurate when driven at higher
    speeds than a less accurate DAC! I originally optimistically looked at 24-bit
    audio DACs, but the output looked more like stair steps and exhibited
    terrible linearity. Totally out!

    I did build several test rigs which could maintain true 20-bit accuracy
    but they ended up settling slower (and hence being less accurate) than the
    original 16-bit DACs I selected at the scanrates I was demanding.

    Now back in reality land, past 14 or so bits of accuracy you would
    be incredibly hardpressed to visually tell the difference. The difference
    in accuracy between 14-bits and 16-bits is about 0.00005 volts.

    Am I nuts for designing this for true 16-bit accuracy? (don't answer that)

    Well, I certainly thought so, but as luck would have it, there was a
    perceptable quality difference! Though unfortunately it wasn't due to
    the accuracy on my part. As it turns out, reality is truly ugly
    and even the 16-bit laser systems I tested didn't exhibit anywhere near
    14-bit accuracy. Or more accurately, the noise floor drowns out any
    precision on the existing systems. So... you win some and lose some.
    I'm currently resisting the urge to "upgrade" the pangolin I have with
    some of the new chips I've been playing with since for all practical purposes,
    it's more than good enough, borders on great and is just shy of perfect.
    So lessons learned? Past 14-bit's it's completely unnoticable unless
    you're scanning something over the horizon or something at equally silly
    distances.

    So, back on track, I also selected dedicated balanced driver chips so
    it can maintain this accuracy while pushing high impedence loads. As it
    turns out, this is really important since the Cambridge amp is a terrible
    terrible noise source... I really really wish I hadn't scoped the collectors
    on the scanamp... The pure cruft and AC drivel made me eyeball their circuit
    and it's using CHEAP audio class opamps. Since I'm a bit *ahem* retentive,
    I plan on building my own scanamp drivers as soon as I'm finished with
    this first project. I was thinking of using a fast DSP instead of the classic
    analog feedback design that's been around for decades.

    So... uhm...

    My primary goal in this exercise was "real-time" control as I had been
    somewhat unsatisfied with the real-time performance of existing systems.
    This new board has millisecond level frame latency and each point is
    displayed with crystal locked accuracy inside the frames. You can choose
    and adjust the scan rate up to 150Kpps rates in 1 pps increments.

    The uplink is USB 2.0 High speed (480Mbps) and there's enough spare
    bandwith to support 4 boards on one USB 2.0 bus with no glitching.
    (Note, Well technically you could have many many devices and it won't
    glitch being a framebuffer'n all, but I'm talking no glitching in terms of
    full speed framerates) (Note 2. Our earlier prototypes were made with
    Firewire, but aborted in favor of USB2)

    I've written native drivers for Windows, OSX 10.4 and Linux, and
    I'm working with several other talented people on software and toys.


    We've got a working cute realtime beamshow driver...

    It's a harmonic waveform synthesizer, We call it mona... It can also
    be fed audio and generates attractive harmonics in realtime with
    DFT and FFT algorithms. The latest version is slightly more attractive,
    but I'm waiting to finish some more features before showing it off...


    We also have a quick program we use to draw frames for shows... This
    was never meant to be pretty, just useful to me... All the options
    and things you'd normally point and grunt at are still mnemonic keybindings.
    I plan on fixing that soon


    This is an example of something drawn using framelab...

    Here's a ghetto hoopty designed in Framelab, and exported as GIF...
    Took about a minute to make


    I also implemented a somewhat usable autotracer... It needs a lot more
    work, you can see the operation in this 8MB movie clip.

    Movie Link: http://scc.sc.wfinet.com/howdy/MVI_1198.AVI

    Phew!

  2. #2
    Join Date
    Apr 2005
    Posts
    36

    Default

    VERY impressive!!
    downloading the video now :lol:

  3. #3
    Join Date
    Feb 2005
    Location
    Florida
    Posts
    802

    Default

    Damn Good Job Yadda

    Im impressed by the quality of the components you
    have chosen.
    I take it , you load the sx52 on-board?

    And at the speeds you are striving at...Very kewl
    Simply Awesome.......

    When its ready , let me know...I will ditch what Im using now...
    Im very interested in it !!!!!!!!!!!

    Oh BTW if you happen to come across a g-120 X-Y mount
    I know slow stuff but , Ive got quite a collection of them.
    let me know... I need to finish my scanner.
    my home-made mount sux bad...
    Its tied to a "i guess" a lasermedia board..not sure what it is
    but I've grown accustomed to it as it has all the relay drivers I use on it.

    Taming a servo amp can be a challenge too...
    Speaking of scanners , what are you driving them with?

    *^_^*
    "My signature has been taken, so Insert another here"
    http://repairfaq.ece.drexel.edu/sam/laserfaq.htm
    *^_^* aka PhiloUHF

  4. #4
    Join Date
    May 2005
    Location
    Washington D.C.
    Posts
    105

    Default

    Damn bro.. You home made soft does great work.. I thought you used Trace-it with the logo, not your own homebrew.. Wow.. Can't wait for it... I'll be holding on purchasing any newer software until your stuff is ready..

    Although, I'm going to need a 1 watt... I think I found one for about 4000... I think it's a good price..

    Keep up the good work!..

    Oh, check out this mix, you should like it..
    http://www.bassbinhooligans.com/mixe...istribute1.mp3

  5. #5
    Join Date
    Jun 2005
    Location
    SoCal
    Posts
    506

    Default

    Thanks for the encouragement! For the last week, I've been furiously
    working on this and I just had to get it out since I've been having a lot
    of fun with it. Spec got some early sneak peeks at it

    jayDC: Heh, I liked LA Studio's (now pangolin) stuff, but I really like cubic
    beziers and I wanted my autotrace stuff to support it. I wouldn't hold
    off any purchases, I am after all a mostly satisfied pangolin user...If
    I were to do it all again, I'd skip the Pro and buy a Basic with the
    MAX plugin. The Pro's 3D support is lame compared the MAX plugin.
    These boards should be ready soon, I'm sending out for the raw PCBs
    on Monday. I'll be looking for more testers soon, and I'll let you know
    when I get the first week worth of testing in with the first run
    alpha testers.

    Marconi: Thanks! yep we have the SX52 onboard doing it's magic.
    I'll keep my eyes peeled for a G-120 mount, but if I can't find one,
    we can harass ArcDevilz to make you one. He's absolutely brilliant,
    I bet you could cut him a deal on one of your reds... I know he's been
    drooling over mine since I got it... I have CT68ks with CatAmp IV's,
    Ive's got CT68k's with microamps... He's also running a pure cambridge
    scanamp for blanking... P.S. PM me...

    Turtle: Thanks! I was hoping that people would like it, I've been slaving
    over this for a couple months and even though I like it, it could've been
    that whole "I built it so I like it" thing...

  6. #6
    Join Date
    Jun 2005
    Location
    SoCal
    Posts
    506

    Default

    Oh yeah, JayDC 4k for 1W seems high unless the tube is new (or
    a Reliant 1000M , which I happen to really dig, or ArKr)... If there's
    a warranty, then it's good, if no warranty, then I'd avoid it

  7. #7
    Join Date
    May 2005
    Location
    Washington D.C.
    Posts
    105

    Default

    The 1watt is DPSS most likely of CNI origin, comes new in box with a 1 year warrenty. May take me about 2 weeks to get it, and I may have to pay an import fee.

    It's actually a little lower then 4g's..

    And it comes with analog modulation.

    Is that racer program a win program, and is there anyway I could take look at it?..

    Can you get the flash plugin for pangolin basic?..

    And one suggestion to your realtime controller program, make all the virtual sliders midi programmable, so you can get a midi fader bank for real hands on control. This would be ace, and would allow 2 hands on control vrs mouse..

    something like kentons control freak. http://www.kentonuk.com/products/cfrk_live.shtml

  8. #8
    Join Date
    Jun 2005
    Location
    Los Angeles
    Posts
    263

    Default

    The cat's out of the bag. :roll: I can vouch for the work that has gone into this. The funny thing is that as much as has gone into there s a lot more work to go. Sooner than later. As always it's looking prety good.

  9. #9
    Join Date
    Jun 2005
    Location
    SoCal
    Posts
    506

    Default

    Hey, Arc Yep... I was tired of the cats scratching my arm, trying to get out....

    JayDC: We develop under linux and do the ports every milestone, the next
    milestone is coming up soon so I'd be happy to throw you a copy then.
    The design software isn't locked to any hardware, so there's no problems
    there... All the icons and buttons on the app work, however all the
    advanced operations, such as booleans, joins, splits, convert to bezier,
    etc are keybindings and there is no mouse equivalent action for them yet...
    I'm waiting to finish all of the core functionality before we develop
    a GUI for it.

    If that's a 1W DPSS, then it is indeed a great price! Though again,
    personally I'd save a few dollars more at that point and get one of
    those 350mW white light DPSS systems from CNI!

    We've also been looking at MIDI, Arc is the monkey on my back about that since
    he's been into knobs and dials since he was little.



    I'm too cheap to buy a MIDI controller, so Arc, that sneaky guy, handed me
    an OpCode Studio 128X and said "Oh by the way, there's no drivers for
    these things, you'll have to write your own."



    So, I've built a serial tap using two systems so I can reverse engineer
    the protocol and write drivers for it... As soon as I'm done writing native
    drivers for the Studio 128X on windows, linux and OSX, I can start properly
    implementing MIDI. Ironically, I have no intentions of writing drivers
    for Solaris, which is the OS I'm running the taps off of and using
    to reverse engineer the protocol... It'd be simple, but I sense there wouldn't
    be any demand

    Speaking of which, Arcz, you got anything to plug *into* MIDI?
    I guess I can make something, but if you've got something old'n
    busted, that's all I need...

    Oh and the Flash plugin works with Basic.

  10. #10
    Join Date
    Jun 2005
    Location
    Los Angeles
    Posts
    263

    Default

    Oh you mean like an old midi cable??? I have a few laying around. Now if I can get off my lazy ass I'll cruise down on the fourth....

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •