User Tools

Site Tools


frequently_asked_questions_faq

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
frequently_asked_questions_faq [2016/06/10 14:25]
psykhaze
frequently_asked_questions_faq [2016/06/10 14:41] (current)
psykhaze
Line 1: Line 1:
 ====== General Frequently Asked Questions (FAQ) ====== ====== General Frequently Asked Questions (FAQ) ======
 +
 +//FIXME Some updates needed out there//
  
 This page summarizes the most frequently asked questions concerning the projects found on the [[http://​www.uCApps.de]] website. It will be enhanced with every new interesting questions and will be modified with every new awareness. Feel free to ask in questions in the MIDIbox forum [[http://​forum.midibox.org]] or edit this document by yourself if you are missing an important question, don't understand an answer or if you found a better solution in order to improve this "​living document"​. This page summarizes the most frequently asked questions concerning the projects found on the [[http://​www.uCApps.de]] website. It will be enhanced with every new interesting questions and will be modified with every new awareness. Feel free to ask in questions in the MIDIbox forum [[http://​forum.midibox.org]] or edit this document by yourself if you are missing an important question, don't understand an answer or if you found a better solution in order to improve this "​living document"​.
  
 ===== About the MIDIbox Hardware Platform ===== ===== About the MIDIbox Hardware Platform =====
-  ​- ==== What does µCApps mean? ====+  ​* ** What does µCApps mean?**
 µCApps stands for "​Microcontroller Applications",​ and is the name of Thorsten Klose (TK)'s MIDI DIY home page. µCApps stands for "​Microcontroller Applications",​ and is the name of Thorsten Klose (TK)'s MIDI DIY home page.
  
  
  
-  ​- ===== Which skills do I need to build a MIDIbox? ​=====+  ​* **Which skills do I need to build a MIDIbox? ​**
 There are a lot of people who built a MIDIbox without having any knowledge about electronics before starting. However, if you have never learned to solder, you could start on the [[soldering]] page. There are a lot of people who built a MIDIbox without having any knowledge about electronics before starting. However, if you have never learned to solder, you could start on the [[soldering]] page.
  
-  ​- ==== Can I control my sequencer with the MIDIbox? ​====+  ​* **Can I control my sequencer with the MIDIbox?**
  
  
Line 20: Line 22:
  
  
-  ​- ==== I posted a message in the Forum/I wrote TK an e-mail three hours ago, why I haven'​t received a reply yet? ====+  ​* **I posted a message in the Forum/I wrote TK an e-mail three hours ago, why I haven'​t received a reply yet? **
 TK doesn'​t reply every day, but keep cool - your message won't get lost. Note also that he is sometimes on vacation - in Germany they get 30 days and more a year :) TK doesn'​t reply every day, but keep cool - your message won't get lost. Note also that he is sometimes on vacation - in Germany they get 30 days and more a year :)
  
  
-  ​- ==== I have posted a detailed concept for a MIDI controller to TK but haven'​t got an extensive answer ​====+  ​* ** I have posted a detailed concept for a MIDI controller to TK but haven'​t got an extensive answer ​**
 Since TK receives such complex concepts for dedicated solutions nearly every week and noted that reading, understanding and answering consumes a lot of spare time, he decided not to read "​concept requests"​ which are longer than 20 lines of text anymore. Inspiration is always welcome, but he's not coding for your private wishes. Since TK receives such complex concepts for dedicated solutions nearly every week and noted that reading, understanding and answering consumes a lot of spare time, he decided not to read "​concept requests"​ which are longer than 20 lines of text anymore. Inspiration is always welcome, but he's not coding for your private wishes.
  
-  ​- ==== Will you make a synth based on (insert name of chip) for me? ====+  ​* ** Will you make a synth based on (insert name of chip) for me? **
 The first question has an obvious answer of: "​No"​. People (including TK, he's human too! really!) contribute to the MIDIbox project in their spare time. And as such, they want to do things which are interesting to them - not to someone else. Would you like to spend your leisure time doing slave work for someone else? :) The first question has an obvious answer of: "​No"​. People (including TK, he's human too! really!) contribute to the MIDIbox project in their spare time. And as such, they want to do things which are interesting to them - not to someone else. Would you like to spend your leisure time doing slave work for someone else? :)
  
