Let a user modify Arduino sketch variables via Win/Mac software or text file

Hello, everyone!

This is my first post ever here on the forum!

I have an Arduino Every which I used to build a MIDI controller. What I'm looking for are ways to let users that are not familiar with coding, to modify some parameters of the device either via special software or by exporting a text file to the Arduino.

I will try my best to explain in detail what I want to achieve:

My Arduino sketch is using some constant variables for specifying MIDI channels, CC numbers, etc. in order to send MIDI commands via Tx to an external MIDI compliant device. Right now, these variables are specified and fixed within the Arduino sketch and there is no other way to modify them than by programming the Arduino using the IDE. So I would like to know if one of these two things are possible:

1- Create a Win/Mac app with a graphical UI that will allow the user to modify some parameters and then accordingly change the variables inside the Arduino connected via USB to the computer. This without any programming skills and without using Arduino IDE.

2- Create a Win/Mac app with a graphical UI that will allow the user to modify some parameters and then generate a text file that could be exported/uploaded to the Arduino via USB and used by the Arduino sketch to modify the variables. This, preferably without using an SD card. Some additional memory chip for the Arduino is viable for me.

Please note that the changes that the user will be allowed to make are supposed to happen when the device is not in use. I guess this makes things easier.

So in few words, what I need is something similar to the software that are supplied with hardware devices that allow the user to configure these devices by using a computer.

I will still make the device open source and any experienced user can make it's own sketch but I also want to make it user friendly for people that are not familiar with Arduino or coding.

Thank you very much!

Regards,

yes, it possible

Usual way is create Mobile app with graph UI that modify sketch parameters via WiFi or Bluetooth

Use EEPROM.

Thank you very much! Can you point me in the right direction? Where can I find more information on how to do it?

Thanks! You mean the Arduino EEPROM? Or an additional one? How can I access the EEPROM from a computer to change it's content? Can you point me in the right direction where to find information on that?

Arduino EEPROM. You can write serial port code to accept commands to write values to the EEPROM.

Here is a manual entry version from one of my sketches:

command:
LED Control Utility
available commands:
        c show existing configuration
        s <value> set colour to value
        r|g|b <value> set colour to red green blue value
        e select effect
        d select default background colour
command:
1 Like

There are a lot of projects based, say, on the ESPWebServer library. You can start from library examples

1 Like

So basically what I understand is that my Arduino sketch has to include a code that reads the serial and then takes that data and sends it to EEPROM, correct?

Yes, correct. There are other methods, I guess, but it seems the most straightforward.

1 Like

Thank you very much! Will look into that!

On the PC side, your app would find the serial port, and send commands based on what your GUI gets for input.

1 Like

If you send the configuration changes as MIDI SysEx data, you can use your browser's built-in MIDI features. Writing a simple web app that sends MIDI data is much easier than creating an actual graphical application with serial port connectivity.

1 Like

Sounds interesting. Will check it out! Thanks!

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.