Hemisphere for Ornament and Crime: Logarhythm Branch

Cwejman, Livewire, TipTop Audio, Doepfer etc... Get your euro on!

Moderators: luketeaford, Joe., lisa, Kent

Oktagon
Learning to Wiggle
Posts: 19
Joined: Fri Apr 24, 2020 2:24 am

Re: Hemisphere for Ornament and Crime: Logarhythm Branch

Post by Oktagon » Sun Jul 26, 2020 6:04 am

Apologies for the slight thread hijack but could anyone explain how to get the debug output from O&C/Hemisphere displaying in the Serial monitor from the Arduino app (on a Mac). I've tried:

- Enabling PRINT_DEBUG in OC_options.h
- Setting USB Type to 'Serial + Midi' in the Arduino App.
- Selecting /dev/cu.usbmodem# (Teensy) as the port in the Arduino App
- Opening the Serial Monitor

But I don't get any debug output when running Hemisphere. Am I missing a step?

Oktagon
Learning to Wiggle
Posts: 19
Joined: Fri Apr 24, 2020 2:24 am

Re: Hemisphere for Ornament and Crime: Logarhythm Branch

Post by Oktagon » Sun Jul 26, 2020 12:43 pm

For anyone reading this in the future, my solution was to add:

Code: Select all

  Serial.begin(9600); // USB is always 12 Mbit/sec
  while (!Serial && (millis ()  <= 3000)) ;
To the setup() function in o_c_REV.ino and change the SERIAL_PRINTLN define in util.misc.h to

Code: Select all

#define SERIAL_PRINTLN(msg, ...) \
	serial_printf(msg "\n", ##__VA_ARGS__); delay(100)
#else // PRINT_DEBUG 

chysn
Ultra Wiggler
Posts: 951
Joined: Sun May 29, 2016 10:04 pm
Location: SE Michigan USA

Re: Hemisphere for Ornament and Crime: Logarhythm Branch

Post by chysn » Sun Jul 26, 2020 10:04 pm

Logarhythm wrote:
Thu Jul 23, 2020 8:13 pm
I wonder if going outside of the timing specs just makes the results dependent on the physical tolerances of a given display's hardware since they're just made to work within the maximum update rate specified.
I'm pretty sure that's the case, because effects that worked fine on my own display, people would complain about. One effect I really liked used a brighter line for the selected envelope segment, but that didn't work for everyone. That's why I just moved to boring dotted lines.
Current Rack: https://www.modulargrid.net/e/racks/view/354385
Hemisphere Suite: https://github.com/Chysn/O_C-HemisphereSuite/wiki

"Man must shape his tools lest they shape him." --Arthur Miller

User avatar
Logarhythm
Common Wiggler
Posts: 61
Joined: Sun Jul 23, 2017 1:18 pm
Location: USA

Re: Hemisphere for Ornament and Crime: Logarhythm Branch

Post by Logarhythm » Sun Aug 02, 2020 1:27 am

I've been hard at work on a video overview/guide for TB-3PO, and it's now available on Youtube!

I've moved on from graphic design atrocities to video editing faux pas(ses!) :picard:


prestosafe
Learning to Wiggle
Posts: 15
Joined: Mon Sep 30, 2019 1:48 pm
Location: Sweden

Re: Hemisphere for Ornament and Crime: Logarhythm Branch

Post by prestosafe » Sun Aug 02, 2020 3:09 am

Good job!! Nice and informative!

I've been thinking about the transpose function over cv. I've been using it quite a bit now actually to throw in some fresh rhythmical bass lines in some of my songs, and I use it together with my analog four. So musical! When transposing the tb-3po it seems like it tracks every semitone up or down as one step up/down within i the scale, which makes a lot of sense. But I always manage to forget that in the moment and try to reach for the "actual" interval. Let's say I'm playing in C minor scale, (and my C on the keyboard outputs 0v )and I want to transpose to the sub dominant (F), by instinct plays an F on the keyboard, but in order to get the sequence playing from F within the scale I should actually press an E which is 4 semitones up from C. I've noticed this behaviour with a lot of quantisers and with quartermain in the stock Ornament and crime aswell, and it does make sense. But if I for example compare with the A4 and how the transpose works on there I play an transpose note and get the sequence to play that note or the note closest to it in the scale (if I play and F here, I get the sequence in F).

I guess this kind of transpose is a lot more complicated to implement, but what I basically is after is for the cv volts/octave to keep the same scaling through the different modes. But maybe this is not possible on this hardware even? But nonetheless it's one of those features I've been looking for in a lot of quantisers etc. Anyhow, I thought I should ask since it would make this awesome thing - more awesome. (And might be a more general quantizer question actually.)

Still playing with it every day :)

