^^ crow help: druid

Hey Maaark, I tried to follow the instructions in the manual update section but receive the following error:

Error: Cannot install in Homebrew on ARM processor in Intel default prefix (/usr/local)!

Please create a new installation in /opt/homebrew using one of the

"Alternative Installs" from:


You can migrate your previously installed formula list with:

brew bundle dump

Any suggestion what I’m doing wrong here? While I’ve updated Teletype and Ansible in the past, crow is a really tough nut to crack…

No clue, but some googling leads me here: macos - Error: Cannot install in Homebrew on ARM processor in Intel default prefix (/usr/local) - Stack Overflow

I did not have this error so YMMV!

Hello again. I am really really frustrate. Is my 3rd day trying to update and every time I do a step forward some new error arises. I wish these amazing instruments can be made a little simpler to use to dumb people like me.
Anyway, now I try the manual installation. I finally managed to install df utils on M! Mac, which was a pain.

when I run osx_;linux update this happens
dfu-util: Could not open file crow.bin for reading: Operation not permitted

Should I sell the crow and get a tambourine? :smiley:

sorry to hear about the continued trouble!

just popped some troubleshooting steps into the docs, based on success from support emails: manual update | monome/docs

we’re also working on a norns-based firmware updater for crow, since we can actually control that software environment (vs. navigating all the potential version issues, across all the pieces of software required, across three different foundational operating systems which will each have their own versions blah blah blah) :slight_smile:


This is great news. In my day job we have discovered the same principle that you are grappling with here: while python is a powerful platform for developing software, it is a painful platform for distributing software. Having a norns update tool (and a norns version of druid?!?) would be a huge benefit!


Thanks so much ! it all worked now :smiley:


Hey Dan, I appreciate you updating the instructions. My problem is that I’m already running into an issue installing homebrew, namely:

Error: Cannot install in Homebrew on ARM processor in Intel default prefix (/usr/local)!
Please create a new installation in /opt/homebrew using one of the
“Alternative Installs” from:
Installation — Homebrew Documentation

In the troubleshooting section the instructions are

If you get an error: 'dfu-util' is not recognized as an internal or external command, operable program or batch file. you haven’t correctly installed dfu-util, or need to add it to your PATH. Try the setup section again.

I don’t know HOW to add it to my path. I tried to Google the issue, but couldn’t really find one concise solution to the issue. Thank you!

hey hey! here’s how to add things to your $PATH on mac



Hey Matt, thank you for pointing me in this direction. I’m still confused as to what actually need to do, specifically how do I know which folder to add to the path? I consider myself quite experienced when it comes to computers but updating crow seems to be beyond my capabilities…

i doubt this! it usually “just works”. :cowboy_hat_face: i think, if i were you, i would reach out to monome directly at: help@monome.org

1 Like

I’m on an M1 and had the same issue with Homebrew. They’ve changed the directory it needs to save to so that sudo isn’t needed. The installation script should handle that for M1’s.

I ran into the directory issue because I carried my data and apps over from an Intel. The version of Homebrew that was carried over was still trying to use the old directory. From the Homebrew FAQ:

Why is the default installation prefix /opt/homebrew on Apple Silicon?

The prefix /opt/homebrew was chosen to allow installations in /opt/homebrew for Apple Silicon and /usr/local for Rosetta 2 to coexist and use bottles.

The error message you got links to a page that says:

This script installs Homebrew to its default, supported, best prefix (/usr/local for macOS Intel, /opt/homebrew for Apple Silicon and /home/linuxbrew/.linuxbrew for Linux) so that you don’t need sudo after Homebrew’s initial installation when you brew install .

If the script isn’t taking care of the proper pathing for you, try following the instructions in the Stack Overflow thread that @maaark linked for installing Homebrew. After resolving that, the Apple Silicon version of Homebrew will take care of all the plumbing when you use it to install dfu-utils.

Since you haven’t been able to get Homebrew installed, you couldn’t have used it to install dfu-utils… so dfu-utils won’t won’t be on your machine and trying to invoke it will throw that error message about adding to your $PATH. The Crow troubleshooting step you excerpted is for a different situation than yours, I believe.

And without taking away from the very real frustration you are experiencing, for the record, this isn’t a problem with Crow. It has to do with Homebrew, Apple Silicon, and permissions.


Wooo! Got myself a Crow! (thanks low-gain)

Came with version 2 something another, got it updated to the newest Firmware and got my first script from the Bowery uploaded, can’t wait to dig in further!

Thanks so much for having great instructions on the git!

… lol… now I’m actually here for more than just the CL and esoteric synth threads :smiley:


Thank you for taking the time to write such a detailed response. Maybe it’s easier if I explain what I’m doing:

  • per the homebrew website I’m entering the following command in terminal

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

  • then Terminal prompts me to enter the following three messages
    echo '# Set PATH, MANPATH, etc., for Homebrew.' >> /Users/JH/.zprofile
    echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> /Users/JH/.zprofile
    eval "$(/opt/homebrew/bin/brew shellenv)"
  • when I then enter brew install I receive the error message

Error: Invalid usage: This command requires at least 1 formula or cask argument.

What is the correct prompt in this situation? Your help is much appreciated!


It looks like you have Homebrew installed, after having completed those first steps. Now you need to use it to install ‘dfu-utils’.

Some context: Homebrew is a package manager. Formulas/casks are the actual programs and code.

‘install’ is a command within ‘brew’. You still need to specify which code to grab and install from its repos. ‘brew install’ will throw an error because you haven’t specified anything to install.

In this case, we are trying to install ‘dfu-utils’ so that we can update Crow’s firmware. Tell Homebrew to install ‘dfu-utils’ with the command ‘brew install dfu-utils’. (I think that’s what it should be called…but Homebrew has autocompletion, so you can just type ‘dfu’ and tab to see what’s available.)

Homebrew has good commandline documentation. ‘brew help’ will get you into that and list all the subcommands that manage and manipulate the actual packages of code. Then you can do ‘brew help install’ etc, iirc.

Also, fyi, so you know what you’re actually doing here:

‘echo’ is a shell command that just repeats its arguments to standard out (the commandline by default). The two right angle brackets are also at the level of the shell and tell it to append the output of what’s on the left side to the file on the right side. ‘#’ denotes a comment when writing a shell script.

So the first line here simply adds a comment to .zprofile, which is your shell profile (the configuration file that the shell loads every time you start it). The ‘.’ before the file name functionally makes it a hidden file… by default, file managers and the shell hide files prepended with this.

To figure out what the next two lines are doing, search your shell’s documentation for ‘eval’, ‘$’, and ‘shellenv’. Looks like your shell is zsh. Try this: A User's Guide to the Z-Shell

Commandline scripting is fun and empowering to learn!


I can’t thank you enough for your help, thanks to this I was finally able to install the dfu-util package.

I then moved forward to install druid (which also worked), but now I’m not able to invoke druid. I get the “requirement already satisfied” when I enter the pip3 install monome-druid so assume all the files are in place. Any suggestion what’s the missing piece to the puzzle?


My pleasure. It’s satisfying to untangle all this. Sometimes a little help is all that’s needed.

Re: Invoking Druid, what happens when you create a new terminal instance, type ‘druid’, and hit enter?

1 Like

I get the dreaded -bash: druid: command not found message

sounds like the druid script isn’t on your PATH for some reason. the where command can show you where it’s installed: where druid. make sure that location is on your PATH and you should be good to go. (you can show the contents of your PATH variable with echo $PATH)

Screenshot 2022-11-24 at 9.40.47 AM