electro-music.com   Dedicated to experimental electro-acoustic
and electronic music
 
    Front Page  |  Radio
 |  Media  |  Forum  |  Wiki  |  Links
Forum with support of Syndicator RSS
 FAQFAQ   CalendarCalendar   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   LinksLinks
 RegisterRegister   ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in  Chat RoomChat Room 
 Forum index » DIY Hardware and Software » Developers' Corner
Virtual Analog Synthesizer
Post new topic   Reply to topic Moderators: DrJustice
Page 3 of 3 [73 Posts]
View unread posts
View new posts in the last week
Mark the topic unread :: View previous topic :: View next topic
Goto page: Previous 1, 2, 3
Author Message
VA1



Joined: Aug 20, 2018
Posts: 98
Location: Nederland

PostPosted: Sun Sep 02, 2018 8:50 am    Post subject: Reply with quote  Mark this post and the followings unread

2MB program, 1MB delay, nice reverbs possible.

Is the audio dac in this board build in ?,
or do you have the DAC with wires in breadboard ?

and dont i need external audio crystal for specific samplerates like the DSPIC ?
i will order this board, only it is backorder for 17 weeks.

What software do i need to install for programming ?
is it fully free ?, with full optimizing ?

Wont it all run on winXP ?
Back to top
View user's profile Send private message
JovianPyx



Joined: Nov 20, 2007
Posts: 1988
Location: West Red Spot, Jupiter
Audio files: 224

PostPosted: Sun Sep 02, 2018 9:16 am    Post subject: Reply with quote  Mark this post and the followings unread

VA1 wrote:
2MB program, 1MB delay, nice reverbs possible.

Is the audio dac in this board build in ?,
or do you have the DAC with wires in breadboard ?

The whole point of the Nucleo boards is low cost minimal function. They have Ethernet, but that's about it. So there's no DAC or CODEC on the board. The other option is something like a discovery board, but that's a lot more expensive and will likely have a CODEC, but also other things you may not want.

Quote:
and dont i need external audio crystal for specific samplerates like the DSPIC ?
i will order this board, only it is backorder for 17 weeks.

The SAI interface provides a bit clock for I2S if the CODEC is put into slave mode. I'm not sure if it always needs a crystal or not, so when you select a CODEC or DAC make sure to check the datasheet to know if you need xtal or not.

Quote:
What software do i need to install for programming ?
is it fully free ?, with full optimizing ?

The currently supported programmer software is STM32CubeProgrammer which is free. You should go to the ST site and browse around, there's all manner of stuff there and their software is all free, including STM32CubeMX (a CPU chip configurator) and the "library" of interface functions for the STM32 internal devices. The free "library" is not precompiled and is supplied as C source code so you can include it as is or modify it for special needs.

Quote:
Wont it all run on winXP ?

Oh - I don't believe so, especially not the 32 bit version. ST-LINK might work, but the Cube programs may not work. I gave up on XP when my Pentium 4 HT machine crapped out and i've been running WIndows 7 ever since on a new machine (the old hardware would no longer boot).

Depending on what you use for OS, there is more than one way to do compiles. There are several pay-for IDEs, but for free, I think there's an Eclipse based IDE that runs under Windows (possibly even XP). I don't compile in Windows, though I do use Windows to run the free device programmer (STM32CubeProgrammer). For edit and compile of source code, I've been using Fedora 27 and gcc properly set up to compile for STM32 CPUs. In my case, I have a file server that both Windows and Fedora can see, so it's easy to do the compile and edit under Fedora and the programming under Windows. In my lab, Fedora 27 runs as a VirtualBox VM under Windows 7.

You'll need to do research on compilers for your own needs and desires.

_________________
FPGA, dsPIC and Fatman Synth Stuff

Time flies like a banana.
Fruit flies when you're having fun.
BTW, Do these genes make my ass look fat?
corruptio optimi pessima
Back to top
View user's profile Send private message Visit poster's website
VA1



