-
Posts
15,246 -
Joined
Content Type
Profiles
Forums
Blogs
Gallery
Everything posted by TK.
-
The new version comes with some small improvements which will be used by upcoming applications in the next week/month/year. Although you will not notice a big difference compared to MIOS V1.1 so long as the applications don't use these features, just get the new release to be up-to-date MIOS_LCD_TypeSet offers additional parameters the chip select lines of KS0108 or HD61202 based displays can now be inverted additional GLCD driver for T6963c based displays. The performance of this display is very poor, it is not recommented for applications which have to react in realtime like the MIDIbox LC or any other "MIDI receiver" the enable pins of character LCDs can now be changed during runtime. In this way it is possible to connect multiple LCDs to one core module, the maximum number of LCDs which can be handled by a application is now only limited by the number of free pins fast write to BankStick and EEPROM w/o verify page write to BankStick (64 bytes at once) dynamic priority sampling for muxed pots (improved latency, known from MIDIbox Plus and MIDIbox64) Additional sources: Schematic for GLCD type 0 (KS0108 and HD61202 or compatible) http://www.ucapps.de/mbhp/mbhp_glcd0.pdf Schematic for GLCD type 1 (T6963C or compatible --- not recommented) http://www.ucapps.de/mbhp/mbhp_glcd1.pdf The first application which will get use of the new MIOS V1.2 functions is the SID (the BankStick page write will solve the SysEx buffer overrun issue) Best Regards, Thorsten.
-
zu den Encodern: unter Concepts->MBHP->DINX4 gibt es einen Schaltplan speziell zum Alps STEC16B03 , den es bei Schuricht und RS zu kaufen gibt. Die Anschlussbelegung unterscheidet sich von herkoemmlichen Encodern, wenn man zwei Pins vertauscht, wird in der Tat langsamer inkrementiert. Ansonsten waere es natuerlich auch moeglich, den sog. "progressive mode" auszunutzen, den man mit MIOS_ENC_SpeedSet fuer jeden einzelnen Encoder einstellen kann. In diesem Modus inkrementiert der Encoder in groesseren Schritten, je schneller man ihn dreht. Bei der MB16E kann man zwischen Fast/Normal/Slow Modus via Knopfdruck umschalten, vielleicht sollte ich das bei in die MBLC Applikation auch einbauen. Allerdings wird man mit den Encodern niemals das Pot-Feeling erreichen, deshalb verwende ich bspw. auch weiterhin meine MBPlus oder MB64 wenn ich an Synth-Parameter n herumschraube... Gruss, Thorsten,
-
zu den Encodern: unter Concepts->MBHP->DINX4 gibt es einen Schaltplan speziell zum Alps STEC16B03 , den es bei Schuricht und RS zu kaufen gibt. Die Anschlussbelegung unterscheidet sich von herkoemmlichen Encodern, wenn man zwei Pins vertauscht, wird in der Tat langsamer inkrementiert. Ansonsten waere es natuerlich auch moeglich, den sog. "progressive mode" auszunutzen, den man mit MIOS_ENC_SpeedSet fuer jeden einzelnen Encoder einstellen kann. In diesem Modus inkrementiert der Encoder in groesseren Schritten, je schneller man ihn dreht. Bei der MB16E kann man zwischen Fast/Normal/Slow Modus via Knopfdruck umschalten, vielleicht sollte ich das bei in die MBLC Applikation auch einbauen. Allerdings wird man mit den Encodern niemals das Pot-Feeling erreichen, deshalb verwende ich bspw. auch weiterhin meine MBPlus oder MB64 wenn ich an Synth-Parameter n herumschraube... Gruss, Thorsten,
-
You are a fool! --- end of discussion from my side --- Best Regards, Thorsten.
-
You are a fool! --- end of discussion from my side --- Best Regards, Thorsten.
-
Viel Spass beim Beta-Testen! :) Ja, die LC-User haben es nicht leicht. Aber mit einem Firmware-Update koennte Mackie eigentlich auch ihre eigenen Controller wesentlich flexibler ausstatten. Warum die das nicht machen, weiss der Geier... yep, zum Beispiel. Aber auch der Parallelbetrieb macht Sinn. Ich kenne Cubase nicht so genau, aber unter Logic koennte man bspw. ein Environment basteln, mit dem man den GPC Modus fuer seine Lieblings-Plugins und externen Synthesizer/Fx's verwenden koennte, und den (wesentlich dynamischeren) LC modus fuer den Reset. Der Vorteil: auf diese Weise kann man sich die Controller so sortieren, wie man sie gerade braucht. Mit der Moeglichkeit, Gruppen und Menues zu erstellen, wird der GPC modus dann sogar richtig ergonomisch bedienbar. :) Gruss, Thorsten. P.S.: die Idee zum GPC Modus stammt uebrigens von Axel!
-
Viel Spass beim Beta-Testen! :) Ja, die LC-User haben es nicht leicht. Aber mit einem Firmware-Update koennte Mackie eigentlich auch ihre eigenen Controller wesentlich flexibler ausstatten. Warum die das nicht machen, weiss der Geier... yep, zum Beispiel. Aber auch der Parallelbetrieb macht Sinn. Ich kenne Cubase nicht so genau, aber unter Logic koennte man bspw. ein Environment basteln, mit dem man den GPC Modus fuer seine Lieblings-Plugins und externen Synthesizer/Fx's verwenden koennte, und den (wesentlich dynamischeren) LC modus fuer den Reset. Der Vorteil: auf diese Weise kann man sich die Controller so sortieren, wie man sie gerade braucht. Mit der Moeglichkeit, Gruppen und Menues zu erstellen, wird der GPC modus dann sogar richtig ergonomisch bedienbar. :) Gruss, Thorsten. P.S.: die Idee zum GPC Modus stammt uebrigens von Axel!
-
1 x MBHP_CORE + Power supply Partlist: http://www.ucapps.de/mbhp/mbhp_core_orderlist.txt Price of components: ca. 27.5 EUR 2 x MBHP_AINX4 Partlist: http://www.ucapps.de/mbhp/mbhp_ainx4_orderlist.txt Price of components: ca. 2 x 3.5 EUR = 7 EUR 1 x DINX4 Partlist: http://www.ucapps.de/mbhp/mbhp_dinx4_orderlist.txt Price of components: ca. 5 EUR 1 x LCD Displaytech 2x16, Part number LCD 162C LED (2x16 with backlight) Price of component: ca. 13 EUR BankStick 24LC256-I/P, Farnell Part number 3001696 Price of components: ca. 5.3 EUR 24 pots with knobs Partlist: see http://www.ucapps.de/mbhp/mbhp_dinx4_orderlist.txt Price of components: ca. 24 x .5 EUR = 12 EUR + 24 x .73 EUR = 17.5 EUR 32 buttons e.g. TASTER 3301B (caps: unknown) Price of components: 32 x 0.1 EUR = 3.2 EUR 9 sliders e.g. SCHIEBEREGLER LIN 10 K from conrad, Part #441449 - 14 Price of components: ca. 9 x 1.9 EUR = 17.1 EUR Vectorboards instead of PCBs 2 x H25PR200 Price of components: ca. 2 x 2.0 EUR = 4 EUR Case from the DIY market Price: ca. 10 EUR or more Frontpanel Selfmade: 0 EUR High quality from Schaeffer Apparatebau: ca. 50 EUR makes: ca. 122 EUR, or ca. 171 EUR with professional panel with premade PCBs: ca. +20 EUR + a lot of DIY fun :) + the possibility to use it as sequencer, as SID synth CS or whatever When you buy the components in the US, it will possibly be cheaper Best Regards, Thorsten.
-
1 x MBHP_CORE + Power supply Partlist: http://www.ucapps.de/mbhp/mbhp_core_orderlist.txt Price of components: ca. 27.5 EUR 2 x MBHP_AINX4 Partlist: http://www.ucapps.de/mbhp/mbhp_ainx4_orderlist.txt Price of components: ca. 2 x 3.5 EUR = 7 EUR 1 x DINX4 Partlist: http://www.ucapps.de/mbhp/mbhp_dinx4_orderlist.txt Price of components: ca. 5 EUR 1 x LCD Displaytech 2x16, Part number LCD 162C LED (2x16 with backlight) Price of component: ca. 13 EUR BankStick 24LC256-I/P, Farnell Part number 3001696 Price of components: ca. 5.3 EUR 24 pots with knobs Partlist: see http://www.ucapps.de/mbhp/mbhp_dinx4_orderlist.txt Price of components: ca. 24 x .5 EUR = 12 EUR + 24 x .73 EUR = 17.5 EUR 32 buttons e.g. TASTER 3301B (caps: unknown) Price of components: 32 x 0.1 EUR = 3.2 EUR 9 sliders e.g. SCHIEBEREGLER LIN 10 K from conrad, Part #441449 - 14 Price of components: ca. 9 x 1.9 EUR = 17.1 EUR Vectorboards instead of PCBs 2 x H25PR200 Price of components: ca. 2 x 2.0 EUR = 4 EUR Case from the DIY market Price: ca. 10 EUR or more Frontpanel Selfmade: 0 EUR High quality from Schaeffer Apparatebau: ca. 50 EUR makes: ca. 122 EUR, or ca. 171 EUR with professional panel with premade PCBs: ca. +20 EUR + a lot of DIY fun :) + the possibility to use it as sequencer, as SID synth CS or whatever When you buy the components in the US, it will possibly be cheaper Best Regards, Thorsten.
-
Hallo Sly, das problem ist, dass die Logic Control ein propritaeres Format fuer relative Controller verwendet. Doch - rein zufaellig - habe ich letztes Wochenende die MBLC Applikation um einen simplen "General Purpose Controller" modus erweitert. Er ist noch lange nicht perfekt, aber spielt bspw. bestens mit Reaktor zusammen. Hier habe ich mal eine Beta Release abgelegt: http://www.ucapps.de/mios/midibox_lc_v1_2pre1.zip Konfiguration: in mios_tables.inc koennen bis zu 128 MIDI events fuer die V-Pots eingetragen werden in lc_gpc_lables.inc koennen diese Events benannt werden (6 Buchstaben pro Eintrag) in lc_io_tables.inc gibt es vier neue Special Function Buttons zum selektieren des GPC Modus - (Shift, Hold oder Switch-Buttons) Bedienung: nachdem der GPC modus aktiviert wurde, kann man mit dem Jogwheel ein V-Pot Fenster "8 aus 128" anwaehlen. Die LED-Ringe sowie die LCD-Meldungen werden automatisch aktualisiert, mit den entsprechenden V-Pots kann man dann die Controller senden. MIDI-Feedback wird ebenfalls unterstuetzt. Man kann jederzeit zwischen LC Emulation und GPC modus hin- und herschalten, dabei gehen keine Informationen verloren. Geplant: Abspeichern der 128 Werte im internen EEPROM, Snapshot-Funktion, Gruppieren von V-Pots, Anwahl der Gruppen ueber ein Menue, und weitere spielereien ;-) Gruss, Thorsten.
-
Hallo Sly, das problem ist, dass die Logic Control ein propritaeres Format fuer relative Controller verwendet. Doch - rein zufaellig - habe ich letztes Wochenende die MBLC Applikation um einen simplen "General Purpose Controller" modus erweitert. Er ist noch lange nicht perfekt, aber spielt bspw. bestens mit Reaktor zusammen. Hier habe ich mal eine Beta Release abgelegt: http://www.ucapps.de/mios/midibox_lc_v1_2pre1.zip Konfiguration: in mios_tables.inc koennen bis zu 128 MIDI events fuer die V-Pots eingetragen werden in lc_gpc_lables.inc koennen diese Events benannt werden (6 Buchstaben pro Eintrag) in lc_io_tables.inc gibt es vier neue Special Function Buttons zum selektieren des GPC Modus - (Shift, Hold oder Switch-Buttons) Bedienung: nachdem der GPC modus aktiviert wurde, kann man mit dem Jogwheel ein V-Pot Fenster "8 aus 128" anwaehlen. Die LED-Ringe sowie die LCD-Meldungen werden automatisch aktualisiert, mit den entsprechenden V-Pots kann man dann die Controller senden. MIDI-Feedback wird ebenfalls unterstuetzt. Man kann jederzeit zwischen LC Emulation und GPC modus hin- und herschalten, dabei gehen keine Informationen verloren. Geplant: Abspeichern der 128 Werte im internen EEPROM, Snapshot-Funktion, Gruppieren von V-Pots, Anwahl der Gruppen ueber ein Menue, und weitere spielereien ;-) Gruss, Thorsten.
-
Hi Dan, yes, this should work :) For assembling you have to create a new project and to insert the "main.asm" file into the source list (nothing else). Alternatively you could also start mpasmwin (the assembler) directly. It can be found somewhere under /Program Files/MPLAB IDE/MCHIP_Tools I prefer this way, because it simplifies the update procedure: push the assembler button, run the convert script, upload via MIDI-Ox. Best Regards, Thorsten.
-
Hi Michael, you could use the ain64_din128_dout128_v1_1 application as inspiration. It allows to connect up to 128 buttons, 128 LEDs and 64 pots. Just remove the pot handler if you don't need it. In USER_Init the number of pots have to be set to 0. The MIDI events for buttons and LEDs are defined in mios_tables.inc Best Regards, Thorsten.
-
Hi Michael, you could use the ain64_din128_dout128_v1_1 application as inspiration. It allows to connect up to 128 buttons, 128 LEDs and 64 pots. Just remove the pot handler if you don't need it. In USER_Init the number of pots have to be set to 0. The MIDI events for buttons and LEDs are defined in mios_tables.inc Best Regards, Thorsten.
-
No, this isn't correct. You can use different impedances (resistor values) for every particular AIN pin Best Regards, Thorsten.
-
No, this isn't correct. You can use different impedances (resistor values) for every particular AIN pin Best Regards, Thorsten.
-
Hi Steve, the GNU public license explicitly allows the distribution :) Best Regards, Thorsten.
-
oops - yes, I was wrong. Damned, I worked to much with low-active logic yesterday ;-) you are right. I should improve this. A temporary workaround: the BankStick has a write protection pin which could be used to protect the EEPROM content. Just disconnect pin 7 of the 24256 from ground and connect it via a +10k pull-up to +5V. This prevents MIOS from overwriting. Now you could add a switch between pin 7 and ground to disable the protection. :) However, a firmware enhancement would be better. Best Regards, Thorsten.
-
oops - yes, I was wrong. Damned, I worked to much with low-active logic yesterday ;-) you are right. I should improve this. A temporary workaround: the BankStick has a write protection pin which could be used to protect the EEPROM content. Just disconnect pin 7 of the 24256 from ground and connect it via a +10k pull-up to +5V. This prevents MIOS from overwriting. Now you could add a switch between pin 7 and ground to disable the protection. :) However, a firmware enhancement would be better. Best Regards, Thorsten.
-
Hi Dan, in MIOS V1.2 beta some internal addresses have been changed (and they will be changed again in the final V1.2), nothing to be worried about. But the CS lines are not connected correctly, they have to be swapped. But this error shouldn't lead to the black screen. Maybe your pot has been destroyed during your tests (burnt down). Hope that you have some spare pots. :-/ Next time it's maybe better to use an additional resistor in serial to save the pot before damage. 1k to 10k should be ok. If the black lines don't vanish with a new pot, try an higher serial resistor value (or a pot with 100k) Best Regards, Thorsten,.
-
At image02.bmp I can see some letters of a well known name - does this already appear, do you see only black pixels around the characters or are the pixels erased. Do you see any difference by inverting the CS lines? Best Regards, Thorsten.
-
Hallo Johannes, bist Du mittlerweile weitergekommen oder funktioniert der MIDI In-Port immer noch nicht? Alternativ koenntest Du das core Modul auch erstmal direkt an den Gameport anschliessen: http://www.ucapps.de/mbhp/mbhp_midi_gameport.gif Gruss, Thorsten.
-
Thanks - it helps :) This display stores the graphical data in horizontal order like a T6963C, thats bad for customized fonts which are used by the MIDIbox LC application, the required 90° rotation leads to a very poor performance. So: keep your fingers away from such displays :-/ Best Regards, Thorsten.
-
Thanks - it helps :) This display stores the graphical data in horizontal order like a T6963C, thats bad for customized fonts which are used by the MIDIbox LC application, the required 90° rotation leads to a very poor performance. So: keep your fingers away from such displays :-/ Best Regards, Thorsten.
-
Hi js, in the meantime I've changed the name of the functions, so good that you mention it, it's time for an update. :) SAVED_POT_NUMBER, etc are registers which are used like variables in a high-level programming language. These variables have to be located to free SRAM im app_defines.h so that the addresses are globally available. When you open the app_defines.h file of the SID application you will already see some allocated SRAM cells. Addresses from 0x30 to 0x7f will also be free in the future and can be used for your own extensions. PIC instructions: a nice overview can be found in the PIC18F452 datasheet. The macros (capitalized letters) are "my own creations" and defined in macros.h - I use the macros to improve the readability. To the examples: the routine which allows to set a CC value has been realized on another way, now you have to use it like below: ;; in sid_ain.inc: USER_AIN_NotifyChange ;; get 7-bit value of pot #0 movlw 0x00 call MIOS_AIN_Pin7bitGet ;; forward value to the CC handler ;; it expects: CC parameter number in WREG ;; CC parameter value in MIOS_PARAMETER1, so: movwf MIOS_PARAMETER1 ; save 7-bit value in MIOS_PARAMETER1 movlw 0x10 ; control CC #10h == Transpose V1/V2/V3 call SID_CCIN_Set ; call function return ; and exit AIN handler You also have to enable the AIN handler in sid_init.inc like below (replace the existing code lines by): ;; initialize the AIN driver movlw 0x01 ; use 1 pot call MIOS_AIN_NumberSet call MIOS_AIN_UnMuxed ; don't service multiplexer interface Hope this helps for your next experiments - have fun! :) Best Regards, Thorsten.