Can’'t even remember when I wrote anything more complex than three lines of bash for the last time, so I didn’t expect to get my little project, a simple MIDI-preset switch for my guitar FX-rack to really work out. Specifically not the breadboard prototype, because they never work for me… Simple need, simple solution: a ROLAND FS-6 double footswitch on the input side, daisy-chained MIDI effects on the output. Left FS sends PROGRAM_CHANGE -1, right PROGRAM_CHANGE +1. Presets are identically numbered on all devices and either in the order of a playlist or just standard presets, grouped and varied a couple of times. Like 1: plate reverb, 2: clean, 3: flanger, 4: clean, 5: plate reverb + flanger, 6: clean… Works as intended, 'material costs -footswitch aside- none. Had a Nano clone, a couple of resistors and switches at hand, will use the case from an obsolete euro-rack EQ for the final build, because it already has power switch, LED and TRS connector in place.

    • B-TR3E@feddit.orgOP
      link
      fedilink
      arrow-up
      4
      ·
      2 months ago

      Actually belonged to a Raspi - I found it while looking for pulldown resistors and tried if it would still stick. Seems it did and I completely forgot it was there.

    • B-TR3E@feddit.orgOP
      link
      fedilink
      arrow-up
      4
      ·
      2 months ago

      Yes. Exactly that. Had the Nano sitting around for years together with a couple of bare AVR MCs and an SPI programmer but didn’t do much with them because I just had no practical need. I was thinking of making a stand-alone USB host controller to turn some of my USB-MIDI controllers into standalone controllers with DIN connectors, but a Raspi and Yamaha UX-16 1x1 MIDI interface I had in the drawer and a ROLAND A15 that I hadn’t noticed would run as a full controller via DIN-5 when powered up without USB host did the job out-of-the-box. :-)

  • B-TR3E@feddit.orgOP
    link
    fedilink
    arrow-up
    1
    ·
    2 months ago

    Little update: Got it soldered on rasterboard and integrated into my rack, powered by my pedalboard’s isolated ten line-PSU (thanks to individually settable voltages) and running as intended. Just to realize that I’ll need an option to send CC#28 (bypass on/off). I’ve implemented it as “both switches on” (I just had to rewrite the better part of the input routine for it - 2 bits representing D2 and D3 instead of clumsy if-then- else clauses) and am just about to take the whole thing apart to connect the SPI programmer. Might just drill another hole or better extend the ISP header to the outside for easier firmware upgrades- I am afraid that “simple two afternoons job” is about to become one of these projects unless I’ll stand strong against the persuasions of feature creep. If anyone is interested I can upload wiring diagram and code as soon as the last change is tested and working.