DIY Expanders Planned?

The overall cost of the module and the various expanders would be over 1000 £$ etc but could be drastically reduced if there were DIY expanders available. Is this something that 4ms are considering?

interesting, indeed at 100$ a pop, I can see the costs mounting up quickly…

I guess by DIY, you mean DIY kits?
(or possibly pcb boards + schematics/component lists)


however, for me, raises a related question/topic …

Id like to see the protocol between the expander modules and MM being documented - so that potentially, we can create our own custom expansion modules.

ofc, my understand is the source code for firmware for the M4/A7 will be made available under open source at some point? is this still correct?
if so, then it will be possible then to look at the code to see the protocol.
so no big deal…

(that said, we’d still need electrical characteristics of the expander port… e.g. is it i2c / 3.3v?)

Designing new ones is a bit out of my league but if the main DIY retailers had kits or even just boards and panels I’d snatch them up. 4ms have done the DIY route before so should be possible surely

1 Like

Oops, I thought I responded to this. Oh well, better late than never…

Kits are a great idea. I’m into this.

A few options:

  • Easiest is that we can release the board files (Kicad project and gerbers) and BOM for the expanders. That would satisfy people who can order a PCBA from a board house like JLCPCB (and are comfortable sourcing alternative parts if something is out of stock).

  • We probably could re-make the wifi expander as 100% through-hole since it uses the ESP32 for wifi and there are through-hole dev boards for those.

The other expanders cannot be 100% through-hole so we could either:

  • Sell a PCB with the SMT parts pre-soldered
  • Or, sell the blank PCB and use the widest pitch SMT parts available (SOIC if we’re lucky)

As for total custom expanders:
The button and pot expanders use I2C plus jumpers for address select. The audio expander uses I2C plus I2S. There’s no protocol for the MM to query an expander’s capabilities and then reconfigure the audio engine to accommodate X number of pots, Y number of buttons, Z number of LEDs, etc… Instead, each type of expander is an entity with pre-defined numbers of each. (Don’t both searching for it in the firmware, only the wifi expander is merged into main). Creating your own custom expander would mean modifying the firmware to know how to detect and deal with the new expander.

3 Likes

This would be terrific, Dan. I appreciate that DIY is going to be downstream of your factory expander releases, and the need for the Wi-Fi and extra I/O is pressing (for me!), so I’ll happily pick them up as soon as they are available in either form.

I would be happy with 0805 or pre-solders. Given a choice, I’d prefer the former, as mech-only builds are not very satisfying.

Id never touch anything that required smd soldering :wink:

but I have done a few kits that have have pcb w/ smd pre-soldered.
I think this is a good compromise.

as an EU resident…
perhaps you could do some kind of partnership with Befaco?
they supply full kits for their modules.
(pre-brexit days, Id have recommended thonk, but never use them now :frowning: )

I’ll be honest, whilst I have supplies of many thru hole components, including pots/res/caps/diodes etc…
I much prefer full kits, as im always missing something, and organising components via mouser etc, is such a pain for me…

If you are gathering interest, I’d be into full kits with presoldered SMT.

1 Like

I don’t mind soldering SMD parts but I get that for most people it’s a PITA.

1 Like

This is a VERY exciting idea. I would like to make my own expanders to meet my own personal needs. The sky is the limit! Now I just have to figure out how to modify the firmware code. I think everything else will be relatively easy, since I’ve already created custom eurorack modules with I2C interfaces. Kudos to @danngreen and team for releasing the code.

As far as the TRS MIDI is concerned, is it similar to the implementation in Expert Sleepers modules where all the circuitry exists in the module and the expander is just the ports? If so, would it be possible to simply connect some TRS jacks to the appropriate pins and have TRS MIDI capability?

Dan,

While I wouldn’t mind populated SMD boards. I am not opposed to SMD assembly as long as we leave the 0201 out of it. (I will grumble at 0402). I do have an air station in house, and like to keep costs down if I can .

For those who don’t like SMD- are you all aware of the cheaper stencils for solder paste from places like oshstencils.com ?

One question I would ask- for Dan. I know I am over the top and need help- but i like tons of gates and CV/ LFO/ Envelopes galore coming out of things.

When it comes to the Knobs/ Buttons/ Audio/ Gate CV EXP… Is there a known limit that one would hit with bandwidth if I go crazy and start making a ton of them?
say… Audio/ CV ins and outs? Or- is it just a game of resource balancing- CPU spent on those can’t be used for modules in the patch?

No sense having 24 extras ins/ outs if there is only enough CPU left for a single LFO module.

M

At this point there has not been anything published regarding the headers on the back of the board and how they function. On the top edge of the MetaModule board there is a header that includes a pair of pins marked “TX” and another pair “RX”. It is possible that these are pins that can be used for a TRS MIDI connection. If this is true, then the next issue is whether the current firmware allows for transmission of MIDI data to jacks connected to these pins.

1 Like

I’m in with the diy option with presoldered smd parts.

No, the firmware would need to be updated to listen to a midi stream. Right now it only listens to USB MIDI.

Using the expanders add very little CPU load. The code to support the Audio Expander is already actively running in firmware, so the load won’t change at all by using that. For the control expanders (buttons, knobs), it has a tiny effect, right now I’m measuring around 1-2% extra load. So, no, you won’t see much difference in using an expander.

Mapping controls or jacks on expander modules will have the same sort of increase in processing load as mapping normal jacks and knobs. So if you mapped 8 knobs and 8 jacks on the main panel to some modules, you’d have the same processing load if you mapped 8 knobs and 8 jacks on expanders to the same virtual knobs and jacks. Usually this is just a percent or two, not a big deal, but of course there are a tiny fraction of jacks or knobs/buttons that do have a big effect when you modulate them.

Those are used for providing a console output during debugging:

1 Like