Welcome, Guest
You have to register before you can post on our site.

Username
  

Password
  





Search Forums

(Advanced Search)

Forum Statistics
» Members: 1.803
» Latest member: sleestack
» Forum threads: 2.054
» Forum posts: 12.093

Full Statistics

Online Users
There are currently 101 online users.
» 1 Member(s) | 97 Guest(s)
Applebot, DuckDuckGo, Google, Snox

Latest Threads
Buttons not working
Forum: Nerdseq issue / bugreport
Last Post: sleestack
6 hours ago
» Replies: 0
» Views: 11
Sending LFO/Envelopes out...
Forum: General Questions
Last Post: XORadmin
09-23-2026, 08:41 PM
» Replies: 1
» Views: 41
Groove
Forum: General Questions
Last Post: XORadmin
09-21-2026, 09:47 AM
» Replies: 4
» Views: 100
Release Candidate Firmwar...
Forum: Firmware / Manual
Last Post: Static_channel
09-18-2026, 06:23 PM
» Replies: 15
» Views: 1.594
Launchpad Pro Fader Mode
Forum: Tips & Tricks
Last Post: ianski
09-12-2026, 07:19 PM
» Replies: 11
» Views: 879
Random repeated Gates/tri...
Forum: NerdSEQ
Last Post: ogy
08-17-2026, 02:51 PM
» Replies: 2
» Views: 166
Shift+Delete to reset an ...
Forum: Feature requests
Last Post: vidret
08-05-2026, 08:46 AM
» Replies: 1
» Views: 335
preview envelope gate!
Forum: Feature requests
Last Post: vidret
08-04-2026, 10:30 PM
» Replies: 2
» Views: 141
simple/quick copy/paste (...
Forum: Feature requests
Last Post: vidret
07-31-2026, 07:41 PM
» Replies: 2
» Views: 161
Ability to type the effec...
Forum: Feature requests
Last Post: XORadmin
07-27-2026, 06:53 AM
» Replies: 5
» Views: 287

 
  PC for Patch Selection and Current Values for MIDI CC
Posted by: RMBLRX - 11-30-2025, 07:09 PM - Forum: Feature requests - No Replies

Hey, I'm loving how robust the MIDI features have become. As I'm experimenting, though, I've realized a few features that would make it that much better for my workflow. Currently I use MIDI CC to essentially create instruments on a particular device for any given song. Patch has been great for accomplishing this, but because I like to use MIDI input to expedite the composition process (recording another sequencer's output into the NerdSEQ), I would have to set the CCs manually, either through running a pattern with a patch in it while running the external sequencer or by setting the CC values externally and trying to later replicate those into a patch.

My request, then, is a little layered:

  • I would like to be able to intercept Program Change input and interpret as a patch select (probably through mapping, which I do not believe to currently include Patch as a destination).
  • I would like to be able to set CC values through the Current Values screen in order to set something like an initializing patch for a given track.
  • Given the first request, I would also like to be able to create a patch from a given set of current values (possibly have that optionally as default behavior when creating a new patch from inside a pattern, wherein the new patch simply clones the current values insofar as possible).

Really, just having the ability to map Program Change to patch selection--whether live or in recording, but preferably both--would mean the world and take me as far as anything else. But I suppose my two requests having to do with Current Values would require some more fundamental changes and would conceivably be more complicated to implement, if at all reasonable.

Print this item

  Vertex Shaders
Posted by: TheSandbag - 11-22-2025, 02:01 PM - Forum: General Questions - Replies (3)

I'm trying to do a bit of optimisation by moving per frame constanst into the vertex shader but having some issues. Is it possible to have the default vertex shader (and is attributes) posted in the manual?

Print this item

  Shapes
Posted by: XORadmin - 11-20-2025, 08:10 PM - Forum: Shaders - No Replies

Different selectable geometric shapes, angles, shimmer, size, position....
   

.frag   shapes.frag (Size: 1,02 KB / Downloads: 7)

Print this item

  Black Friday 2025
Posted by: XORadmin - 11-20-2025, 12:49 PM - Forum: Company News - Replies (2)

Again this year:

Black friday sales at XOR!!

From 20-11-2025 until 01-12-2025

25% discount on the NerdSEQ and Expanders.
Use coupon code: BFF2025


https://youtube.com/shorts/Je_AUkMBwNE

https://www.xor-electronics.com/shop/

Print this item

  Mapping Q
Posted by: argent_smith - 11-15-2025, 12:54 PM - Forum: Everything Else - Replies (1)

Hi

Honestly speaking, I need a mapping tutorial (perhaps could write it myself if I understood mapping quite well)

Q1:
How should I program this usecase:

Accept CC#105 value 1 on MIDI channel 5 -> start only the required pattern in track 1 and keep playing the entire column of patterns (no islands) underneath it?

Q2:
Does CALC source compute each time the mapping runs (AFAIK it runs every msec)?

Sincerely, Paul

Print this item

  Sampler2d for glsl
Posted by: TheSandbag - 11-11-2025, 04:18 PM - Forum: Feature requests - No Replies

For some things (feedback effects, pre sampled noise e.t.c) its useful to have sampler2d elements to pass in. This can drastically reduce computation where the same source texture is then manipulated after.

Print this item

  [NO BUG] GLSL Shaders crash vid io
Posted by: TheSandbag - 11-11-2025, 04:03 PM - Forum: The really bad bugs -> crash - Replies (6)

The following shader crashes the more-video module as seen by it reshowing the boot screen

Code:
#version 100
#ifdef GL_ES
precision mediump float;
#endif
#define PI 3.14159
#define MAX_ITER 20.

uniform vec2 u_resolution;
uniform float u_time;
uniform float u_modulator1;
uniform float u_modulator2;
uniform float u_modulator3;
uniform float u_modulator4;
uniform float u_modulator5;
uniform float u_modulator6;

const vec3 a1 = vec3(0.5, 0.5, 0.5);
const vec3 b1 = vec3(0.5, 0.5, 0.5);
const vec3 c1 = vec3(2.0, 1.0, 0.0);
const vec3 d1 = vec3(0.50, 0.20, 0.25);

const vec3 a2 = vec3(0.5, 0.5, 0.5);
const vec3 b2 = vec3(0.5, 0.5, 0.5);
const vec3 c2 = vec3(1.0, 1.0, 1.0);
const vec3 d2 = vec3(0.00, 0.33, 0.67);
mat2 rotate(float _angle){
    return mat2(cos(_angle),-sin(_angle),
                sin(_angle),cos(_angle));
}
mat2 scale(vec2 _scale){
    return mat2(_scale.x,0.0,
                0.0,_scale.y);
}
vec3 palette(in float t, in vec3 a, in vec3 b, in vec3 c, vec3 d)
{
    return a + b*cos( 6.283185*(c*t+d) );
}

float check_step(float i, float z, float step_id) {
    float is_i = step(0.1, i);
   
    return (is_i * i) + ((1.-is_i) * (step(200., z) * step_id));
}

float julia(vec2 uv){
float j=0.;
float i=0.;
  vec2 c=vec2(-0.70176,-0.3842);
  for (float i=0.;i<MAX_ITER;i++){
      uv=vec2(uv.x*uv.x-uv.y*uv.y,2.0*uv.x*uv.y)+c;
      j=check_step(j, length(uv), i);
  }
  return j;
}


float hash(vec2 p)
{
    p  = fract( p*0.6180339887 );
    p *= 25.0;
    return fract( p.x*p.y*(p.x+p.y) );
}

float noise( in vec2 x )
{
    vec2 p = floor(x);
    vec2 f = fract(x);
    f = f*f*(3.0-2.0*f);
    float a = hash(p+vec2(0,0));
    float b = hash(p+vec2(1,0));
    float c = hash(p+vec2(0,1));
    float d = hash(p+vec2(1,1));
    return mix(mix( a, b,f.x), mix( c, d,f.x),f.y);
}

float fbm ( in vec2 _st) {
    float v = 0.0;
    float a = 0.5;
    const vec2 shift = vec2(100.0);
    const mat2 rot = mat2(cos(0.5), sin(0.5),
                    -sin(0.5), cos(0.50));
   
    v += a * noise(_st);
    _st = rot * _st * 2.0 + shift;
    a *= 0.5;
    v += a * noise(_st);
    _st = rot * _st * 2.0 + shift;
    a *= 0.5;
    v += a * noise(_st);
    _st = rot * _st * 2.0 + shift;
    a *= 0.5;
    v += a * noise(_st);
    _st = rot * _st * 2.0 + shift;
    a *= 0.5;
    v += a * noise(_st);
    _st = rot * _st * 2.0 + shift;
    a *= 0.5;
    v += a * noise(_st);
    _st = rot * _st * 2.0 + shift;
    a *= 0.5;
    v += a * noise(_st);

    return v;
}

