Build Project: Dewster's D-Lev Digital Theremin

Posted: 6/28/2019 4:19:52 PM
pitts8rh

From: Minnesota USA

Joined: 11/27/2015

D-Lev "Pro" Build Progress  Pt. 1

The good news is that the D-Lev Pro (informal name for D-Lev stuffed into a custom-build EWPro-like cabinet) is finally up and running with the latest board set and is working well with only two minor issues.  To keep the inductor size down for this cabinet design, both oscillators are running at higher frequencies (roughly 2.9MHz for volume and 1.9MHz for pitch).  The inductor physical size constraint was driven entirely by the pitch oscillator side, where both the inductor and the Analog Front End (AFE) surface-mount pcb are located inside the end of the pitch extension arm. But having a small volume inductor both electrically and physically doesn't seem to hurt either.

New boards arrived last Friday from JLCPCB.  The order had been confirmed on the previous Monday, and both the turnaround time and the board quality were again outstanding.  Four of the seven different boards are somewhat universal D-Lev boards, while the other three (TOUCH, POWER, and INTERCONNECT) are unique to this particular enclosure design.  Most of the changes made from the original board run involved increasing a few hole clearances to make component insertion easier.


The Pro theremin has been up and running with the first board set for a couple weeks, and as the new boards were built up they were substituted one-by-one into place and confirmed to be working. The three new Pro-unique boards were built up and tested on the bench. All were working as planned and the theremin was then partially disassembled to allow installation of the new boards.

The touch-sensitive feature that lights corresponding LEDs surrounding the display panel for whichever encoder knob is being touched was intended to be used only on this cabinet design because the knobs had to be placed well below the display, and I wanted to avoid having to look back and forth between the knobs and the display.  The eight encoder boards were removed from the front panel to allow the TOUCH board to be installed between the two encoder columns.  Each of the TOUCH board's eight touch pad input lines goes to a screw-hole pad in the board perimeter. One screw goes through each of these pads and connects directly to each of the eight encoder knob bezel rings.  The knobs themselves are only capacitively coupled to these bezels, but the programmable sensitivity of the TTP226 IC allows a wide range of adjustment from requiring direct finger pressure on a knob to only requiring close proximity to it.

Eight 0-80 screws hold and connect the TOUCH pcb, and when the screws are tightened down the board curves and conforms to the panel curvature.  I had considered using .031" substrate for this, but the .062" bends to shape without a problem.  This was the first pass of this particular board, and it came out too wide to fit between the encoders.  I had to sand the width and restore a couple lost traces with wire.  This will be fixed on the next board run.

Touching an encoder knob lights the corresponding LED surrounding the LCD panel.  As it is now all knobs respond to touch but the lower right knobs are a little less sensitive.  I think this can be balanced out by changing the shunt chip capacitor that is on each line.

I was always ready to ditch this feature at any point if it became a problem, and I still am, although it looks like it is going to work.

Next is a sequence of photos showing the internal board layout and how the cabinet goes together.  In this first view the top left board is a simple interconnect to transition from a ribbon cable to the individual wires that run to the pitch arm contacts.  The brass button to the right of it is part of the locking mechanism (and electrical ground) for the pitch arm.  The green air-core inductor is for the volume AFE pcb seen just to the right and below it, mounted on its own little shelf bracket. Mounted deeper in the cabinet and within the front panel itself is the LCD with the multicolored Dupont wires connecting to the MAIN FPGA pcb.  These are temporary because I am still waiting for 34-pin ribbon connectors to fit the 1x16 LCD header and the 2x17 connector on the main board.

This is another view showing a little more of the MAIN FPGA board:

(To be continued)


Posted: 6/28/2019 10:12:46 PM
dewster

From: Northern NJ, USA

Joined: 2/17/2012

Ho boy!  Roger, you're killing me - and making me run out of superlatives!  Your reflow oven looks amazing!  And your "Pro" is a thing of beauty, inside and out!  Your volume coil is particularly spiffy looking.

People should know that Roger super kindly just sent me a stuffed and working set of his PWBs that I'll soon be cobbling into a functional mock-up.  My input won't look anywhere near as good as anything on this thread, but the boards at least will be pretty! :-)  (Though if you look waaay inside, I do write fairly nice looking code, if I do say so myself.)

[EDIT] Hey, for real "Pro" high fidelity, you need to make that thing self destruct the PWB's when it tips over and lands on the knobs!

Posted: 6/29/2019 7:09:34 AM
pitts8rh

From: Minnesota USA

Joined: 11/27/2015

"(Though if you look waaay inside, I do write fairly nice looking code, if I do say so myself.)" -Dewster

I wouldn't know what I was looking at if I went waaay inside. But from what I see on the outside, I would say you do indeed.

Posted: 6/29/2019 8:10:07 AM
pitts8rh

From: Minnesota USA

Joined: 11/27/2015

D-Lev "Pro" Build Progress  Pt. 2

Below the MAIN FPGA board are the two breakout ribbon cable assemblies that connect it to each of the eight individual ENCODER pcbs.  Encoders can be part of a larger main board at some point to eliminate this added complexity.

Here is a wider view of the enclosure with the back removed.  The dangling wires are for connecting a "write" LED, which I will probably not use this for this project.  This is a feature that Eric added to flash an LED during the preset/system-parameter write sequence and provide a confirmation that something is actually happening.  The user interface on the LCD also gives a text indication when you are armed to write, but the flashing LED is a more universally accepted indicator of a temporary state that requires attention.

The bottom panel has all of the I/O connections.  In the photo below and clockwise from the power entry on top we have the fuse, RJ45 female for the separate tuner, a mono pitch preview jack, main power switch, mono main audio out, an alternate stereo jack for providing both preview (ring) and main (tip) audio, and finally a 3.5mm jack for use with an external pedal that triggers auto-calibration (acal).  I forgot to make room for an optical output, so I may remove a redundant 1/4" audio jack and stick one there.  Four screws that go into the side panels lock the front panel to the sides, and the two top holes are for thumbscrews that insert into the end of the back panel for easy tool-less removal.  The top ends of the front and back panel each have a slide-in locking mechanism, so there are no visible screws other than these six on the bottom panel. The center sleeve has an internally threaded insert to accept a shortened boom mic stand.

The main audio and pitch preview jacks on the bottom panel will provide outputs from the SPDIF/analog converter that are adjustable up to line level using the potentiometers on the front panel (the large wood knobs). This allows setting the main audio level to blend with accompaniment music and optimizing pitch preview level when using a behind-head monitor, both without having to use a nearby mixer or adjust volume digitally through the user interface.  The front panel "Phones" and "Preview" jacks are these same variable level signals run through a a TDA1308 headphone driver configured for somewhat less than unity gain.

Auto calibration ("acal") can be initiated by rotating the lower left encoder knob if you're on the main page of the interface, but sometimes when experimenting with pitch or volume system settings it's nice to be able to perform acal from those menu pages without going back to the main screen.  A dedicated hardware input was added that allows the use of a simple normally open floor pedal to perform this same function. Tapping the pedal triggers calibration no matter which page you are currently on in the user interface. I find this immensely useful for setting your reference "zero beat"  and volume with both hands poised in a retracted rest position.  I put quotes around "zero beat" because the calibration pitch with the pitch hand withdrawn and near the body of course should not be zero if you want to maintain pitch linearity into the lower octaves.


(To be continued)


Posted: 6/29/2019 1:31:27 PM
dewster

From: Northern NJ, USA

Joined: 2/17/2012

I don't think I ever gave you / hooked up an FPGA pin for the write LED?

I really like how you only have visible screws on the bottom, looks real classy!  Hey, on the bottom there you need one of those two-pronged mickey-mouse AC input jacks (IEC320C7) and an XLR line level output, that way when fumbling around by "feel" on a dark stage you can zap the audio section with 110VAC!  (A real design flaw on the Roland RD-800 stage piano with downward facing I/O - their fix was to cable clamp the AC cord to the case!)

I think we're using the same mic stand.  For some types of Theremins the small size is too short and the regular size is too tall.  It looks like they can probably be cut down to whatever size fairly easily.

