Jump to content
Why become a member? ×

stoo

Member
  • Posts

    454
  • Joined

  • Last visited

Everything posted by stoo

  1. If you're looking for the ones in the touchscreen version, they're all listed in 01_includes.ino I didn't think to do that on the first one, but the MIDI one is #include <MIDI.h> // https://github.com/FortySevenEffects/arduino_midi_library And then for the screen I used https://github.com/adafruit/Adafruit_SSD1306 - and copying the #includes from https://github.com/adafruit/Adafruit_SSD1306/blob/master/examples/ssd1306_128x32_spi/ssd1306_128x32_spi.ino led me to: #include <SPI.h> #include <Wire.h> #include <Adafruit_GFX.h> #include <Adafruit_SSD1306.h> and I think that's it?
  2. I didn't even realise there were different versions until you'd asked, to be honest..... the ones I used were all 328s by the look of it - both for the original nano/OLED version and the 2nd mega/touchscreen one. The nano one was fairly tight on memory so I'd be less confident that a 168 version would work for that. The mega was massive overkill for the other one - just wanted the convenience of separate serial channels for MIDI/screen/sketch upload, and a bit more capacity to allow for lazier less efficient programming. I don't have a 168 version to test, but might be worth a try if that's all you have available?
  3. The two columns that overlap are the GND and +5V lines - don't cut the traces between those, otherwise the MIDI won't work! Looking at that diagram again, I'm not sure why I used confusing colours for the wires to the MIDI socket..... the MIDI TX line changes from blue to white for no sensible reason I can remember, and the GND to the MIDI socket is green while it's black everywhere else in the diagram. I think I maybe had the MIDI socket wired up before I started the project and didn't have green or white left when I got to the rest of it. Not sure - either way, sorry if it's a bit confusing!
  4. Have replied on GitHub.... Hopefully that's enough to get you started... Otherwise I'll have a better look when I'm next at my computer
  5. I haven't used a nano 33 ble but there seems to be quite a few examples of people using them as Bluetooth keyboards - shouldn't be too tricky to find a page to borrow some code from. Not sure how the midi output would work on a 3.3v board though.... Not sure if it needs to be 5v, or if it will just work as is.
  6. It's all in the first 5 or 6 posts in this thread Also here - https://github.com/stoonoon/hxsMidiSwitcher - if that's an easier way for you to download them?
  7. Line 6 have their own custom tone site for sharing presets.... I think there's a thread on here somewhere where people have been sharing links to presets on customtone uk.line6.com/customtone
  8. Aaaah OK - I think that the MIDI_CREATE_DEFAULT_INSTANCE(); line is a macro equivalent to MIDI_CREATE_INSTANCE(HardwareSerial, Serial, MIDI); - where "HardwareSerial" is the type of connection, "Serial" is the port name, and "MIDI" is the name of the instance you create to then refer to with your code later. So I think you would need to replace MIDI_CREATE_DEFAULT_INSTANCE(); with MIDI_CREATE_INSTANCE(HardwareSerial, Serial1, MIDI); to do the same thing, but point to "Serial1" rather than "Serial" Can't be sure, but that's what I'd try next, anyway...
  9. I'm not really sure how to help you - I don't have an "every" version to test, but the Arduino website suggests it should be compatible with code written for the regular Nano.....
  10. Depends on your definition of simple! More seriously - it's hard to say without knowing a bit more about which version you were trying to make (the original one or the touchscreen version) and exactly which screen you've got. If you're going for the touchscreen one and have just bought a different size Nextion, then the only change would need to be the HMI file. I don't know if there are any utilities that will resize them for different screens, but if not you could probably just open mine in the Nextion editor, make notes of all the button IDs etc and create a new file to match but with the correct screen size. If you're looking at the non-touchscreen version, then it all depends on which library you need to use to drive your screen... If it uses the same one as mine did, just with different resolution then it would be easy enough. If you need a different library then there could be all sorts of different complications and changes to the code required..... Best avoided unless you've got a patient programmer friend willing to help you work through it!
  11. Hiya - that shouldn't be too tricky to add. The main problem with it is that there's no way for the arduino to read the current snapshot number from the stomp..... so if you change snapshot from the stomp, or change to a different preset (from either the stomp or the switcher) then the wrong LED could be lit. I guess you could have it so that if you changed preset from the switcher, it would turn off all the snapshot LEDs until you manually selected one..... but even then you'd have to either remember never to change preset or snapshot on the stomp itself.... or at least accept that if you do, the LED might not be accurate until you next change snapshot from the switcher....
  12. Could maybe setup something using command center to send the midi command for the tuner, and then connect stomp midi out to stomp midi in.... Could end up having other unintended side effects though.... Prob worth ignoring unless you're desperate to avoid using an external FS
  13. Well this is a bit embarrassing.... On Thursday I did have a quick look at this and thought I'd found the problem. I was going to suggest it to you to try, but then thought I may as well test the change on mine seeing as I'd already dug it out. I made the change, recompiled it, uploaded it and.... no difference. Since then I've been dreading going back over 2 year old code to try and troubleshoot it. I finally decided to give it a look today. The code looked like it should work. Let's try and upload it again just in case..... BAM! Upload error due to not having the correct type of bootloader selected in the Arduino uploader. D'oh! Must have not noticed that pop up when I tried on Thursday. So anyway - the line you're looking for is...... static const byte pageCount =1; // how many pages we have configured And it needs to be. static const byte pageCount =2; // how many pages we have configured Hope this works OK on yours too!
  14. Uhhhh fair question..... I dug out my old controller and blew the dust off it to remind myself how it works..... and mine doesn't change pages either! I'm sure it used to, but it's been a couple of years since I've even looked at the old one. I know with the newer one I ended up finding a button layout I liked and almost never flip pages. Can't remember whether I got to the same point on the v1 and accidentally uploaded the single page version to github or something. I'll have a play with it and see if I can get it working again, but I'm not likely to get much time on it until the weekend.
  15. Hang on - aren't the combos you're talking about for pgup / pgdn ? If so - that's setup for changing the page displayed on the footswitch screen to an alternative control layout.... I wouldn't expect it to send any midi to the stomp for those....
  16. The obvious things to check first would be switch wiring and ordering - do all of the switches work individually? When you press them individually do they do what you'd expect?
  17. Hiya - "It doesn't work" doesn't really give me much to go on. I'm happy to try and help with specific problems if you can explain what you've done, what you expected to see happen, and what actually happened...... I'm not sure I want to get into a "I've changed some stuff, now it doesn't work, please fix" type situations though I don't have anything ready configured for a 3x2 configuration, but my advice would be - start with the code for my 4x2 version on github - https://github.com/stoonoon/hxsMidiSwitcher/blob/master/hxsMidiSwitcher.ino Make sure you can -compile it, -upload it to your nano, -and that your switches get detected by the Nano, and do something on the MIDI device you're controlling.... If the nano has 2 pins that aren't connected to switches - it won't know or care... it'll just think that no-one is pressing those switches. Once you've got that far, then you can make small iterative changes - maybe start with the void displayUpdate(void) function and get the text displaying on the screen to look how you want. Then, once that works OK - save a copy somewhere so you have a reference point you can go back to, and then try fiddling with the void midiSend() function, and update the switch/case statements so the MIDI commands match the commands you have displaying on the screen. After that, you could maybe go through the void readButtons() function and make sure any 2xfootswitch combo functions you want to use are pointing to switches that you have, and are on switch combinations that make sense to you. Hope that helps
  18. Nice one - Looks great..... hope you enjoy it!
  19. Sorry, I misunderstood..... I thought you had got the MIDI communication working by using the MIDI socket and wires from your previous build. I have had another look over my notes and I have found some mistakes in the files I uploaded to github - the wiring for the breadboard circuit diagram, and the soldered shield circuit diagrams don't match! I was guiding you earlier based on the breadboard version, as that is easier to read - but that doesn't match the circuit that is in my working controller! Sorry to have confused you! OK - So in my controller, I have Arduino TX3 (14) -> yellow wire -> Nextion screen Arduino RX3 (15) -> blue wire -> Nextion screen Arduino TX2 (16) -> green wire -> MIDI socket pin 5 (the green one in https://www.instructables.com/Send-and-Receive-MIDI-with-Arduino/ ) I have the 220 ohm resistor in mine on the +5V wire - same as in the instructables link above, but I just came across these pages - https://www.electroschematics.com/midi-introduction/ and https://www.arduino.cc/en/Tutorial/BuiltInExamples/Midi - which suggest putting a resistor on both the +5V and the serial TX wires. I'm not going to change mine, but if I was starting again, I will use resistors on both wires. Your choice! Right so - this now means that : Serial3 is being used for the Nextion screen Serial2 is being used for MIDI, and Serial1 is free for debugging messages and for uploading new sketches from the computer to the Arduino. That also means the advice I gave you earlier was also incorrect. In my Nextion library, my NexConfig.h has the following lines for serial configuration : /** * Define DEBUG_SERIAL_ENABLE to enable debug serial. * Comment it to disable debug serial. */ //#define DEBUG_SERIAL_ENABLE /** * Define dbSerial for the output of debug messages. */ #define dbSerial Serial /** * Define nexSerial for communicate with Nextion touch panel. */ #define nexSerial Serial3 and the first line of the "06_midi.ino" file should be: MIDI_CREATE_INSTANCE(HardwareSerial, Serial2, MIDI); But this matches the code on github, so hopefully you should be OK with this one. Sorry again - hope this is enough to get you up and running!
  20. I think the MIDI socket wiring should be the same for both versions.... Glad to hear you're making progress! I haven't got any current plans for future versions, but maybe inspiration will strike again - who knows? Cheers!
  21. OK - so we know the foot switches are probably wired up fine to the arduino if you are seeing the changes on the screen. - The wiring for the MIDI socket is easy to get wrong if you don't orient the diagram carefully - it might help to look at the pictures on Step 3 of this page - https://www.instructables.com/Send-and-Receive-MIDI-with-Arduino/ - to double check. - Make sure the MIDI wire is definitely going to TX1 / pin 18 on your Arduino Mega - Double check your MIDI cable is going to the "IN" socket on your HX Stomp. You're almost there now though! Good job!
  22. Ah - have you set up the Nextion library to use Serial2 ? I think when I did my initial Nextion testing I followed the guide at https://nextion.ca/portfolio-items/nextion-iteadlib-and-mega-step-by-step/ - pay particular attention to Step 3 I thought I'd mentioned that on my github page or in my code somewhere, but maybe not. The other files aren't really needed, .code-workspace is to do with VS-Code - I was using that rather than the Arduino IDE while I was coding this up, and it creates a configuration file in the code directory. .fzz are Fritzing files - circuit diagrams. The same information as in the .png files, but they're editable if you have Fritzing installed. .graphml are files created in yEd - which is a bit like Visio. Just flowcharts I used to make notes while I was planning/testing.
×
×
  • Create New...