vec3 smoke(vec2 st){
    vec3 color = vec3(0.0);

    vec2 q = vec2(0.);
    q.x = fbm( st + 0.00*u_time);
    q.y = fbm( st + vec2(1.0));

    vec2 r = vec2(0.);
    r.x = fbm( st + 1.0*q + vec2(1.7,9.2)+ 0.15*u_time );
    r.y = fbm( st + 1.0*q + vec2(8.3,2.8)+ 0.126*u_time);

    float f = fbm(st+r);

    color = mix(vec3(0.101961,0.619608,0.666667),
                vec3(0.666667,0.666667,0.498039),
                clamp((f*f)*4.0,0.0,1.0));

    color = mix(color,
                vec3(0.8,0.6,0.164706),
                clamp(length(q),0.0,1.0));

    color = mix(color,
                vec3(0.666667,1.,1.),
                clamp(length(r.x),0.0,1.0));

    return (f*f*f+.6*f*f+.5*f)*color;
}

float between(float start, float end, float p) {
    return step(start, p) * step(p, end);
}

void main(){
  vec2 uv=(((2.0*gl_FragCoord.xy)-u_resolution.xy)/u_resolution.y);
  vec2 uv2 = uv;

  uv2 *= rotate(-fract((u_time / 50.0) * (1.-u_modulator2)) * PI * 2.);
  uv *= rotate(fract((u_time / 10.0) * (1.-u_modulator2)) * PI * 2.);   
  uv *= scale(vec2(1.3 + (1.-u_modulator1) * 0.4));
  float foreground_start = (float(MAX_ITER) * ((0.5-u_modulator3)*0.5));
  float mandel = 1.;//julia(uv);
 
  vec3 color1 = palette(fbm(vec2(mandel/MAX_ITER, fract(u_time / 500.))*100.),a1,b1,c1,d1);
   
  vec3 middleground = color1;
  vec3 smok = (smoke(uv2 * 15.) * 10.) + 0.3;
  vec3 background = smok * palette(length(uv2) / 3.,a2,b2,c2,d2) ;
  vec3 foreground = smok * palette((length(uv2) / 3.) + 0.6,a2,b2,c2,d2);

  gl_FragColor=vec4(background * between(1., foreground_start - 1., mandel), ((1. - u_modulator4))*0.5) + vec4(middleground * between(foreground_start, MAX_ITER, mandel), ((1. - u_modulator5))*0.5)+ vec4(foreground * between(0., .1, mandel), ((1. - u_modulator6))*0.5);
}

Print this item

  Groove list
Posted by: Tenebris - 11-11-2025, 01:08 PM - Forum: Everything Else - Replies (2)

I may have figured a way to export and populate a list of groove times from Ableton and Logic for a list to be programmed into Nerdseq from grooves in daws. It won’t be a small task but if anyone is interested please let me know. I do d a search on forum and last I found was 2019 so I thought jest to post new as best to not get lost. I hope that’s ok Thomas.

Print this item

  f# incorrect
Posted by: TheSandbag - 11-10-2025, 09:47 AM - Forum: General Questions - Replies (5)

All my CV channels are outputting O.75v for f# for some reason. I have a multi-io, more video-io and a more cv plugged in. Its consistently wrong over all channels and all octaves. I assume some mapping file somewhere is wrong but I have no idea what I have done to cause it. I know its not calibration level (and its in a different case) but using my mordax data i got the following values across all octaves

Note | Note Num | Expected | Actual
c       | 0               | 0              | 0.01
c#     | 1               | 0.083       | 0.09
d       | 2               | 0.166       | 0.18
d#     | 3               | 0.25         | 0.26
e       | 4               | 0.333       | 0.36
f        | 5               | 0.416       | 0.47
f#      | 6               | 0.5           | 0.76
g       | 7               | 0.583       | 0.59
g#     | 8               | 0.666       | 0.67
a       | 9               | 0.75         | 0.75
a#     | 10             | 0.833       | 0.83
b       | 11             | 0.916       | 0.92


And I've just checked and the mod outputs are outputting the wrong values for f and f# but not the more cv

Print this item

  Crashreport Load Folder in "Load Sample" -freeze
Posted by: andisyntz - 11-09-2025, 08:22 PM - Forum: The really bad bugs -> crash - Replies (1)

Hello,
my Nerdseq completely froze after I tried to open a subfolder with samples in the Sample Loader. I suspect this was because there were empty subfolders in the folder. Unfortunately, the ZIP file of the folder is too large to upload here, ZIP size 7,1MiB



Attached Files Thumbnail(s)
   
Print this item