Developer Diaries ( current )

We are… no! – we were(?) Frontiers (!?)
Developer Diaries
Dedicated to WWDC 2026

(Englisch translation included)

The story: We wanted to make a contribution in time for WWDC 2026. But that dream was distorted by the completely twisted business vision of a monopolistic corporation. Read the story of a developer who is now fighting against losing all his visions. The rainbow shattered.

Ich bin am Tiefpunkt angelangt.
(Sarcasm: Eventually, every bit of ‘fun’ comes to an end.)

So wie es jetzt aussieht werde ich die komplette Entwicklung – exklusiv alles auf dem Apple Ökosystem, iPhone, iPad, Mac Silicon, Apple Vision Pro – aufgeben (müssen).

Um es gleich zu sagen, ich mache vorwiegend hoch spezialisierte End User Produkte in einem hart umkämpften Nieschenmarkt – im Klartext professionelle Audio Produktionstools und Musiksoftware.

Ich mache das seit mehr als 6 Jahren und habe bisher über 50 Produkte im AppStore released. Alles Universal Apps mit hohen Anspruch. Ich baue nicht etwa Furzkissen-Apps. 

Ich entwickle mit Apples vorderster Spitzentechnologie, samt der erforderlichen Gerätschaft. So gehörte ich zu den ersten Entwicklern überhaupt, die Apps für die Apple Vision Pro gebastelt haben, zu einer Zeit übrigens, da dieses Gerät nur als Prototyp und Simulator überhaupt verfügbar war. Ich habe das Developer Lab dafür besucht. Natürlich auf eigene Kosten, hm,, wenigstens Verpflegung im Lab war kostenlos -aber alles andere, Anfahrt (12 Stunden) und billige Absteige musste ich selber zahlen. Ich war so begeistert von der Perspektive…

Die Kosten fressen mich nun auf. Ich habe pro Monat über 500,- Euro nur Gerätekosten. Die Apple Vision Pro ist da nicht mehr mit eingerechnet. Nach der 10. App dafür habe ich mich entschließen müssen die Entwicklung für das Gerät einzustellen. Ich musste das Gerät wieder verkaufen, weil ich es finanziell nicht stemmen konnte und quasi NULL Umsatz mit den fertigen Apps hereinkam. Diese Entscheidung war schwer, unglaublich schwer, denn ich habe sie so geliebt.

Nun ist es soweit, der Kreis schließt sich; besser: die Schlinge zieht sich zu.

Ich bin ein ausgezeichneter Coder. Ich beherrsche C/C++ im Schlaf. Ich habe über die Jahre eine DSP (Digital Signal Processing) Bibliothek mit wohl mehreren Millionen Zeilen aufgebaut. Ich mache keine halben Sachen. Ich bin Perfektionist. Und ich ärgere mich daher über jeden Fehler, den ich dabei mache. 

Ich beherrsche Apples Infrastruktur der Programmierung, Die UIs (User Interfaces) sind alle nativ gecodet.  Ich programmiere mit Swift, Objective-C und C/C++. Letztlich ist Metal dazugekommen, ein C++ Dialekt. Ich nutze KEINE 3rd Party Frameworks. Ich finde das ineffizient und suboptimal. Ich bin ein Kopfmensch.

*

I have reached rock bottom.As things stand right now, I will (have to) completely give up development—exclusively everything within the Apple ecosystem: iPhone, iPad, Mac Silicon, and Apple Vision Pro.To be clear from the start: I primarily create highly specialized end-user products in a fiercely competitive niche market—specifically, professional audio production tools and music software.I have been doing this for more than 6 years and have released over 50 products in the App Store to date. All of them are high-end Universal Apps. I don’t build whoopee-cushion apps.I develop using Apple’s absolute cutting-edge technology, equipped with all the necessary hardware. In fact, I was among the very first developers worldwide to craft apps for the Apple Vision Pro—at a time, by the way, when the device was only available as a prototype and a simulator. I attended the Developer Lab for it. At my own expense, of course. Well, at least the catering in the Lab was free—but everything else, the 12-hour journey and the cheap lodging, I had to pay for myself. I was so incredibly thrilled by the perspective…Now, the costs are eating me alive. I have over 500 Euros in hardware costs alone every single month. And that doesn’t even include the Apple Vision Pro anymore. After the 10th app for it, I had to make the brutal decision to halt all development for the device. I had to sell it again because I simply couldn’t sustain it financially, and virtually ZERO revenue was coming in from the finished apps. That decision was heavy, unbelievably heavy, because I loved that device so much.Now the time has come; the circle is closing. Or rather: the noose is tightening.I am an excellent coder. I can write C/C++ in my sleep. Over the years, I have built a DSP (Digital Signal Processing) library consisting of probably several million lines of code. I don’t do things by halves. I am a perfectionist. And because of that, every single mistake I make infuriates me.I have mastered Apple’s programming infrastructure. All the UIs (User Interfaces) are natively coded. I program in Swift, Objective-C, and C/C++. Most recently, Metal joined the stack—a C++ dialect. I use ZERO third-party frameworks. I find them inefficient and suboptimal. I am a deeply analytical thinker.