Joined: Aug 20, 2018
Posts: 98
Location: Nederland

PostPosted: Sun Sep 02, 2018 9:34 am    Post subject: Reply with quote  Mark this post and the followings unread

Ok i will download the STM32CubeProgrammer in 17 weeks, i cant wait.

Now i am looking to making PCBs in china, that cost very much for a very small print.
What is the cheapest and good pcb farmer ?
Back to top
View user's profile Send private message
VA1



Joined: Aug 20, 2018
Posts: 98
Location: Nederland

PostPosted: Sat Sep 15, 2018 6:12 am    Post subject: Reply with quote  Mark this post and the followings unread

I have to say the synthesizer is not that bad.
I throw in reverb and all is good.

With distortion the noise is minimal.

For with chorus the sound is to soft,
there is no CPU left, i have to make it louder somehow.
Why i made it so soft i dont know, maybe the IIR filters clipped, i have to boost it somehow without clip.

Very good synth with reverb.
You dont especially need a juno or tb303, this synth can replace in your track.

Very playable
Back to top
View user's profile Send private message
JovianPyx



Joined: Nov 20, 2007
Posts: 1988
Location: West Red Spot, Jupiter
Audio files: 224

PostPosted: Sat Sep 15, 2018 10:31 pm    Post subject: Reply with quote  Mark this post and the followings unread

VA1 wrote:
Ok i will download the STM32CubeProgrammer in 17 weeks, i cant wait.

Now i am looking to making PCBs in china, that cost very much for a very small print.
What is the cheapest and good pcb farmer ?


Maybe someone else can help with this, I don't make PC boards.

_________________
FPGA, dsPIC and Fatman Synth Stuff

Time flies like a banana.
Fruit flies when you're having fun.
BTW, Do these genes make my ass look fat?
corruptio optimi pessima
Back to top
View user's profile Send private message Visit poster's website
VA1



Joined: Aug 20, 2018
Posts: 98
Location: Nederland

PostPosted: Thu Sep 20, 2018 4:52 am    Post subject: Reply with quote  Mark this post and the followings unread

I have the nucleo with worlds most powerfull chip, thanks jovian
Back to top
View user's profile Send private message
VA1



Joined: Aug 20, 2018
Posts: 98
Location: Nederland

PostPosted: Wed Oct 03, 2018 8:01 am    Post subject: Reply with quote  Mark this post and the followings unread

Now more volume, less noise.
Back to top
View user's profile Send private message
VA1



Joined: Aug 20, 2018
Posts: 98
Location: Nederland

PostPosted: Sat Oct 06, 2018 7:21 am    Post subject: Reply with quote  Mark this post and the followings unread

Another update


VA1 v0.41.zip
 Description:

Download
 Filename:  VA1 v0.41.zip
 Filesize:  165.83 KB
 Downloaded:  483 Time(s)

Back to top
View user's profile Send private message
VA1



Joined: Aug 20, 2018
Posts: 98
Location: Nederland

PostPosted: Sun Oct 14, 2018 9:21 am    Post subject: Reply with quote  Mark this post and the followings unread

I tuned the oscillator to run at 44,65 MHz.
It seems the noise is worse then before now with more high tones.

I guess running this chip at lower clockspeed will have also less noise then, intresting.
Back to top
View user's profile Send private message
JovianPyx



Joined: Nov 20, 2007
Posts: 1988
Location: West Red Spot, Jupiter
Audio files: 224

PostPosted: Mon Oct 15, 2018 5:27 am    Post subject: Reply with quote  Mark this post and the followings unread

Isn't that overclocking the dsPIC? If so, I wouldn't expect it to run properly.
_________________
FPGA, dsPIC and Fatman Synth Stuff

Time flies like a banana.
Fruit flies when you're having fun.
BTW, Do these genes make my ass look fat?
corruptio optimi pessima
Back to top
View user's profile Send private message Visit poster's website
VA1



