Noob. (changed) hairless? NO, SerialMIDIBridge? NO, Trying Due

Started a week ago. Do not know C. Windows 11 23H2.
Only interested in MIDI over USB.
Got 6x6 matrix to work fine on Leonardo(see attached txt). Play through GrandOrgue: I tell it to Listen, press switch, it hears it, and sets it up. This is for virtual pipe organ for encoding pedals to midi .

Want to get same short pgm to work on Mega so I can change it from matrix to paralell. Told I need hairless.

But first: Now when I start Arduino I get message "Some indexes could not be updated. Get "https://downloads.arduino.cc/libraries/library_index.tar.bz2": proxyconnect tcp: dial tcp: lookup _: no such host: https://downloads.arduino.cc/libraries/library_index.tar.bz2 Get "https://downloads.arduino.cc/packages/package_index.tar.bz2": proxyconnect tcp: dial tcp: lookup _: no such host: https://downloads.arduino.cc/packages/package_index.tar.bz2"
Don't know what that means or what I should do. Those are Linux files and I run under win 11.

Also I think "hairless-midiserial-0.4-windows.zip" is the right zip for hairless - app, not library...

noob to Arduino but computer geek.
My_test_matrix1.txt (1.7 KB)

Thanks!!!

EDIT: I just learned that hairless is an app, not a library, So what do I need to add to my little program to tell it and Arduino about it?
Thanks!

the MEGA can't do MIDI over USB unless you modify the boot loader or add an USB host shield and program it accordingly

What is your network setup and firewall settings? I don't think that I can help but others might need that information.

No, they are compressed files (like zip files are) and operating system doesn't matter.

I suggest that you start a new topic for this in Project Guidance - Arduino Forum.

default windows firewall, internet (Starry) comes in cable to modem to router to laptop. Nothing "unusual".

Quote of the year:
Grumpy_Mike
Karma: 2500+
May '20post #2

Hairless is not something you put in your Arduino, it is put in your laptop to convert serial input from the Arduino into what the laptop sees as a USB MIDI device.

I extracted the zip and there's an exe and a .h in there
I will stop until late tomorrow as it is 4AM here.
THANKS ALL!!!

Note that hairless will not now work on some versions of operating systems that can't handle 32 bit applications.

This included all Mac OS after 10.14

1 Like

Hi @kris333

Arduino IDE can be configured to access the Internet through a proxy server via the "Network" tab of the "Preferences" dialog (accessed via File > Preferences). It appears you enabled the proxy feature, but then did not configure a host, which causes Arduino IDE to not be able to access the Internet.

There is a bug in Arduino IDE 2.x that makes it so the proxy configuration cannot be disabled via the Arduino IDE preferences. The workaround is to manually delete the data file where the preferences are stored, which will cause the good default preferences to be used by Arduino IDE.

I'll provide instructions for doing that:

  1. Select File > Quit from the Arduino IDE menus if it is running.
    All Arduino IDE windows will close.
  2. Delete the file at the following path:
    C:\Users\<username>\.arduinoIDE\arduino-cli.yaml
    
    (where <username> is your Windows username)
    :warning: Please be careful when deleting things from your computer. When in doubt, back up!
  3. Start Arduino IDE.

Hopefully this time Arduino IDE will be able to update the indexes.

Your Arduino IDE preferences will now be reset to the default values. If you had previously set any custom preferences (e.g., "Additional Boards Manager URLs"), you will need to set them again. You can open the preferences by selecting File > Preferences from the Arduino IDE menus.

With the greatest respect, @ptillisch, this is not a problem with the IDE it is with installing Hairless on the OPs laptop, not what he was trying to do when he got his error mesage and trying to install it in his Arduino code.

Or use hairless as a helper app on your computer to turn the normal serial data from the MEGA, or any other serial interface, into looking like it came from a MIDI complaint device.

There are multiple problems. The proxy configuration is one of them (and in fact it is the first thing mentioned in the topic title) and @kris333 explicitly requested assistance with it, so I am providing that assistance. This is a serious problem that must be fixed in order for Arduino IDE's Internet dependent features (e.g., Library Manager, Boards Manager) to work.

I did not know hairless - so indeed that's a way if the app works

I am not using MAC. I am using windows 11.

This corrected the issue. THANK YOU!!!

Yes, thanks, This is something I will get to work on much later today. I will install the .exe and see what it says and then get ack to you on how to tell Arduino app about the .h that's in there. But later!!! Thanks!!!

The same applies to Windows, if it can only handle a 64 bit application and not a 32 bit one it will fail.

There is no need to include anything in the Arduino file except to set the baud rate to the default hairless baud rate.

There is nothing to do with the .h file you have managed to get. Where ever it popped up from just delete it.

@J-M-L
Just to wrap things up. I have found a replacement for Hairless.
It is called SerialMidiBridge
GitHub code for SerialMidiBridge

It has not been tested on Windows so I don't know if it works on that platform, no one does. But it works on both my old MacOS Mojave as well as the very latest MacOS Sonoma. The latter both on IDE 1.8.19 and 2.2.1. It also claims to run off Linux.

It is written in Python and so necessitates installing Python 3 onto your computer or laptop.

1 Like

which options do I want to install Python? Thanks!

Huh? I was identifying mysekf as an Arduino and MIDI newbie. So folks would not assume that I had any knowledge or experience, which I don't.

Hi @kris333. Don't worry about that message. It was an AI-generated post made by a spammer without any interest or understanding of the discussion solely for the purpose of deploying a link to the website they are promoting for the purposes of search engine optimization.

I have deleted the spam post and permanently suspended the spammer's account.

This experiment shows that the filename of the Python interpreter on your system is python, not python3 as it was named on the system of the person who wrote the documentation for the SerialMidiBridge project. That filename is fine and normal on a Windows system.

If you are still in that Python interpreter (as indicated by the >>> prompt, type quit() and then press the Enter key to exit the interpreter. That will take you back to the PowerShell terminal. Now type the following command in the PowerShell terminal:

python SerialMidiBridge.py

Hopefully this time it will start without any problems. If it doesn't, make sure you successfully ran the pip install command that is specified in the SerialMidiBridge to install the package dependencies of the SerialMidiBridge Python script.

This error means that you haven't installed the Python package dependencies of the script. As I mentioned in my previous reply, you must follow the instructions from the SerialMidiBridge documentation to install the dependencies:

https://github.com/RuudMulder/SerialMidiBridge?tab=readme-ov-file#starting-from-the-command-line

This requires some python extra packages. You can install them as follows:

pip install pyserial python-rtmidi pysimplegui

You must run that pip install command from the PowerShell terminal. After you have done that, try running the script again.