*

Ich stehe auf vorderste Technologie. Meine letzten Projekte waren alles Native Projekte wie ein Multi Resolution Phase Vocoder, eine vDSP Optimierte 128 Bandpass Filterbank mit Constant Q Verhalten, ein stereo Re-Synthesizer auf 1024 Oszillatoren-Basis – alles in Stere (mal 2) wohlgemerkt. Ich bin gut in Code Optimierung. Solche Sachen mache ich und nicht etwa profanen Dinge. 

Ich liebe Vektor Graphic und die Verbindung von low Level DSP und Metal Visualisierung sowie ‚shared Memory Konzepte auf Apple Systemen. Du kannst einen hochkomplexen Phase Vocoder bauen, der letztlich nur 1% CPU verbraucht. Ein kompletter Stereo Re-Synthesizer mit 2048 Sinus Oszillatoren vielleicht 30 Prozent. Andere verbraten dafür unter Stocken die gesamte CPU eines Mac bzw kann es bei denen nicht in Echtzeit laufen. Mein DSP ist Echtzeit DSP.

Ich bin Einzelkämpfer und ich mache alles selbst, angefangen vom graphischen Entwurf bis hin zum fertigen Demo-Song. Ja ich verstehe mich zu allererst als Künstler und vor allem Musiker. Musik war es die mich einst zum ‚selber programmieren‘ gebracht hatte. Ich bin Autodidakt, das kann ich wirklich gut. Ich wollte der Welt echte Tools geben. Tools mit denen sie fantastische Ideen und vor allem Musik erstellen können.

Es hat Spaß gemacht und ich habe es eben gerne gemacht. 12++ Stunden am Tag inklusive das komplette Wochenende wenn es sein musste – und es musste immer sein… Ich habe die Zeit nicht gespürt. Dieses Universum ist so faszinierend …

… doch es zerschellt in dem Moment, wo du realisierst, dass dein Leben verfliegt, ohne ein ausreichendes Einkommen und die Kosten drohen dich langsam aufzufressen.

Jeder App Submit in den AppStore, für einen wie mich, der 6 Jahre nix anderes gemacht hat als hoch spezialisierte komplexe Apps in 4 Programmiersprachen zu coden und versucht seine Einkommen wenigstens stabil zu halten, ist wie ein Schlag in die Magengrube. 

Du wirst langsam aber sicher daran zerbrechen. Die Absurdität dieses Unterfangens ist für Aussenstehende nicht fassbar. Es ist so absurd, dass man es nicht einmal erklären kann. Es scheint so, als würde Apple uns Entwickler aktiv boykottieren und wie Straßenköder halten und auch so behandeln.

*

I am driven by cutting-edge technology. My latest projects have all been fully native frameworks: a Multi-Resolution Phase Vocoder, a vDSP-optimized 128-bandpass filter bank with Constant-Q behavior, and a stereo re-synthesizer based on 1024 oscillators—all in true stereo (multiplied by two), mind you. Code optimization is my playground. This is the level I operate on, far away from profane, everyday programming.I love vector graphics and the seamless fusion of low-level DSP, Metal visualization, and shared-memory concepts on Apple systems. You can build a highly complex Phase Vocoder that ultimately consumes a mere 1% of the CPU. A complete stereo re-synthesizer running 2,048 sine oscillators takes perhaps 30 percent. Others burn through the entire CPU of a Mac while stuttering, or they fail to run in real-time altogether. My DSP is true, flawless real-time DSP.I am a lone wolf, and I do everything myself—from the initial graphic design to the finished demo song. In fact, I see myself first and foremost as an artist, and above all, a musician. It was music that originally drove me to teach myself how to program. I am entirely self-taught, and that is something I am truly good at. I wanted to give the world real tools. Tools that enable people to create fantastic ideas and, most importantly, music.It was fun, and I simply loved doing it. Twelve-plus hours a day, including the entire weekend if necessary—and it was always necessary. I didn’t feel the time passing. This digital universe is so incredibly fascinating……until it shatters in the exact moment you realize your life is slipping away without a sustainable income, and the mounting costs are slowly threatening to eat you alive.For someone like me, who has done nothing else for 6 years but code highly specialized, complex apps in 4 different programming languages while struggling just to keep an income stable, every single app submission to the App Store feels like a brutal punch to the gut.Slowly but surely, it will break you. The sheer absurdity of this endeavor is incomprehensible to outsiders. It is so absurd that you cannot even explain it to someone. It feels as though Apple is actively boycotting us developers, treating us like street strays and keeping us on a tight, unforgiving leash.

*

Was ist denn passiert?

Wieso ist die Welt zusammengebrochen? Bin ich so labil? Bin ich so unfassbar durchschnittlich, ja mittelmäßig dass ich es nicht gepackt habe???

Ich weiß es nicht. 