My turn to snoop on your bench!  Is that a microscope with ring illumination?  A hot plate of some sort (blue)?  A syringe hooked up to a vacuum source - for solder sucking?  What's the blue-tipped hose connected pencil thing next to it?  Don't ask don't tell re. the roll of TP!

Thanks to you, when making toast in the morning in our B&D toaster oven I think of solder reflow!  Though I use ours for cheese and butter reflow...

Posted: 6/29/2019 3:40:36 PM
pitts8rh

From: Minnesota USA

Joined: 11/27/2015


"I don't think I ever gave you / hooked up an FPGA pin for the write LED?"

I have FPGA pin 74 assigned to led_o[4] which I have been calling "STORE LED" on the board.  I can't find the original discussion of the pin assignment offhand, but I recall that you told me it was an active low signal so I paired it with an adjacent 3.3v pin.  And below are a couple references to it in your change logs.  I thought I tested it with the slow blink but I'm back at 5/17 software right now so I haven't checked it recently.  Are we possibly talking about something different? 

////////////////
// CHANGE LOG //
////////////////
2019-05-20
- Now only writes to preset slot 0 save the system parameters.
  This has the side effect of making slot 0 the power-up default.
- Write LED now blinks.

2019-05-21
- Doubled the write LED blink rate.
- Removed 0xd0 type.


"I think we're using the same mic stand.  For some types of Theremins the small size is too short and the regular size is too tall.  It looks like they can probably be cut down to whatever size fairly easily."

I've cut down almost all of my stands now.  The standard tall ones (I forget the height?) are sometimes right for a theremin if I'm on a tall stool and if the stand is fully collapsed, but there is no margin to lower them if I want to sit on an office chair.  I just disassemble them and saw off whichever section I want to shorten.  It's easy to restore the flared end that prevents the sections from pulling apart.  I just rest the tube on concrete with the end to be flared on top, place an oversized steel ball on the open end, and whack it with a hammer.  The steel is soft and the end flares out enough to keep the extension from pulling out of the lower tube, or keep the lower tube from pulling out of the tripod base.

"My turn to snoop on your bench!  Is that a microscope with ring illumination? "

Yes, it's an Amscope circuit board model microscope.  I have an article about it on my website.

"A hot plate of some sort (blue)? "

That's what I've been using for reflow up to now.  It has a PID controller and these are pretty common on eBay.  They're used a lot for screen removal on portable devices.

"A syringe hooked up to a vacuum source - for solder sucking? What's the blue-tipped hose connected pencil thing next to it? "

The syringe is filled with solder paste and the box with the gauge is an automatic pressure/vacuum dispenser.  You can set the application pressure and time to hundredths of a second to get the paste blob size just right. Each pressure period is followed by a light vacuum to draw the paste back after application.

The other thing that you see is a homemade vacuum pickup tool for placing surface mount parts.  I made it using an aquarium air pump with the valve assembly reversed to give a mild suction instead of pressure.  A floor pedal valve tees into the vacuum line so that a tap on the pedal breaks the vacuum and the handheld tool drops the part. 

The paste applicator described above uses an electrical trigger to apply paste, and this pickup tool is strictly pneumatic.  In a moment of lucidity I modified the air pedal to add a microswitch, and now the same pedal works for paste application and vacuum part placement.  This is good because my pneumatic pedal is very positive and is mounted on a heavy plate, and the paste applicator pedal was this cheesy plastic thing.  Which, by the way, ended up serving as my "acal" pedal in one of the previous photos.  See how it all works out?  Even-Steven.

"Don't ask don't tell re. the roll of TP!"

For those long sessions at the bench!  Actually, it's much less wasteful than paper towels for the "little wipes".

Posted: 6/29/2019 5:33:43 PM
dewster

From: Northern NJ, USA

Joined: 2/17/2012

Interesting!  I was wondering how you were doing the solder paste thing, as well as the surface-mount placement.  When I was monkeying with boards at my last "real" job it seems there was a dab of rubbery glue under the center of the components, perhaps on the underside during reflow to keep them from falling off?  Or as a general "anti-knock" feature to keep things from moving around during all the jostling pre reflow?

