Jump to content

Wild_Weasel

Programmer
  • Posts

    216
  • Joined

  • Last visited

Everything posted by Wild_Weasel

  1. Kann denn dein Programm mit einer höheren Midi Auflösung etwas anfangen? Standard sind nämlich 0 bis 127. Grüsse Michael
  2. Hi! Will your LED matrix design fit into the originally designed frontpanel designed by TK? Regards Michael
  3. Hi! I would like to buy 2 chips. Shipping to Austria/ Vienna. Have you got a paypal account for easy money transfer? Regards Michael
  4. Hi! Darf ich gleich mal fragen wo du die SIDs herbekommst. Hab unlängst mal in ebay geschaut aber da kostet ja ein einzelner über 40$ und sind dann für 3 (einen sid hab ich schon) ziemlich viel geld. Grüsse Michael
  5. Wunderbar. 2 für mich bitte. Grüsse michael
  6. Personally I don't think that crossfaders are log. Only channel faders can be. If you imagine a mixer as a set of identically built units, wether there a 2, 3 or even more of them (a set is a line fader and a EQ, Cue buttons ...) a log Crossfader woudn't make sense. As sasa said the Crossfader only drives a control circuit which amplifies or weakens each channel and therefore it has to be lin. Regards m.
  7. You don't need 10k faders. The only thing which is important ist that they are no log faders. I used 25k faders in my Traktor Midibox and they work just as well. Regards Michael
  8. Hi MTE! Kannst du bitte Bilder machen die das Display in action zeigen. Grüsse michael
  9. servus! Spannung ist fix. Was der Programmierer mit der Eingangsspannung macht vermag ich nicht zu sagen. Der einzige Unterschied zwischen 16f und 18fxxx ist die software. Die gibts aber beide von sprut und die ist auch total super da sie alles komplett selbstständig macht weil das soviel ich weiss eine datenbank mit allen pics drinnen hat. Aber der Brenner geht wie gesagt ohne umschalten/ löten, einzig ein paar exoten können nicht gelöscht werden. (da müsste man dann einen Spannungsregler tauschen glaub ich) So steht das zumindest auf der homepage. Ich habe bis jetzt die aktuellen MIOS pics beschrieben/ ausgelesen/ gelöscht, 16F628, 16F877 und das hat alles super geklappt. Grüsse m.
  10. Hi! Ich hab mir vor 1/2 Jahr den Brenner5 gebaut. Funktionierte ohne Probleme und brennt alle 16fxxx und 18fxxx pics. Hab allerdings auch Platine geätzt usw. Aber ich nehmen an das du sowieso Erfahrung hast wenn du das für andere Projekt verwenden möchtest. Also ich kann den Brenner nur empfehlen. Vor allem geht das viel schneller als der alte RS232 brenner hier von der Seite. Ich schätze so 5-10s pro Brennvorgang. Was ich mich erinnern kann waren die Bauteilekosten aber ein bisschen hoch. Ich meine die waren so bei 30-40€. Hab allerdings hier in Österreich bestellt und nicht bei Reichelt & Co. Was du noch schaun kannst ist der USB brenner von sprut.de. Aber ich denke der ist noch in Entwicklung. Grüsse Michael
  11. Hi! Find das eigentlich eine gute idee. Es gab da schon mal eine thread ich glaub ich "assembler programmieren" wo der typ der kontrol dj entworfen hat, auskunft gegeben hat wie er das gemacht hat. Ein riesen Problem wird denk ich immer noch der wind bug sein. Weil mit dem muss man jeweils die ganze Note off senden damit Traktor aufhört zu pitchbenden. Also nur auf 64 halten geht nicht. Ansonsten müsst man sich mit den Counter in Mios auskennen. Hab das mal versucht aber bin gescheitert. Habs dann einfach mit delay gelöst. Scratchen ist halt eine hoch dynamische Sache. Weiss halt nicht inwieweit das C interface da mit kann. Assembler sollte da schneller sein (das sind aber nur meine Gedanken, vielleicht kann da ein Profi auskunft geben) Ich hab mir mal ein Jogwheel von einem omnitronic cd top loader besorgt. Muss mit dem mal experimentieren zwecks besserer Auflösung usw. Eine Idee ist mit gekommen. Da die Midibox ja auch kapazitive Sensoren managen kann könnte man sowas wie auf den CDJ-1000 entwickeln. Also touch sensitive jog wheels. Das könnte man zB mit den Scratch on/off koppeln. Sollte die Midibox zu ungenau sein gibt es ICs von Qprox die genau das können und nur ein paar cent kosten. Die Idee mit den PS controller für Menü scrollen ist mir auch schon gekommen. Find ich gut. Vor allem weil ich ganz auf keyboard und maus verzichten will. Kann man aber auch mit encodern lösen. So wie ich. Ich poste mal ein paar aktuelle pics von meiner Box. Ich hab halte leider das gefühl das das Interesse für so eine box hier im Forum bescheiden ist. Es gibt hier jede menge Leute die sich super auskennen aber nicht auflegen sonder eher produzieren. Sollte es sowas wie auf HowTo geben dann werden sofort die ganzen Kinder aus dem Traktor Forum kommen und auch sowas bauen wollen. Und ich finde das das vermieden werden soll weil das irgendwie am Sinn dieser Platform vorbei geht (Nämlich u.a etwas über Elektronik, Programmierung, Midi, usw. zu lernen .... und... etwas zu geben und zu nehmen) Alle bisherigen Controller Lösung von kommerziellen Anbietern, namlich XONE 3D, dieser Behringer Dings, Faderfox sind nicht ausgereift (Behringer, proprietär, für eigene Software) oder schlicht zu teuer (Xone, 1500€ !!?!?!?) D.h. ist gibt sicher ein Interesse für ein low cost traktor midi box. Aber ich fürchte leider nicht hier im Forum sondern eher drüben bei den Traktor Leuten. Mich würde die Meinung von anderen zu diesem Thema interessieren. Vor allem auch Ideen zur technischen realisierung. Grüsse Michael
  12. Also ich würd das ganze ja über das C Interface machen. Also wenn der Pot Wert zwischen 63 und 65 liegt den ensprechenden Dout pin auf high setzen. Ist ein einzeiliger IF befehl soweit ich das beurteilen kann. Allerdings wie genau kann ich dir noch nicht sagen da ich mich bis jetzt nur mit Buttons und Encodern im C Interface beschäftigt habe. Ich kanns nur wiederholen. Mit C kann man jeden möglichen Sch... machen. Es ist echt unglaublich. Hab erst auch nicht gedacht das ich mich da je auskennen werde aber nach ca. 1 Woche herumbasteln kam dann die Firmware für meine Traktorbox raus. Und die kann GENAU das was ich will. Grüsse m.
  13. Nein. SR steht für shiftregister. Also Schieberegister. Dieser Eintrag definiert nur wieviele SR bzw. Led Ausgänge es gibt. regards m.
  14. Das die Taste "kleben" bleibt kannst du in Traktor einstellen -> control type: hold oder toggle. Du musst hold nehmen. Das mit den Leds ist ein schwierigeres unterfangen. http://www.ucapps.de/mios_c_set_dout.html Das steht eh alles drinnen. Speziell halt das hier Wobei die variable pin halt von dem Taster übernommen werden muss. m.
  15. Since these pots work as voltage divider also other values will work. I tried with 25k sliders and it worked just fine. regards WW
  16. Freut mich wenn ich helfen kann. Dafür bekomm ich aber Fotos von deiner Box und mindest 2 sets von dir. ;) M.
  17. buttons brauchst du ned extra definieren nur hier [tt]MIOS_SRIO_NumberSet( 8 )[/tt] Verdammte smilies. -> Anzahl der Schieberegister ändern Dann hau aber auch gleich bitte das hier unsigned char shuttle_1; unsigned char shuttle_2; shuttle_1_alt = MIOS_DIN_PinGet(31); shuttle_2_alt = MIOS_DIN_PinGet(33); if (pin >= 8 && pin <= 15 || pin == 31 || pin == 33) { unsigned char A = MIOS_DIN_PinGet(8); unsigned char B = MIOS_DIN_PinGet(9); unsigned char C = MIOS_DIN_PinGet(10); unsigned char D = MIOS_DIN_PinGet(11); unsigned char E = MIOS_DIN_PinGet(15); unsigned char F = MIOS_DIN_PinGet(14); unsigned char G = MIOS_DIN_PinGet(13); unsigned char H = MIOS_DIN_PinGet(12); if (shuttle_1_alt == 1) { MIOS_MIDI_TxBufferPut(0xb1); MIOS_MIDI_TxBufferPut(02); if (A == 0 && B == 1 && C == 1 && D == 0){shuttle_1 = 7; MIOS_MIDI_TxBufferPut(0x0a);} if (A == 0 && B == 0 && C == 1 && D == 0){shuttle_1 = 6; MIOS_MIDI_TxBufferPut(0x0a);} if (A == 0 && B == 0 && C == 0 && D == 0){shuttle_1 = 5; MIOS_MIDI_TxBufferPut(0x13);} if (A == 0 && B == 1 && C == 0 && D == 0){shuttle_1 = 4; MIOS_MIDI_TxBufferPut(0x1c);} if (A == 1 && B == 1 && C == 0 && D == 0){shuttle_1 = 3; MIOS_MIDI_TxBufferPut(0x25);} if (A == 1 && B == 0 && C == 0 && D == 0){shuttle_1 = 2; MIOS_MIDI_TxBufferPut(0x2e);} if (A == 1 && B == 0 && C == 1 && D == 0){shuttle_1 = 1; MIOS_MIDI_TxBufferPut(0x37);} if (A == 1 && B == 1 && C == 1 && D == 0){shuttle_1 = 1; MIOS_MIDI_TxBufferPut(0x37);} if (A == 1 && B == 1 && C == 1 && D == 1){shuttle_1 = 0; MIOS_MIDI_TxBufferPut(0x40);} if (A == 1 && B == 0 && C == 1 && D == 1){shuttle_1 = 1; MIOS_MIDI_TxBufferPut(0x49);} if (A == 1 && B == 0 && C == 0 && D == 1){shuttle_1 = 2; MIOS_MIDI_TxBufferPut(0x52);} if (A == 1 && B == 1 && C == 0 && D == 1){shuttle_1 = 3; MIOS_MIDI_TxBufferPut(0x5b);} if (A == 0 && B == 1 && C == 0 && D == 1){shuttle_1 = 4; MIOS_MIDI_TxBufferPut(0x64);} if (A == 0 && B == 0 && C == 0 && D == 1){shuttle_1 = 5; MIOS_MIDI_TxBufferPut(0x6d);} if (A == 0 && B == 0 && C == 1 && D == 1){shuttle_1 = 6; MIOS_MIDI_TxBufferPut(0x76);} if (A == 0 && B == 1 && C == 1 && D == 1){shuttle_1 = 7; MIOS_MIDI_TxBufferPut(0x7f);} MIOS_LCD_Clear(); MIOS_LCD_PrintCString("Shuttle 1 "); MIOS_LCD_CursorSet(0x40); MIOS_LCD_PrintBCD3(shuttle_1); } else { MIOS_MIDI_TxBufferPut(0xb1); MIOS_MIDI_TxBufferPut(10); if (A == 0 && B == 1 && C == 1 && D == 0){shuttle_1 = 7; MIOS_MIDI_TxBufferPut(0x0a);} if (A == 0 && B == 0 && C == 1 && D == 0){shuttle_1 = 6; MIOS_MIDI_TxBufferPut(0x0a);} if (A == 0 && B == 0 && C == 0 && D == 0){shuttle_1 = 5; MIOS_MIDI_TxBufferPut(0x13);} if (A == 0 && B == 1 && C == 0 && D == 0){shuttle_1 = 4; MIOS_MIDI_TxBufferPut(0x1c);} if (A == 1 && B == 1 && C == 0 && D == 0){shuttle_1 = 3; MIOS_MIDI_TxBufferPut(0x25);} if (A == 1 && B == 0 && C == 0 && D == 0){shuttle_1 = 2; MIOS_MIDI_TxBufferPut(0x2e);} if (A == 1 && B == 0 && C == 1 && D == 0){shuttle_1 = 1; MIOS_MIDI_TxBufferPut(0x37);} if (A == 1 && B == 1 && C == 1 && D == 0){shuttle_1 = 1; MIOS_MIDI_TxBufferPut(0x37);} if (A == 1 && B == 1 && C == 1 && D == 1){shuttle_1 = 0; MIOS_MIDI_TxBufferPut(0x40);} if (A == 1 && B == 0 && C == 1 && D == 1){shuttle_1 = 1; MIOS_MIDI_TxBufferPut(0x49);} if (A == 1 && B == 0 && C == 0 && D == 1){shuttle_1 = 2; MIOS_MIDI_TxBufferPut(0x52);} if (A == 1 && B == 1 && C == 0 && D == 1){shuttle_1 = 3; MIOS_MIDI_TxBufferPut(0x5b);} if (A == 0 && B == 1 && C == 0 && D == 1){shuttle_1 = 4; MIOS_MIDI_TxBufferPut(0x64);} if (A == 0 && B == 0 && C == 0 && D == 1){shuttle_1 = 5; MIOS_MIDI_TxBufferPut(0x6d);} if (A == 0 && B == 0 && C == 1 && D == 1){shuttle_1 = 6; MIOS_MIDI_TxBufferPut(0x76);} if (A == 0 && B == 1 && C == 1 && D == 1){shuttle_1 = 7; MIOS_MIDI_TxBufferPut(0x7f);} MIOS_LCD_Clear(); MIOS_LCD_PrintCString("Shuttle 1 alt "); MIOS_LCD_CursorSet(0x40); MIOS_LCD_PrintBCD3(shuttle_1); } if (shuttle_2_alt == 1) { MIOS_MIDI_TxBufferPut(0xb1); MIOS_MIDI_TxBufferPut(03); if (E == 0 && F == 1 && G == 1 && H == 0){shuttle_2 = 7; MIOS_MIDI_TxBufferPut(0x0E);} if (E == 0 && F == 0 && G == 1 && H == 0){shuttle_2 = 6; MIOS_MIDI_TxBufferPut(0x0E);} if (E == 0 && F == 0 && G == 0 && H == 0){shuttle_2 = 5; MIOS_MIDI_TxBufferPut(0x13);} if (E == 0 && F == 1 && G == 0 && H == 0){shuttle_2 = 4; MIOS_MIDI_TxBufferPut(0x1c);} if (E == 1 && F == 1 && G == 0 && H == 0){shuttle_2 = 3; MIOS_MIDI_TxBufferPut(0x25);} if (E == 1 && F == 0 && G == 0 && H == 0){shuttle_2 = 2; MIOS_MIDI_TxBufferPut(0x2e);} if (E == 1 && F == 0 && G == 1 && H == 0){shuttle_2 = 1; MIOS_MIDI_TxBufferPut(0x37);} if (E == 1 && F == 1 && G == 1 && H == 0){shuttle_2 = 1; MIOS_MIDI_TxBufferPut(0x37);} if (E == 1 && F == 1 && G == 1 && H == 1){shuttle_2 = 0; MIOS_MIDI_TxBufferPut(0x40);} if (E == 1 && F == 0 && G == 1 && H == 1){shuttle_2 = 1; MIOS_MIDI_TxBufferPut(0x49);} if (E == 1 && F == 0 && G == 0 && H == 1){shuttle_2 = 2; MIOS_MIDI_TxBufferPut(0x52);} if (E == 1 && F == 1 && G == 0 && H == 1){shuttle_2 = 3; MIOS_MIDI_TxBufferPut(0x5b);} if (E == 0 && F == 1 && G == 0 && H == 1){shuttle_2 = 4; MIOS_MIDI_TxBufferPut(0x64);} if (E == 0 && F == 0 && G == 0 && H == 1){shuttle_2 = 5; MIOS_MIDI_TxBufferPut(0x6d);} if (E == 0 && F == 0 && G == 1 && H == 1){shuttle_2 = 6; MIOS_MIDI_TxBufferPut(0x76);} if (E == 0 && F == 1 && G == 1 && H == 1){shuttle_2 = 7; MIOS_MIDI_TxBufferPut(0x7f);} MIOS_LCD_Clear(); MIOS_LCD_PrintCString("Shuttle 2 "); MIOS_LCD_CursorSet(0x40); MIOS_LCD_PrintBCD3(shuttle_2); } else { MIOS_MIDI_TxBufferPut(0xb1); MIOS_MIDI_TxBufferPut(04); if (E == 0 && F == 1 && G == 1 && H == 0){shuttle_2 = 7; MIOS_MIDI_TxBufferPut(0x0E);} if (E == 0 && F == 0 && G == 1 && H == 0){shuttle_2 = 6; MIOS_MIDI_TxBufferPut(0x0E);} if (E == 0 && F == 0 && G == 0 && H == 0){shuttle_2 = 5; MIOS_MIDI_TxBufferPut(0x13);} if (E == 0 && F == 1 && G == 0 && H == 0){shuttle_2 = 4; MIOS_MIDI_TxBufferPut(0x1c);} if (E == 1 && F == 1 && G == 0 && H == 0){shuttle_2 = 3; MIOS_MIDI_TxBufferPut(0x25);} if (E == 1 && F == 0 && G == 0 && H == 0){shuttle_2 = 2; MIOS_MIDI_TxBufferPut(0x2e);} if (E == 1 && F == 0 && G == 1 && H == 0){shuttle_2 = 1; MIOS_MIDI_TxBufferPut(0x37);} if (E == 1 && F == 1 && G == 1 && H == 0){shuttle_2 = 1; MIOS_MIDI_TxBufferPut(0x37);} if (E == 1 && F == 1 && G == 1 && H == 1){shuttle_2 = 0; MIOS_MIDI_TxBufferPut(0x40);} if (E == 1 && F == 0 && G == 1 && H == 1){shuttle_2 = 1; MIOS_MIDI_TxBufferPut(0x49);} if (E == 1 && F == 0 && G == 0 && H == 1){shuttle_2 = 2; MIOS_MIDI_TxBufferPut(0x52);} if (E == 1 && F == 1 && G == 0 && H == 1){shuttle_2 = 3; MIOS_MIDI_TxBufferPut(0x5b);} if (E == 0 && F == 1 && G == 0 && H == 1){shuttle_2 = 4; MIOS_MIDI_TxBufferPut(0x64);} if (E == 0 && F == 0 && G == 0 && H == 1){shuttle_2 = 5; MIOS_MIDI_TxBufferPut(0x6d);} if (E == 0 && F == 0 && G == 1 && H == 1){shuttle_2 = 6; MIOS_MIDI_TxBufferPut(0x76);} if (E == 0 && F == 1 && G == 1 && H == 1){shuttle_2 = 7; MIOS_MIDI_TxBufferPut(0x7f);} MIOS_LCD_Clear(); MIOS_LCD_PrintCString("Shuttle 2 alt "); MIOS_LCD_CursorSet(0x40); MIOS_LCD_PrintBCD3(shuttle_2); } } else { raus. Lass aber bitte das hier MIOS_MIDI_TxBufferPut(0x90); MIOS_MIDI_TxBufferPut(pin); MIOS_MIDI_TxBufferPut(pin_value ? 0x00 : 0x7f); stehen. Das is der Befehl zum Button drück als Midi schicken. Das oben im ersten code fenster geht nur bei mir weil ich noch extra Ringe um die Encoder herum habe. MfG M.
  18. Ich nochmal. Also das sind die Traktor Funktionen und das hier die mios_tables.inc Einträge _MIOS_ENC_PIN_TABLE MIOS_ENC_PIN_TABLE ;; encoders 1-16 ;; SR Pin Mode ENC_ENTRY 1, 0, MIOS_ENC_MODE_DETENTED ; ENC_ENTRY 1, 2, MIOS_ENC_MODE_DETENTED ; ENC_ENTRY 1, 4, MIOS_ENC_MODE_DETENTED ; ENC_ENTRY 1, 6, MIOS_ENC_MODE_DETENTED ; ENC_EOT wobei aber nur 2 nötig sind. Also linkes und rechtes Deck. Mit den anderen mach ich was anderes. Play list rauf und runter und solche dinge. Um zu erklären was da geschieht. Wenn ein Encoder verstellt wird gibts ein Midi ON signal. Ist also wie wenn eine Taste gedrückt wird und gedrückt gehalten wird. Dann wird gewartet 20ms -> siehe delay. Und dann das entsprechende Midi OFF. Das ganze macht also nicht anderes als einen Tastendruck zu simulieren. Da diese Funktion aber jedes mal neu aufgerufen wird wenn der Encoder über eine Raste drüberläuft kann man damit mit einem gewissen "gesteppten" gefühl pitchbenden. Das delay kann man ev. noch kürzer stellen zwecks feinerer Auflösung. Und ausserdem habe ich gelesen das das mit dem delay nicht sehr elegant ist weil alle anderen Funktionen der Box auch delayed werden. Ein counter wäre da besser sagt man. Hab ich bis jetzt keine Nachteile feststellen können.
  19. Hi! Pots sind bei mir unmuxed. Also ohne Schieberegister und deshalbt direkt an das core gelötet. Musst das also in "muxed" ändern und die Anzahl der Pots eingeben. Das mit den Pitchbend hab ich weiter oben in meinem log beschrieben. Du musst da 2 Funktionen in Traktor erstellen. Eine pitch und dann Up und dann down. Dann gehst du auf learn und dann einmal rechts drehen und bei der anderen Funktion einmal links. Hoffe das ist verständlich. Das ganze ist notwendig um einen bug in Traktor zu umgehen. Die Encoder sind auf die ersten eingänge auf Shiftregister 1 gelegt. Da is aber in dem Skeleton noch eine datei dabei wo man die Encoder defínieren muss. Musst du durchsehen. Grüsse M.
  20. Hi! Ich habe hier eine Lösung für Traktor in C geschrieben. -> letzte Seite http://www.midibox.org/forum/index.php?topic=3852.0 Mit einer Taste kann umgeschaltet werden zwischen 2 Funktionen mit den Encodern. Einmal is das zum Pitchbend. Gedrückt kann man im Track vor und zurückspulen. Ich würde dir empfehlen dich ein bisschen in das C Interface hineinzuarbeiten weil damit kannst du dann wirklich GENAU das machen was du für deine Box brauchst. Dauert vielleicht ein paar Tage ist aber definitiv den Aufwand wert. Ahja. Ich denke scratchen mit Traktor kann man abhaken. Dafür sind Technics da. Grüsse Michael
  21. Hallo! Runtergeben kann man die Kappe vermutlich nicht weil die fest mit einer Art Sprengring gesichert - also fest aufgepresst ist. Hab es aber dennoch geschafft die Rastung komplett zu entfernen weil man ca. 2-3mm Spielraum hat und das reicht um mit Spitzzange und Seitenschneider den Blechring zu entfernen. Grüße Michael
  22. Hi! These display have got a rs232 interface which you don't need for MB applications. They have also got blue background leds which makes them more expensiv. Try to search ebay. Every LCD with HD44780 controller should work regardless the color of the background. I wouldn't pay more than 20€ für a 20x2 character display. Regards m.
  23. Hi! Hab meine encoder soeben bekommen. Machen einen ABSOLUT soliden eindruck. Die Kappe ist aus Aludruckguß und den kann man ja bekantlich super aufpolieren. Aja. Taster in fühlt sich ca so wie einer von diesen schwarzen quadratischen micropushswitches. Also wohl definierter Klick. Kurzer Hub. Manko. Rastet sehr stark ein. Muss man sehen ob man das komplett rausnehmen kann oder minimieren. Also für 0.70€ absolut empfehlenswert, zumal gleichartige Dinger von Conrad 4€ kosten. Grüße Michael
  24. Hi! Conrad may sell them to fasten the speaker to the cabinet.
  25. Hi! Here is the link to the guy who is tinning his boards. Just noticed that he is using a heat gun not a iron. http://thomaspfeifer.net/platinen_verzinnen.htm Sorry. Only in german. He is using Fittingslotpaste Rosol 3 but I think any flux paste will do as long as the copper is oxide free. I will try that on the weekend. http://thomaspfeifer.net/smd_mit_buegeleisen_ausloeten.htm This might also be a cool way to unsolder the chips for the OPL3 Module. Regards WW
×
×
  • Create New...