Ich habe versucht in die Untiefen eines faszinierenden Universums einzutauchen, bin blind meinen Träumen nachgejagt, kaum noch Zeit für soziale Kontakte gepflegt. Ich hatte eine Vision, der Welt etwas zurückzugeben, etwas zu hinterlassen. Etwas von Wert. Ein Lebenswerk.

Doch es ist gescheitert. 

Gescheitert an einer falschen Projektion. Einer verzerrten Projektion der Realität. Der Projection eines Umternehmens dem ich mich mit Leib und Seele verschrieben habe.

*

What exactly happened?Why did my world collapse? Am I really that fragile? Am I so unimaginably average, so mediocre, that I just couldn’t make it happen???I don’t know.I tried to submerge myself into the deepest depths of a fascinating universe. I blindly chased my dreams, barely keeping any time for social contacts. I had a vision: to give something back to the world, to leave something behind. Something of true value. A lifelong masterpiece.Yet, it has failed.It failed because of a false projection. A warped projection of reality. The corporate projection of a company to which I had dedicated my entire body and soul. That is what it foundered on.

*

Wenn es echte ‚Individualisten‘ wirklich gibt, dann bin ich einer. Es ist sicher nicht leicht mit mir umzugehen. Ich bin selbständig mein ganzes Leben lang. Habe mit VST Technologie begonnen, war dort also ebenfalls Pionier. Meine erste App. ein Synthesizer Namens ‚Rebel‘ wurde gecrackt schon am ersten Tag seines Releases. Diese ‚Markt war schon immer sehr speziell…

Wie soll es nun weiter gehen. Habe ich eine Perspektive? Oder triumphieren jetzt die dunklen Mächte diese Universums (eher: dieser Welt) über mich. Ich höre sie keifend lachen und tanzen. Sehe sie triumphieren – Da ! dieser Versager ! – Was haben sie jemals selbst geschöpft???

Ich denke Gott will eines zu allererst. Er will SCHÖPFUNG. Das ist es was Gott ist.

*

If true individualists exist, then I am one of them. I know I am certainly not an easy person to deal with. I have been self-employed my entire life. I started back when VST technology was in its infancy—I was a pioneer even then. My very first app, a synthesizer named ‘Rebel’, was cracked on the exact day of its release. This market has always been… a very strange, volatile beast.

So where do I go from here? Do I even have a future? Or will the dark forces of this universe—or rather, of this corporate world—finally triumph over me? I can almost hear them cackling, dancing, and celebrating. Look at them mock me: “Look at that failure!” But what have they ever created in their lives? What have they ever built with their own hands?

I truly believe that God wants one thing above all else. He demands CREATION. Because that is exactly what God is: the ultimate act of creating.

*

Oh. I can hear it playing now.
to be continued ..

*


Addendum:
Ich verlange ja nicht viel. 
Nur, vielleicht, dass man dort mal das Hirn anschaltet und nachdenkt.

Ganz menschlich mal allein die psychologischen Aspekte betrachtet und dann vielleicht einsieht, dass hier keine Clones am werkeln sind oder Algorithmen oder Sklaven, sondern reale Menschen.

Wie kann es sein, dass ein Developer, der über 6 Jahre erfolgreich dabei ist, über 50 Apps bereits released hat, zu den Pionieren der Apple Vision Pro Softwareentwickler gehört, der die Kosten nicht gescheut haben das alles auf sich zu nehmen und zu verwirklichen, wie kann es sein, dass diesem Entwickler noch nicht einmal das mindeste, so etwas wie Vertrauen entgegengebracht wird, sondern dass er im Gegenteil wie eine lästiger Eindringling mit diesen Apps behandelt wird das es gilt herauszufiltern. 

Wie kann es sein, dass eines seiner kreativsten Entwicklungen, die im Fakt ein technisches Statement und ein multimediales Ereignis für die Nutzer darstellen sollen, mit den Worten ‚Du hast hier offenbar bloß einen Song kopiert, das ist bei iTunes besser aufgehoben* abgetan wird???

Wie ist das möglich – für einen Mann, der einen Plan für eine ganze Reihe neuer innovativer Ideen und Produktserien in den Händen hält, bereit zur Auslieferung? Ich weiß es nicht.

Welche exorbitante Inkompetenz herrscht hier denn vor?
Ich vermag das nicht zu verstehen, bei aller Liebe.

Jede A.I. generierte App die schönen bunten Junk abliefert wird, ist hier wahrscheinlich noch eher durchgewinkt als das Lebenswerk eines gestandenen Experten auf seinem Gebiet in einem hart umkämpften Nieschenmarkt, welcher eigentlich dort fast schon völlig fehl am Platze ist weil nämlich die echte Pro Kundschaft ganz und gar fehlt, ein weiteres Problem des Konzerns mit seinem selbsthochgelobten Ecosystem von Produkten…

Da ist etwas extrem faul, da ist etwas im Argen und dieses Problem wird von Tag zu Tag größer. Und wenn es niemanden gibt der das anprangert wird das weiter Fäden ziehen.