Consulting our emails, I believe you were going to assign the write LED[4] to pin 15?  I'm currently driving LED[0] (pin 3) for testing purposes, as I can see it through the translucent housing, but pin 15 isn't hooked up to anything inside the FPGA.

I also see in the Quartus pin planner that the default output drive strength (4mA) and slew rate (slow) that I set in the *.qsf file for some reason aren't taking, something I will look into.  <= just checked the fitter resource section and the 4mA drive strength is indeed being applied.  Slower slew rate only applies to 3.3V LVTTL @ 8mA and above, so there's no downward adjustment possible.

Posted: 6/29/2019 6:22:04 PM
pitts8rh

From: Minnesota USA

Joined: 11/27/2015

Actually the better way to apply the paste when you get up and running is to use a stencil ordered with the board and just squeegee the paste on.  But at this early stage where things are changing it's better just to apply it manually. Applying paste with the syringe and the pressure dispenser for all of the main board components on one side took about 2 minutes.

When you see tiny (often red) spots under surface mount components on one side of a board that is actually the adhesive applied to the board prior to part placement to keep them from shifting when the board is reflowed again for the other side, as you stated.

I think I found the same email from 5/1 regarding the store LED:

2) And regarding the "store" LED pin assignment, would you want to simply assign led_o[4] to any available pin that you have on your demo board for testing purposes (since your and my prototypes are currently still the same)?  I plan to assign this to pin 15 (bank 5) on my new main board.   
 
OK, I'll assign pin 15 and report back.  Though I'll be testing it with led_o[0] (an LED on the demo board that I can see through the translucent enclosure).

So I did assign it to pin 15 of the demo board, which is I believe pin 74 of the FPGA itself as I described in the last post.  So are we (or will we be) good here?

[Edit]  I loaded the latest software and tested the store LED and it is working.

Posted: 6/29/2019 8:24:24 PM
dewster

From: Northern NJ, USA

Joined: 2/17/2012

"So I did assign it to pin 15 of the demo board, which is I believe pin 74 of the FPGA itself as I described in the last post.  So are we (or will we be) good here?" - pitts8rh

And of course I never looked into nor got back to you on that pin!

That's LED[0] (FPGA pin 74), which is the same as the board LED I'm using for testing.  The pin would then be driving two LEDs in parallel.  The on-board LED has a 1k resistor from +3.3V, which gives (3.3V - 1.8V) / 1k = 1.5 mA, which is trivial.  If the the off-board write LED consumes this or a bit more then it should be OK.  And we can always increase the pin drive current if necessary.

Posted: 6/30/2019 10:34:50 AM
pitts8rh

From: Minnesota USA

Joined: 11/27/2015

D-Lev "Pro" Build Progress  Pt. 3

The next pictures show how the front panel and the rest of the cabinet separate from each other.  Only two ribbon cables need to be pulled and four bottom screws removed to separate the parts.  Because all of the sensitive analog stuff remains in the main enclosure, the theremin can be worked on with the front panel easily accessible on the bench while the rest of the enclosure and antennas are in place on a stand nearby, connected only by two longer 8-pin ribbon cables.

And finally, no more wall wart power supply or separate ground wire! I had the space, so a 5v linear power source was added. I generally don't like wall warts, but it's understandable why manufacturers use them as they simplify safety certifications.  And for a theremin it's nice being able to bring an earth ground into the enclosure along with power without having to resort to a special power adapter like the one that the Etherwave uses. 

And here it is, with the tuner still mounted (out of view) in a vise, and working great (but with only 2 voices at the moment).

For the first time in a while I was able to just sit for a while in front of this theremin and play it without having boards propped precariously in position and clip leads falling off. With the new build I have lost all of my presets, but those will be transferred over without much trouble.

The analog audio still needs to be figured out, but this shouldn't be much of an effort to do before the next board run.  I'm on the fence about whether to put the digital-to-audio converter on an integrated audio board or just use the guts from $6 decoders that come in their own box, along with some supplemental circuit.  The build quality on these modules looks pretty iffy, but there are quite a few surface mount parts to deal with if you build your own.


You must be logged in to post a reply. Please log in or register for a new account.