-
Your question 'is MIDI actually a HID device' took me by surprise. I searched the web for more information to make sure that i use the proper terminology (Midi , USBMidi, HIDMidi, Midi over USB, etc.) and among others i found this interesting post by Paul Stoffregen.
http://forums.adafruit.com/viewtopic.php?f=51&t=51683&p=262051#p262017
-
@andrewn: I am trying to get enough facts together to convince Gordon that USB-Midi is a 'must have' feature. :-) But he is right. Not too many users asked for it and its not so easy to implement. I would definitely use the pico for my USB-Midi projects because i like the nodejs / closures / events / modules - concept.
A alternative to USB-Midi could be OSC over USB/Serial/SLIP. It is supported by pd, Max, Ableton Live, Native Instruments and many others. But i don't know if that's easier to implement?
http://cnmat.berkeley.edu/oscuino
https://github.com/CNMAT/OSC
https://forum.pjrc.com/threads/18849-Open-Sound-Control -
@gordon: Good news. I updated / downgraded ? my pico from 1v80 to 1v79.210 and it seems to work very well now. Thanks a lot. Great work.
@all: Is somebody already working on a USBMidi module?
-
-
Yes i did uploaded the code, called save() and re-pluged it. It did not work. I tried several times. Today i restarted my Mac with the still connected pico and suddenly it worked. Exactly 3 times. After that the pico did not respond anymore. (No LED on|off toggle) After opening the WEB-IDE i did get this message.
Connected >Loading from flash... WARNING: Expecting a number or something iterable, got undefined WARNING: Expecting a number or something iterable, got undefined > =undefined > =undefined WARNING: Expecting a number or something iterable, got undefined WARNING: Expecting a number or something iterable, got undefined WARNING: Expecting a number or something iterable, got undefined WARNING: Expecting a number or something iterable, got undefined WARNING: Expecting a number or something iterable, got undefined >
-
Hi Gordon, i did try to get this HID example up and running but it does not work for me.
I can toggle the LED if i press the button but the mouse cursor does not move.var mouse = require("USBMouse"); function toggle() { on = !on; digitalWrite(LED1, on); } setWatch(function() { mouse.send(20, 20, mouse.BUTTONS.NONE); toggle(); }, BTN, {debounce:100, repeat:true, edge:"rising"});
Maybe i am missing something here? Should the pico show up as a mouse device in my system USB device tree?
ioreg -p IOUSB -w0 | sed 's/[^o]*o //; s/@.*$//' | grep -v '^Root.*'
The only relevant device i can find with this call is the STM32 Virtual ComPort.
I am using OS X 10.10.4 and Espruino 1v80 -
-
I am more than happy with this little board and its JS implementation. It does more than i have ever expected and it is rock solid. And the best thing is that if i stumble across a "minor" problem and post it to this forum Gordon is there and fixes it faster than i can update my board. So thank you very much Gordon for this great support.
-
Hi DrAzzy, i've written a very simple web service for the espruino & CC3000 and a little filesystem based db that uses the sd-card as its storage. So when my web service adds data to the db it writes a file and when it removes data from the db it needs to delete the corresponding file from the sd-card. Its simple and slow but it works great. Except for the delete.
-
-
-
-
-
-
I am using this code in a slightly modified version.
function parseUrl(url) { var idx = url.indexOf("?"); var data = { path:"", param:{} }; if (idx >= 0) { var args = url.substr(idx + 1).split("&"); for (var n in args) { var arg = args[n]; var eq = arg.indexOf("="); if (eq < 0) { eq = arg.length; } data.param[arg.substr(0, eq)] = arg.substr(eq + 1); } data.path = url.substr(0, idx); } else { data.path = url; } return data; }
This way i get a JSON Object with path and parameter.
parseURL("/hello?key=val&foo=bar&something"); //{"path":"/hello","param":{"key":"val","foo":"bar","something":''}}
-
-
-
Hi ltj, i am working on something like this right now. I added a Adafruit CC3000 WiFi board to the Espruino board and wrote a very basic file server to list, serve and save files to the sd-card. Everything works just fine except for saving files. I always get a "ERROR : Unable to write file : INVALID_NAME". Once i get around this error it should be possible to use the saved files via "require".
Another thing i want to try is to backup the state of the server to the sd-card if the connection drops and reinitialise the server if the connection is available again.
-
I would like to hook up this sensor http://www.drotek.fr/shop/en/home/62-imu-10dof-mpu6050-hmc5883-ms5611.html via I2C to the espruino. Is this at all possible? If so, how can i save my js wrapper library to communicate with this sensor to the espruino SD card?
-
OK. I'll try that. It's better than complaining all the time. :-) Where should i start?