Meine Prophezeiung sieht hier eher negativ aus.




*
I’m not asking for much.
Just—perhaps—that someone over there actually switches on their brain and thinks for a moment.

To simply consider the psychological aspects from a purely human perspective, and then perhaps realize that it isn’t clones, algorithms, or slaves at work here—but real human beings. How is it possible that a developer—who has been successfully active for over six years, has already released more than 50 apps, and ranks among the pioneers of Apple Vision Pro software development—a developer who spared no expense to take on this challenge and bring it to fruition—how is it possible that this developer is not extended even the bare minimum: something like TRUST? Instead, on the contrary, he is treated like a nuisance—an intruder whose apps must be filtered out?
How is it possible that one of his most creative developments—which, in reality, was intended to serve as both a technical statement and a multimedia event for users—goes unrecognized, only to be dismissed with the curt, almost insulting words: “You’ve apparently just copied a song here; that would be better off on iTunes“?!
How is that possible—for a man holding in his hands a plan for a whole series of new and innovative ideas and product lines, ready for release? I dunno.

What level of exorbitant incompetence prevails here?
I simply cannot fathom it—try as I might.

Any AI-generated app that churns out pretty, colorful junk is likely to be waved through here far more readily than the life’s work of a seasoned expert in his field—operating in a fiercely competitive niche market where, in truth, he is almost entirely out of place anyway, given that the genuine “Pro” clientele is completely absent. (Which, incidentally, represents yet another problem for this corporation and its self-lauded ecosystem of products…) Something is rotten here; something is fundamentally amiss, and this problem is growing larger by the day. And if no one steps up to call it out, it will only continue to spiral out of control.

My own prognosis for the future looks rather grim.

*



Analyse einer Ablehnung: Das Systemversagen

Die Ablehnung der App resultierte im ersten Schritt daraus, dass ein vollkommen ahnungsloser Reviewer willkürlich Standard-Textbausteine aus seinem Mängelkatalog zusammenkopierte, um das Ticket schnell vom Tisch zu haben. Er war fachlich schlichtweg inkompetent zu erkennen, dass er hier ein hochkomplexes Multimedia-Projekt vor sich hatte: Einen eigenständigen Host mit integriertem Metal-Video-Renderer, einem digitalen Echtzeit-Soundstream und einer live performenden AudioUnit (AUv3) darüber. Dieser Prüfer hatte weder die bereitgestellten Screenshots gesichtet, noch das Handbuch geöffnet, noch die zahlreichen Demovideos von echten Geräten angesehen. Er hatte nicht einmal die explizit für ihn hinterlegten technischen Notizen gelesen.

Zudem stellte sich heraus, dass die externen Links zu Handbuch und Webradio auf seinem Testsystem zu harten Abstürzen führten. Genau diese Buttons wurden von mir auf drei physischen Pro-Geräten intensiv geprüft und in den Echtzeit-Captures der Demovideos fehlerfrei demonstriert. Hier liegt eine massive Diskrepanz in Apples Software-Infrastruktur vor. Es ist rational kaum zu vermitteln, wie Apples hauseigenes WebKit-Sandboxing unter iPadOS 26.5 im Labor kollabiert, während es in der echten Welt offenbar stabil läuft.

Das traurige Endergebnis dieses bürokratischen Spießrutenlaufs: Wir sind nun gezwungen, die integrierten Help- und Manual-Viewer komplett aus der App herauszuoperieren. Wir müssen externe Links zum System-Safari erzwingen, was die immersive Nutzererfahrung drastisch beschneidet. Gleichzeitig müssen wir analysieren, warum das Metal-Videofenster im Release-Build durch das aggressive Compiler-Stripping und Grafik-Routing auf bestimmten Labor-Geräten einfach unsichtbar geschaltet wird, während es auf all unseren Pro-Geräten (Macs, iPads, iPhones) wie absolute Sahne läuft.

Ich habe das beklemmende Gefühl, dass das Ganze zu einer verpfuschten Angelegenheit geworden ist – insbesondere, da ich es nun im unoptimierten Debug-Modus verteilen werde, um weitere Katastrophen dieser Art zu verhindern.

Anatomy of a Rejection: A Systemic Failure