Joined: Aug 20, 2018
Posts: 98
Location: Nederland

PostPosted: Mon Oct 15, 2018 7:04 am    Post subject: Reply with quote  Mark this post and the followings unread

I used the internal oscillator finetuning to get almost 12% extra power.
Anyways i got the phaser running and can not go back.
Adjusted baud rate generator from 79 to 88.
Back to top
View user's profile Send private message
JovianPyx



Joined: Nov 20, 2007
Posts: 1988
Location: West Red Spot, Jupiter
Audio files: 224

PostPosted: Mon Oct 15, 2018 1:14 pm    Post subject: Reply with quote  Mark this post and the followings unread

I understand what you did, but the internal electronics of the chip are not guaranteed to run faster than 40 MHz. Above 40 MHz, yes, it can appear to work. However, it cannot be guaranteed to work correctly and consistently at speeds above 40 MHz. That is likely why you are experiencing the noise. Also when overclocking any CPU, the actual attainable reliable and error free speed will vary from unit to unit. If I need more speed than the dsPIC provides, a different CPU would be my choice. One issue is that other people trying to do the same thing may not be successful.
_________________
FPGA, dsPIC and Fatman Synth Stuff

Time flies like a banana.
Fruit flies when you're having fun.
BTW, Do these genes make my ass look fat?
corruptio optimi pessima
Back to top
View user's profile Send private message Visit poster's website
nettech



Joined: Sep 21, 2019
Posts: 6
Location: United States

PostPosted: Sat Sep 21, 2019 12:47 pm    Post subject: Try out the STM32f7 NucleoSynth VA project Reply with quote  Mark this post and the followings unread

If you have a Nucleo board with an STM32F746 or STM32F767, you can try experimenting around immediately with a project I am currently using, called NucleoSynth, a 6-voice, 2-oscillator per voice Virtual analog synthesizer. You can drive it directly using USB-Midi (via a midi controller keyboard or PC sequencing software), or download the slave version, and drive it with the old Midi Serial method.

https://community.st.com/s/feed/0D50X00009bMM4jSAG

I use two boards to get 12-voices total, or 6-voice dual patch, or 6-voice split patch. That is the development code I put on the page. The keyboard version allows you to use a raw 61-key keyboard with an 8x8 matrix of SPDT switches to drive the synth engine with note and velocity. I use the guts from an old Casio keyboard and it works pretty good. It will also work with SPST (non-velocity) keyboard as well.
Back to top
View user's profile Send private message
blue hell
Site Admin


Joined: Apr 03, 2004
Posts: 24079
Location: The Netherlands, Enschede
Audio files: 278
G2 patch files: 320

PostPosted: Sat Sep 21, 2019 3:20 pm    Post subject: Reply with quote  Mark this post and the followings unread

welcome nettech,

looks likean interesting starter project Smile

_________________
Jan
also .. could someone please turn down the thermostat a bit.
Posted Image, might have been reduced in size. Click Image to view fullscreen.
Back to top
View user's profile Send private message Visit poster's website
nettech



Joined: Sep 21, 2019
Posts: 6
Location: United States

PostPosted: Wed Aug 12, 2020 1:36 pm    Post subject: I just got an STM32H743ZI2 Nucleo Board, porting code soon Reply with quote  Mark this post and the followings unread

I just got an STM32H743ZI2 Nucleo Board, so I will be porting the code to run on that board soon.

It is a 480 MHZ processor (as compared to the STM32F767 board running at 216 MHZ) so I'm hoping to improve the polyphony, or run at a higher sample rate, or both.

I'll keep you posted!!
Back to top
View user's profile Send private message
blue hell
Site Admin


Joined: Apr 03, 2004
Posts: 24079
Location: The Netherlands, Enschede
Audio files: 278
G2 patch files: 320

