-
Posts
613 -
Joined
-
Last visited
Content Type
Profiles
Forums
Blogs
Gallery
Everything posted by lylehaze
-
I have written a "system-side" USB MIDI driver for a personal computer. Based on that, I can tell you that writing USB software is NOT trivial. It's really a tall order to get it working, and a much taller one to get it working right. I can also tell you that USB-MIDI interfaces fall into two groups: Those that have a "custom" driver, and those that are "Class-Compliant" (Meaning they will work with the OS "standard" driver). Some devices have a switch to select which way you want it. What you'll find around here includes : USB-PIC interface that was abandoned because the PIC hardware wasn't quite right. Cypress AN2131SC device, but that chip is no longer available. The new Core32 device with built-in USB, but it's still in development. GM5 1 in 1 out, pre-programmed, very reasonable price and works great. GM5X5X5 5 in, 5 out, the board is designed by MIDIBoxers, same chip as above. So there's all of them. The GM5's really are your best choice, for the reasons above. They work using "class compliant" drivers, so most OS's already have the drivers built in, or you can download the ploytec specific drivers. They are tested by a lot of people here, and everyone seems happy. The cost is excellent, but you may have to wait for the next "bulk order". regarding USB1.1 vs 2.0, 1.1 is plenty fast for MIDI.. so either should be fine. Have Fun, LyleHaze
-
J1 Connection to a powersupply unit (PSU). A 7V-10VAC transformer, or a wall adapter could be used. At least 500 mA is recommented, especially if a backlit display is connected, but MIDIfilter and MIDImerger work also with ca. 100 mA. AC or DC doesn't matter, since the rectifier behind J1 converts to DC anyhow. Also the polarity has not to be taken into account.
-
But.. that looks like a steam driven machine.. Now there's nothing there to make it "Hot".. :-)
-
First answer: Right. Second answer. You're right on target. There's a bunch of software you need to install to make this work, and the information is all at:http://www.midibox.org/dokuwiki/doku.php?id=application_development At minimum, you'll want to do details 1 and 2, 3A is also a good idea. Or just follow the quickstart. You are right on target, doing great! LyleHaze
-
The time delay from setting an output to actually beating the drum is easy to fix, especially using a sequencer in a PC.. just time shift the percussion tracks forward. Of course then it's no longer interactive, but only useful for pre-recorded sequences. In the interest of being polite, I'm not going to make any comments about Sashas friends (or family) LyleHaze
-
Does "Nothing Changed" mean that you are getting messages from the Core, or does "Nothing changed" mean you are getting nothing from the core? How do you know the PIC is running? Is it being reset while running? If you had a display, it would be easier to see some clues, like if the pic is running, if you are at the bootloader, MIOS, or the application, if the PIC is being reset, etc.. Without the display, things get tricky. with an untested LTC module, things can get tricky too. Did you do a loopback test on your PC serial port? Did it return exactly the same SysEx messages that you sent out? Good Luck, LyleHaze
-
the 7805 +5 volt regulator requires at least 7 or 7.5 volt to work properly. Good Luck, LyleHaze
-
You are further along than I thought.. That power supply may be trouble.. I don't know how much the LTC module uses. Do you use a display also?
-
OK, getting back to basics.. You say that the bootloader has been burned into the PIC... IF the pic has the bootloader, but not yet MIOS, and the PIC is running, you should get a SysEx message about every two seconds. If you are not getting a sysex message every two seconds, then we have a place to start looking for troubles. I can think of four places to look: Your PIC has no bootloader, Your PIC is not running, Your LTC module is not working, Your PC serial port/MIDI connection is not working. Let's start at the PC.. Assuming it's a 9 pin serial port, you should be able to do the "loopback test" by connecting pins 2 and 3 of the PC serial port. If this port is set up with the MIDI driver then you should be able to try the "TEST PC 1" and "TEST PC 2" at this page:http://www.ucapps.de/howto_debug_midi.html Note: Those tests do not connect to the core or LTC at all.. they just check your PC serial port and PC software setup. You need to know those are working before going on. Good Luck, LyleHaze
-
So you are claiming that you can play a SB16 ISA card without any software being used? No software stored on the card, no drivers in use on the computer, no instructions stored on any digital medium? Is there a processor on that board? Does it execute instructions? I suppose you can bang the card against a rock, but that's probably not going to get you much tonal diversity. It is possible to make an ANALOG electronic synth without any software. Oscillators, filters, and the like have been the playground of many. I'm just trying to point out that your specifications are in conflict with your specifications. If it's a digital synth, it will have software. Good luck designing your dream synth. :-)
-
No problem. We need to invent a synthesizer that has no Software. I believe this is called "Piano". It uses strings and hammers. Since you specified digital synthesis, you WILL have software inside it. This technique was mastered years ago. To learn more about it, Google the word "Monophonic". That's OK too. They can change it at mixdown. :-) Good luck with your dreams. LyleHaze
-
It is possible that the power switch is "not quite right", but more likely is that the LED is the only load, and the big capacitors in your power supply can keep it lit for a long while after power is removed. It's easy to tell. Unplug everything from the wall, either use a resistor to discharge all the big capacitors or just go out for a while and let them leak down. Then hook up your project/LED to the unpowered supply. the LED should be OFF. Turn the power switch OFF. Plug the power supply in to the wall, do NOT turn the switch on yet. If the LED lights up, your switch is not right. IF the LED stays OFF until you turn the switch on, then the switch is working fine. Who needs a power switch on a MidiBox anyway? Don't you want to keep it on forever? Have Fun, LyleHaze
-
78xx series regulators (the positive ones) have the tab at ground already. So if you have a metal case, you have a great heatsink already there. Just use a bit of thermal grease to help conduct the heat. DO NOT do this with 79 series (negative) regulators unless you get insulating hardware, as these tabs are NOT grounded. Have Fun, LyleHaze P.S. the board in the middle has the regulators. If you look close, you'll see 2 of them are bottom-mounted and screwed to the case (paint scraped way for better heat conduction)
-
Futureman: Since he's using the LTC module, he does not have MIDI jacks. You can learn more about the LTC module at ucapps.de. LyleHaze
-
It looks like it's sending random MIDI events. That usually means that you have AIN lines that are not connected to anything, either right off J5 or from AIN modules. But that problem cannot happen until you get a MIOS app loaded (like MB64 or something). If the bootloader is the only thing you have in the PIC, you should be getting SysEx messages, not Pitch Bend messages. Most curious! LyleHaze
-
I found the files in midibox_seq_v3_4e\src Is that the same project you are building? If not, you'll have some coding to do.. Look in seq_leds.inc around line 636. this looks like the code for displaying the values stored in BPM_DIGIT_0 to _2.. a good start.. looking above it to see how often it's called.. Looking around line 223, it appears hat it's being called at the beginning of every DOUT service loop. You'll need to make similar arrangements. Make sure you save off and restore the PRODH and PRODL regs if multiplication is being done.. Over in the other file looks like the code to load various values into those three digits. Modify your application to load the correct values into the three BPM digits whenever there is a tempo change. It's time to get in there and muck about a bit. Have Fun! LyleHaze
-
When reading a schematic, crossed wires do NOT connect unless there is a dot there. I hope that helps. LyleHaze
-
Do you men the heavy red line on the CORE in that drawing?
-
I'm not sure I understand the question. It's about completing a circuit. Ground is the usual return point for most circuits. It is possible to power the LEDs between +12 Volt and +5 volts, you would calculate using the difference between the two, a 7 volt difference. Some people hook up their computer fans that way to slow them down.. In all cases, you need to complete the circuit or there will be no current.. and if there's no current, the LEDs will not light. LyleHaze
-
LED's are current devices.. if you pass too much current, they die. So we add a resistor to limit the current that goes through them. The HIGHER the resistor value (in Ohms), the LOWER the current will be through the LED. To figure it out, we use "ohms law" (google that for more). +5 Volts----------\/\/\/\/\-----------|>|------------GND So we need to know how many volts will be dropped across the resistor. We start with the total voltage, usually 5 volts for MIDIBox stuff. then we subtract the "forward voltage" of the LED. That is how many volts the LED uses when it's lit. What we are left with is the voltage that we need to drop across the resistor. So, 5 volts - 2.2 volts (LED forward voltage) = 2.8 volts across the LED. Ohms law says that if we know the voltage across that resistor (2.8) and we know the current through that resistor (20ma = 0.02 Amps) then we can calculate the resistance as R=V/I. V=2.8, I=.02, so 2.8/.02 = 140 Ohms. We round UP to the next higher standard value, and we get 150 Ohms. Resistors come in many power ratings, usually expressed in watts. This tells us how much heat will be created at this resistor. To calculate the wattage required by this circuit, we use Watts = Volts*Amps. Since we are dissipating (burning off) 2.8 volts at .02 amps, Out resistor will be dissipating 0.056 watts. We usually use 1/4 watt or 1/8 watt resistors, these will be fine in this app. If this doesn't help, ask questions! LyleHaze
-
Hmm, I think 150, 100, 100 looks closer. Try this website: http://led.linear1.org/1led.wiz For a quick first run, Source Voltage is 5, Diode forward voltages and currents you already provided. This will provide safe resistor values that can be left on forever without damaging the LEDs. So what can change the numbers? The DOUTs that supplies power may have a slight voltage drop. You could figure that out and deduct it from 5V. The ULN outputs may not QUITE get all the way to ground, you could deduct that from the 5V also. In truth, neither of those will be enough to make a difference. LEDs that are being scanned in a matrix CAN be overdriven for bit more light, but it will shorten the life of the LEDs, and if the scanning ever stops unexpectedly, the LEDs will be unhappy. Have Fun, LyleHaze
-
It looks like the code in seq_leds.inc reads the #defines. It looks like seq_bpm.inc has the code I described earlier. I found these using the "search" feature of Windows. From Linux, a "grep" would have been even faster. It's all in there already, as far as I can tell. Have Fun, LyleHaze
-
Oh well. I thought I'd get to help, but it looks like you already have it all! ASSUMING that you are connected to the second DOUTX4 module as described in the print you showed me, then all you should need to do is set the three #defines to the way they are shown in that print. Find these defines and change them to: #define DEFAULT_BPM_DIGITS_ENABLED 2 #define DEFAULT_BPM_DIGITS_SEGMENTS 5 #define DEFAULT_BPM_DIGITS_COMMON 6 Then re-compile the application. That MIGHT be all you need to do! note: I didn't realize that all this was already coded. It looks like it is. Good for you! LyleHaze
-
You say that your 7-seg displays are already wired up?? How much detail can you tell me about how those are hooked up? Also, can you point me to the exact source code you want to adapt to using this display? Thanks, LyleHaze
-
OK, just dumping more information here. I hope you get to feeling better soon. We recently discovered that the faders you selected have an option for analog output, but it will be from 0 to 3.3 volts only. Most MIDIBox inputs span 0 to 5 volts. Just as a reminder: Your sliders only support analog out if you order them with that option. If you choose this path, I can think of three different ways to manage the voltage difference. Which method you choose depends on how you want to attack this problem. The math way: Reading a 3.3 volt signal into a 5 volt analog input will work, but the numbers will be a bit low. If you multiply the result by about 1.51515, you'll get the "corrected" result. This is the easiest way, but you get a lower resolution.. Advantage: Easiest no-parts solution Disadvantage: lower resolution, requires software changes. The PIC hack way: If the ONLY analog signals you are reading are from these faders, AND IF you are willing to sacrifice AN3 (PIC pin 5) you can: Connect AN3, (pin 5) to the 3.3 Volt supply that your fader is using, and add code to set Bit 0 of the ADCON1 register. This will change all analog inputs to be 0 to 3.3 volts. But you lose the use of AN3. Please check with Thorsten to see if this will cause problems, but I suspect it's the easiest fix. Advantage:Simplest solution, especially for multiple faders. No "extra" parts, since you needed 3.3 volts to power the fader anyway. Disadvantage: Cannot use 5 volt analog devices on this core, and you lose 1 analog input for reference. The Op-Amp way: Find any general-purpose op-amp that is billed as "rail-to-rail operation" that will work from 5 volts. Build a simple circuit from this datasheet: http://www.national.com/an/AN/AN-31.pdf The second circuit on the page is called "Non-Inverting Amplifier". That's the one you want. Use 95.3K resistor for R1, and 47.5K resistor for R2. One circuit for each fader. Advantage: No modifications to MIOS or Core. Disadvantage: a few more chips, a bit more stuff to build. As always, I'm open to discuss these options. Have Fun, LyleHaze