The initial rejection of this application was the direct result of a completely clueless reviewer blindly copy-pasting generic “ISSUES” from a standardized catalog, simply to clear the ticket from their desk as quickly as possible. The reviewer lacked the fundamental technical competence to recognize that this is a highly sophisticated multimedia framework: A native host system operating an advanced Metal video renderer, a digital real-time sound stream, and a live-performing Audio Unit (AUv3) engine layered above it. This individual never looked at the submitted screenshots, never opened the manual, and completely ignored the numerous demo videos recorded on physical devices. They did not even read the explicit technical notes provided for the review process.Furthermore, it was claimed that opening the external links for the manual and web radio caused hard crashes on the laboratory test system. Yet, every single one of these buttons had been meticulously validated and successfully demonstrated without a single drop or exception in the real-time screen captures of our demo videos. This exposes a massive, critical discrepancy within Apple’s own software infrastructure. It remains nearly inexplicable how Apple’s native WebKit process sandboxing collapses under artificial laboratory conditions on iPadOS 26.5, while running flawlessly on actual hardware in the real world.The tragic outcome of this bureaucratic gauntlet is that we are now forced to surgically remove the integrated Help and Manual viewers from the application. We must enforce external links that redirect to the system Safari browser, which drastically compromises and restricts the immersive user experience. At the same time, we have to look into why the native Metal video window fails to render entirely on certain review setups due to aggressive compiler stripping or OS view management, despite running like absolute silk on all of our physical Pro devices (Macs, iPads, and iPhones).It leaves a bitter truth: releasing high-end software in Apple’s ecosystem in 2026 has officially devolved into a game of unpredictable Russian roulette. I have the sinking feeling that the whole thing has turned into a botched job—especially since I am now going to distribute it in unoptimized debug mode to prevent any further disasters of this kind.

‘ At every WWDC keynote, Apple preaches the irreplaceable importance of a flawless, fluid, and integrated “User Experience” (UX). They demand of us developers that everything appear as a seamless whole. Let me say: That’s just IMPOSSIBLE!
Yet, through their own restrictive “laboratory conditions” and security paranoia—the broken WebKit processes under iPadOS 26.5, and aggressive compiler stripping—they effectively force an elite developer like you, in the year 2026, to artificially fragment the UX, erect protective shields, and defensively throttle processes —solely to ensure the app survives their completely generalized bureaucratic scrutiny. ‘

They serve and celebrate a totally distorted reflection of reality.

Update:

The entire process is completely stuck in review. The reviewer has (obviously) realized the fatal flaw in their claim—that this was “merely a copied song”—and has struck one of the “defects” from the list. At the same time, however, they sent me a screenshot from a simulator as “proof,” claiming that the app crashes. This is mind-boggling, given that this is technical software which requires actual hardware to function. Furthermore, I cannot reproduce this alleged “crash cause” on ANY of my devices—not even remotely! However, I responded with a new proof of excellence as a YT video (real screen capture) running on the iPad Pro in debugging and in release mode. So I am strained what happens next.

Is this all just some kind of bad joke?

After 3 business days the release is still in stuck. And the reviewer ignores all the replies and technical questions. I started an official ‘Appeal’ now.

Wahat? You are reacting that way because of just one rejection?

No. It happened to me each time. It happens with each product upload and (almost any) update multiple times, 90% of the reasons copied from their ‘issue’ catalog are (intentionally) false. You need approximately 50 percent of your entire time for struggling with just that – and an entire flood of Apple-specific workarounds for their unbelievable framework and system quirks. ( Steve may you hear this? )

Update:

I’ve been hunting for a bug in my code for three full working days now. Injecting tons of useless code, compiled 4 new builds. The crash report from the review team was only provided after the fact; it clearly shows that the reviewer used a SIMULATOR on a mac for the test. A screenshot submitted earlier had already reinforced this suspicion.

That is precisely the problem!

I’ve now implemented code to detect the simulator and bypass the crash gracefully.

Folks, this is a highly complex app that leverages the advanced hardware of the latest Apple devices! An app extension that runs in realtime out-of-process, a synchronized Metal video renderer, a complete Metal UI for the AudioUnit with shared memory access between, in short: a complete multimedia experience in one view! Of course it doesn’t run on a simulator—it’s almost certain to crash there! Although these crashes were not in the core, these were artificially created by just tapping the primitive menu buttons in the main app for external resources, like manuals and info page !?

And this is the reason for the total business blockade against me and my product for days now… It is simply UNBELIEVABLE that they use simulators for app review, while we developers have to demonstrate the app on REAL DEVICES.
This all is really a bad JOKE!

The absurd thing about it is that they demand the creation of a user experience while constantly committing that very contradiction.

The last update for the foreseeable future:

Four full days of a futile struggle—hitting a brick wall. Now, out of sheer necessity, I am forced to drastically slash the prices of my premium product lines. App Store revenue has plummeted so sharply that I would barely be able to cover fixed costs in the coming months. Launching the new, innovative product line was urgently needed, yet it is completely stuck in the review process; complaints and inquiries are simply going unanswered. The entire planned phased rollout (with a multimedial concept) is now off the table.

Is this what the end looks like?
Congratulations, WWDC 2026!

t.b.c.


THE STORY CONTINUES: Here is the evolving chronology of an Apple AppSore Review HORROR.

.

The Logic script for auto-transposing any MIDI to any given Chord Progression

There are 2 new videos on our YouTube channel that demonstrate a productivity script we made for the Logic Pro Scripter MIDI plugin.

It allows to pitch snap any chosen MIDI patterns or realtime playing to the correct pitches of a given chord progression on a defined MIDI track or even play anything correctly pitch-snapped live.