PostPosted: Thu Aug 13, 2020 12:16 pm    Post subject: Re: I just got an STM32H743ZI2 Nucleo Board, porting code soon Reply with quote  Mark this post and the followings unread

nettech wrote:
I'll keep you posted!!


Please do Cool

_________________
Jan
also .. could someone please turn down the thermostat a bit.
Posted Image, might have been reduced in size. Click Image to view fullscreen.
Back to top
View user's profile Send private message Visit poster's website
JovianPyx



Joined: Nov 20, 2007
Posts: 1988
Location: West Red Spot, Jupiter
Audio files: 224

PostPosted: Thu Aug 13, 2020 2:08 pm    Post subject: Reply with quote  Mark this post and the followings unread

Check https://os.mbed.com/platforms/ST-Nucleo-H743ZI2/

The H743ZI2 can operate up to 400 MHz, not 480 MHz. I've worked with this board. Currently, I'm working with someone else to develop what is essentially an H7 music device dev board with the 480 MHz processor. The reason we went this route is that at the time, there was only "talk" of a Nucleo that supported the 480 MHz CPU chip. ST did some rather confusing stuff with the IC number, the IC number is the same for at least one version of both clock speed chips. All you can do is trust what is quoted when you buy it. I'm not sure that ST has actually produced the faster Nucleo.

While the 400 MHz IC is definitely faster than the 216 MHz F7 chip, there are other things at play regarding performance. One of the things that is attractive about this H7 is the large internal RAM. However, the largest chunk of that RAM accesses in 2 clocks instead of 1 clock. There is also a bug in the hardware than prevents DMA use with SPI.

So some of my hopes and dreams about performance were dashed.

My use of the chip is a polyphonic synth. The F7 at 216 MHz easily reached 32 voices (karplus-strong), but the H7 at 400 MHz reached only a disappointing 48 where 59 might be expected from clock speed ratio.

So the H7 is demonstrably faster than the F7, but you can't expect anywhere near twice the performance.

_________________
FPGA, dsPIC and Fatman Synth Stuff

Time flies like a banana.
Fruit flies when you're having fun.
BTW, Do these genes make my ass look fat?
corruptio optimi pessima
Back to top
View user's profile Send private message Visit poster's website
nettech



Joined: Sep 21, 2019
Posts: 6
Location: United States

PostPosted: Thu Aug 13, 2020 4:53 pm    Post subject: Reply with quote  Mark this post and the followings unread

Yes, I noticed strange p/n's and specs in ST's documents for the H743 series.

More SRAM and 16-bit ADC's really don't matter in my project, at least as of now.

I was not really expecting a 2X speed improvement. I would be happy just to increase the polyphony from 6-voice to 8-voice, and/or maybe just see if I can run the whole sound engine at 80 KHZ instead of 50 KHZ.

At only $27, it is probably worth it. Besides, I have worn out my F767 by soldering directly to the Morpho pads, and the board is a rev-b, which has terrible issues with the Ethernet Port.
Back to top
View user's profile Send private message
JovianPyx



Joined: Nov 20, 2007
Posts: 1988
Location: West Red Spot, Jupiter
Audio files: 224

PostPosted: Thu Aug 13, 2020 5:16 pm    Post subject: Reply with quote  Mark this post and the followings unread

It seems to me you should be able to accomplish your goal. Optimization could also give you either more voices or more features.
_________________
FPGA, dsPIC and Fatman Synth Stuff

Time flies like a banana.
Fruit flies when you're having fun.
BTW, Do these genes make my ass look fat?
corruptio optimi pessima
Back to top
View user's profile Send private message Visit poster's website
nettech



Joined: Sep 21, 2019
Posts: 6
Location: United States

PostPosted: Wed Aug 19, 2020 9:55 am    Post subject: Initial release of NucleoSynth for STM32H743ZI2 Nucleo Board Reply with quote  Mark this post and the followings unread

