terminal tedium (raspberry zero, pi2, pi3 codec / pd thing)

From circuitbending to homebrew stompboxes & synths, keep the DIY spirit alive!

Moderators: Joe., lisa, luketeaford, Kent

Post Reply
thetechnobear
Wiggling with Experience
Posts: 296
Joined: Wed Feb 11, 2015 8:17 am
Contact:

Re: Zynthian

Post by thetechnobear » Sun Apr 28, 2019 7:07 am

thanks for everyone....

Im pretty busy till after superbooth, but will have a think about it after that.

I think I need to do some tests with a rPI2, to see what the performance is like.
(as ive only tested with the rPI3b, which i understand is incompatible)
I think it might be ok, as the Organelle is fine, and its a single core imx6.. but the proof is in testing!


I'd also like to get a feeling for how what percentage of TT users have a display? whilst you can use remote control with Orac, there is no doubt that even a small oled display makes things much more immediate.
(and i basically already have the code for this due to the Organelle!)

skee wrote:Can Orac run on Zynthian platform?
sure, its a rPI and has an audio interface, which is all you need :)
the questions are:
- how to make it nicely co-exist with what they have already/
- interfacing to the display.

the later is not that hard, and Orac/Mec is open source, so you could look at the existing code to see how it interfaces with the Organelle and Push2 display, and 'modify'.
i can't say much more as Ive only fleetingly looked at Zynthian - i was quite interested in it, really wished they moved over to PiSound rather than Hifiberry - so they'd of had audio input

User avatar
mxmxmx
Super Deluxe Wiggler
Posts: 2242
Joined: Thu May 31, 2012 1:54 am
Location: berlin

Re: Zynthian

Post by mxmxmx » Sun Apr 28, 2019 9:33 am

thetechnobear wrote: I think I need to do some tests with a rPI2, to see what the performance is like.
(as ive only tested with the rPI3b, which i understand is incompatible)
I think it might be ok, as the Organelle is fine, and its a single core imx6.. but the proof is in testing!
yes/no. i somewhat lost track of the various versions, but model 3b should be fine. as far as i can tell, what's been causing trouble (= won't boot up) is models 3b+ and 3a+, which come with a new/different/more delicate PMIC. that would be my experience, too (using 3a+ and misc PSUs) ... it seems to be some 3v3 power and/or power-sequencing thing, idk, it'll run fine once the PSU is up (and the module plugged in only then); i don't think there's a solution at this point.* i tried to wire a MIC803 IC to the "run" pad, to see if that works, but it didn't help it. could be because i used the 140ms version, and 140ms isn't enough; or could be because keeping "run" low that way just doesn't work in principle ... i didn't really look into it.


*
edit. well, i did look into it now: fwiw, it seems (judging from the interwebs (see below)) that what would do the trick is to cut the 3v3 trace at pin 1 (= 3v3_D), right where the 4k7 resistor is. then supply 3v3 by some other means. it could be tapped at the ADP150 (= 3v3_A), even though that wouldn't be ideal.
"In some cases it is reported that attaching HAT's or external circuits which use the 3B+'s 3V3 rail prevents booting.
[...]
It appears those issues may also affect the 3A+ as well as a 3B+ which wouldn't be surprising if they use the same power management scheme.
[...]
We are still (with the held of the PMIC supplier) looking in to these issues."

...

turns out that does do the trick. it would be nicer i guess to see this solved on the level of the PMIC, but for the time being, anyone wanting to use a model 3A+ oder 3B+, here is what seems to work:

1. cut the 3v3 trace right next to pin1, the one that's connecting pin 1 and the one leg of the 4k7 resistor
2. find a suitable 3v3 regulator and use that instead. i had a LP2950 at hand, so that's what i used (on the top side of the board), 5V from 2-pin header and gnd from a/the nearby pot, then i've just pulled through the output leg through that hole:

Image

User avatar
autodafe
Wiggling with Experience
Posts: 299
Joined: Mon Oct 02, 2017 3:14 am
Location: Italy
Contact:

Post by autodafe » Tue Apr 30, 2019 2:32 am

I have finished building a TT, all tests run fine (the speaker-test outputs sound correctly at least - not on the default ALSA driver), voltages are OK, configuration seems mostly OK...