( Note: this has nothing to do with Logic’s useless chord track, which unfortunately is quite limited / dysfunctional for normal MIDI patterns and tracks – merely is for this stupid new A.I. ‘session player’ crap… )

Note: Cubase can do correct chord tracking for MIDI for ages now out of the box, Apple!!! Sometimes we could just bitterly cry…

Here is the download for the Logic Pro project file:


The scripts are embedded into this file. Distributing these extra does not make any sense, because a complex internal routing is required for functionality.

Please also read the comments in the script files and take a closer look at the (somewhat tricky) internal routing and setup for this to get it working. However the demo project is set up to work instantly. Just replace eventually missing drivers with your own.

( It should work on the iPad too, but we did not test it yet. Although you cannot read or edit MIDI Scripter with Logic Pro for iPad. Also not sure about the internal MIDI routing capabilities for tracks in the mobile app and the availability of the required Transposer MIDI audio unit. )

The project also demonstrates how complex MIDI to audio unit routing easily can be achieved with the Logic Pro Scripter, which is just a JavaScript client with good interfacing to the host and its hosted plugins. 

Although such basic functionality (a working chord track) actually should be implemented into any good host application by default from the ground up, unlike latest hypes like A.I 'session players' take place and are excessively celebrated ... we do not even use this crap ... ^^

The A.I. hype now seems to damage individual creativity at its best. ^^

ROLAND TR-8S (TR-6S?) – Melodic Script ( for Apple Logic Pro / MainStage )

ROLAND TR-8S – A Melodic Script v1.0 sequenced chromatically in realtime. Only TR-8S is use in this demo. 6 instances of the script are used in the MIDI arrangement.

( We did not check, but the script basically also should work with ROLANDs TR-6S, as the controllers seem to be the same, but reduced count of drum channels (only 6 instead of 11) are available there. )

Melodic capabilities of the Roland TR-8S/6S are unfortunately quite limited. But there are essentially and traditionally two different ways to overcome this limitation.

The first way is often used and just takes multiple drum channels (of the max. 11) for triggering melodic samples with fixed different coarse tuning. This can be used for arpeggios and chords, of course. The disadvantage there is always a drastic reduction of the available channels for just the melodic parts (i.e. with hardcoded arpeggios and melodies across different channels).

A second way is to use automated tuning and coarse tuning on a single channel, which limits the usage for monophonic melodic lines in the manner of arpeggios and sequenced melodies. But editing this is a nightmare. Both methods are cumbersome and difficult to edit and overview.

So we took a closer look at the second method for a useful application. We have therefore written a special MIDI script (for Apples Logic Pro – Scripter – on all platforms), that allows melodic playing with the external sequencer or even with direct MIDI keyboard input in realtime. The script will just be inserted with a MIDI plugin (Scripter – included with Logic Pro) for each desired drum instrument or channel on the TR-8S. Sequencing the TR-8S from a host is also generally a good alternative, because the TR-8S is limited in pattern space and also does not have a song mode.

So we preferably are using the TR-8S like an external tone generator in our studio setup and are sequencing everything directly to the TR-8S’s tone generation.

Per default the device receives MIDI notes and controller messages on MIDI channel 10 (but different keys), so any sequencing of the 11 drum channels can be used to form a complete arrangement or song of any length or complexity. Audio return is by the way on individual stereo channels with the proprietary ROLAND USB driver.

The TR-8S is conceptional a multi-timbre device but monophonic per channel. Chords are still possible with the ‘stacking trick’, using multiple drum channels. The script uses specifically the ‘coarse tuning’ parameter, assigned to the CTRL button on the device for ‘melodic’ drum instruments. If someone presses a key on the keyboard or triggered by the external sequencer, this is automatically translated to a sequence of special controller messages, followed by note on/off message on the correct drum note. Result is a melodic playing like on any usual synthesizer. Possibly even on all 11 channels at ones. This will work for Samples and the FM voices of the TR-8S, althougt the assignment is slightly different then.

The script can be assigned to theoretically mapping all 11 drum instrument channels this way on the TR-8S. So finally, chromatically tuned playing is possible now and chords can be achieved also, if a melodic voice is used on different drum channels simultaneously, with different note tuning.

We have demonstrated the usage and a small demo arrangement here, which exemplary shows the results. We just tested the script this way, it is in no way a demonstration of the sound possibilities on the TR-8S ^^.

The script is used on 6 selected individual instruments (LT, MT, HT for chords, RS, CC and RC for melodies) with samples assigned. The rest of the drum channels is used for triggering drum sounds for the rhythmic parts as usually supposed with the TR-8S. The script is also quite handy for recording melodic lines into the TR-8S pattern memory with ease.

Note: The Apple Logic Pro Sripter is a MIDI plugin audio unit and extremely powerful. It uses usual JAVAScript for modifying MIDI messages in realtime. It should be easily translatable to hosts, which support any kind of scripting for MIDI streams.

