Home | ER-101 | ER-102 | ER-301 | Wiki | Contact

Controlling the ER-301 wirelessly via OSC with a RPI Zero, Node.js and I2c

Quick update:

I finally got the Raspberry Pi to talk to the ER-301. Almost directly from the Pi to the Sound Computer. “Almost”, because it requires the use of i2c-gpio aka. “software i2c” (capable of handling “clock stretching” - wether the 301 uses this tech or not, it might be useful for other modules - and giving the possibility to use external pull-up resistors of 4.7k instead of the 1.8k present on the regular i2c circuit of the PI. (It’s a common value and is the one recommended in the manual of the Olimex board.)

This seems to prevent the ER-301 from failing when it boots up.

I will now continue to work on the Node.js side of the project and implement all the commands available for the Er-301 (Tr.pulse, Cv, etc).

This topic was cross-posted on Lines https://llllllll.co/t/controlling-txo-er-301-etc-wirelessly-using-osc-node-and-a-rpi/33680/19

I’ve also posted this message on Lines but since this project was planned for the Er-301 in the first place, here’s a little update for the O|D community :wink:

For information, this project is not abandoned.

I had to create a small “hat” for it, and I’ve received the PCB today only. It seems more safe than connecting wires directly to the GPIO header of the Pi. On top of that, it adds the possibility to:

  • power the device directly from the 5v rail of a Eurorack case. There’s a fuse and a diode, it’s basic by it adds a bit of protection.
  • use a software i2C bus (working very well with the ER-301) and any value for the pull-up resistors.

The regular hardware I2c bus is still exposed too, hopefully it will help dealing with multiple leaders, pass messages from one bus to the other, etc.

I’ll do more tests with the small device and report here or on GitHub. Last time I tried with the breadboard, the software was working really well with a nice low latency. There’s still some work to do on this side but it does its basic job and fulfills the initial goal of converting OSC to I2c. It talks to TXo, Er-301, and I added the commands for Disting, Crow (follower), and other modules but I don’t have them so I cannot test that

Here’s the uHat mounted on the Pi Zero: