
audiocommander
Frequent Writer-
Posts
1,358 -
Joined
-
Last visited
Content Type
Profiles
Forums
Blogs
Gallery
Everything posted by audiocommander
-
Ja, ich schau mir alles an. Ich bin halt im Moment ein wenig außer Atem, weil ich nächste Woche eine Ausstellung beginnt. D.h. ich bin nicht im Lande und meine SJ-Platine auch nicht. D.h., ich werde erst noch eine Platine bauen und einige Hardware-Regler anschließen, um das Projekt abschließend zu veröffentlichen um dann vielleicht zu neuen Ufern aufzubrechen (Stichwort: SoundGin* ;) )... mal sehen... *Wäre für dich vielleicht auch ein interessanter Chip, weil er bedeutend mehr Synthie-Möglichkeiten bietet als der SJ. Andererseits hat der SJ eine schönere Sprachausgabe. Egal, in jedem Fall klingen deine Änderungen sehr gut, so dass ich das in jedem Fall in das neue Release einfließen lassen möchte. Wer immer dann so ein Teil nachbauen möchte, braucht dann 1 Core für die Grundfunktionen (kII), die SpeakJet-Platine und fertig. Dann gibt es diverse optionale Erweiterungen wie ein DIN-Modul, eine SensorMatrix oder dein Keyboard-Projekt. Das ist glaube ich eine gute Sache... Also: nicht verwundert sein, wenn ich die nächsten Wochen nicht so schnell reagiere wie üblich. Cheers, Michael
-
hey, das klingt super congrats!
-
Nachtrag: Das verstehe ich nicht: wenn die bei mir immer zugeschaltet waren, warum geht das jetzt nicht mehr, wenn beide zugeschaltet sind? Oder meinst du der Fehler tritt nur auf, wenn ausschließlich der 1/2 Env f. OSC4/5 an ist und ENV f. OSCs1-3 aus sind? Wenn ja, kann es am Code für die entspr. Einstellung liegen? Wenn nein: was passiert, wenn mein Original-Code verwendet wird? Hat das mit dem Note-Release-Code zu tun, den du entfernt/ersetzt hast?
-
Hallo Rio, kurze Antwort, weil ich gerade deine PM erhalten habe. Ich gerade leider keine Zeit genauer darüber zu schauen. Das ganze ist ja auch erst als experimenteller Modus zu verstehen. Du könntest versuchen, Klammern zu setzen, denn eine verschachtelte Arrayanweisung als Parameter kann in SDCC zu Problemen führen: IIC_SPEAKJET_Transmit8bit(oa[oscsynth_waveshape][c-1]); => siehe auch Wiki->MIOS Developer Section->C Tipps & Tricks->SDCC-Bugs. Außerdem ist mir noch ein Fehler von mir aufgefallen: Die Volumen-Settings ergeben mehr als 63 im letzten Waveform-Gebilde (10,7,6,30,15). Ansonsten müsste ich mir das genauer anschauen, nur ein schneller Blick... Wie schon vorher gesagt, fände ich es super, wenn du mir ein wenig Zeit gibst, mal in dein Release zu schauen, bevor du einen Link auf die SpeakJet-Seiten setzt (was auf deiner UserPage passiert ist natürlich vollkommen deine Sache). Denn wenn die Sachen soweit sinnvoll sind (wovon ich zum jetzigen Zeitpunkt ausgehe) würde ich das einfach mit in das nächste "offizielle" Release aufnehmen, das ohnehin kurz vor VÖ steht. Wie das Seppoman auch schon vorgeschlagen hat: nur nichts verkomplizieren und wenn's geht keine keine Absplittungen. Natürlich kriegst du Credits, versteht sich ja ;) Grüße, Michael
-
You can store up to 64kB on one Bankstick and use up to 8 Banksticks. That's 65.535 bytes * 8 => 524.280 bytes. And that means you could store 1/6th of the whole Bible in there (the Bible has 3.566.480 Chars). Have you invented a MIDI-OCR2SYX Scanner... ???
-
I've just seen a very cheap "robot-voice-module" (Stimmenverzerrer) at Conrad (10,- EUR). Not a real vocoder though and probably real shitty, but maybe interesting anyway... Cheers, Michael
-
um.. what do you mean with "use it with core easily"? It's a USB-Flash-Drive Interface and MIOS does not support Mass Storage Devices. What do you want to do with it? And why not using Banksticks? There are some topics around here discussion Mass Storage Devices, you could do a forum search. Regards, Michael
-
Also, für mich reichen 5 I/Os (4xMBHP-Midi-IIC-Modul) und 1x Core; warum nicht einfach zwei Cores linken oder das fünfte I/O (am Core) als Uplink für einen zweiten Router verwenden, um die Ports auf 8 bzw. 9 I/Os zu erhöhen? Ich denke mal, Thorsten hat sich sicherlich was dabei gedacht, als er das schrieb:
-
also, ich weiß noch gar nicht genau, ob ich dafür überhaupt ein LCD verwenden würde... naja, für ein echt fettes Teil mit Filter wäre das schon ganz sinnvoll; für ein einfacheres, das nur routet habe ich eher ein numerisches Display zur Bankstick-Nummer im Auge... hmm... Auf jeden Fall soll das Teil automatisch PRG-CHange Messages empfangen und speichern können. Wenn dann am Router das entsprechende Programm eingestellt wird, soll der Router das zuletzt empfangene PRG an alle angeschlossenen Geräte senden. Das ist für mich eigentlich mit eine der wichtigsten Hauptfunktionen, da mich diese Zettelchen mit dem Programmnummern echt nervös machen ;D Und dann irgendwas Einfaches zum Verschalten der Ein-/Ausgänge; mit LEDs und Switches... weiß aber noch nicht genau wie ??? Meinst du, wir sollten mal eine Wiki-Projekt Seite mit Feature-Request/Prioriäten einrichten?
-
Also, ich habe fünf IIC-MIDI-Module rumliegen und erheblichen Bedarf an einem Midi-Router und PRG-Manager. Allerdings weiß ich nicht, wann ich dazu komme. Aber die Platinen liegen schon mal bereit ;) Grüße, Michael
-
IIRC "MIOS_LCD_PrintCString" is not supported by MIOS itself, but by the wrapper. That means, it makes no difference in what way you call it, because it'll be printed out char by char anyway. Maybe codesize does increase, but I think you want to use this to print out SysEx-Messages; so these are coming in char-by-char anyway, right? Cheers, Michael
-
hehe .) ich hab' mir neulich eine Elektor-Zeitschrift "Mikrokontroller" gekauft, in der ein Projekt ist, das durch Analyse von Pfeiftonhöhen – ich glaube bis zu 8 – digitale switches steuert. Auf nem Amtel µC... ...nur mal so beiläufig erwähnt, falls das jemanden interessiert... ;) Grüße, Michi
-
1. Meinst du mit dem Knacksen die RS232-Befehle, die an den SJ gesendet werden? Die sollten eigentlich nur hörbar sein, wenn die RS232 Verbindung besteht. Wenn du die serielle Verbindung trennst, dürfte nichts mehr zu hören sein (zumindest ist es so bei mir). 2. Ist gebongt, wird bei mir implementiert! 3. und 4. klingt super!!! 5. muss von mir ohnehin überarbeitet werden, da werde ich mir das in jedem Fall mal näher anschauen :) also, alles in allem klingt das nach einer geilen Verbesserung, die zusammen mit der sensorMatrix bestimmt der Rocker wird (mal sehen, ob sich dann auch Seppoman einen baut ;D ...würde zumindest gut zum Vocoder-Telefon passen ;D) lg Michael
-
ja, stimmt! Rio: Du könntest ja einfach mal hier schreiben, was du alles geändert hast, dann kann ich sagen, ob ich das übernehmen würde. Der ENV An-/Aus ist ja in jedem Fall klar (hab' ich schon zugesagt). Was den Rest anbelangt, klingt es ja (noch) recht geheimnisvoll ;) Also: lass mal raus; der Moment ist günstig: Wie schon öfters angedeutet, steht mein 2. Release bevor, das tatsächlich eine markante Weiterentwicklung darstellt. Ich habe hauptsächlich an der Sprachausgabe gearbeitet, also sehe ich keinen Grund, warum man nicht deine Arbeit an der Synthie-Sektion einfließen lassen sollte; im Gegenteil! Und ehrlich gesagt, weiß ich nicht, wer sich ein olles Projekt baut, wenn das neuere eine ziemlich coole SensorMatrix mit dran hat. Im Grunde veröffentliche ich ja deshalb auch meinen Quellcode, damit das Projekt wächst und cooler wird :) Grüße, ac
-
Hallo Rio, 1. klingt gut :) hab' da keine Einwände. Wenn du das releast hast und das sinnvolle Sachen sind, kann ich die auch gerne (natürlich mit Autorenangabe) in neue Releases von mir einbinden... 2.a) Der Harmonizer schiebt lediglich bestimmte Noten zurecht. Das hat mit dem OSC/ENV so eigentlich unmittelbar garnichts zu tun, da er rein MIDI-basierend arbeitet. 2.b) Die OSC-Synthese ist eigentlich das Interessanteste, da hier aus den 5 Einzel-Oszillatoren ein fünfstimmiger Klang modelliert wird. Kannst ja mal nach "Subtraktiver Synthese" suchen. Das ganze ist in der Fassung, die dir vorliegt noch relativ experimentell. ...im Prinzip werden durch bestimmte Lautstärkenverhältnisse der "Harmonischen" verschiedene Wellenformen gebildet. Kannst ja mal den OSC-Waveform durchschalten und dir das anhören. Im Zusammenspiel mit den ENV-Waveforms ergeben sich ganz neue Klänge. 2.c) damit wohl schon beantwortet ;) Grüße, Michael
-
you can wrap your ascii drawing with [ tt ] [tt]to select a teletype font with unified spaces[/tt] [ \tt ] ...or just click the typing machine icon in the reply toolbar ;) Cheers! Michael
-
hello matrigs, you want to look up about the scopes of variables. In C you can have (basically) three different types of scopes: - block scope (variable is declared inside a { } block) - local scope (variable is declared inside a function() { } ) - file scope (variable is declared inside a file.c, typically on top of the page). Now look at the code I posted again; I'm splitting it up and tell you where to put the code: unsigned char shift; [/code] now you have to increment the shift var [b]at the DIN_Notify()[/b] function like this shift can be 0 (0-7), 1 (8-15) or 2 (16-23) [code=add to main.c inside the DIN_NotifyToggle()] shift++; if(shift > 2) { shift = 0; } now at the AIN_Notify() or ENC_Notify() get the CC number like this: unsigned char cc = (shift << 3) + encoder; // the variable cc now contains the shifted cc number. [/code] Of course this is a simplified example where the shift value gets incremented by any button press. You have to improve this to make it work with four buttons, but I hope the principle is now clear. Best regards, Michael
-
I'm not from the UK. I posted this link to show you that alternatives do exist ::)
-
resoldering Buttons and Encs
audiocommander replied to japanesepotato's topic in Testing/Troubleshooting
yeah, David is right, there are lots of tips here in the forum. Anyway: do you have a "desoldering pump" (;D don't know how it's called); it sucks in the heated liquid solder when you press a button and usually is about 5 EUR only That's (for me) the only thing working good. Some people reported that you may get it all off with some kind of heater-gun, but I think that may be pretty dangerous for near parts that get too hot. Cheers, Michael -
Where to start with assembler programming
audiocommander replied to ReinerS's topic in MIOS programming (Assembler)
...and just a quick add-on: if you compile your C-code with SDCC, a new folder called "_output" is created. In there you will find the generated .asm files with plenty of comments. Taking a look into those is pretty useful to track down errors and by the way you also start getting knowledge about asm :) And you can take a look to the wiki (developer section), there's explained how to mix asm and C code (not necessarily needed, but good to know)... Cheers, Michael -
right! In this case, the Midi Data is coming: - from the controller (left: "MIDI-OUT Keyboard") - from the computer (right: "MIDI-OUT USB") The problem is though, that you don't have no MIDI-In, wich means you can get data to your MB but not from it. The eBay link seems a bit expensive to me, look here: http://www.thomann.de/gb/search_dir.html?sw=midi+interface&x=0&y=0 Best regards, Michael
-
Inconsistent size of MIOS_MPROC_EVENT_TABLE?
audiocommander replied to ReinerS's topic in MIOS programming (C)
Is this "SOLVED" related to this topic or to the SDCC crash? -
Strange error message while compiling
audiocommander replied to ReinerS's topic in MIOS programming (C)
gen.c should be an SDCC related file, I assume you don't have no file named like this, right? Are you using an IDE? If yes: have you setup your targets properly? Does a target clean / reboot help? What SDCC version do you have? Does this only happen to your project or to others as well? Normally there should be no runtime at all, at least none that runs on your Computer (it should run on the PIC only). So either SDCC crashed (and "Runtime" is meant to be some SDCC compiling routine) or you're trying to run the PIC code on your machine. Anyway, a bit more information from your side is required ;) Regards, Michael -
How to read a sysex message in C-program?
audiocommander replied to ReinerS's topic in MIOS programming (C)
Hi Reiner, MPROC_Notify_ReceivedByte(unsigned char byte) is only called for single byte events, such as realtime messages (for example), whereas MPROC_Notify_ReceivedEvent(byte0, byte1, byte2) is for all the remaining 3-byte-messages like Note-Ons/-Offs etc... Cheers! Michael -
How to read a sysex message in C-program?
audiocommander replied to ReinerS's topic in MIOS programming (C)
Hello Reiner, basically a SysEx Message consists only of two "known" bytes, that is: SysEx Start (CC 240 / 0xF0) ... a lot of customized data ... SysEx Stop ("EOX: End of SysEx", CC 247 0xF7) What's in between those two bytes depends on the manufacturer, in your case Hauptwerk. So either you'll find some internet docu or you may try to decode it by yourself (which may be quite difficult if it's not open :P ) You can download the MM-Application (from the C-Section of the download-page @ucApps), IIRC there should be a SysEx implementation that shows you how to implement SysEx reading/writing in your code once the protocol issue has been solved. Best Regards, Michael