Jump to content

lylehaze

Programmer
  • Posts

    613
  • Joined

  • Last visited

Everything posted by lylehaze

  1. Hmm.. As others have said, it might take a little more than you think to get this working. philetaylor was kind enough to plug the Midibox Mixer.. it is an analog mixer with MIDI controls. But the circuit boards are not ready yet, so you'd have to start by learning PCB design. That would allow you to leave out the preamps if you prefer your own external ones, and there are some other cool things it can do.. but it's not at the level of what you are dreaming of right now, and I doubt it will ever get there. If you REALLY want to design your own console.. Perhaps you should begin with an existing design, and build and modify it a bit until you get comfortable with what is involved in a project like this.. In the end your "ideal design" will change, but so will your ability to realize it, and when the two meet, you will have learned something about mechanical, electrical, electronic, programming, and user-interface design. It's a lot of fun, and there are plenty of people here who will help you.. as long as you are doing the ground work. Have Fun, LyleHaze
  2. It's not so surprising really.. EXCEPT for SysEx, MIDI is a medium ruled by messages of 3 bytes or less. So once you get that working, ALMOST everything works! Then all you have to do is manage these SysEx messages that could be ANY LENGTH LONG.. so you have to decide how big of a buffer to provide, and how to handle the possibility of messages bigger than that buffer, and all of a sudden your nice, simple little program is a collection of exceptions and workarounds. And how do you test SysEx message passing? I would start by creating tests that use the smallest and largest possible SysEx blocks.. But, there is NO "largest".. So many programmers will make some compromises.. based on whatever is in front of them right now. If your system was built around receiving the message before forwarding (or handling) it, then you have to impose SOME size limit on SysEx, and at that moment you are no longer universally compatible. To Thorstens credit, all SysEx messages are broken into packets no larger than a specific size, so we have a reasonable limit on managing this problem within our software.. As long as those "regular" 3 byte messages get around OK, it works.. And SysEx becomes the less reliable part of MIDI. I guess my driver writing experience is showing. :) LyleHaze
  3. As far as I can tell, the 16F877 is not supported by MIOS, and I was not able to find a project called "midibox plus 8" anywhere on the site. You'll find lots of interesting info at the MIOS FAQ page, including why we don't use the 16F chips anymore. Then check out WHAT_IS_A_MIDIBOX to get a better idea of what we are made of. You can check out some of our Projects. Have Fun, LyleHaze
  4. Some of the options could prevent it from working at all. (Oscillator selection, PLL configuration) Some can make it less reliable (brownout selection and configuration, low voltage programming enable) Some will have no effect on performance. (memory protection bits) If it were mine, I'd make sure they were all correct. LyleHaze
  5. "Fuses" are a term for configuration register bits. These will include power up and reset options, brown out detect voltage levels, low power programming enable, memory protection for various parts of the memory map, interrupt and watchdog configuration.. check the datasheet for more information. Have Fun, LyleHaze
  6. OK.. so there's not much traffic on this question.. I'll toss in a few bits, but I have not researched it completely. The two chips you describe are both "74HC", so they have the same voltage range, the same levels for low and high, and similar drive capabilities. The 74HC164 is a serial to parallel shift register. So that would be more useful as a DOUT chip.. taking a serial signal input and pushing it out eight different pins. But I'm not claiming that it would work without modifying the MIOS output driver. details like whether the data is clocked on the rising or falling edge, whether the outputs are inverted or not.. lots of details could make it interesting. When I want to know more about a chip, I find its datasheet and read it. One good place to get those is from Digi-Key. Have Fun, LyleHaze
  7. Welcome. It depends on what you want it to look like. If you want a track name displayed across the top of each channel strip, you're going to need enough displays to go all the way across the top of all the channel strips... Seems obvious, doesn't it? Then the questions become how many displays do you need, and how many can be driven by a single core? You can search the forum for info on those questions. If you want a single display that will show the track name of the most recently "touched" display, that gets a lot easier. I know the MBMixer software can do that, even without the mixer chips attached. It shows channel number, channel name, and the gain for the left and right sides. I attached a picture.. maybe it will show..?? Of course making it display less information should be pretty easy. :) Have Fun, LyleHaze
  8. I often wish I had pushed myself into a medical devices engineering career... the interface of modern technology with various physical limitations is a really exciting field. I'd love to re-define the term "Embedded Processor". But on the downside: Can you imagine what the insurance premiums would be for the company that makes a neurally controlled wheelchair? I think they would need to develop and test the system out on a non-hazardous output device first, perhaps a keyboard/mouse or speech synthesizer.. At least in those scenarios the worst you might get would be a few colorful four-letter words. Still.. the possibilities are all around us.. it will be interesting to see where these will be allowed to develop. LyleHaze
  9. It might be useful to use a switchmode supply to feed linear regulators.. Having a variety of caps in between them should reduce the switching noise, especially smaller ceramic types for the high frequency noise. The linear regulators in the final stage would reduce it even further. Most important here would be to make sure you reach the minimum _input_ voltage for each linear regulator, plus a volt or two for headroom. Well, it's worth a try anyway. Though I think the Darwin effect might be reduced. LyleHaze
  10. An interesting video clip of a robotic band.. http://hackaday.com/2010/01/30/robot-band-gives-us-so-much-to-make-fun-of/
  11. I do not have a part number.. But there may be another choice.. How about multiple transformers? Each one can be chosen to supply the best voltage for that circuit. Putting the op amps on a private transformer can't hurt the isolation, either. :) Good Luck, LyleHaze Oh,. just for the record, I have run PIC projects by feeding 24VDC to a 7805 quite a few times. Yes, a small homemade heatsink was required.. Yes, the total current was quite low (really just the PIC and a few LEDs) but it can be done reliably.
  12. The amount of heat produced by a linear regulator is a product of voltage drop (12 - 5 = 7) times current used.. So going with multiple linear regulators, or a resistor before the 7805, will all produce exactly the same amount of heat, though it will be spread out among more components. A switching alternative uses "different math", and can be a LOT cooler. But switching regulators tend to add HF switching noise to the power supply (that's how they work). If your project is all digital/MIDI, no problem. But if it handles audio signals, you may get unwanted noise from the switching power supply. Another option, though it's a bit "over the top", would be to use a switching regulator to drop the 12 volts down around 8, then use a 7805 to regulate your final 5 volts. Check the datasheet on your 7805, some require up to 7.5 volts to operate properly. This method will REDUCE the switching noise in your 5 volt supply. How well it reduces it depends a lot on the capacitor choices you make between the two regulation stages. Have Fun, LyleHaze
  13. How odd.. The pinout of your display, from left to right in the drawing. 14,13,12,11,10,9,8,7,6,5,4,3,2,1,16,15 I LOVE it when they keep it simple!! I'm assuming you have seen that already, or you would not have good power and contrast. Yes, one row of blocks is normal for an uninitialized display. I'd get off the USB power until you get this sorted, if you have another supply available. Good Luck, LyleHaze
  14. Ok, first off, there may be answers in the stuff you posted, but I just came in from a long shift, so I'll just try a few simple suggestions: You CAN use a perl script to convert hex to Syx, but that is only necessary if you're NOT using MIOS studio. When you're in MIOS studio, you should not have to bother with that stuff. MIOS studio is pretty reliable, but I must ask a few questions: You should be using "Hex File Upload" screen, not the SysEx screen.. In the MIOS hex file upload screen, is "Smart Mode" Selected? It really should be.. This will offer some confirmation that both MIDI connections are working. Good Luck, and please report back with whatever you find. LyleHaze
  15. Welcome aboard!! I think you'll find this is a great community to work (play) in. We are a diverse bunch, but we all share a common thread of interest in MIOS , and lately MIOS32. My own experience has been with the older PIC based MIOS so far.. I can tell you that one of it's strengths is that once the bootloader is programmed (usually by Smash), we can edit and upload applications directly from MIDI, without need of any programmers or JTAG modules. This makes it much more friendly to newbies that might not own a lot of programming equipment. I'm sure that one goal of MIOS32 is to be equally easy to use. MIOS8 does support the C language.. using a freeware C toolchain. Since I prefer PIC ASM, I have the tools installed, but I have not got too close with them yet. I expect I'll move over to C as I switch to Core32. I must also tell you that MIOS32 is still developing. most of the existing applications have not been ported over yet, or at least have not yet been released in the 32 bit versions. There is a HUGE amount of information in the WIKI. there's also a chat room for live discussions. I'll let those who have been playing with the Core32 regularly describe the current state in more detail. Have Fun, LyleHaze
  16. Resistors are available in 20%, 10% 5% 1% and even less if you pay enough. For digital circuits, pullups and stuff, accuracy doesn't matter much. For frequency dependent stuff (like an EQ) it can affect the cutoff frequency.. and for audio gain stuff, it can affect the gain.. most folks use 5% or 1% without problems. Have Fun, LyleHaze
  17. Assuming that point X has a 10K pullup to +5 volts, and the voltage at point X reads 4 Volts, it would appear that you have resistance near 40K from point X to ground. OR it may be that some digital signal is switching to ground at approx 25% duty cycle, and your meter is averaging the result. Just two possibilities.. LyleHaze
  18. Most analog mix faders have a log taper.. But a fader for MIDI signal generation is usually done with a linear fader, for evenly spaced increments. your retrofit will need to use a different fader, or convert from log to linear, which usually reduces available resolution. Good Luck, LyleHaze Wow, I just looked over the Innofader website.. It looks like a whole lot more than the average fader. But I don't know it well enough to comment on how to interface it with other stuff..
  19. I'm picturing a "special" USB hub with a gasoline generator to power the attached peripherals.. :drool: available in pull start or kickstart versions. LyleHaze
  20. lylehaze

    Solo Chest

    It's beautiful! But can I get one in a 19" rack mount package?? :no:
  21. You may note that I never said how much a core requires, nor how much an MB64E needs for current. The only reason I know what I do about USB is because I have written a driver, and worked with the developer of the USB stack to iron out a few bugs, including some that are power related. A LOT of early USB ports on computers are wired straight to the +5 volt supply. there is no current sensing, and certainly no means for the USB stack to switch power on and off.. On a rig like this, you can draw power until the wires melt. (Of course the voltage will drop a bit as the wire heats up) So a lot of people assume that because it worked for them.. it will work for everyone. Now, just teasing the demons: How many MIDIBoxers are actually willing to measure the maximum current draw on their project? I'm guessing most will just find something that works and stick with it.. and if it's just for you, that's fine! The MMA will not come knocking at your door because you didn't ask properly for the 500ma max current. But on the other side, a lot of MIDIBox projects are pushing professional grade.. and if you want to CLAIM that your rig is USB powered, you may want to know what that would really require. Yeah, I know.. too much detail. Maybe someone learned something useful from all this, anyway. I need sleep. LyleHaze (more detail.. a full MB64E will have 128 digital inputs(64 encoders), each pulled up with a 10K resistor.. that works out to 64 ma of current right there... assuming we need to stay under 100 ma, we have spent 2/3 of the power budget before we have powered up a single chip.)
  22. Would it be "possible"?? Sure, anything is possible. It might even work! But it would almost certainly violate the USB specification. If I remember right, any USB device may draw up to 5 volts at 100ma (or was it 50ma?) without any problems.. the USB bus MIGHT be able to supply up to 500 ma, BUT ONLY if the device asks for it and the request is approved by the host. And here's the part most people miss completely.. it is the responsibility of the DEVICE to not draw more than the above limits, and to shut ITSELF down if the request is denied. SO if you draw more than 100ma without making a request for more and WAITING for that request to be approved, you are in violation of the spec. And if you EVER draw more than 500 ma, even if you go through all the Request/approval stuff, you are in violation. Does it matter? Depends on what you plan on doing with it, and if you plan on sharing it with others. Have Fun, LyleHaze
  23. PIC pin 20, "RD1", should have a 10K pullup to +5 volts and a connection to J9, according to the schematics at UCapps. Does the voltage read low when nothing is plugged in to J9?
  24. Yes, the internal resistor networks control input level and gain of the internal op-amp. Yes, it's compatible with the 4311, just 2 channels instead of 4. Yes, that will require a simple edit to the MBMIxer software. Yes. But the MBMixer software is designed for 16 channels max, so you'll need to change how that works, too. The drawing you attached is pretty complete.. a few details to note: There will be a pull DOWN resistor between each SDO/SDI stage. Separate analog and digital supplies are suggested. The analog and digital grounds should be joined in one place only. Keep the analog and digital sections separated as much as possible. The PGA chip is not just a resistor network, it includes amplification. That depends on what you'll be feeding the mixer. There is a detailed writeup on this in the MBMixer documents. http://www.midibox.org/dokuwiki/doku.php?id=pga:inputchoices Have Fun, LyleHaze
  25. One possible solution: http://www.midibox.org/dokuwiki/doku.php?id=midiboxmixer Have Fun, LyleHaze
×
×
  • Create New...