I posted an initial release of NucleoSynth for the STM32H743ZI2 Nucleo Board. This is Version 1.1.0 on ST's Community board.

https://community.st.com/s/feed/0D50X00009bMM4jSAG

Ported the "NucleoSynthSerial" project from F7 to H7, taking into account all of the new changes in the MPU.
Sample rate is up from 50khz to about 70khz (helping get rid of some more aliasing on the higher octaves).
Everything is working well so far.
Next release, I will be trying to increase the polyphony.
Back to top
View user's profile Send private message
JovianPyx



Joined: Nov 20, 2007
Posts: 1988
Location: West Red Spot, Jupiter
Audio files: 224

PostPosted: Wed Aug 19, 2020 11:20 am    Post subject: Reply with quote  Mark this post and the followings unread

This is a great example of alias reduction and elimination.

Early in my exploration of DSP, I was using an FPGA with a DAC that could run at 500 kHz sample rate. I wrote a monosynth with 4 oscillators and made all of the waveforms completely naive. Using 500 kHz I was able to completely eliminate evidence of alias artifacts.

This is where the history of DSP is interesting since it started and evolved in days when fast CPUs along with fast DACs were unavailable or ridiculously expensive. And polyphony was a huge deal - with large voice count being the marketing prize. Enter band limited waveforms. There are many ways of doing it, each has it's own advantages and disadvantages, but they all result in voices that prevent alias artifacts from being audible without using high sample rates. Unfortunately, there is no one place where the information about this is all neatly collected and organized, but it's out there. To not require a sample rate above 44.1 kHz gives back as either more or better features or a higher voice count.

Look at "BLIT" for one. (Band Limited Impulse Train)

_________________
FPGA, dsPIC and Fatman Synth Stuff

Time flies like a banana.
Fruit flies when you're having fun.
BTW, Do these genes make my ass look fat?
corruptio optimi pessima
Back to top
View user's profile Send private message Visit poster's website
nettech



Joined: Sep 21, 2019
Posts: 6
Location: United States

PostPosted: Wed Aug 19, 2020 1:37 pm    Post subject: Reply with quote  Mark this post and the followings unread

I researched the minBlep method of reducing anti-aliasing.

It was very easy to implement codewise, but I was never able to get it to work correctly, possibly because I am using timers to create the waveforms instead of mathematically generating the oscillator waves.

You are right though, at some point I will have to re-visit the minBlep method, and see if I can get it to work.
Back to top
View user's profile Send private message
nettech



Joined: Sep 21, 2019
Posts: 6
Location: United States

PostPosted: Fri Sep 22, 2023 6:29 pm    Post subject: I just found this page after 3 years, fixing broken links
Subject description: NucleoSynth has become Daisy Seed Synth, here is link to GitHub
Reply with quote  Mark this post and the followings unread

Unfortunately, I lost all my old STM32 Nucleo boards in a storage fire, so I recently picked up a couple of Electro-Smith Daisy Seed boards (STM32H750-based).

I ported the NucleoSynth code over to run on these new boards.

There is the STM32CubeIDE version, which is pretty much the same code as used for the STM32 Nucleo board, just tweaked to run on the Daisy board.

There is also an additional version that uses the Daisy's "DaisySP" and "LibDaisy" libraries and uses VSCode IDE instead. It utilizes the board's built-in WM Audio codec chip for audio input and output, so ...Yay...no more nasty 12-bit DAC output.

Check it out here!!

https://github.com/Nettech15
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic Moderators: DrJustice
Page 3 of 3 [73 Posts]
View unread posts
View new posts in the last week
Goto page: Previous 1, 2, 3
Mark the topic unread :: View previous topic :: View next topic
 Forum index » DIY Hardware and Software » Developers' Corner
Jump to:  

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Forum with support of Syndicator RSS
Powered by phpBB © 2001, 2005 phpBB Group
Copyright © 2003 through 2009 by electro-music.com - Conditions Of Use