-  ​- ==== How hard would it be to make a synth based on (insert name of chip)? ​====+  ​* ** How hard would it be to make a synth based on (insert name of chip)? ​**
 Generally, if you can't answer this one yourself - too hard for you. Remember - if you want to start a project based on the MIDIbox, you have to do it all on your own! There are some ready, digitally controlled tone generators out there, which you can buy with complete documentation - many of them are easy to work with, the companies give you all the documents you need, many chips have application notes and guides, the companies also have active communities and even support specialists which you can waste the time of ;) Try tinkering with those first, if you want to. When you're taking a chip out of some vintage computer, you're always dealing with zero support, zero documents, zero manuals, zero guides, zero application notes, and you don't even know if you fried your chip while unsoldering it :) So, if you've never hacked into a microchip - don't expect success at the first try. Generally, if you can't answer this one yourself - too hard for you. Remember - if you want to start a project based on the MIDIbox, you have to do it all on your own! There are some ready, digitally controlled tone generators out there, which you can buy with complete documentation - many of them are easy to work with, the companies give you all the documents you need, many chips have application notes and guides, the companies also have active communities and even support specialists which you can waste the time of ;) Try tinkering with those first, if you want to. When you're taking a chip out of some vintage computer, you're always dealing with zero support, zero documents, zero manuals, zero guides, zero application notes, and you don't even know if you fried your chip while unsoldering it :) So, if you've never hacked into a microchip - don't expect success at the first try.
  
 Having said that, if you feel you're up to the challenge, you're encouraged to tinker around :) Having said that, if you feel you're up to the challenge, you're encouraged to tinker around :)
  
 +===== Forum / Wiki / Web =====
  
 +  * **I can't log into the forum!**
  
  
 +Possibly you are using the M$ Internet Explorer which prevents YaBB from saving "​cookies"​ within a frame which contains content from another domain (midibox.org). In this case click on the "Forum (unframed)"​ link instead, or (better) change your internet browser - see also [[http://​www.heise.de/​security/​dienste/​browsercheck/​demos/​ie/​]]
  
 +  * **I can't log into the Wiki!**
 +
 +Make sure you have cookies turned on in your browser. ​ As of May 13, 2006, at least one browser will not log in to the Wiki:  Camino 1.0.1 for Mac.  (Please add to this list if you find a browser that won't log in to the Wiki)
  
 ===== Building Your MIDIbox ===== ===== Building Your MIDIbox =====
  
-  ​- ==== Where can I buy the components? ​====+  ​* ** Where can I buy the components? ​**
 See this page: [[where_to_order_components]] See this page: [[where_to_order_components]]
  
-  ​- ==== Which errors can I avoid? ​====+  ​* ** Which errors can I avoid? ​**
 Before you order the components, check the prices of different distributors. Mail order companies with a large variety are the most expensive, smaller companies are cheap and fast. Check also the electronic shops near by you, especially for the chassis (visual control). With luck, you will find special offers, i.e. some good pots or buttons. Before you order the components, check the prices of different distributors. Mail order companies with a large variety are the most expensive, smaller companies are cheap and fast. Check also the electronic shops near by you, especially for the chassis (visual control). With luck, you will find special offers, i.e. some good pots or buttons.
  
Line 54: Line 62:
 Microchip provides several package options for the PIC18F452, make sure that you are buying the PDIP version PIC18F452-I/​P or PIC18LF452-I/​P Microchip provides several package options for the PIC18F452, make sure that you are buying the PDIP version PIC18F452-I/​P or PIC18LF452-I/​P
  
-  ​- ==== Do I need to buy a LCD for running the MIDIbox? ​====+  ​* ** Do I need to buy a LCD for running the MIDIbox?**
 If this is your first MIDIbox take the answer to be yes. If this is your first MIDIbox take the answer to be yes.
  
Line 66: Line 74:
  
  
-  ​- ==== What's the difference between potentiometers,​ sliders, motor faders and encoders? ​====+  ​* **What's the difference between potentiometers,​ sliders, motor faders and encoders? ​**
  
 Potentiometers,​ aka pots, are also known as variable resistors. This name best describes the function of the part. As you turn the knob (or slide the fader) from minimum to maximum, you decrease the amount of resistance that the pot introduces to the circuit. This reduced resistance means that more electricity flows through the circuit. The amount of this voltage is an analog signal, so it can be measured by an AIN (analog in) module, which uses the ADC (Analog to Digital Converter) of the PIC in the Core Module, to convert the amount of voltage coming out of the pot, into a numerical value. Then, you can use that value to control part of your MIOS application,​ for example to send a MIDI CC that controls the filter cutoff when you turn the knob :)  Potentiometers,​ aka pots, are also known as variable resistors. This name best describes the function of the part. As you turn the knob (or slide the fader) from minimum to maximum, you decrease the amount of resistance that the pot introduces to the circuit. This reduced resistance means that more electricity flows through the circuit. The amount of this voltage is an analog signal, so it can be measured by an AIN (analog in) module, which uses the ADC (Analog to Digital Converter) of the PIC in the Core Module, to convert the amount of voltage coming out of the pot, into a numerical value. Then, you can use that value to control part of your MIOS application,​ for example to send a MIDI CC that controls the filter cutoff when you turn the knob :) 
Line 79: Line 87:
 Wikipedia has a [[http://​en.wikipedia.org/​wiki/​Rotary_encoder|decent article]] about rotary encoders. We use the '​relative'​ type. Wikipedia has a [[http://​en.wikipedia.org/​wiki/​Rotary_encoder|decent article]] about rotary encoders. We use the '​relative'​ type.
  
-  ​- ==== Should I buy linear or logarithmic pots/​faders? ​====+  ​* ** Should I buy linear or logarithmic pots/​faders? ​**
 Linear pots or faders are required for MIDIbox. Logarithmic are nice for analog mixers, but not for digital processing. In catalogs you will mostly find a "​lin."​ or "​log."​ index for every pot type - if not you should call your distributor and ask him before you buy the wrong pots. The pots itself are mostly marked with a letter. Linear pots or faders are required for MIDIbox. Logarithmic are nice for analog mixers, but not for digital processing. In catalogs you will mostly find a "​lin."​ or "​log."​ index for every pot type - if not you should call your distributor and ask him before you buy the wrong pots. The pots itself are mostly marked with a letter.
  
Line 89: Line 97:
  
  
-  ​- ==== Where can I find datasheets for the parts you used? ====+  ​* **Where can I find datasheets for the parts you used? **
  
-Try [[http://​www.google.com|Google]], type the part number and keyword "​datasheet"​. If you purchase parts from SmashTV'​s MIDIbox store the parts list includes Mouser part numbers. You search the mouser distributor site to find datasheets for all of those parts.+Have a look [[modules and parts|Here]] 
  
-  - ==== Do I have to make a Printed Circuit Board (PCB)? ​====+If you still do not find what you want, ry [[http://​www.google.com|Google]],​ type the part number and keyword "​datasheet"​. If you purchase parts from SmashTV'​s MIDIbox store the parts list includes Mouser part numbers. You search the mouser distributor site to find datasheets for all of those parts. 
 + 
 +  * **Do I have to make a Printed Circuit Board (PCB)?**
 PCBs are popular, because they give you something like a success guarantee that every connection between the components does exist and the MIDIBox will work with the first power-on. But creating a PCB may take a long time. However, dblevine wrote a nice walkthrough which could help if your are interested: [HowToCreatePCB]. PCBs are popular, because they give you something like a success guarantee that every connection between the components does exist and the MIDIBox will work with the first power-on. But creating a PCB may take a long time. However, dblevine wrote a nice walkthrough which could help if your are interested: [HowToCreatePCB].
 Here is another link to a tutorial: [[http://​www.piclist.com/​techref/​piclist/​biketut/​chapter3.html]] Here is another link to a tutorial: [[http://​www.piclist.com/​techref/​piclist/​biketut/​chapter3.html]]
Line 107: Line 117:
 Alternatively you can do it like me in the early days - I developed my circuits on vectorboard (sometimes also called breadboard or veroboard, in german "​Lochrasterplatine"​). These are boards with a lot of pre-made holes ordered in a matrix which save you from drilling holes for every component. My suggestion are vectorboards with pads around the holes (in german: "​Lochrasterplatine mit Loetpunkten"​) which simplifies the soldering. They cost around 2.50 Euros (...you see the difference? :-) Find an example for a vectorboard circuit under [[http://​www.ucapps.de/​midibox_ext/​lfo/​breadboard.jpg]] Alternatively you can do it like me in the early days - I developed my circuits on vectorboard (sometimes also called breadboard or veroboard, in german "​Lochrasterplatine"​). These are boards with a lot of pre-made holes ordered in a matrix which save you from drilling holes for every component. My suggestion are vectorboards with pads around the holes (in german: "​Lochrasterplatine mit Loetpunkten"​) which simplifies the soldering. They cost around 2.50 Euros (...you see the difference? :-) Find an example for a vectorboard circuit under [[http://​www.ucapps.de/​midibox_ext/​lfo/​breadboard.jpg]]
  
-  ​- ==== How Do I get the firmware into the PIC microcontroller? ​====+  ​* **How Do I get the firmware into the PIC microcontroller?​**
 You only need to burn the MIOS bootstrap loader into the PIC with a PIC programmer, thereafter MIOS itself and MIOS applications can be uploaded via MIDI. The details are explained at the [[http://​www.ucapps.de/​mios_bootstrap.html|MIOS Bootstrap Loader]] page. If you get the PIC from one of the suppliers of MidiBox boards, the MIOS bootstrap loader may already be burned into the PIC for you and you only need to load MIOS. You only need to burn the MIOS bootstrap loader into the PIC with a PIC programmer, thereafter MIOS itself and MIOS applications can be uploaded via MIDI. The details are explained at the [[http://​www.ucapps.de/​mios_bootstrap.html|MIOS Bootstrap Loader]] page. If you get the PIC from one of the suppliers of MidiBox boards, the MIOS bootstrap loader may already be burned into the PIC for you and you only need to load MIOS.
  
Line 114: Line 124:
  
  
-  ​- ==== How do I test my circuit? ​====+  ​* **How do I test my circuit? ​**
 Before you plug the ICs into the sockets, you should measure the voltage levels at the power pins (Vss and Vdd - Vss means: ground (0V), Vdd means: +5V, you will find the corresponding pins in the schematics). Disconnect the power, plug the ICs into the sockets, turn on the power. Now quickly measure the voltage between any ground and 5V pin again. If you don't see any change (already +5V) you've made the most critical step. Otherwise you have a shorted in your circuit and should disconnect the power as fast as possible to avoid damages. However, the PIC is hard to destroy... I know that from my experience ;-) Before you plug the ICs into the sockets, you should measure the voltage levels at the power pins (Vss and Vdd - Vss means: ground (0V), Vdd means: +5V, you will find the corresponding pins in the schematics). Disconnect the power, plug the ICs into the sockets, turn on the power. Now quickly measure the voltage between any ground and 5V pin again. If you don't see any change (already +5V) you've made the most critical step. Otherwise you have a shorted in your circuit and should disconnect the power as fast as possible to avoid damages. However, the PIC is hard to destroy... I know that from my experience ;-)
  
Line 120: Line 130:
 [[http://​www.ucapps.de/​howto_debug_midi.html|troubleshooting]] page. [[http://​www.ucapps.de/​howto_debug_midi.html|troubleshooting]] page.
  
-  ​- ==== How do I up/download a SysEx Dump to the MIDIbox? ​====+  ​* **How do I up/download a SysEx Dump to the MIDIbox?**
 MIOS and application code has to be uploaded with the [[http://​www.ucapps.de/​mios_bootstrap.html|MIOS Bootstrap Loader]] MIOS and application code has to be uploaded with the [[http://​www.ucapps.de/​mios_bootstrap.html|MIOS Bootstrap Loader]]
  
 If the application provides an additional configuration mechanism, then follow this link [[http://​www.ucapps.de/​howto_tools_mbsyx.html]] If the application provides an additional configuration mechanism, then follow this link [[http://​www.ucapps.de/​howto_tools_mbsyx.html]]
  
-  ​- ==== Can I use a switching power supply (known from PCs) for my MIDIbox? ​====+  ​* **Can I use a switching power supply (known from PCs) for my MIDIbox?**
 No, because switching power supplies require a minimal load before they start to operate correctly, and if the circuit is not drawing enough power, or only sometimes like the MIDIbox circuits, the power supply will just switch off and/or reset the circuit reiteratively. Possible Workaround: use of a permanent consumer load like the backlight of a LCD or a lamp. Permanent use of this solution has not been tried yet. Better and cheaper: just buy a good transformer (for about 1-2 EUR) or wall adapter (for about 3-5 EUR), and use a rectifier, a big capacitor, a little capacitor and a 7805 (for Motorfader Driver: 7812) to regulate the voltage. All these components (apart from the transformer or wall adapter) are already part of the [[http://​www.ucapps.de/​mbhp_core.html|MBHP_CORE]] module. No, because switching power supplies require a minimal load before they start to operate correctly, and if the circuit is not drawing enough power, or only sometimes like the MIDIbox circuits, the power supply will just switch off and/or reset the circuit reiteratively. Possible Workaround: use of a permanent consumer load like the backlight of a LCD or a lamp. Permanent use of this solution has not been tried yet. Better and cheaper: just buy a good transformer (for about 1-2 EUR) or wall adapter (for about 3-5 EUR), and use a rectifier, a big capacitor, a little capacitor and a 7805 (for Motorfader Driver: 7812) to regulate the voltage. All these components (apart from the transformer or wall adapter) are already part of the [[http://​www.ucapps.de/​mbhp_core.html|MBHP_CORE]] module.
  
 *Update:* TK: "I made very good experiences with a switching PSU from Pollin (available for 4.95EUR) on my MIDIbox NG - schematic can be found under [[http://​www.ucapps.de/​midibox_lc.html]] *Update:* TK: "I made very good experiences with a switching PSU from Pollin (available for 4.95EUR) on my MIDIbox NG - schematic can be found under [[http://​www.ucapps.de/​midibox_lc.html]]
  
-  * ==== What is the meaning of a device ID? ====+  * **What is the meaning of a device ID? **
 In common MIOS applications there are two different IDs: the MIOS ID which addresses the core for code down- and uploads, for debug commands, for remote messages - and the application specific ID which addresses the SysEx handler within the main program. In common MIOS applications there are two different IDs: the MIOS ID which addresses the core for code down- and uploads, for debug commands, for remote messages - and the application specific ID which addresses the SysEx handler within the main program.
  
Line 139: Line 149:
  
  
-  * ==== I've burned the bootstrap loader into the PIC, but my LCD doesn'​t show any message? ​====+  * **I've burned the bootstrap loader into the PIC, but my LCD doesn'​t show any message?**
 See [[lcd]] page for more information incl. troubleshooting of LCDs See [[lcd]] page for more information incl. troubleshooting of LCDs
- 
- 
- 
- 
- 
- 
-===== The PIC Microcontroller ===== 
- 
- 
-  - ==== Why are you using the PIC and not a more modern Microcontroller?​ ==== 
-TK: "I started my first MIDI projects in the 80's with a C64, later I worked with 8051 derivatives. Sometime along the way I decided to use a PIC controller because it *was* modern during many years - cheap, easy to program, almost non-destroyable,​ no SMD package, high availability for hobbyists. Although I have worked with a lot of 16 and 32 bit controllers in the meantime (job-related...),​ I stick to the lovely PICs in order to reduce my support effort for these sparetime projects. 
- 
- 
-  - ==== Do I need a deep knowledge of PIC microcontrollers in order to build your applications?​ ==== 
-No! The software is ready made, normaly you don't need to assemble code, you just only have to burn the application (.syx file) into the PIC via the MIOS Bootstrap Loader [[http://​www.ucapps.de/​mios_bootstrap.html]]. 
-If the application provides software/​hardware options, which are not part of the preassembled binary, you have to edit them in the main.asm file of the application package (therefore it always make sense to take a look into this file) and rebuild the application like described under [[http://​www.ucapps.de/​howto_tools_gpasm.html]] 
- 
-  - ==== Where can I learn more about PIC microcontrollers?​ ==== 
-Get all the interesting datasheets and application notes from the [[http://​www.microchip.com]] website and check the famous [[http://​www.piclist.com]] site. 
- 
- 
-  - ==== How do you develop your applications?​ ==== 
-Update: Please see the [[application_development|Application Development]] page for new info!\\ 
-\\ 
-TK's answer, edited to remove references to MPLab which is now obsolete:\\ 
-Mostly I develop under Linux. I'm using XEmacs [[http://​www.xemacs.org]] to edit the source, GPUtils to assemble the code and the MIOS bootstrap loader [[http://​www.ucapps.de/​mios_bootstrap.html]] to upload the application into the PIC.  
- 
-If I have to work under Windows (i.e. for making music with Logic [[http://​www.emagic.de]] and Reaktor [[http://​www.native-instruments.de]],​ I'm using the Windows version of Emacs [[http://​www.gnu.org/​software/​emacs/​windows/​ntemacs.html]] and GPUtils to assemble the code. 
-Find a snapshot of my development environment under Linux here: [[http://​www.ucapps.de/​images/​devl_env.gif]] 
- 
-It is also possible to develop on the mac, see [[how to use Xcode2 as IDE on a Mac]] 
- 
- 
-  - ==== Where can I download the source code? ==== 
-It's part of every application package: [[http://​www.ucapps.de/​mios_download.html]] 
- 
- 
-===== Buying and Selling MIDIbox stuff ===== 
-  - ==== Where can I buy your stuff? ==== 
-TK: "All the applications of [[http://​www.uCApps.de]] are non-profit projects which are not for sale. The purpose is to follow the spirit of Open Source in order to allow people to rebuild, modify, improve or just learn from my projects. Many features that can be found here are not my inventions, but suggested by users from all of the world. On this way *we* are creating what *we* have ever searched for and I myself can enhance my experience with electronics and MIDI (makes really fun! :)" 
- 
-  - ==== Would you build a MIDIbox for me if I give you some money? ==== 
-TK: "I neither have the time, nor the motivation to build MIDIboxes for other peoples. These are DIY projects, that means: Do-It-Yourself. Just ask a friend or an expert in your neighbourhood for help." 
- 
-stryd_one: "If you don't have time to solder a little, you sure won't have time to use a synth to make music."​ 
- 
-  - ==== As everything is free, am I allowed to bring the stuff to market? ==== 
-Only under special circumstances. See also [[http://​www.midibox.org/​forum/​index.php?​topic=5758.0|this forum article]]. 
- 
  
 ===== MIDIbox in Use. ===== ===== MIDIbox in Use. =====
  
-  ​- ==== How can I connect a MIDIbox to my MIDI device/​computer? ​====+  ​* **How can I connect a MIDIbox to my MIDI device/​computer?​**
 For a direct connection to a common MIDI device you need to use the MIDI In and Out of the CORE module. The optocoupler behind the MIDI In port decouples the circuit from the other device to avoid grounding loops. The MIDI device "at the other side" has normaly also an optocoupler at the MIDI In. For a direct connection to a common MIDI device you need to use the MIDI In and Out of the CORE module. The optocoupler behind the MIDI In port decouples the circuit from the other device to avoid grounding loops. The MIDI device "at the other side" has normaly also an optocoupler at the MIDI In.
  
 Such a "​common"​ MIDI connection via optocouplers is the best solution if the MIDIbox should be connected to a computer. This avoids jitter on the analog inputs, and buzzing noise on the audio outputs (relevant for MIDIbox SID and FM) Such a "​common"​ MIDI connection via optocouplers is the best solution if the MIDIbox should be connected to a computer. This avoids jitter on the analog inputs, and buzzing noise on the audio outputs (relevant for MIDIbox SID and FM)
  
-  ​- === PC MIDI interfaces: ​===+  ​* **PC MIDI interfaces:**
  
    * Mostly a MIDI Interface is integrated into the gameport of your motherboard or soundcard. You only need to buy a special adapter with MIDI plugs. Alternatively you can build an adapter yourself, see [[http://​www.tarigon.de/​tramp/​midibox.html]],​ [[http://​www.borg.com/​~jglatt/​hardware/​pc_intfc.htm]],​ [[http://​www.siliconchip.com.au/​cms/​A_101116/​article.html]]    * Mostly a MIDI Interface is integrated into the gameport of your motherboard or soundcard. You only need to buy a special adapter with MIDI plugs. Alternatively you can build an adapter yourself, see [[http://​www.tarigon.de/​tramp/​midibox.html]],​ [[http://​www.borg.com/​~jglatt/​hardware/​pc_intfc.htm]],​ [[http://​www.siliconchip.com.au/​cms/​A_101116/​article.html]]
Line 206: Line 167:
    * add other recommendations here...    * add other recommendations here...
  
-=== Alternative solutions: ​===+  * **Alternative solutions: ​**
  
    * you can plug the MIDIbox directly into the Gameport like shown here: [[http://​www.ucapps.de/​mbhp/​mbhp_midi_gameport.gif]]    * you can plug the MIDIbox directly into the Gameport like shown here: [[http://​www.ucapps.de/​mbhp/​mbhp_midi_gameport.gif]]
Line 212: Line 173:
  
 Both alternative solutions are not recommended for MIDIbox SID or FM due to the missing optocoupler. Both alternative solutions are not recommended for MIDIbox SID or FM due to the missing optocoupler.
-==== What is the meaning of this funny hexadecimal numbers? ​==== +  * ** What is the meaning of this funny hexadecimal numbers? ​**
  
 That are the MIDI messages which will be send over the MIDI interface. That are the MIDI messages which will be send over the MIDI interface.
Line 228: Line 188:
  
  
-  ​- ==== Which MIDI events can I send with the MIDIbox? ​====+  ​* **Which MIDI events can I send with the MIDIbox?**
 In fact MIOS can send any MIDI data, it only depends on the application which events can be configured without additional programming effort. E.g., with MIDIbox64/​MIDIbox64E/​MIDIO128 you are able to send Note/​Controller/​Aftertouch/​Pitch Bender/​Program Change Events by default. The events can be configured via the MIDI Learn function or via MIDI dumps. SysEx Streams, NRPN events, multiple events or whatever can be implemented via Meta Events. In fact MIOS can send any MIDI data, it only depends on the application which events can be configured without additional programming effort. E.g., with MIDIbox64/​MIDIbox64E/​MIDIO128 you are able to send Note/​Controller/​Aftertouch/​Pitch Bender/​Program Change Events by default. The events can be configured via the MIDI Learn function or via MIDI dumps. SysEx Streams, NRPN events, multiple events or whatever can be implemented via Meta Events.
  
  
-  ​- ==== How high is the latency of MIOS? ====+  ​* **How high is the latency of MIOS?**
 First of all it should be noted, that the latency of a common MIOS application is negligible compared to the latency of a computer. MIOS is a real-time system which runs on a dedicated microcontroller. The reaction time of the low-level drivers is deterministic,​ calculable and ensured. The design focus was on MIDI controllers,​ therefore the processor load caused by tasks running in background has to be measured against the initial latency caused by the MIDI transfer protocol. First of all it should be noted, that the latency of a common MIOS application is negligible compared to the latency of a computer. MIOS is a real-time system which runs on a dedicated microcontroller. The reaction time of the low-level drivers is deterministic,​ calculable and ensured. The design focus was on MIDI controllers,​ therefore the processor load caused by tasks running in background has to be measured against the initial latency caused by the MIDI transfer protocol.
  
Line 251: Line 211:
 MIOS MIDI Benchmark: ​ [[http://​www.midibox.org/​forum/​index.php?​topic=2342.0]] MIOS MIDI Benchmark: ​ [[http://​www.midibox.org/​forum/​index.php?​topic=2342.0]]
  
-  * ==== What the hell are Double-Note-Events? ​====+  * **What the hell are Double-Note-Events?​**
 Programs like Cakewalk, Cubase, Logic, ... support MIDI remote, which allows the user to control the software with his MIDI keyboard or something similar. Normaly MIDI remote works in a manner, that one note has to be played to enable MIDI remote (->"​Shift"​ key), and another note at the same time to trigger a function like Play, Record, Pause, Forward, Rewind and much more. Programs like Cakewalk, Cubase, Logic, ... support MIDI remote, which allows the user to control the software with his MIDI keyboard or something similar. Normaly MIDI remote works in a manner, that one note has to be played to enable MIDI remote (->"​Shift"​ key), and another note at the same time to trigger a function like Play, Record, Pause, Forward, Rewind and much more.
  
Line 257: Line 217:
  
 These codes have to be defined in your MIDIbox initialization file, see also [[http://​www.ucapps.de/​midibox/​mk_syx.zip]] These codes have to be defined in your MIDIbox initialization file, see also [[http://​www.ucapps.de/​midibox/​mk_syx.zip]]
- 
- 
- 
- 
- 
  
 ===== Customize your MIDIbox ===== ===== Customize your MIDIbox =====
Line 268: Line 223:
  
  
-  * ==== How many pots/ faders/ buttons/ encoders/ screens/ LED's/ etc is the maximum that I can connect? ​====+  * **How many pots/ faders/ buttons/ encoders/ screens/ LED's/ etc is the maximum that I can connect? ​**
  
 There are two parts to this answer. The first relates to the standard hardware, the second is related to the implementation of that hardware. There are two parts to this answer. The first relates to the standard hardware, the second is related to the implementation of that hardware.
Line 310: Line 265:
   * IIC buss can be used to connect other IC's to the Core   * IIC buss can be used to connect other IC's to the Core
  
- +  * ** Can I use PWM to control individual LED brightness ?**
- +
- +
- +
-  - ==== Can I use PWM to control individual LED brightness ?====+
 The short answer is that using PWM on DOUT to do individual brightness control on a large number of LEDs is not possible as it would overload the Core. The short answer is that using PWM on DOUT to do individual brightness control on a large number of LEDs is not possible as it would overload the Core.
  
Line 326: Line 277:
  
  
-  ​- ==== Can I connect other parts aside from pots to the analog inputs? ​====+  ​* **Can I connect other parts aside from pots to the analog inputs?**
 Yes, you can connect anything which delivers a voltage between 0 and +5V like additional buttons, CV outputs of antique synthesizer equipment, or just external effect units like LFOs, see the [[http://​www.ucapps.de/​midibox_ext.html|MIDIBox Extensions]] page. Yes, you can connect anything which delivers a voltage between 0 and +5V like additional buttons, CV outputs of antique synthesizer equipment, or just external effect units like LFOs, see the [[http://​www.ucapps.de/​midibox_ext.html|MIDIBox Extensions]] page.
  
Line 332: Line 283:
  
  
-  ​- ==== How do I add a MIDI Thru Port? ====+  ​* **How do I add a MIDI Thru Port?**
 Find the circuit under [[http://​www.ucapps.de/​midibox/​midi_thru.gif]] - the 74HC00 is used to amplify the received MIDI signal. The MIDI Thru Port will not work without this amplifier. Find the circuit under [[http://​www.ucapps.de/​midibox/​midi_thru.gif]] - the 74HC00 is used to amplify the received MIDI signal. The MIDI Thru Port will not work without this amplifier.
  
Line 338: Line 289:
  
  
-  ​- ==== Can I power a PIC from the MIDI line without additional power supply? ​====+  ​* **Can I power a PIC from the MIDI line without additional power supply? ​**
 Thats very problematic and mostly doesn'​t work properly - the MIDI specification doesn'​t take this into account. The MIDI line is specified as current loop, and the maximum voltage level is not defined. Most interfaces deliver a logic signal with TTL level between 0V and 5V, a 7805 regulator between MIDI Out and Thats very problematic and mostly doesn'​t work properly - the MIDI specification doesn'​t take this into account. The MIDI line is specified as current loop, and the maximum voltage level is not defined. Most interfaces deliver a logic signal with TTL level between 0V and 5V, a 7805 regulator between MIDI Out and
 the PIC power pins would reduce the voltage to <4V, so it should not be used in this case. Instead the ground pin and one of the outer pins which always supplies 5V (has to be checked with a measuring instrument) should be connected directly to J2 (behind the PIC power pins would reduce the voltage to <4V, so it should not be used in this case. Instead the ground pin and one of the outer pins which always supplies 5V (has to be checked with a measuring instrument) should be connected directly to J2 (behind
Line 349: Line 300:
  
  
 +===== The PIC Microcontroller =====
  
  
 +  * **Why are you using the PIC and not a more modern Microcontroller?​**
 +TK: "I started my first MIDI projects in the 80's with a C64, later I worked with 8051 derivatives. Sometime along the way I decided to use a PIC controller because it *was* modern during many years - cheap, easy to program, almost non-destroyable,​ no SMD package, high availability for hobbyists. Although I have worked with a lot of 16 and 32 bit controllers in the meantime (job-related...),​ I stick to the lovely PICs in order to reduce my support effort for these sparetime projects.
  
  
 +  * **Do I need a deep knowledge of PIC microcontrollers in order to build your applications?​ **
 +No! The software is ready made, normaly you don't need to assemble code, you just only have to burn the application (.syx file) into the PIC via the MIOS Bootstrap Loader [[http://​www.ucapps.de/​mios_bootstrap.html]].
 +If the application provides software/​hardware options, which are not part of the preassembled binary, you have to edit them in the main.asm file of the application package (therefore it always make sense to take a look into this file) and rebuild the application like described under [[http://​www.ucapps.de/​howto_tools_gpasm.html]]
  
 +  * **Where can I learn more about PIC microcontrollers?​**
 +Get all the interesting datasheets and application notes from the [[http://​www.microchip.com]] website and check the famous [[http://​www.piclist.com]] site.
  
  
-===== Forum Wiki Web =====+  * **How do you develop your applications?​ ** 
 +Update: Please see the [[application_development|Application Development]] page for new info!\\ 
 +\\ 
 +TK's answer, edited to remove references to MPLab which is now obsolete:​\\ 
 +Mostly I develop under Linux. I'm using XEmacs [[http://www.xemacs.org]] to edit the source, GPUtils to assemble the code and the MIOS bootstrap loader [[http://​www.ucapps.de/​mios_bootstrap.html]] to upload the application into the PIC. 
  
-  ​- ==== I can'​t ​log into the forum ====+If I have to work under Windows (i.e. for making music with Logic [[http://​www.emagic.de]] and Reaktor [[http://​www.native-instruments.de]],​ I'm using the Windows version of Emacs [[http://​www.gnu.org/​software/​emacs/​windows/​ntemacs.html]] and GPUtils to assemble the code. 
 +Find a snapshot of my development environment under Linux here: [[http://​www.ucapps.de/​images/​devl_env.gif]] 
 + 
 +It is also possible to develop on the mac, see [[how to use Xcode2 as IDE on a Mac]] 
 + 
 + 
 +  * **Where can I download the source code?** 
 +It's part of every application package: [[http://​www.ucapps.de/​mios_download.html]] 
 + 
 + 
 +===== Buying and Selling MIDIbox stuff ===== 
 +  * **Where can buy your stuff?** 
 +TK: "All the applications of [[http://​www.uCApps.de]] are non-profit projects which are not for sale. The purpose is to follow the spirit of Open Source in order to allow people to rebuild, modify, improve or just learn from my projects. Many features that can be found here are not my inventions, but suggested by users from all of the world. On this way *we* are creating what *we* have ever searched for and I myself can enhance my experience with electronics and MIDI (makes really fun! :)" 
 + 
 +  * **Would you build a MIDIbox for me if I give you some money?** 
 +TK: "I neither have the time, nor the motivation to build MIDIboxes for other peoples. These are DIY projects, that means: Do-It-Yourself. Just ask a friend or an expert in your neighbourhood for help."​ 
 + 
 +stryd_one: "If you don'​t ​have time to solder a little, you sure won't have time to use a synth to make music."​ 
 + 
 +  * **As everything is free, am I allowed to bring the stuff to market?** 
 +Only under special circumstances. See also [[http://​www.midibox.org/​forum/​index.php?​topic=5758.0|this forum article]].
  
  
-Possibly you are using the M$ Internet Explorer which prevents YaBB from saving "​cookies"​ within a frame which contains content from another domain (midibox.org). In this case click on the "Forum (unframed)"​ link instead, or (better) change your internet browser - see also [[http://​www.heise.de/​security/​dienste/​browsercheck/​demos/​ie/​]] 
  
-  - ==== I can't log into the Wiki ==== 
  
-Make sure you have cookies turned on in your browser. ​ As of May 13, 2006, at least one browser will not log in to the Wiki:  Camino 1.0.1 for Mac.  (Please add to this list if you find a browser that won't log in to the Wiki) 
frequently_asked_questions_faq.1465568735.txt.gz · Last modified: 2016/06/10 14:25 by psykhaze