Let's design and build cool (but expensive) FPGA based theremin

Posted: 9/30/2019 5:51:18 AM
Buggins

From: Theremin Motherland

Joined: 3/16/2017

I installed "Geany" a couple of days ago and got my Hive sim to mostly compile, it's a lightweight and simple code / compile environment.

Does Geany support code completion, "go to definition" and other useful IDE features?
QtCreator does - using clang parser.

Posted: 10/1/2019 3:59:36 PM
dewster

From: Northern NJ, USA

Joined: 2/17/2012

"Does Geany support code completion, "go to definition" and other useful IDE features?"  - Buggins

Yes, and I believe it lints before it compiles, which is new to me.  It caught several issues in my sim code.

Posted: 4/2/2020 5:32:35 PM
Gibarian

From: Germany

Joined: 12/27/2013

What a cool project. I just successfully compiled the simulator on Linux. There's no sound yet but that's probably a problem that exists between the keyboard and chair. Maybe I will be able to contribute to the GUI stuff. Qt is not unfamiliar territory to me.

Is there a way to get a hold of soldered PCBs? I would love to have this FPGA theremin but I doubt my soldering skills are sufficient to work with SMD components.

Posted: 4/7/2020 10:30:40 AM
Buggins

From: Theremin Motherland

Joined: 3/16/2017


What a cool project. I just successfully compiled the simulator on Linux. There's no sound yet but that's probably a problem that exists between the keyboard and chair. Maybe I will be able to contribute to the GUI stuff. Qt is not unfamiliar territory to me.

Qt is used only for building of simulator (cross platform GUI + audio). Not sure why sound does not work - need to check.
GUI on Zynq core will be written in pure C++, using tiny GUI library.
But it should be easy to write GUI based on this library. Another software part which can be developed on desktop using simulator is audio synthesis code. 
One of two Zynq ARM cores will be used for handling of audio interrupt - once per audio sample.

Now this Cora Z7 based theremin project is not ready for building - still at development stage.

Based on recent investigations, I'm going to redesign all boards.
Sensor boards should not use DFF divider on output - it's sensitive to main hum noise.
Capacitive sensor display should be replaced with resistive one (40-pin IDC connector is pin incompatible in sensor part - SPI interface instead of I2C is used for resistive panel controller) - so, main PCB should be redesigned. Waveshare 4.3 inch resistive screen is out of stock unfortunately - need to look for possible replacement.

Encoders board is not working by some unknown reason - maybe, multiplexing of encoder signals is not a good idea.
Connecting I2C Line In/Out and Phones Out boards directly to currently unused PMod sockets can free a few lines for simple connection of encoders.
PMod adapter board will not be necessary.
Returning back to "easy to solder" principle we can design boards using smt/dip components.


Is there a way to get a hold of soldered PCBs? I would love to have this FPGA theremin but I doubt my soldering skills are sufficient to work with SMD components.


It's possible to order assembled boards from PCB prototyping companies (at least from pcbway.com).
I didn't try to do it, and not sure what would be a cost of assembly.

Are you interested in joining this project?
To start experiments, you can solder simple DIP+through hole components only oscillators and connect them to Cora Z7. Audio boards can be connected directly to PMod ports.
Actually, theremin construction is very interesting hobby.

Recent updates on project state:
Reworking FPGA IP and hardware.
Sensor IP SystemVerilog code rewritten from scratch - better sensitivity.
Small (150-180LUTs) 16bit 4 thread Barrel CPU (250MHz core, 62.5MHz per thread) - as peripherial controller - work in progress.

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