Jump to content

Arjan

Members
  • Posts

    17
  • Joined

  • Last visited

About Arjan

  • Birthday 01/01/1

Profile Information

  • Gender
    Not Telling

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

Arjan's Achievements

MIDIbox Newbie

MIDIbox Newbie (1/4)

0

Reputation

  1. Just in case someone Googles this thread, my idea above doesn't work because in their infinite wisdom Roland have decided and managed to source a MIDI chassis part which does have 5 holes but only 3 of them have any metal in them. I didn't know such a thing even existed. The manufacturer's part number is YKF1-5054. Damn you Roland :frantics:
  2. I just had an epihany. Instead of drilling holes and installing an actual switch, I could use the unused pins 1 and 3 of the AX Synth's MIDI OUT along with a DIN plug acting as a shunt to create a switch: The beauty of this arrangement is that since the MIDI plug inserted into the AX Synth's MIDI OUT is the actual switch there is no possibility of the switch being in the wrong position: as soon as you remove the shunting plug from the MIDI OUT it becomes a fully functional MIDI OUT port again. I could use the same arrangement for the MIDI IN, but I'm wondering if I should use this method to control the power to the WIDI-X8 instead so I can turn it off in case it is causing interference. That leads me to the following question: Would it be possible to only disconnect one of the MIDI connections creating the current loop? Are there any downsides to this? In that case I could use, say pin 1 of both MIDI ports to switch both the MIDI IN and MIDI OUT connection to the Widi-X8 and I could use pin 3 of both MIDI ports together to control the power to the Widi-X8: connect the +5V from the AX Synth to pin 3 of the OUT port, create a shunt device consisting of 2 MIDI plugs with their pins 3 connected and then go from pin 3 of the IN port to the 5V input terminal of the Widi-X8.
  3. Thanks for your collective advice. I think I will take Wilba's advice and duplicate the MIDI OUT driver circuitry although I might try to make a direct connection between the point just before that part of the circuit and the point in the Widi-X8 just after the opto-isolator (straight into the UART). Of course I'd have to disconnect the opto-isolator from the UART input in that case. I actually managed to get a copy of the the schematics of the actual AX Synth MIDI circuits: There seems to be a bit of extra stuff in there before the actual output circuit as I know it from the MIDI spec. Could it be that Q27 and Q29 are used to reduce power consumption when the AX goes into power saving mode? It does that automatically after x minutes to save batteries. Anyway, would it be possible to take the signal from IC14E and put that directly into the Widi-X8 UART? I think IC14E uses 3.3V logic instead of 5V so I'll have to check what the Widi-X8 input (post opto-isolator) can accept.
  4. I wonder if I could go from that point (before the actual MIDI output driver circuitry) directly to the corresponding input point on the Widi-X8, bypassing the opto-isolator. Both circuits are going to be inside the AX with just a short bit of wire between them and will be powered by the same set of batteries.
  5. Well, the thing is, I don't really want to drill holes in and install additional switches onto my AX Synth 'Black Sparkle Premium Edition' :geek: True, but since I don't really want to install an additional switch I'm really looking for a way to drive both the original MIDI OUT and the Widi-X8 at the same time all the time even if I use only one of them. There is an ATT switch on the AX which can be used to select either normal or reduced output level at the LINE output, I think it's double pole but I'm not sure. I could use that perhaps but again this switched is mounted/soldered onto a small PCB which also has the actual LINE OUT sockets on it so I'd have to cut some traces from the PCB to use it for this purpose. Thanks for your suggestion but I'm still wondering if I might be ok if I simply split the original MIDI OUT. In theory it should be possible but I don't know what would happen in practice, especially if a long MIDI cable is connected. I know it will affect the MIDI signal somewhat, but how much and will it cause a problem?
  6. Hi, This is not directly related to MIDIbox as such but I'm pretty sure this would be the best place to ask the following question. I have a Roland AX Synth 'keytar' and am thinking of building my CME Widi-X8 wireless MIDI interface into it so I don't have to mess around with a separate wireless interface. Because I will be unable to access the Widi-X8 unit once it's built in I'd like to keep the regular MIDI OUT of the AX Synth fully functional in case of problems with the wireless connection. In order to do this, do I really need to include an actual MIDI THRU circuit to split the original MIDI OUT signal from the AX to send it both to the original MIDI OUT and to the built-in Widi-X8? I was thinking that perhaps I could simply hardwire the MIDI OUT of the AX from to the MIDI IN of the WIDI-X8 and call it a day. It's going to be just one foot of cable with soldered connections. The MIDI OUT socket of the AX Synth is probably soldered to the main PCB so it may actually be a bit difficult to split the signal before it gets to the MIDI OUT socket. One consideration is that if I do at some point need to use the original MIDI OUT (for example because the wireless unit is getting or causing interference) I'll be using with a fairly long MIDI cable (15 foot at least, possibly longer). This needs to function reliably whie the Widi-X8 is still connected (it's hardwired after all). If a direct connection is not a good idea is there anything else I could do to reduce the 'load' that the WIDI-X8 will present to the MIDI OUT from the AX Synth without having to _insert_ a 2x THRU between the PCB MIDI OUT and the actual MIDI OUT socket? Thank you for your opinions and suggestions.
  7. You are correct about everything you say but like I said the reason for wanting more resolution is in order to be able to detect movement/non-movement and (slow) speed very accurately. To get rid of the digital noise I could try averaging multiple ADC readings: as long as the finger is in the same position on the ribbon the induced noise should more or less average out just like the thermal noise from the ribbon itself. But as may be obvious I haven't really engineered anything yet about this project, no calculations whatsoever. I may be over-specifying my design criteria but this is not a commercial project so I can afford to spend a few $$$ too much and I'd rather do it right once than wrong twice. :) What I think is needed most is local or regional resolution. Non-linearity in itself is not a problem and 10 bits will be enough to accurately place the notes along the ribbons path. Extra resolution would only be desirable to accurately measure the deviation from the previous position as you want accurate response to small finger movements. But I'm sure a, say, 1 mm offset of the actual note positions from their theoretical position won't be a big problem as these ribbons are largely played by feel and based upon acoustic feedback to the brain.
  8. That's ok, appreciate the response :) I2C crossed my mind but basically I wanted to check if someone had already done something similar with higher resolution ADCs. I get the impression that is not the case. :( I think for my first attempt I'll keep things very simple: an 7805, some capacitors, somewhat careful grounding and see where that leads me. I've done some assembly in my time but I definitely prefer C and C++. The Windows app was actually written in C# because I happened to find a MIDI library for that which makes it very easy to deal with MIDI messages. There are some divisions but I already checked that they can all be either implemented with some bitshifts and additions or with some table lookups. All considered I think I will wait for the core32. Like with the poly aftertouch project I think it would be the better choice, especially as it will allow me to do everything in C. Well, the original R2M from Doepfer also uses a 12bit ADC and it works well enough. The main reason that I want to try a higher resolution is that I think it may simplify distinguishing between movement and non-movement but of course that very much depends on how noisy the ADC output is. But I could first try with the built-in 12bit ADC of the core32. That way all I'd need is a core module and nothing more (unless the AIN module is always required even if you only need one or two channels of ADC). I actually have a third project in my mind but for that I might just get an Asus EEE or something because I could use the large display. Install XP embedded on it, add a USB MIDI interface and it should make a very nice dedicated user interface to my Fantom for certain tasks. I'd prefer a very small tablet PC actually with touch screen but I haven't seen any that are as affordable as an EEE.
  9. No, the pitch bend messages have 14 bits of usable pitch bend data (0 to 4000 hex) and both my JP-8000 and Fantom X7 process all of those or at least more than just the upper 7. Otherwise I wouldn't be getting totally smooth pitch response from them when controlled from the ribbon (either directly or through my app) with the bend range set to + 2 octaves (ie 4 octaves total). Actually the R2M from Doepfer uses a 12bit ADC so there are jumps in the values I'm getting but the pitch changes are smooth and continuous. I haven't checked but it should be that the bottom two bits that it's sending out are probably always zero (ie their 12 bit ADC reading is left-shifted two bits).
  10. Hi, Well I'm still gathering information on available Hall Sensors (http://www.midibox.org/forum/index.php/topic,13136.0.html) but in the mean time I'm thinking of taking on another, hopefully simpler, project. This new project is meant to be a drop-in replacement for the Doepfer R2M ribbon controller module (so not the ribbon itself but the analog to midi box) which I want to add functions to such as pitch-rounding. I have implemented this as a Windows app but I want to be able to take it with me on stage without needing a notebook (although a really small and cheap netbook or tablet PC with USB may be an option). Anyway, for this to work properly I need at least a 12 bit ADC but a 14 or 16 bit ADC would be preferred. I actually need a second one to read the pressure as well but that doesn't have to be so accurate. The PIC18F4520 only has 10bit ADC so if I want to use that I'd need an external ADC. Are there any existings designs for that and/or any pre-made PCB's that I could order? Alternatively I could use the STM32 which has built-in 12 bit ADC but as stated I'd prefer at least 14bit or better. How noisy are those ADC's ie how accurate is the lowest bit? I'm thinking that it might be a good idea to go with the STM32 but I'd like to limit myself to pre-made PCB's and modules as much as I can and I don't believe those are available for the STM32 yet right? On the other hand this group has more experience with the PIC so I might be better off sticking to that. But then I will definitely need a better ADC. Regarding speed, my PC app reads the MIDI output from the original R2M box continuously as MIDI messages come in but it only outputs (corrected) pitchbend messages once every 5ms which appears to provide smooth response. The pitch rounding algorithm is extremely simple and could be implemented completely in integer arithmetic and probably with just additions and some bit shifts. I'm kinda guessing that the PIC would be powerful enough for that but I don't really have a clue. The original R2M box uses an 8052 derivative (ADuC814) but it doesn't do this kind of pitch rounding. Interface wise a few buttons and a 16x2 LCD would be plenty. Any advice? P.S. Here's a screenshot of my R2M PitchRounder windows app:
  11. Thanks for clarifying, thinks are starting to make more sense as I get a better understanding of how MIOS works. I didn't even know that there was built-in multiplexing support but I understand modifying the driver for that is an option. I'm still in the very early stages of this project and I expect I will need quite some time to settle on a sensor and the mechanical construction. For me I expect construction will be the biggest challenge so I will probably have time to wait for this core 32 thing. Like I said I intend to develop this on a PC initially. I will probably not implement the multiplexing on the PC but I do have a USB interface card somewhere which also has some (4 or 8 ) ADC converters that I could use to test the sensors and the actual practical use with just a few keys (if I can remember where I put it). It is and very much so, thanks! I do indeed know what callbacks are, I live and breathe callbacks in Windows programming ;) The DMA controller will be a great improvement I'm sure.
  12. I'm not yet familiar with the details and limitations of MidiBOX/MIOS but in general the principle seems sound. As soon as you receive a note on you add it to the list of notes to monitor for pressure change which you will need to do many times a second anyway (as often as possible). Reducing the list of notes to monitor can only increase the number of times you can update the pressure information for all notes that are currently pressed, right? If you don't use the MIDI stream from the keyboard you'd have to check all keys for pressure info. I suppose you could increase the monitoring frequency of certain keys once you have detected that they have travelled down into the aftertouch range. Which method give higher performance would depend on the latency between actual key down and receiving/processing the MIDI note on event and the maximum monitoring frequency that you can obtain if you are monitor all keys for pressure info. I'm not sure I follow what you are trying to say but that could be due to my unfamiliarity with MidiBOX/MIOS.
  13. Yeah, I agree that 3/127mm may be overkill. But to me even just <1mm tolerance does not seem that easy to accomplish over the full length of the keyboard. Unless you mount both the sensor and the keybed on a single PCB/carrier, then the length of the keyboard becomes largely irrelevant. But what do I know, I'm an EE, not a mechanical enigneer. :D If all you've got in your toolbox is a hammer, a screw will look like a nail. My toolbox contains microcontrollers, software and other eletronics so that's where I look for solutions :D
  14. I don't think it has to be super-accurate but if you're playing a chord without applying any intentional pressure I'm sure you'd want your notes to play equally loud (approximately). So the starting point of the response curve is fairly important I think unless you are happy with a large threshold value. I think calibrating through software to make up for tolerances in the mechanical construction will be a lot easier than putting heavy precision requirements on the mechanics. The travel range is only about 3mm so without calibration the mechanical accuracy would have to be something like 3/127 of a mm at least. Plus there is sure to be spread between sensors' response curves and also, in the case of a Hall effect system, in the strengt of the individual magnets. I think calibration will be mandatory. That's interesting, didn't expect the optical approach to have actually been used in a commercial product. And nice to know that at least one synth has used Hall effect for aftertouch. Appreciated, thanks.
  15. Exactly what I planned to do. Your response came just seconds before I posted my previous reply.
×
×
  • Create New...