User avatar
mckenic
pew!pew!pew!kthnxbye!
Posts: 6404
Joined: Fri Aug 06, 2010 8:05 pm
Location: Limerick, Ireland

Re: Hemisphere for Ornament and Crime: Logarhythm Branch

Post by mckenic » Sun Aug 02, 2020 11:18 am

Logarhythm wrote:
Sun Aug 02, 2020 1:27 am
I've been hard at work on a video overview/guide for TB-3PO, and it's now available on Youtube!
Thanks for this - very much appreciated!
Very clear and understandable, what a wicked little thing!

Think this bumps the module near the top of my 'Oh heck I need one of these' List!

User avatar
Logarhythm
Common Wiggler
Posts: 61
Joined: Sun Jul 23, 2017 1:18 pm
Location: USA

Re: Hemisphere for Ornament and Crime: Logarhythm Branch

Post by Logarhythm » Mon Aug 03, 2020 9:53 pm

prestosafe wrote:
Sun Aug 02, 2020 3:09 am
I've been thinking about the transpose function over cv. I've been using it quite a bit now actually to throw in some fresh rhythmical bass lines in some of my songs, and I use it together with my analog four. So musical! When transposing the tb-3po it seems like it tracks every semitone up or down as one step up/down within i the scale, which makes a lot of sense. But I always manage to forget that in the moment and try to reach for the "actual" interval. Let's say I'm playing in C minor scale, (and my C on the keyboard outputs 0v )and I want to transpose to the sub dominant (F), by instinct plays an F on the keyboard, but in order to get the sequence playing from F within the scale I should actually press an E which is 4 semitones up from C. I've noticed this behaviour with a lot of quantisers and with quartermain in the stock Ornament and crime aswell, and it does make sense. But if I for example compare with the A4 and how the transpose works on there I play an transpose note and get the sequence to play that note or the note closest to it in the scale (if I play and F here, I get the sequence in F).
That's interesting, I never thought about the transpose input from that standpoint, but it makes a lot of musical sense. As you noted, many apps apply quantization via a note index into the current scale, such as 0 to 11 in each octave of the Semitone scale or 0 to 4 in each octave of Pentatonic major. Transpose CV is interpreted as 12 index values per 1 volt regardless of scale however, so +1v input will give the expected octave in Semitone but about 2.5 octaves in the Pentatonic scales. The effective pitch range (for say, a fixed LFO input) changes significantly with every scale size.

The good part of the current behavior is that you know for every 1/12v CV input, you'll get to the next note index in a given scale. The bad part is that transpose isn't consistently related to the end result pitch-- it's really pretty arbitrary in terms of what you get on the output.

I think the approach you're talking about would probably work by effectively quantizing the transpose input CV itself in your current scale, and then computing its distance from 0 volts in terms of the number of in-scale note indices. This deviation in terms of in-scale pitches from 0 would then be added to the index of the current step's note (which then has a precise in-scale pitch computed and output.) My first thought was to maybe just guarantee each 1v of CV will be an octave and subdivide each evenly by the number of pitches in the scale, but that wouldn't reflect the actual transpose input pitches accurately (from say, a keyboard.) The advantage there would be that things like LFOs would step through the scale's pitches at a constant rate though. I'll play around with it and see if anything here works well in practice, thanks for the idea :)

pld
Ultra Wiggler
Posts: 960
Joined: Thu Mar 05, 2015 5:15 am
Location: Germany

Re: Hemisphere for Ornament and Crime: Logarhythm Branch

Post by pld » Tue Aug 04, 2020 1:14 am

Logarhythm wrote:
Mon Aug 03, 2020 9:53 pm
The advantage there would be that things like LFOs would step through the scale's pitches at a constant rate though.
There's a related issue when using random generators like the Turing into a quantizer. The distribution of scale notes might not be uniform. Which isn't necessarily bad, and I believe the implementations in o_C/Hemispheres handle it (because they map note indices), but for external sources I did an experiment a loooong time ago. Really though, that poor quantizer core needs to be rewritten :)