Only issue is I can't find a way to set the WM8731 as ALSA Card 0 so I setup in the asound.conf Card 1 instead

but when I run a .pd patch, it apparenly runs (no errors whatsoever) but nothng happens on the outputs...

is it a matter of PD using always the default soundcard? or what else?
any way to tell PD to use another soundcard?

User avatar
mxmxmx
Super Deluxe Wiggler
Posts: 2242
Joined: Thu May 31, 2012 1:54 am
Location: berlin

Post by mxmxmx » Tue Apr 30, 2019 3:41 am

if you've run the install script (?), that should have taken care of that, incl the asound.conf and amixer settings (unless something changed recently, ... unlikely though, i had updated things just yesterday and nothing broke).

specifically, the script will do the following to /boot/config.txt :

dtparam=audio=off
gpu_mem=16
dtparam=i2c_arm=on
dtparam=spi=on
dtparam=i2s=on
dtoverlay=i2s-mmap
dtoverlay=rpi-proto

the first line will/should disable the onboard audio, the last one is the overlay for wm8731. when you run aplay -l, this is what you should see:

xxx@raspberrypi:~ $ aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: sndrpiproto [snd_rpi_proto], device 0: WM8731 HiFi wm8731-hifi-0 []
Subdevices: 1/1
Subdevice #0: subdevice #0


you can then simply run:

sudo pd -nogui -rt -r 48000 somepdpatch.pd

and it should work

User avatar
autodafe
Wiggling with Experience
Posts: 299
Joined: Mon Oct 02, 2017 3:14 am
Location: Italy
Contact:

Post by autodafe » Tue Apr 30, 2019 4:12 am

i'll check it, but I forgot to mention I have used piCore :-)

User avatar
autodafe
Wiggling with Experience
Posts: 299
Joined: Mon Oct 02, 2017 3:14 am
Location: Italy
Contact:

Post by autodafe » Tue Apr 30, 2019 12:46 pm

some small progress...
I have located the install.sh file and I am now able to launh it (yesterday I did evrything by hand)
but unfortunatly Miller Puckette's site seems to be down, has been don n the last hour or so...and install.sh halts when trying to d/load pd-0.48-1..timeout forever :bang:

User avatar
autodafe
Wiggling with Experience
Posts: 299
Joined: Mon Oct 02, 2017 3:14 am
Location: Italy
Contact:

Post by autodafe » Tue Apr 30, 2019 2:24 pm

nothing. after running install.sh(which gave some errors) I still have bcm2835 on card 0 and wm8731 on card 1...

User avatar
autodafe
Wiggling with Experience
Posts: 299
Joined: Mon Oct 02, 2017 3:14 am
Location: Italy
Contact:

Post by autodafe » Wed May 01, 2019 3:09 am

did anything from scratch using Raspbian. Install.sh runs smoothly and I was set up in less than half an hour....(why did I decide to take the piCore route??? ;-)
Wonderful module!

User avatar
mxmxmx
Super Deluxe Wiggler
Posts: 2242
Joined: Thu May 31, 2012 1:54 am
Location: berlin

Post by mxmxmx » Wed May 01, 2019 3:10 am

autodafe wrote:nothing. after running install.sh(which gave some errors) I still have bcm2835 on card 0 and wm8731 on card 1...
well, install.sh is for use with raspbian. i'd be surprised if it worked 1:1 for piCore. for starters, the path for config.txt is different (/mnt/mmcblk0p1/config.txt ); and most other things work a little differently, too.

