MicroDexed - DX7 to go


#81

Got a first running/sound producing implementation of the MDA-EPiano on the TeensyMIDIAudio board running :smile:


#82

Woaoooo! Do you think it can be packaged with the MicroDexed and switch from one to the other? This would be really great!!


#83

Maybe… I had to put the sample data from the EP into PROGMEM. If the Dexed code will also fit, this may work.

Regards, Holger


#84

Omfg! It’s amazing and great news. Esp32 cost 4x less than teensy here in Brazil and I have a extra DAC 5102 to try and play when I finish my zynthian.


#85

New news from nyh (the guy who tries to get Dexed running on the ESP32):
It seems that the ESP32 currently only can compute up to 6 voices simultaniously. This can be a problem due to the used audio stack or the FPU of the ESP32 (which may be not as powerful as the one inside the Teensy).

This is a little bit frustrating, because the Teensy-3.6 can produce 16 voices simultaniously (maybe more - later perhaps also a split with two or more sounds)…

Regards, Holger


#86

For those who own a working TeensyMIDIAudio (soon?): MicroMDAEpiano (note: ALPHA state).

Regards, Holger


#87

Kit received ! I will start soldiering next week and hope to have that FM sound soon after that
Thanks @C0d3man


#88

@C0d3man I was preparing to make a DX7 clone or emulator, than I found Dexed and Zynthian. I was considering making something smaller and cheaper, than I found MicroDexed. Thank you a lot, all hail open source.

Do you think would be feasible to implement a split function (two patches at the same time, 8 voices each, splitting the keyboard in half)? And also basic functions like hold (plays a key pressed once, till you press another one)? I did a quick view at the code, just tell me if it’s worth for me to invest time in studying it.

This stuff just to use MicroDexed in live performances and jams.

Great buddy


#89

Hi @scipione205,

Thanks, but I am standing on the shoulders of giants. I completely reused the Dexed engine and took much advantage from the Teensy audio stack.

Yes and Yes. :slight_smile:

Splitting is on my roadmap. Currently the code must be organized better… it works, but it’s not really nice. The Teensy has enough RAM to start a second engine of Dexed with an other voice - perhaps with more than 8 notes per voice…

It should not be a big problem and I would be very happy if you want to help :smile:
Current steps for this would be:

  • Add a second audio queue
  • Add a Mixer4 object and virtually patch both queues to the Mixer4 and the output of the Mixer4 towards the effects
  • Create a second Dexed engine which uses the second queue
  • Decide where to put the split point an route the MIDI messages corresponding

I hope to cleanup the code until mid February.

Regards, Holger


#90

Ok I think I will start next week. Fisrt I will take a look at Dexed documentation that maybe it’s more complete.


#91

A new audio demo of MicroDexed and MicroMDAEPiano (both based on the TeensyMIDIAudio board):

(Multi channel recording!)
No special effects. Only some panning and a Reverb bus. Drums are from EZ-Drummer. Trumpets, bass and solo-synth are all from MicroDexed. The EPiano is the MicroMDAEpiano (a port of MDAEPiano, also running on the hardware of MicroDexed) with builtin tremolo.

Regards, Holger


#92

hello @C0d3man, the board kit is now soldered and I have a few question regarding cabling for the display and encoders.
The 3D render on the gith is not exactly like the board we have received. The latter has less connectors and the serigraphy is not complete, hence my questions for confirmation.

  • Encoders should connect to J7 but which pins exactly ?
  • I2C Display from the kit has the I2C board soldered, so it should go to J7, straight ?.. but the documentation on the git is not explicit. The LCD has GND,VCC,SDA,SCL, but you board looks like it is VCC,Sxx,Sxx,GND. can you confirm please ?

Then for the complementary pins on J3 (Analog) and J4 (Serial), could you also confirm the pinout ?

Last comments on the assembly :

Here is the final board with “all” options fitted

The Pcb was easy to solder, good quality, next step will be to add the teensy boards and make some sound !


#93

Hi @jerash,

thanks for your reply. I will try to answer all your questions.

That’s because KiCAD had not all the parts as 3D model. Especially the dual RCA connectors were not available as 3D model, so I had to take single ones.

Can you tell me which picture you exactly mean? The picture for the Rev-1.7 board is located at https://codeberg.org/dcoredump/TeensyMIDIAudio/src/branch/master/Rev-1.7/TeensyMIDIAudio-1.7_top.png. Perhaps you took a look at the current (currently not in real life existing) revision (without “Rev-1.7” in the path)?

This is shown in the Build-Manual on page 9: J2 (pins 2,4,6 for Encoder1 and pins 14,16,18 for Encoder2, both GND cables from the encoder can be connected to any uneven number because all of them are GND). I just see that I made a mistake in the manual. There I wrote pins 2,3,4… that’s wrong. Counting is like this:
J2

Right!

It’s written down on page 10, but I think I have to make this more precise: On the PCB the connectors are like this:

You don’t need them for normal operation - only if you decide to add more hardware (like potentiometers or buttons). The pinout can be found in the circuit diagram. But I will add the pinout to the documentation soon.

