Yeah. They’re coming straight out of Confundo Funkitus, so I don’t have much in the way of control without adding another module, which sort of defeats the point. If I end up adding 6hp+ then I might as well keep the uO_C.

At the very least it’s worth trying out a mega-script before exploring more options.


I may not be doing this as intended: To receive the call on another crow, you need to overwrite the default call behavior in your init, right?

So like:

ii.self.call1 = function(e,v)
{
    --do stuff for a single argument call
}

Is that the correct approach to the current methodology? Otherwise the other crow doesn’t seem to do anything but print the the call, as that is the default behavior for the function. Listening for an event didn’t seem to register an event on my second crow.


Edit: And to confirm, my impulse to avoid combining scripts was clearly wrong, as performance has improved following your suggestion. Still need to stress test it to find the best polling speed, but definitely better.

1 Like

Crow utilizes some “behind the panel” digital connections by connecting to neighboring modules’ I2C headers. There is an emerging lingua franca to this digital communication (based on Monome Teletype-to-Trilogy “II” interactions) and many digital modules now can control and/or be controlled on I2C. Some such modules accept messages which change their settings in a way which is inaccessible via CV.

Oh no! your post is gone. I was just getting warmed up. I do think “Laptop + Crow + Just Friends” is an excellent intro to some aspects of musical coding, btw.

1 Like

Crow communicates with Just Friends over ii, a digital protocol. Because of this, it is not limited to the amount of physical jacks on Just Friends, and can address more parameters.

1 Like

after tweaking the first script/manually uploading in Druid, my crow wont boot normally any more on a Windows 10 machine. (could this be some kind of conflict between a manually uploaded first.lua script and the default first.lua script?)

Here’s what I’ve done:

  • after tweaking the script and powering down, I got the ‘device not recognized’ issue
  • forced it to bootloader mode via jumper, but still not recognized by df util
  • used Zadig to install the WinUSB driver
  • now recognized by df util, Ive tried the erase user script and reflashing to 2.1.0 a variety of ways, both seem successful…but after a restart outside of bootloader mode there is no USB activity at all when I plug it in. no error, no new USB devices in Device Manager, druid still says crow is not connected.

here’s what I get when attempting to reflash. I do see the brief ‘cant detach’. after this and the jumper has been removed before the update, the dtfu bootloader device disappears and nothing else reappears. Any help is greatly appreciated!

Invalid DFU suffix signature
A valid DFU suffix will be required in a future dfu-util release!!!
Opening DFU capable USB device…
ID 0483:df11
Run-time device DFU version 011a
Claiming USB DFU Interface…
Setting Alternate Setting #0
Determining device status: state = dfuIDLE, status = 0
dfuIDLE, continuing
DFU mode device DFU version 011a
Device returned transfer size 1024
DfuSe interface name: "Internal Flash "
Downloading to address = 0x08020000, size = 281496
Download [=========================] 100% 281496 bytes
Download done.
File downloaded successfully
can’t detach
Resetting USB to switch back to runtime mode
Update successful!
Press any key to continue . . .

EDIT: I’ve tried all of this on another Win 10 machine with the same results.

EDIT REDUX: all outputs are showing 10v so I emailed monome :sob::sob::sob:

EDIT REDUX REDUX: fixed with 2.1.1 release!

1 Like

I think I’ve got my head around Crow and how it works and what it does. And I think that it could be a handy thing to fill out some of the spare HP in a Make Noise Tape & Microsound system.

My first thoughts were that I could use it to get a clock from norns into the T&MMM, e.g. for syncing Morphagene & Mimeophon with a script running on norns. I’m also thinking that I can probably find or create scripts to use it as clock divider - another module I’d like to have in the system is a Tempi; perhaps I could get at least some of the functionality of Tempi in Crow?

I have a DivKid / Instruo øchd in the skiff, and I’m thinking of adding a DivKid / SSF RND Step at some point. Presumably the things these modules are doing are things that Crow could mimic pretty easily? (Although I really like the øchd, so I don’t think it’s going anywhere soon.)

Am I thinking along the right lines here, or have I missed the point of Crow? Are there any other really great things I could be doing with a Crow in a T&MMM, or is it not a good idea? Is anyone already using a Crow in T&MMM?

1 Like

The way I like to think about crow is that it is a 2 in 4 out module. What those 2 in and 4 out do it kind of up to you. It has an internal clock, so you could easily turn it into a clock divider/multiplier. But really, that’s just scratching the surface. It can also slew between value changes, so you could have it be an LFO. You could write a script that on each tick of its clock ticks it progresses through some list of note values. Effectively turning it into a sequencer. You could write a script that sent musically random CV out to different modules. There’s a lot you could do.

I used to have a Tempi, so I can compare to it. The thing you’ll miss in a crow is the immediacy of switching up the clocked out puts. But what you’d gain is the ability to programmatically control each output.

I love watching Trent’s maps videos on YouTube. There he goes through a bunch of really cool uses for crow. This videos have given me a bunch of great ideas. Here’s one: https://youtu.be/2juKwBvzEJY

Sorry to kind of open Pandora’s box on you here. Crow can do a lot. Hopefully this helps and doesn’t muddy the waters even more.

I’d also look at what scripts others have written in the Library section. Yes, it can be a clock module, but it can also be so much more.

4 Likes

yes, crow is a very useful little one. i have two - one to sync norns as my master clock and another that’s usually running a dual quantizer to clamp cv to scales, but i also use it as a clock divider, logic, mini rungler, shift register. some great scripts in the comments here as well -

1 Like

No this all makes sense and is good - thank you. I have both a Teletype and a Tempi in another skiff, so it’s more of a friendly bento box than a scary Pandora’s box. :slight_smile:

So might it be fair to describe Crow as almost like a “headless Teletype-lite” kind of thing?

Can there be real-time communication between norns and Crow - e.g. is it be possible to run a script on norns that takes input from a grid or arc and then passes that on to Crow - effectively using the grid or arc to produce CV output from Crow?

I’ll definitely check out Trent’s videos - thanks for the tip!

Yes. Headless Teletype is a good way to think about it. Not sure I would say “lite”, just different. Real-time communication between Norns and crow is possible, but I haven’t really played around with it as much as I’d like to. I’ll let others talk more about that. Here’s a link to the Norns ii reference so you can see the crow commands: scripting with norns - docs

1 Like

I have never had trouble flashing Crow but this time the update failed. I forced bootloader and the process seemed to finish as opposed to hanging but when restarting rack Crow shows as disconnected. Tried a restart of Mac along with a different port and cable but no joy.

Any ideas? on the 2.1.0 version

EDIT: Update, there is a new 2.1.1 hotfix release to solve an occasional non-boot issue with 2.1.0 Release Version 2.1.1 · monome/crow · GitHub

5 Likes

thanks - updated both devices and working fine

2 Likes

Hey - 2.1.1 straightened out my issue too! Overjoyed!

2 Likes

crow 2xCV/gate plus six individual JF voices is indispensable if you run norns, JF and other modular. plus those crow gate outs also have AD control on them so you don’t have to try and squeeze a dual EG in somewhere. and if that doesn’t keep you busy enough you can just use it to run scripts.