Here is the BELA "low latency audio" device connected to some LEDs, pots, and push buttons in order to verify that signals and data are propagating through all the analog and digital I/O lines as expected.
What I'm happy about here is the ability of this device to simply and tightly synchronize audio with enough I/O lines to be useful for laser show choreography, and that DC coupling is there from the outset.
How this works is that the user writes a function that renders audio in 16 frame blocks, and all the sensing, processing, and outputting is done during that call. The analog and digital I/O lines all operate at exactly half the audio frame rate which of course is 44.1 kHz.
The button panel shown is from a controller I made in 1991 to operate an Amiga. The buttons are these gold contact things from from some old keyboards, of which I still have a couple. The keyboards each have a quartz window EPROM within. Anyone know what system they are from?
Very cool! Nice project, Greg ;-)
Soo.. all it needs is an ILDA connector?What I'm happy about here is the ability of this device to simply and tightly synchronize audio with enough I/O lines to be useful for laser show choreography, and that DC coupling is there from the outset.
Rut-roh, lost me there, Greg. Haven't crossed over from cycloids to ILDA file standards, yet. Still playing ketchup. Does it have a joystick? lolHow this works is that the user writes a function that renders audio in 16 frame blocks, and all the sensing, processing, and outputting is done during that call. The analog and digital I/O lines all operate at exactly half the audio frame rate which of course is 44.1 kHz.
I thought that I was old school, but don't remember ever seeing keyboards with symbols above cap letters on the keys. The case reminds me of Tandy or Commodore. Perhaps it's from an old VT-xx dumb terminal or an IBM mainframe's printer terminal?The button panel shown is from a controller I made in 1991 to operate an Amiga. The buttons are these gold contact things from from some old keyboards, of which I still have a couple. The keyboards each have a quartz window EPROM within. Anyone know what system they are from?
Have you checked out Pure Data as a dev tool for the BELA's controller? I'm lovin it, especially with the Surface tablet, plus a 15" multitouch screen But, even without the touch, it's great for laying out a conrol panel, without needing the hardware, then getting the underlying code up and running. Sure beats machining a new panel, every time new controls are added. In fact, I'm probably going to put my custom desk on hold, because the Akai APC40 MIDI controller already has most of the necessary rotary encoders, sliders and buttons. The touchscreens and Pure Data GUI simply extends the Akai's controls to provide everything else my widdle heart desires.
Meanwhile, I'm consolidating the Teensy audio shields and ILDA conversion amps onto a single PCB. Model II will be installed inside an RGB lumina projector to utilize the 6th DAC for DC rotational speed and spare PWR GPIO pins for RGB and a servo torrent for selecting multiple lumina ports. Need to utilize replaced el cheapo LD modules, anyway. It will still have an ILDA output to an image projector. One laser synth running 2 projectors.
Then, I'll be ready to dive into saving image banks and recording ILDA files (assuming I live that long lol).
Very interested in reading more about your progress with the BELA.
BR
![]()
Last edited by TheHermit; 07-09-2022 at 00:02.
Thank you, those on the Laserium documentary thread, without whom I would not have known that that excellent production exists, nor that it could be seen immediately and with out effort or expense.
Congratulations Brian and Ron. Great, great work.
The video brings into focus something that I can't help but develop a hunger for: knowledge of the use of the two studio decks to create the 351 data, examples of which have recently been explored.
What I am currently trying to do using BELA Beagleboneblack is to create a situation as described in the video whereby at least two choreographers are performing together, thus giving the soloing laserist a far more musical band like structure to ride on, than (as addressed in the video) what is easily done using current systems. As well, the project goal is to develop editing options that give users the ability to iteratively compose show data.
The word iterative, introduced by Brian in the context of show choreography, I interpret to mean non destructively overlaying and recording new performance elements during playback.
Unfortunately knowledge of the consoles shown in the attached stills from the video is likely to remain lost, and with it the answers to how choreography was done.
TheHermit: Thanks! I'm interested in what you are doing with Teensy and, as well, what lasermaster1977, swamidog and others are doing. I think it's great to push the envelope using a variety of hardware options.
I confess to being wary of graphical programming languages, though the cyc application I developed is basically one. I looked at videos about playing audio and GUI creation in True Data, and it seems like an alternate path to the same end as what can be done in C++ which I have used for many years.
A single BELA device needs an ILDA connector or two since simultaneous ILDA compatible input, recording, processing and output is possible on this platform. But also voltage scaling and conversion between unipolar and differential circuitry is required.
I'll re-phrase the How it works statement: While a group of 16 audio samples are being output, the next 16 are being prepared. 16 audio samples at CD quality goes by in a very short amount of time, so when a control is adjusted, the effect on the output is near immediate. Always.
Yes, the two pots shown on the panel could easily be a joystick.
I'll have to look back through this discussion and see what you mean by ILDA conversion amps, and if it is something that would solve my chore of ILDAfying the BELA.
Your system handles synch to music through midi? Do you have DC coupled output?
I feel certain ILDA conversion amps refers to op-amp circuits used for converting single-ended (unbalanced) XY image signals to differential (balanced) XY image signals.I'll have to look back through this discussion and see what you mean by ILDA conversion amps
________________________________
Everything depends on everything else
Right. I did a round of that when I built the color mod signal to ILDA board. I'm wondering if single-ended DAC output to differential for ILDA is a common enough thing that someone here has offered a module that would save me wiring a bunch more op amps for each ILDA channel.
Yes, I know the hassle of having to convert from single-to-double-ended with my old single-ended circuits.
But here is the circuit I commonly use. The input to the first op-amp's 5K resistor-to-Gnd is from another TL084 opamp. The + and - voltages of 9v is from a battery operated version of the circuit. I normally use + & - 12v or 15v. Also, I am not showing ALL of the related op-amp circuitry in this photo.
The XY Master potentiometer is a dual log slide pot.
I've not ever seen a simple, plug'n play ILDA converter but that means little since I only cared about or needed to implement differential output XY pairs on my legacy laser circuits in 2017 when I bought a cheap ILDA RGB projector.
________________________________
Everything depends on everything else
Have you noticed a difference between using single ended signals as-is or adding this differential stage?
Creator of LaserBoy!
LaserBoy is free and runs in Windows, MacOS and Linux (including Raspberry Pi!).
Download LaserBoy!
YouTube Tutorials
Ask me about my LaserBoy Correction Amp Kit for sale!
Either do or do not do. There is no undo!
for over 12 or more years I only used single ended line level outputs to scan driver amp inputs that were singled ended outputs to the scanner coils with never a problem., using line level, single ended xy cables, using xlr connectors w/dual conductor, shield cables, 25ft, 50ft long to scan drive amps with NEVER a noise problem, in every venue situation imaginable.
To be sure, differentially driven lines offer better noise immunity but are they a must....8 ball says....only if you are a purist.
________________________________
Everything depends on everything else
Thank you for mentioning it, Greg. I'll have to check it out.
?What I am currently trying to do using BELA Beagleboneblack is to create a situation as described in the video whereby at least two choreographers are performing together,
I'm able to accomplish this by recording my live MIDI signals from the APC40 and the Pure Data GUI(s) onto a timeline track, within the (free) Cakewalk DAW. The audio is also pre-recorded onto the DAW's audio timeline and output to the sound system via the PC's HDMI, the same as LSX....The word iterative, introduced by Brian in the context of show choreography, I interpret to mean non destructively overlaying and recording new performance elements during playback.
Through Cakewalk, I can playback both audio and MIDI laser controls, while recording additional layers of MIDI onto other tracks, and so on, for up to 16 timeline tracks.
Cakewalk's DAW allows those MIDI tracks to be routed and combined into output buses, one for each Teensy Synth/projector. IOW, in theory (so far) up to 16 discrete, editable events can be shared and/or mixed down to whichever projectors the laserist wants.
Meanwhile, the laserist still maintains full real time control over all MIDI functions (unless the recorded timeline steps on it. Pure Data also handles the MIDI routing between the devices.
There is also an option to record live MIDI onto MIDI files, similar to ILDA file functionality.
Thank you, Greg. I'm very honored to be included among those names.TheHermit: Thanks! I'm interested in what you are doing with Teensy and, as well, what lasermaster1977, swamidog and others are doing. I think it's great to push the envelope using a variety of hardware options.
I've seen Pure Data being used 2 different ways. 'Our pal, Dave' from Notes and Volts taught me how to create GUI control objects, like a pot with a numeric range, then associate that pot to a MIDI CC function within my Arduino sketch (wish I knew proper C++). I believe this approach for using using Pure Data as a dev tool would work best for you, because it doesn't require hardware development and costs. Then, as the project matures, you could easily replace the dev sandbox of virtual controls with physical controls, input their outputs as MIDI CC/Note values and utilize your same code as the Pure Data GUI. This approach is working well for me.I confess to being wary of graphical programming languages, though the cyc application I developed is basically one. I looked at videos about playing audio and GUI creation in True Data, and it seems like an alternate path to the same end as what can be done in C++ which I have used for many years.
The other approach (ref: Sound Simulator Pure Data tutorial series) uses pure Data to actually do the synthesis, filtering, sequences and everything, while triggering PD with hardware devices. This sounds like what you're referring to. Interesting stuff, but not where I'm heading, either.
That's what I was calling 'ILDA conversion amps'But also voltage scaling and conversion between unipolar and differential circuitry is required.
Thanks for the clarification. Wow! So, each audio sample is either a music track, X/Y galvo signal, or RGB levels + the associated control signals like size, position, etc... which are being decoded on the fly and applied to the output, simultaneously across 16 samples?I'll re-phrase the How it works statement: While a group of 16 audio samples are being output, the next 16 are being prepared. 16 audio samples at CD quality goes by in a very short amount of time, so when a control is adjusted, the effect on the output is near immediate. Always.
I wouldn't even know where to begin.
LOL! Only an old laserist joke. Gotcha!Yes, the two pots shown on the panel could easily be a joystick.
Not at the moment, assuming that you're talking about what we used to call 'audiomod' as in amplitude modulation from an audio input. But, the Teensy I2S audio DACs have inputs and (apparently) the audio library can filter the input audio at different bandwidths, like a kick beat, then apply that signal to an envelope or multiplier of an image generator or waveform to accomplish the same thing. (how about a Pure Data graphic eq, with discretely assignable MIDI channels on each band?) It is also capable of digital sound processing for the serious techno freaks.Your system handles synch to music through midi? Do you have DC coupled output?
The Teensy audio DACs have both line level outputs and headphone outputs. After frying few, while attempting to short across the SMD caps, I discovered that the headphone jacks are DC coupled. Du~uh.![]()
The only down side is that the T4 only is only a 3.3 volt device, internally. So the DC coupled audio outputs are only 0-3.2V p-p. So I need additional gain and offset correction with my differential ILDA amps. That's what I'm currently addressing with my 1st PCB. Apart from that, I'm really impressed with what I'm able to create with this little MCU. It's very stable and more versatile than the old Laserium desk.
Great chat, Greg!
Thanks for your interest!
![]()
Last edited by TheHermit; 07-30-2022 at 16:34.