Yes, I made a serious design mistake. I must help with my devices with a file (as described in the Build-Manual on page 12). Thanks for the hint - if there will be more boards, I will fix this problem.

Yeah, this isn’t ideal either. I will also improve that.

That’s nice to hear! I will continue working on MicroDexed soon. There are still a lot of improvements to do. But in the current state it works stable. Currently I put some time into the MicroMDAEPiano and tested a Hammond organ.

Thanks for reporting and have fun!

Regards, Holger


#94

indeed i totally missed the Build manual, now things are clear.
thanks for the details, i’ll let you know when it is finished


#95

wow definately following this thread. Has anyone had success importing a bulk dump from dexed into an actual dx7 keyboard? I am able to fetch just one sound, but get that midi error when trying to load the entire 32 sounds. The other way works fine however (dx7 into dexed). Just installed the Supermax+ so now I wanna load up this baby and hopefully edit it from a controller like coffeeshopped’s patch base app for ipad.


#96

So I have a DX7II but so far I have only loaded my DX7 sounds into the MicroDexed.

MicroDexed only uses the engine from the Dexed. I completely removed all UI and SysEx handling and wrote my own routines.

Regards, Holger


#97

Here it is Finally working !

It is so nice to hear back some sound I used …25 years ago :blush:

Some remarks :

  • using arduino v1.8.5 I had to force some libraries path or else the compiler was complaining about finding two versions (the one from arduino lib and the one from teensy)

#include </Applications/Arduino.app/Contents/Java/hardware/teensy/avr/libraries/SD/SD.h>
#include </Applications/Arduino.app/Contents/Java/hardware/teensy/avr/libraries/MIDI/src/MIDI.h>

  • when moving CC7 on the controller, or the volume with the encoder, the are many clicks in the audio, it would be great to get rid of those

This is a success on first teensy boot with your kit, Audioboard and USB-Midi-host, nice work @C0d3man, let me know if you need me to test some features, i’m open despite the short available time I have


#98

Ohhh and the delay is a really great addition to the synth.
Especially as the repeats are still running when you changes patches, that is super usefull !!!


#99

Welcome back in the 80ies @jerash :smile: :man_dancing:

Thanks for sharing! Your are the 3rd musician who has a running MicroDexed!

Hm, yep, I had these problems, too, but for me everything works without changing anything at the code. Perhaps because I am having two installations of the Arduino-IDE (one for Arduino and one for the Teensy - it’s a little bit tricky to get them seperated).

Ok, this should be not a bigger problem to fix. Will do this next.

Indeed, there are two things for testing:

  • For your own pleasure: You can try MicroMDAEPiano. It currently has no UI, so LCD shows only garbage. So no controllers are available for changeing Reverb, EQ, distortion, … . But it sounds really nice and the Tremolo (Mod-wheel) is working. You have to uncomment (#define TEENSY_AUDIO_BOARD 1) in config.h (line 43)!
  • I have changed the MIDI handling of MicroDexed from my own MIDI code towards the code of the Arduino/Teensy MIDI library. So nothing special to hear - everything should work as good (or better) as before, but worth for testing. Therefore you have to change to the branch revise: cd MicroDexed; git checkout revise and recompile. This code also has a compile-time-option in config.h (MIDI_THRU) which mirrors all MIDI events towards the other MIDI connectors (so DIN-MIDI-IN->USB-HOST-MIDI-OUT+USB-MIDI-OUT and so on…).

Thanks and have fun with amplified phased shifted sinusoids in the range of 0 Hz -> 1/2 Nyquist frequency :joy:

Regards, Holger


#100

Welcome back in the 80ies @jerash :smile: :man_dancing:

Thanks for sharing! Your are the 3rd musician who has a running MicroDexed!

Hm, yep, I had these problems, too, but for me everything works without changing anything at the code. Perhaps because I am having two installations of the Arduino-IDE (one for Arduino and one for the Teensy - it’s a little bit tricky to get them seperated).

Ok, this should be not a bigger problem to fix. Will do this next.

Indeed, there are two things for testing:

  • For your own pleasure: You can try MicroMDAEPiano. It currently has no UI, so LCD shows only garbage. So no controllers are available for changing Reverb, EQ, distortion, … . But it sounds really nice and the Tremolo (Mod-wheel) is working. You have to uncomment (#define TEENSY_AUDIO_BOARD 1) in config.h (line 43)!
  • I have changed the MIDI handling of MicroDexed from my own MIDI code towards the code of the Arduino/Teensy MIDI library. So nothing special to hear - everything should work as good (or better) as before, but worth for testing. Therefore you have to change to the branch revise: cd MicroDexed; git checkout revise and recompile. This code also has a compile-time-option in config.h (MIDI_THRU) which mirrors all MIDI events towards the other MIDI connectors (DIN-MIDI-IN->USB-HOST-MIDI-OUT+USB-MIDI-OUT and so on…).

Thanks and have fun with amplified phased shifted sinusoids in the range of 0 Hz -> 1/2 Nyquist frequency :joy:

Regards, Holger