have you tried with raspbian at all? (ie, you're positive it's a configuration issue?) [edit ... crossing messages, good then ... there should be ways of getting piCore to work though, i haven't touched it myself in a good while]

re Miller Puckette: i have no insights ... he certainly seems to have stopped making pd available for armv6/v7

Mdashdotdashn
Learning to Wiggle
Posts: 41
Joined: Sat Apr 13, 2013 5:14 am

Post by Mdashdotdashn » Thu May 23, 2019 2:38 am

I've got this vague project of doing a similar thing to Hemisphere for 0_C but on a terminal tedium. In this case, I don't want to base myself on PD but rather try to go from the ground up.

Although I can read the wiring code for reading the values, I'm unsure on how to synchronize the values read with the audio stream from the audio in/outs. Is it expected that one would read modulation values one in between every audio buffer processing or should I expect to build a buffer of modulation values at 48K and feed the audio processing with a buffer (similar to what BELA does if I remember correctly)

I'm also thinking of trying to use Patchbox os (https://blokas.io/patchbox-os/) to take advantage of the RT kernel. anything that would obvioulsy be wrong about that choice ?

Thanks !
/M

Mdashdotdashn
Learning to Wiggle
Posts: 41
Joined: Sat Apr 13, 2013 5:14 am

Post by Mdashdotdashn » Fri May 24, 2019 5:06 am

Mdashdotdashn wrote: I'm also thinking of trying to use Patchbox os (https://blokas.io/patchbox-os/) to take advantage of the RT kernel. anything that would obvioulsy be wrong about that choice ?
FWIW, I tried it this morning and it seems to work ! Sucessfully got tt_chord.pd to output its nice set of chords, working through jackd.

User avatar
gerald
Common Wiggler
Posts: 82
Joined: Tue Jun 26, 2012 7:52 pm

Post by gerald » Sat Jun 15, 2019 5:39 pm

Any notes on how you got it to work? I just installed patchbox, but it doesn't seem to see the tedium's audio chip... when I run PD I get a bunch of jack errors. I am trying to get it running because it has the latest PD 0.49, and seems to have touchOSC set up too.
Mdashdotdashn wrote:
Mdashdotdashn wrote: I'm also thinking of trying to use Patchbox os (https://blokas.io/patchbox-os/) to take advantage of the RT kernel. anything that would obvioulsy be wrong about that choice ?
FWIW, I tried it this morning and it seems to work ! Sucessfully got tt_chord.pd to output its nice set of chords, working through jackd.

stevemensink
Learning to Wiggle
Posts: 6
Joined: Sun Jun 23, 2019 8:26 am
Location: Amsterdam

Post by stevemensink » Sun Jun 23, 2019 8:43 am

edit - it works :-)

User avatar
djthopa
Super Deluxe Wiggler
Posts: 1746
Joined: Thu Mar 22, 2012 5:48 pm
Location: Somewhere between a nappy and a wire

Post by djthopa » Wed Jun 26, 2019 11:01 am

Hi!
Im sorry if this has been asked before, what model of raspberry do i need to build the terminal tedium?

3 model b+ its ok?

Thanks!

User avatar
squarewavesurfer
Common Wiggler
Posts: 237
Joined: Tue Jan 27, 2015 2:43 pm

Post by squarewavesurfer » Wed Jun 26, 2019 2:34 pm

djthopa wrote:Hi!
Im sorry if this has been asked before, what model of raspberry do i need to build the terminal tedium?

3 model b+ its ok?

Thanks!
I have noticed others having some issues with the 3b+ and the additional current consumption may not be worth the subtle differences it has over the 3b. I'd recommend if you can get a 3b, go for it. You may even save some money.

I have used the pi zero but you may find the zero is too weak to run conplex pure data patches.

The pi4 is out now but you may have a harder time getting it up and running since it is brand new.

User avatar
djthopa
Super Deluxe Wiggler
Posts: 1746
Joined: Thu Mar 22, 2012 5:48 pm
Location: Somewhere between a nappy and a wire

Post by djthopa » Wed Jun 26, 2019 3:18 pm

squarewavesurfer wrote:
djthopa wrote:Hi!
Im sorry if this has been asked before, what model of raspberry do i need to build the terminal tedium?

3 model b+ its ok?

Thanks!
I have noticed others having some issues with the 3b+ and the additional current consumption may not be worth the subtle differences it has over the 3b. I'd recommend if you can get a 3b, go for it. You may even save some money.

I have used the pi zero but you may find the zero is too weak to run conplex pure data patches.

The pi4 is out now but you may have a harder time getting it up and running since it is brand new.
Thanks for the heads up squarewavesurfer, i have ordered a 3b :tu:

Sikkboy
Common Wiggler
Posts: 101
Joined: Wed May 15, 2013 10:12 am
Location: Georgia

Post by Sikkboy » Tue Aug 06, 2019 2:11 pm

got it working, nevermind! :party:

chrissugar
Common Wiggler
Posts: 60
Joined: Thu Dec 06, 2012 5:51 am

Post by chrissugar » Thu Aug 08, 2019 4:12 am

Hi all

Just a suggestion.
One of my favorite digital oscillators is the Noise Engineering Loquelic Iteritas.
In the manual, the designer generously shares in the last few pages the core of the algorithms for the three synthesis modes: VOSIM, Summation synthesis and two osc phase modulation.
It would be fantastic if someone with the programming skills could adapt the algorithms to the Terminal Tedium :) :) :)

chrissugar
Common Wiggler
Posts: 60
Joined: Thu Dec 06, 2012 5:51 am

Post by chrissugar » Thu Aug 08, 2019 4:16 am

Sorry, forgot to post the link for the manual:
https://www.noiseengineering.us/s/LI_manual-xehy.pdf

Sikkboy
Common Wiggler
Posts: 101
Joined: Wed May 15, 2013 10:12 am
Location: Georgia

Post by Sikkboy » Thu Aug 15, 2019 10:37 am

Quick question! how do you test the push button LED and the 3 LED's in the back of the board?

User avatar
mxmxmx
Super Deluxe Wiggler
Posts: 2242
Joined: Thu May 31, 2012 1:54 am
Location: berlin

Post by mxmxmx » Thu Aug 15, 2019 12:47 pm

Sikkboy wrote:Quick question! how do you test the push button LED and the 3 LED's in the back of the board?
what are the 3 LEDs in the back for the board?

as for the push button LED, several options:

- pd. see: D_io_test_wm8731.pd
- the osc client
- some "blink" python script (the LED is GPIO 26)

Sikkboy
Common Wiggler
Posts: 101
Joined: Wed May 15, 2013 10:12 am
Location: Georgia

Post by Sikkboy » Thu Aug 15, 2019 6:14 pm

mxmxmx wrote:
Sikkboy wrote:Quick question! how do you test the push button LED and the 3 LED's in the back of the board?
what are the 3 LEDs in the back for the board?

as for the push button LED, several options:

- pd. see: D_io_test_wm8731.pd
- the osc client
- some "blink" python script (the LED is GPIO 26)
arent there 3 smd leds on the side of the board where the pots are not mounted?

User avatar
seismic
Common Wiggler
Posts: 144
Joined: Tue Feb 04, 2014 1:48 pm
Location: Zürich, Switzerland
Contact:

progress on the computemodule

Post by seismic » Sun Sep 01, 2019 7:46 am

hi all

i made some slow progress on the computemodule (as i call it for now)

it can fit the two display from gerald or on 2.0" full color SPI display
dought i am now struggling a bit with adapting the ili9225 driver.

that should then give a versatile platform for a UI.

here pics with the "notyetworking" ili9225 display (note the too big cutout, cause originally theres cutouts for the two 1.3" i2c displays, and i just took the file to make it match the ili9225 display):
Image

Image
-
i guess everybody has got cats.
-
..-- Seismic Industries --..

User avatar
djthopa
Super Deluxe Wiggler
Posts: 1746
Joined: Thu Mar 22, 2012 5:48 pm
Location: Somewhere between a nappy and a wire

Post by djthopa » Tue Sep 10, 2019 5:40 pm

Hi!

So in thinking on using the Terminal as an fx processor and was wondering if it would be reasonable to try getting the modep fx from blokas running on it; since it runs on pi too. :hmm:

User avatar
sleepgardens
Common Wiggler
Posts: 249
Joined: Wed Sep 30, 2015 11:56 am
Location: Milan, Italy
Contact:

Post by sleepgardens » Sat Oct 05, 2019 10:35 am

Hello there.
I might get a free Rpi 3b from someone who doesn't need it anymore in the near future and so this project came back to my mind.
I've seen that there are various awesone patches and I'm guessing: is there a way to load multiple PD patches on the TT and to select one to be used directly from the front panel? I've read something about switching patches in the wiki but found no useful information (or at least no direct yes/no answer). Also i'm wondering if something like that could be made directly in PD (like having the startup patch select from different subpatches) or it's something that would have to be done in the RPi file system. I'm asking that because i can do PD while I can't really do lower level coding. Thanks!

Post Reply

Return to “Music Tech DIY”