Yep I probably should have mentioned that one other element of the “perfect storm” is that I’ve found myself with enough financial padding at the moment that picking up a Norns Shield isn’t going to instantly make me feel guilty about it…and I can still get my daughter that clear acrylic cat-head kalimba she really wants. And then we can jam. :slight_smile:

If anything I feel guilty saying that given the current situation out there, but it is what it is.

5 Likes

Take the wins with the losses. We need reasons to be joyful as well.

2 Likes

buy norns shield, sell all other belongings, live in a cave

10 Likes

Cranes is a wonderful script that works with and without a grid. I’ve only used it without grid so far. Probably my favorite looper

4 Likes

…Oh, and Compass works well without grid too!

2 Likes

And Otis as well as wrms. As far as loopers go you don’t need a grid at all. Pedalboard is also a good script that does not need a grid.

3 Likes

I have a grid, but very often find myself using Norns without it (because I usually have the grid plugged in to my Ansible instead). Definitely loads to do with it even if you’re gridless!

But… you will end up wanting one… :wink:

1 Like

I used norns/crow without a grid for months and loved it, but I must say that once I got a grid it completely changed the way I use norns, and it’s a lot more fun and tactile

1 Like

i don’t have a grid but have had a fates since february. I use the launchpad pro for mlr(64) and some other scripts with midigrid. cheat codes is great with touchosc. a lot of good sequencer scripts and looper scripts are fine without a grid. but i think in order to get the most out of the norns/fates you’ll want to get one. there are a lot of scripts you wont be able to use, but its not necessary. I probably would have been mad if i couldnt use the lpp

1 Like

Norns without a grid, you’d be standing by the shopping window, looking in, wondering about all the wonderful lights and stuff going on there.

Not at first, perhaps. There’s plenty to do outside the window as well. An entire world, as it were.

But in time, you’d wonder. You’d look. And you’d want it.

8 Likes

Orca is another wonderfully deep app that runs without a grid.

3 Likes

Oh I’ve already looked through that window! And the window with a Norns behind it. At first both windows seemed difficult to open, but the one with the Norns behind it recently became much easier to open, and so that’s that one I’m going through. First. :slight_smile:

2 Likes

I actually use my norns gridless more than half the time. Im a pretty slow learner so it can be a distraction when Im not just jamming.

3 Likes

I’ve spent months on this forum trying to get my head around what a Norns would offer me. I built myself a Fates as soon as I could, and have been loving the whole Norns ecosystem. Now of course, I keep thinking about the few apps I can’t really use without a Grids. So I’ll get one eventually. It’s been a gateway drug for me.

1 Like

Monome has always been synonymous with elegance, minimalism enclosed in an essential concept.
today I honestly believe that the price for a new Grid is really not very accessible.
But it is also correct that such an avant-garde idea maintains its market. But I think there should be more alternatives. Adafruit Neotrellis looks really good but it is impossible today to build one because of the great demand of the components (look Adafruit NeoTrellis driver boards).
just don’t fall into the trap that would make you think you are limited without having “that piece X” more right? At the moment I find that even NORNS is a magic box from which you can do a lot.
The important thing is to keep the focus on an idea and make MUSIC.

3 Likes

Shield kit ordered! Thanks again everyone! Can’t wait to get started.

4 Likes

Sharing my personal patched version of Cranes that adds support for QWERTY keyboards as a template for others to follow…

cranes-kb.lua (26.7 KB)

usage

Place this in the dust/code/cranes folder. It will show up as cranes/cranes-kb in the script launcher. Connect a USB keyboard before running, and select it as device #1 in SYSTEM => DEVICES => HID menu.

Controls are as follows:

  • (Modifies voice 1 by default, hold “Shift” while tapping a key to modify voice 2 instead)
  • 1st Row: “1” through “-” selects pitch of loop (-4, -2, -1, -0.5, -0.25, 0, 0.25, 0.5, 1, 2, 4)
  • 2nd Row: “Q” through “P” selects volume of loop, 0-1
  • 3rd Row: “A” through “L” selects panning of loop, left to right
  • Keep in mind that slew rates to pan/vol/etc. will animate changes smoothly

edit: have been retesting this script, you might need to boot up with the USB keyboard attached first!

tutorial

Here’s the TL; DR for how to add keyboard support to a script…

function init()
  -- find the init() function in your script
  -- this code is run when the script first launches

  -- ...existing code here...

  -- add this bit!
  -- connects to the keyboard
  -- tells keyboard to send all events to the "keyboard_event" bit of code
  -- we'll need to add this next
  keyb = hid.connect()
  keyb.event = keyboard_event
end

Scroll to the bottom of the file, and add this bit of code:

function keyboard_event(typ, code, val)
  -- code in here will run when a keyboard event occurs (press/release/etc)

  -- typ can be ignored for us
  -- code is an integer which identifies what key was pressed
  -- val is the state of the key (1 indicates pressed down)

  -- as an example of reacting to a keyboard event and altering script params...
  -- this would add support for controlling loop 1's pitch from keys "1" and "2"
  -- search around the script for "params" to see which params are available and what values they take on
  -- check out the grid handling code, if it exists, to copy from
  if code == hid.codes.KEY_1 and val == 1 then
    -- code == hid.codes.KEY_1 indicates the "1" key
    -- val == 1 indicates that key event type was "pressed"
    -- we'll set rate to -1 (reverse, 1x speed)
    params:set("speed_voice_1", -1)
  elseif code == hid.codes.KEY_2 and val == 1 then
    -- code == hid.codes.KEY_2 indicates the "2" key
    -- val == 1 indicates that key event type was "pressed"
    -- we'll set rate to 1 (forward, 1x speed)
    params:set("speed_voice_1", 1)
  end

  -- as a tip I typically have this bit of code to print out keyboard input to maiden while developing
  -- it helps for discovering what codes/vals are passed in when you physically interact w/the keyboard
  print("code: " .. code .. ", val: " .. val)
end

Finally checkout this file for a listing of key codes that are available.

update: edited above to use hid.codes instead of hardcoding code values

16 Likes

curious on how to use cheat codes without a grids

touchosc templates for tablets and phones (ty @CarlosUnch for the phone layout!) can be downloaded from the top post of the cheat codes thread. the osc messages can be sent from any source, if you don’t want to buy the touchosc app — just crack open the template in the free editor on a computer and you can use Max to code your own interface to send similar arguments.

also the coming update has full midi control over pads and zilchmos (with pattern recorders), for future play! :slight_smile:

8 Likes

Oh sweet there’s a phone template! Perfect! I hadn’t put it together that I could use OSC to control. Stoked on full midi control! Can’t wait to run cheat codes with orca as control :raised_hands:

4 Likes