-
Posts
85 -
Joined
-
Last visited
Never
Content Type
Profiles
Forums
Blogs
Gallery
Everything posted by Synapsys
-
Hi, Does anyone know the purpose of resistors R9 and R10 on the core module? They are pullups on RC3 and RD1 on the 18F MCU. These pins can be setup to use internal pullups on the chip so I don't see the need for these resistors. Regards, Synapsys
-
Hi edwardus, There is another thing to consider here. Is the application that runs on the PC basically a MIDI application? If so it may not be possible to use a standard RS232 com port even if you had an RS232 to MIDI converter unless you have a driver that is deisgned for this purpose. Does the laptop have a USB port? If so you could build the USB module which can be used stand-alone. Consider that the USB module is not really for a beginner at hardware construction due to the surface mounted chip. Does the laptop have a PCMCIA slot? If so you can purchase a relatively inexpensive MIDI card for that. Just some thoughts :)
-
Hi edwardus, There is another thing to consider here. Is the application that runs on the PC basically a MIDI application? If so it may not be possible to use a standard RS232 com port even if you had an RS232 to MIDI converter unless you have a driver that is deisgned for this purpose. Does the laptop have a USB port? If so you could build the USB module which can be used stand-alone. Consider that the USB module is not really for a beginner at hardware construction due to the surface mounted chip. Does the laptop have a PCMCIA slot? If so you can purchase a relatively inexpensive MIDI card for that. Just some thoughts :)
-
I would like to suggest that there are numerous sites on the Internet that have very useful tutorials on PIC assembly language programming. This would be the best way to start learning the PIC assembly language. Once the basics of PIC assembly language are understood examination of the source code for the current version of MIOS is most illuminating since Thorsten is without question an experienced and quality embedded systems designer. The latest version of MIOS source code is available on Source Forge.
-
I would like to suggest that there are numerous sites on the Internet that have very useful tutorials on PIC assembly language programming. This would be the best way to start learning the PIC assembly language. Once the basics of PIC assembly language are understood examination of the source code for the current version of MIOS is most illuminating since Thorsten is without question an experienced and quality embedded systems designer. The latest version of MIOS source code is available on Source Forge.
-
Where 2 get the Fortron/Source FSA55P31 in the UK?
Synapsys replied to MikeHunt79's topic in Parts Questions
Hi, I do not have any info on where to get the unit you specified but I would like to suggest that you exercise caution in using a PC PSU for the MIDIbox. Most (all?) PC PSU are switching type supplies and do not regulate well until a minimum load is placed on them. This minimum load may be as much as 2 or 3 amps. The MIDIbox does not draw anywhere near that much current so the PSU output voltages may be significantly higher than expected (i.e. the 5 volt output may be as much as 7 volts). This may damage or destroy some of your hardware. Just a word of caution :) -
Where 2 get the Fortron/Source FSA55P31 in the UK?
Synapsys replied to MikeHunt79's topic in Parts Questions
Hi, I do not have any info on where to get the unit you specified but I would like to suggest that you exercise caution in using a PC PSU for the MIDIbox. Most (all?) PC PSU are switching type supplies and do not regulate well until a minimum load is placed on them. This minimum load may be as much as 2 or 3 amps. The MIDIbox does not draw anywhere near that much current so the PSU output voltages may be significantly higher than expected (i.e. the 5 volt output may be as much as 7 volts). This may damage or destroy some of your hardware. Just a word of caution :) -
Hi SmashTV, Thanks for the info. This makes more sense to me. I have looked at the specs for the 4051 (Fairchild) and the propagation delay from channel change to output is on the order of 1.2us with a signal in to signal out delay max at 55 ns. This means that for eight faders a delay of about 10 usec might be expected. I don't know if a 10 us delay is so long as to cause slider overshoot. However, I have not done any experimenting with this yet so I am not sure. If the 1.2 usec per channel switch is too long than an alternative may be to use two 4051 chips connected to two AIN pins and alternate which one is begin converted and switching the other during the conversion time. This would effectively eliminate all the delays. I am currently tied up with another project but when I get more free time I will investigate this to further quantize these delays in terms of MISO scan resolution for the servos. Regards, Synapsys :)
-
Hi SmashTV, Thanks for the info. This makes more sense to me. I have looked at the specs for the 4051 (Fairchild) and the propagation delay from channel change to output is on the order of 1.2us with a signal in to signal out delay max at 55 ns. This means that for eight faders a delay of about 10 usec might be expected. I don't know if a 10 us delay is so long as to cause slider overshoot. However, I have not done any experimenting with this yet so I am not sure. If the 1.2 usec per channel switch is too long than an alternative may be to use two 4051 chips connected to two AIN pins and alternate which one is begin converted and switching the other during the conversion time. This would effectively eliminate all the delays. I am currently tied up with another project but when I get more free time I will investigate this to further quantize these delays in terms of MISO scan resolution for the servos. Regards, Synapsys :)
-
Hi SmashTV, Thanks for your response but I do not agree with the one at a time theory here. The PIC 18f (like all MCUs) can perform an A/D conversion on only one of the 8 analog input pins at a time anyway (i.e. the ADCON0 register bits CHS2:CHS0 select which of the 8 inputs the conversion is done on). I do realize that using multiplexed analog adds some overhead in terms of switching channels. However I do not know if the switching time vs. changing the ADCON0 channel select is significant here. There is no doubt that TK's design is quite elegant and certainly works well but since Microchip chose to assign the SPI slave select bit (*SS on pin 7) to one of the analog input pins it is not possible to use the SPI bus and process 8 fader servos on a slave core. This question was in no way intended to challenge TK's design. It was intended purely as a means to understand fully how MIOS and MBHP work together. Regards, Synapsys
-
Hi SmashTV, Thanks for your response but I do not agree with the one at a time theory here. The PIC 18f (like all MCUs) can perform an A/D conversion on only one of the 8 analog input pins at a time anyway (i.e. the ADCON0 register bits CHS2:CHS0 select which of the 8 inputs the conversion is done on). I do realize that using multiplexed analog adds some overhead in terms of switching channels. However I do not know if the switching time vs. changing the ADCON0 channel select is significant here. There is no doubt that TK's design is quite elegant and certainly works well but since Microchip chose to assign the SPI slave select bit (*SS on pin 7) to one of the analog input pins it is not possible to use the SPI bus and process 8 fader servos on a slave core. This question was in no way intended to challenge TK's design. It was intended purely as a means to understand fully how MIOS and MBHP work together. Regards, Synapsys
-
I have read here on the forum that the motor fader servo tracks cannot be multiplexed like pots are. Can someone explain to me why this is? Thanks :)
-
I have read here on the forum that the motor fader servo tracks cannot be multiplexed like pots are. Can someone explain to me why this is? Thanks :)
-
Thanks TK :) I just ordered some touchpads from Votis. They are on holiday so I may not get then for a few weeks but I will begin working on the code design. Regards, Synapsys
-
Yes, It appears several people are working on this type of interface. So, how about a status update. I do not want to start a project if someone is already close to a solution. I really do not need this interface but thought it would be a good challenge to advance my knowledge of PIC assembly code. Thanks :)
-
By the way der Warst could you post a link to the Votis site? If I could get a pad to test with I might be interested in creating the MIOS interface. I would post it for others to use. It should be possible to write a MIOS driver to process the hardware interface and provide some new MIOS user routines to handle the data (just like a MIDI event). Then, if two I/O pins are available on the MIDIbox main core, a new core module would not be required. Thanks :)
-
Hi, The pad probably sends PS/2 mouse format. Here is a link describing that format. http://panda.cs.ndsu.nodak.edu/%7Eachapwes/PICmicro/mouse/mouse.html This site has all the information including links to PIC assembly code to interface to a PS/2 mouse. You could build a core module and write a MIOS application to monitor the pad using I/O pins and decode the PS/2 mouse format. Then the application could send out MIDI as desired. This core could be linked to your existing MIDIbox core. Not a trivial project but very doable I think. :)
-
Hi, Although I am certainly no expert on the LC application code I have looked through the code. I can see no place where the state of the shift button is saved as such. You could call the "MIOS_DIN_PinGet" function with the SRIO pin number of the shift button in WREG. This function will return the state of the pin (and thus the shift button state) in WREG and MIOS_PARAMETER. Hope this is useful :)
-
Thanks Thorsten, I did not have the updated version which explains why I could not find the digit configuration data, it did not exist in version 4. :-[ Regards, Synapsys
-
Hi Thorsten, Thanks for the quick reply. I am building a MIDIbox LC. If you could point me toward the code or configuration data I will figure out what I need to do. Regards, Synapsys
-
Hi, Does anyone know if the LED digit segment assignments (dot, a, b..g) to the DOUT register is configurable? I am laying out a PCB for the seven segment digits and the layout would be much easier if the segments did not have to be in the same order as in the original. I have searched the source code but have not been able to find where the seven segment digits are processed. If someone could point me to the code that processes the LED digits I would appreciate it. Thanks :)
-
Hi TK, Thanks for the quick reply. :) I thought it worked that way but wanted to be sure before I make new PCBs. I am distributing the shift register chips across several PCBs to eliminate the bulk of the cables. There will be no cables for the buttons, encoders and LEDs only the shift register clock, load and data signals will be cables. Once again thanks for your answer. Regards, Synapsys
-
Hi, I would like to ask for some clarification on the number of DOUTx4 boards needed for an LC unit. Here is my case. I do not want to have the LED rings or meters but I do want to have the seven segment displays (digits). I have looked at the srio code and it appears the code expects 16 serial registers with registers 0x08-0x0B connected to the led rings and 0x0C-0x0F connected to the digits displays. Since I don't have the rings are the digits connected to registers 0x08-0x0B and registers 0x0C-0x0F not required to exist? Any help here would be appreciated, thanks. :)
-
Hi, I use resistor packs all the time. For DIN I use the bussed type that have a common connection to all resistors in the pack since the resistors are used as pull-ups. For DOUT I use the isolated type where each resistor in the pack is separate. I find that using resistor packs makes for a more compact PCB since the pins are on 2.54mm centers (the same as an IC). As far as cost, an 8 resistor pack is around $0.32 USD. Since the 74HC165 chips on the DIN have four inputs on each side of the chip I use a five-pin resistor pack (4 resistors) one on each side of the chip. The 74HC595 chips on the DOUT have seven output pins on one side of the chip and one output on pin 15. For these I use two 8 pin packs (4 resistors each) on one side of the chip since routing pin 15 across is very easy. :)