In the original o_C the main "design guideline" (ahem) was "always keep it in the selected scale notes", and any transpose shenanigans were an afterthought built on an afterthought anyway ;) Judging from the subsequent feedback there's a number of tradeoffs in whether the transpose ends up more keyboard-centric vs. more modulation/CV-centric (range, sensitivity, diatonic vs. chromatic, pre- vs. post transpose etc.). And I simply don't use a keyboard, so ;)

dangayle
Learning to Wiggle
Posts: 41
Joined: Sun Jan 19, 2020 7:26 pm

Re: Hemisphere for Ornament and Crime: Logarhythm Branch

Post by dangayle » Wed Aug 05, 2020 11:25 pm

I'm having an issue where if the reset is plugged in, the input clock will not go forward. If I unplug the reset, the clock works as expected. If I unplug the clock, you can see the reset changing the seed. If both are plugged in, the clock does not go but the seed does get reset.

It was working perfectly, then I pulled it out to move it to the bottom row of my rack and that's when it stopped working. I've restarted, unpowered, reset using the settings app, even flashed the latest 0.92 firmware.

Any ideas?

prestosafe
Learning to Wiggle
Posts: 15
Joined: Mon Sep 30, 2019 1:48 pm
Location: Sweden

Re: Hemisphere for Ornament and Crime: Logarhythm Branch

Post by prestosafe » Fri Aug 07, 2020 2:44 pm

Logarhythm wrote:
Mon Aug 03, 2020 9:53 pm
prestosafe wrote:
Sun Aug 02, 2020 3:09 am
I've been thinking about the transpose function over cv. I've been using it quite a bit now actually to throw in some fresh rhythmical bass lines in some of my songs, and I use it together with my analog four. So musical! When transposing the tb-3po it seems like it tracks every semitone up or down as one step up/down within i the scale, which makes a lot of sense. But I always manage to forget that in the moment and try to reach for the "actual" interval. Let's say I'm playing in C minor scale, (and my C on the keyboard outputs 0v )and I want to transpose to the sub dominant (F), by instinct plays an F on the keyboard, but in order to get the sequence playing from F within the scale I should actually press an E which is 4 semitones up from C. I've noticed this behaviour with a lot of quantisers and with quartermain in the stock Ornament and crime aswell, and it does make sense. But if I for example compare with the A4 and how the transpose works on there I play an transpose note and get the sequence to play that note or the note closest to it in the scale (if I play and F here, I get the sequence in F).
That's interesting, I never thought about the transpose input from that standpoint, but it makes a lot of musical sense. As you noted, many apps apply quantization via a note index into the current scale, such as 0 to 11 in each octave of the Semitone scale or 0 to 4 in each octave of Pentatonic major. Transpose CV is interpreted as 12 index values per 1 volt regardless of scale however, so +1v input will give the expected octave in Semitone but about 2.5 octaves in the Pentatonic scales. The effective pitch range (for say, a fixed LFO input) changes significantly with every scale size.

The good part of the current behavior is that you know for every 1/12v CV input, you'll get to the next note index in a given scale. The bad part is that transpose isn't consistently related to the end result pitch-- it's really pretty arbitrary in terms of what you get on the output.

I think the approach you're talking about would probably work by effectively quantizing the transpose input CV itself in your current scale, and then computing its distance from 0 volts in terms of the number of in-scale note indices. This deviation in terms of in-scale pitches from 0 would then be added to the index of the current step's note (which then has a precise in-scale pitch computed and output.) My first thought was to maybe just guarantee each 1v of CV will be an octave and subdivide each evenly by the number of pitches in the scale, but that wouldn't reflect the actual transpose input pitches accurately (from say, a keyboard.) The advantage there would be that things like LFOs would step through the scale's pitches at a constant rate though. I'll play around with it and see if anything here works well in practice, thanks for the idea :)
Oh I missed this reply, you have some cool thoughts on this. I did try to use my voltage block and using one of the channels quantised to the same scale and used it for transposing the Tb-3po and it actually worked pretty well! : And yeah when it comes down to it, it's not the end of the world if it's not following my chromatic keyboard playing either, as stated before the behaviour is very logical.
I did have some luck playing around with setting the tb-3po's scale to semitone and then running the sequence through the dual quantizer in the other hemispheres applet, worked a lot better than some of my previous attempts actually. :)

Post Reply

Return to “Eurorack Modules”