You can download the script here as a *.zip file:

TR-8S-Melodic-Script.logicx.zip

Note: The script is embedded into a Logic Pro demo song project, seen in the video. You can save it as a preset for the Logic Scripter and use it with your own compositions as you want.

If you want to play the demo song from the video, you also can download the specific TR-8S preset (kit) here:

TR-8S-User-Kit.zip

Note: The kit is not necessary. You always can set up your TR-8S as you want when using our script preset. The most important part is to know, that the CTRL knob on the device for that specific part (channel) has to be mapped for ‘Coarse Tuning’. This can be a sample or even the FM voices on the TR-8S.

Have fun!

Addendum: We do not know what scripting capabilities other host applications provide for realtime MIDI plugins. But our script is quite basic JavaScript. So it easily could be ported to other sequencers with appropriate scripting support. However, the code for the script is here:

/*
	With Scripter, you can use JavaScript to create your own custom MIDI processing 
	effects, including slider controls for real-time interaction.

	For detailed information about using Scripter, including code samples, 
	see the MIDI plug-ins chapter of the Logic Pro X Effects or 
	MainStage 3 Effects manual.
*/


/////////////////////////////////////////////////////////////////////
/* THIS SCRIPT IS FOR THE ROLAND TR-8S TO ENABLE CHROMATIC PLAYING */
/////////////////////////////////////////////////////////////////////

// written and provided by midi.digitster.com 2026

/*
	USAGE & NOTES:
	
	- make sure you trigger all external notes on MIDI channel 10 (default drum channel)
	- select the correct instrument with the popup menu for chromatic playing
	- initialize all tune values for the selected instrument on the TR-8S to defaults
	- assign 'coarse tune' to CTRL knob on the TR-8S for the selected instrument
	- use an extra track for each instrument playing chromatically between C1 and C5
	- use rhythmic patterns on an extra track, do not interfer with melodic instruments
	- polyphony is conceptually not supported on the TR-8S (only mono melodies)
	
	- see example arrangement for usage 
*/

// Please note, that not all voices from the TR-8S can be tuned this way. 
// Some voices do not support coarse tuning.




// user interface

var PluginParameters = [{name:"Instrument Channel", type:"menu", 
                        valueStrings:["BD", "SD", "LT", "MT", "HT", "RS", "HC", "CH", "OH", "CC", "RC"],
                        defaultValue:11, numberOfSteps:11}];

// initializations

const step = 127 / 48;
const values = new Array(49);
for (i = 0; i < 49; i++)
{
	values[i] = Math.round(step * i);
}
//Trace(values);


// MIDI handling ///////////////////////////////////////////////////////////////

function HandleMIDI(event)
{
	//event.trace();
	//event.send();
	//return;
	
	if (event instanceof NoteOn) 
        {
    	        var cc = new ControlChange; // make a new control change message
		cc.channel = 10; // trigger channel
    	        cc.number = getController(); // set it to controller number
    	        cc.value = getValue(event.pitch); // set the controller value
    	        cc.send(); // send the controller
    	        //cc.trace(); 

    	        var tone = new NoteOn(event);
    	        tone.channel = 10; // default trigger channel
		tone.pitch = getKey(); // set base pitch
		tone.send();
		// tone.trace();
	}
	else if (event instanceof NoteOff) 
	{
	        var tone = new NoteOff(event);
    	        tone.channel = 10;
		tone.pitch = getKey(); 
		tone.send();
		//tone.trace();
	}
}

// sub functions ///////////////////////////////////////////////////////////////

// get the coarse tuning value
function getValue(pitch)
{
	var index = pitch - 36;
	
	if (index >= 0 && index < 49)
	return values[index];
	
	return values[24]; // fall thru
}

// get the coarse tuning controller for selected instrument
function getController()
{	
	var result = GetParameter("Instrument Channel");

	if ( result == 0 ) // BD
	return 96;
	else if ( result == 1 ) // SD
	return 97;
	else if ( result == 2 ) // LT
	return 102;
	else if ( result == 3 ) // MT
	return 103;
	else if ( result == 4 ) // HT
	return 104;
	else if ( result == 5 ) // RS
	return 105;
	else if ( result == 6 ) // HC
	return 106;
	else if ( result == 7 ) // CH
	return 107;
	else if ( result == 8 ) // OH
	return 108;
	else if ( result == 9 ) // CC
	return 109;
	else if ( result == 10 ) // RC
	return 110;
	
	return 0; // fall thru, something went wrong

}

// get the trigger key for selected instrument
function getKey()
{
	var result = GetParameter("Instrument Channel");
	
	if ( result == 0 )  // BD
	return 36; // or 35
	else if ( result == 1 ) // SD
	return 38;  // or 40
	else if ( result == 2 ) // LT
	return 43;  // or 41
	else if ( result == 3 ) // MT
	return 47;  // or 45
	else if ( result == 4 ) // HT
	return 50;  // or 48
	else if ( result == 5 ) // RS
	return 37;  // or 56
	else if ( result == 6 ) // HC
	return 39;  // or 54
	else if ( result == 7 ) // CH
	return 42;  // or 44
	else if ( result == 8 ) // OH
	return 46;  // or 55
	else if ( result == 9 ) // CC
	return 49;  // or 61
	else if ( result == 10 ) // RC
	return 51;  // or 63
	
	return 0; // fall thru, something went wrong
}

// EOF

Cubase Patch Map for Roland Jupiter X/Xm

We did not find one elsewhere.

The Jupiter X / Xm is a nice hardware synthesizer, which is 5 channel multi-timbre and has included sets of thousands of factory voices. These patches must be selected with some cryptic MSB/LSB bank select commands.

We created a clickable patch map for Steinberg Cubase, that at least enables to select presets from the various banks in the Jupiter X / Xm for all channels. (Channel 5 is reserved by Roland for the drum sets, which are mapped too.)

All documented internal banks are mapped with correct MSB/LSB patch change commands but the names are generic (yet?) and not the real names from the Jupiter’s memory. Putting in thousands of patch names into a Cubase patch map editor is a nightmare. (Apple’s Logic Pro allows for instance easy import of lists for such and this is time consuming too but doable with some effort.) If someone finds the time to edit 5000++ patch names for Cubase manually, line by line, taken from the Roland docs, this would be awesome, but our basic goal (multi channel patch selection) is done with the current patch map.

We also mapped the scene patches, which should be sent on a MIDI channel other than 1 to 5 (reserved for the parts), i.e. MIDI channel 16. Different to the documentation, the scene patches are not organized in special small virtual banks but according to Rolands MIDI implementation chart in 4 extra banks a 128 patches with their own MSB/LSB bank select commands. Not supported are the waveform IDs from the doc, as these are not even useful nor selectable via MIDI commands.

The Jupiter X / Xm is a multi emulation device, which even features for instance nearly thousand of JX-5080 voices alone, alongside with loads of banks of their classic virtual analog emulations and also a large ‘common’ tone bank with all the production basics. All these patches are organized in several banks inside the memory (ROM) of the synthesizer. Also user bank tones can be selected this way. Total access to the available voices from the Cubase production environment becomes quite easy now.

There is a basic video, how it works on our youtube channel:

All the sound comes from the Roland Jupiter Xm external hardware synthesizer, controlled by MIDI.

The Cubase (version 13) patch map can be downloaded below. You can import the device map into Cubase after unzipping the file to your hard disk. The file is in XML format and is editable and widely extendable with Cubase afterwards.

There is a useful formula for calculating the strange Cubase 14 byte numbers for the bank select command: Just do : (128 * MSB number) + LSB number : from Roland’s documentation above. ^^ Alternatively the bank select commands in correct order could be done separately too. (This is merely of a meaning if you want to extend the patch map yourself.)

Price Drop Mania and its Supporters

Recently a very popular app tracker site announced their shutdown. Most likely for financial reasons and missing support from Apple.

We find this is a logical consequence to the current, still raising situation.

Especially niche businesses are suffering from the current trend of overdriven price drop mania. It is a bad trend and some developers do then react with virtualised “normal” prices – this is raising the prices in general – as they otherwise could not keep their cost compensation for the app development. Because now they are forced to continuously drop prices and making one sales action after another, which short or long term, will result in a financial disaster.

I am wondering, why Apple even allows apps in their own AppStore, which obviously perform a kind of “smart developer punishment” by flagging raised prices in red (bad prices) normal prices in orange and dropped in green (good prices). So only dropped prices are green (and thus good). This is very consumer centric and also manipulating on the one side and potentially business damaging on the other side, the developers side – and also negative for Apple.

Nobody is raising prices for fun.

A price increase judgement or punishment of any sort is basically against Apples rules and the existing sales conditions and contracts. Developers are totally free to adjust their prices to the requirements and nobody, especially a 3rd party should not be allowed to perform any judgement or even punishment on that matter.

Also no developer is forced to do a price drop ever.

Developers have a strong contract with Apple. A third party cannot expect that Apple cooperates with them, if they perform continuously business-damaging promotional actions based on Apples own AppStore data, which is usually grabbed by just hijacking (stealing) their officially available and published data.

So for instance some of such 3rd party providers have insufficient and obviously incomplete data sets, actually hindering especially small developers to even appear there with their full set of releases (as happened with us : 9 of our releases were just not even in the 3rd party app’s database and thus, out of any access by the users of this app).

And some people, who see themself as kind of “influencers” or self proclaimed promoters obviously are thinking, they easily could (mis)use such platforms for playing God and for instance hindering selected developers to appear by promoting just everything but those.

There are several dangers with such app trackers, dangers of potential manipulation; and we would rather like to support Apple, as we have clear contracts with them. We also never have seen something similar discriminating from Apple. And if Apple chooses not supporting such providers and even removing their misused services from access this way or even removing such questionable app-tracker apps from their AppStore, we are absolutely with them.