Hallo allemaal / Beste ontwerper,

Ik wil een custom all-in-one printplaat (PCB) bouwen voor mijn flight simulator cockpit met behulp van MobiFlight en ProSim.
Tegen betaling.
Het is de bedoeling om de microcontroller, de shift registers en de stroomvoorziening allemaal op één enkele PCB te integreren. Dit zijn de specificaties voor het ontwerp:

1. Microcontroller: Ik wil een Arduino Mega Pro (Embed) board gebruiken, welke rechtstreeks op deze PCB gesoldeerd wordt door middel van pinheaders.
2. Uitgangen & Chips: De printplaat moet de maximale capaciteit van MobiFlight gaan benutten en krijgt 24 stuks 74HC595 shift registers om in totaal 192 individuele LED-uitgangen aan te sturen. Omdat mijn LED-componenten al ingebouwde weerstanden hebben op hun eigen printplaatjes, zijn er geen voorschakelweerstanden nodig op deze hoofdprintplaat. De 192 uitgangspinnen moeten rechtstreeks naar schroefklemmen of pinheaders lopen.
3. MobiFlight Bedradingsarchitectuur (Maximale configuratie):
* Om te voldoen aan de softwarelimiet van MobiFlight (maximaal 4 chips / 32 uitgangen per keten), worden de 24 chips opgedeeld in 6 aparte dataketens van elk exact 4 chips.
* Alle 24 chips delen een Gezamenlijke Clock (Arduino Pin 12) en een Gezamenlijke Latch (Arduino Pin 10).
* De datalijnen (SER) worden als volgt verdeeld over de 6 ketens:
* Keten 1 (Chips 1-4): Aangestuurd door Arduino Pin 11
* Keten 2 (Chips 5-8): Aangestuurd door Arduino Pin 9
* Keten 3 (Chips 9-12): Aangestuurd door Arduino Pin 8
* Keten 4 (Chips 13-16): Aangestuurd door Arduino Pin 7
* Keten 5 (Chips 17-20): Aangestuurd door Arduino Pin 6
* Keten 6 (Chips 21-24): Aangestuurd door Arduino Pin 5
4. Stroomvoorziening & Volledige Scheiding (Cruciaal):
* De printplaat krijgt stroom via een externe 5V 10A voeding (via een stevige schroefklem of XT60-stekker).
* De Arduino mag GEEN stroom leveren aan de chips of de LED's. De VCC (Pin 16) van álle 24 chips en de pluspolen van de LED-uitgangen moeten rechtstreeks worden gevoed vanuit de externe 5V voeding.
* De externe 5V- en GND-lijnen moeten brede koperbanen (power busses) op de PCB hebben om veilig de stroom aan te kunnen wanneer alle lampjes branden.
* Graag een houder opnemen voor een 5A autozekering of glaszekering op de hoofdlijn van de externe 5V stroomingang voor de veiligheid.
* Er moet een 100nF ontkoppelcondensator dicht bij de VCC-pin van elk van de 24 chips geplaatst worden.
* De GND (min) van de externe voeding, de GND van de chips, de LED-uitgangen én de GND van de Arduino Mega Pro moeten allemaal met elkaar verbonden zijn om een Common Ground (gedeelde massa) te vormen voor de datasignalen.

Zou iemand mij kunnen helpen met het ontwerpen van dit schema en de PCB-layout, of mij in de juiste richting kunnen wijzen? Advies over het ontwerpen van de gescheiden stroombanen is zeer welkom!
Alvast bedankt!
------------------------------
Uiteraart tegen betaling.

Groet dennis.

Jouw Arduino Mega Pro staat niet op de lijst met ondersteunde borden.

https://docs.mobiflight.com/boards/

Ik zou voor een Raspberry Pi Pico 2 gaan, die kost rond de 6€

Ik zou geen 74HC595 gebruiken, maar de TPIC6B595; dat is een 74HC595 met FET-uitgangen.

Heb je geen input-shiftregisters / analoge ingangen nodig ?

wie heeft die tekst geschreven? lijkt wel een AI samenvatting te zijn. ik herken er bepaalde zinsopbouw van met dan telkens zo een woordje tussen haakjes.

indien dit zo is, controlleer de arduino pinnen. AI slaat wel vaak de bal mis door een arduino pin aan één of andere IC te hangen en dat de arduino vastloopt. omdat deze pin vrij moet zijn bij boot. vermoedelijk zal die PWM pinnen of andere speciale pinnen als data outputs hebben gebruikt. niet dat dit een probleem is, maar bij het programmeren komt die fout dan te voorschijn dat dit een conflict geeft met een andere functie (bv sommige pwm pinnen hebben een gezamelijk deel, en als je zo een pin dan misbruikt voor iets anders, werkt een deel niet meer)

iets dat ik uit ervaring ook al veel heb meegemaakt met AI. zou erg zijn als de pcb klaar is, en je een heleboel banen mag doorsnijden en kabels mag hersolderen

1 klok naar alle chips, volgens mij lukt dat niet zonder buffer ic. die arduino pin 12 kan dat niet leveren.
en zwevende pinnen, AI is daar een krak in om die open te laten en rare problemen te krijgen.
stel je die vraag in een 2de venster, komt die daar ineens af met die fouten

Op zondag 9 augustus 2026 06:41:49 schreef Roland van Leusden:
Jouw Arduino Mega Pro staat niet op de lijst met ondersteunde borden.

https://docs.mobiflight.com/boards/

daar springt dus die AI volledig naar boven
Arduino Mega Pro (Embed) = mega 2560 pro mini wat er wel staat.

een mens zou dus de "2560 pro mini" typen, AI typet "mega pro (embed)"

@TS
het beste bouw je een prototype van dit systeem, desnoods deel per deel, en teken je het schema uit.
dit AI gegenereerd zomaar op een pcb zetten, dan geef ik het 99% kans dat het niet direct werkt.
zelf al wij zelf een pcb uittekenen, zitten er nog fouten in dat bij versie 2 of zelf versie 3 gefixed wordt

Als je op Mobiflight kijkt, gaan ze daar ook van een modulaire opbouw uit.
Een grote print is vele malen duurder dan 6 printjes met 4x TPIC6B595
En een Raspberry Pi Pico 2 is meer toekomstvast en goedkoper dan het al verouderde Arduino Mega-platform.

inderdaad , dit was a AI opgezet verhaal . Ik dat dat ie het voor mij goed kon vertellen wat ik wilde.
Helaas begon ie het al in de fout te gaan met de verkeerde arduino board . Dus zal de rest ook niet goed zijn wat Fcapri al zij.
Ik dacht dat 1 grote pcb het makkelijkst was , Maar heb me totaal niet bedacht hoe complex dat eigenlijk was/is .
Het handigst is dan toch klein te houden.

mijn dank dennis.

Ik dacht Net als deze pcb https://www.737diysim.com/product-page/mobiflight-interface-board, Waar ik er al twee van heb , en het werkt. maar dan allemaal shift register er in.

[Bericht gewijzigd door grazybean op (18%)]

Scheiden lijkt niet triviaal, de +5 VUSB zit direct aan de 5V. Het eenvoudigste lijkt de Mega te voeden vanuit de USB die nodig is voor de data, en de rest van de schakeling uit een behoorlijk zwevende 5V voeding die ingeschakeld wordt als de 5VUSB op komt. Dan is er ook geen probleem.
Werkelijk scheiden met optocouplers kan ook, maar die zullen vrij snel moeten zijn. 6N139 of soortgelijks, met een pittige pull up. Werkt wel gelijk als buffer.

10 A lijkt onhandig veel, moderne leds hebben maar enkele mA nodig en de uitgangen van de 74HC595 kunnen met moeite iets van 6 mA leveren. Dat zou samen ruw 1 A zijn. Als 10 A om enige rden nodig is de voeding opdelen in minstens vier apart gezekerde delen, opdat er in de vermoedelijk dunne bedrading bij problemen geen brand kan ontstaan.

Een vier lagen print met een apart power- en GND plane is weinig duurder en kan zo een digitaal ontwerp met veel stroom in de buurt een stuk verbeteren / vereenvoudigen. Plaats voldoende ontkoppeling, extra elco's na zekeringen.

De pro mega op headers plaatsen. Je weet maar nooit, de-solderen is anders een hele klus. Vraag mij niet hoe ik het weet.

Denk eens aan veerklemmen voor het aansluiten van draden. Afhankelijk van de situatie kan dat handiger zijn dan schroefjes of headers.

Voor iemand die "handig" is met de computer en internet en met voldoende basiskennis elektronica, maar zonder ervaring in EDA moet dit in een intensief weekeinde wel tot een eerste versie te ontwerpen zijn.
Eerst een recente Kicad tutorial zorgvuldig doorwerken, componenten bij elkaar zoeken, schema tekenen, print schetsen. Niet te veel gaan prutsen en poetsen, resultaat snel hier delen voor terugkoppeling. Het gaat (eerst) om de hoofdzaken.

Ik zou wegblijven bij AI, al is het maar omdat het daarna niet meer aantrekkelijk is om te helpen.

[edit - Oh. Dit is werkelijk een AI-topic. Ik heb daar actief geen belangstelling voor en zal het verlaten, veel succes! ]

en de uitgangen van de 74HC595 kunnen met moeite iets van 6 mA leveren.

Exact waarom ik de TPIC6B595 adviseerde, dan kun je ook kleine gloeilampjes aansturen.

1 grote pcb zou wel lukken, maar zou het ook meer opsplitsen.
de arduino zou ik in headers pluggen.
en op die pcb zou ik de schuifregisters ook zetten.

andere printen zou je met headers en flatcables aan elkaar kunnen zetten. is er dan eens een fout in een pcb, kan je die kleine pcb gewoon los vervangen.

als het 1 grote pcb is, lukt dat moeilijker.

stacking pcb's is misschien ook doenbaar. waarbij je dan de arduino en een aantal doorverbindingen hebt, op een 2de print waar een aantal schuifregisters en kabels zitten, naar een 3de print met de volgende serie schuifregisters....
je kan dan verschillende keren dezelfde print laten maken en met jumpers dan bepalen op welk kanaal (arduino pin) ze zitten

Als ik 192 LED's moest aansturen dan zou ik heel snel naar WS2812 LED's gaan.
Dan heb je genoeg aan 1 pin en kun je elke LED aansturen, zowel helderheid als kleur.

192 uitgangen betekent ook 192 draden. Dat is een dikke bundel en gevoelig voor fouten.

Eens, maar hij wil MobiFlight gebruiken dat geen WS2812-leds ondersteunt.
Van kennissen met flight simulators weet ik dat ze vaak nog gloeilampjes gebruiken.

Voor een flightsimulator ga je dan wel alles goed moeten uitdokteren wat op welk adres zit. Ik heb ooit een klok gemaakt met zo ws2812 in een vierkant geplakt. Het was een heel gepuzzel om elk segment te definieren want die volgen niet op elkaar op.

Dus bij een flight simulator ga je een overzicht plan moeten maken waar elk ledje zit in de simulator.

Veel minder hardware, veel meer programmeerwerk.

Je kan natuurlijk aan AI vragen om een library te maken die alles vertaald.
Waardoor in uw code dan staat.
Led_flaps =on

En die library zal dan zeggen led[218] = high

Als je op Mobiflight kijkt, gaan ze daar ook van een modulaire opbouw uit.
Een grote print is vele malen duurder dan 6 printjes met 4x TPIC6B595

valt relatief mee.

Een klein print als maak kosten 2,-/4,- + verzendkosten 13,- * en BTW
Voor een grote print maak kosten ca 12,- / 18,- + Verzendkosten 16,- * BTW

Maar 1 grote PCB is ook 20x beter dan 6 losse wat mij betreft.

Maar 1 grote PCB is ook 20x beter dan 6 losse wat mij betreft.

Maar een modulair opgebouwd systeem valt ook wat voor te zeggen; dan zijn in de toekomst gemakkelijker modificaties mogelijk door één module te vervangen, i.p.v. het hele systeem.

Nadeel is de grote hoeveelheid interconnects. Dat maakt het duurder (connectors) en meer risico op contactproblemen.

Als het systeem 100% uitontwikkeld was en er geen modificaties nodig gaan zijn in de toekomst dan zou ik voor één PCB kiezen; in andere gevallen voor een meer modulair systeem.

In werkelijkheid is avionica is ook volgens modulaire principes opgebouwd, met die hele mooie grote dure ronde Amphenol-connectors om het allemaal betrouwbaar op elkaar aan te sluiten :)

Daarnaast schelen losse modules bedrading; je kunt ze dicht bij de lampjes/ledjes plaatsen. Naar de shiftregistermodule toe kan prima met een stukje netwerkkabel.

Ik dacht dat 1 grote pcb het makkelijkst was , Maar heb me totaal niet bedacht hoe complex dat eigenlijk was/is .
Het handigst is dan toch klein te houden.

Ik zie die complexiteit niet het is juist makkelijker. Om de mega en de 24 ic compact te houden en op 1 compacte pcb kan ik de mega isoleren als er een 5V zekering uitvalt. Als je alles los doet en van een klein IO bord valt de voeding weg dan moet je daar toch ook weer een een IC bijzetten die de data lijnen van mega gaan isoleren.

Maar beide kan Als je het makkelijk lijkt om 6x losse modules te hebben dan zou ik voor de mega een adapter bord voorstellen waar je dan via een DB connector en afgeschermde kabel de verbinding kan maken. Of via RJ45 connectoren en netwerk kabel.

Mijn zus werkte ook met 1 grote print in het begin van haar bus-dashboard, maar is daar uiteindelijk van terug gekomen vanwege de complexiteit.

Storing zoeken op 1 enorme print die met al z'n verbindingen een rotding is om uit te nemen is veel lastiger dan het uitnemen van een module met een 'paar' verbindingen.

Ook in de luchtvaart wordt vrijwel alleen maar modulair gewerkt, zodat er gemakkelijk naar storingen gezocht of vervangen kan worden. Dat levert soms wel indrukwekkende draadbomen op inderdaad, in sommige instrumenten lopen gewoon bijna 400 individuele aders naar de printen.

Ik kwam bij lcsc leuke connectoren tegen, kun je gelijk draadjes inprikken. 0.43€ als je er 80 neemt.

Number of Pins 8P
Wire Gauge AWG 14~24
Current Rating 10A

https://www.lcsc.com/product-detail/C2898705.html

[Bericht gewijzigd door Roland van Leusden op (16%)]

Leuk, maar dat werkt alleen voor massieve draad.

En een pitch van 5.08mm is ook best veel. Dat is dan bijna een meter breed voor 192 pinnen.

[Bericht gewijzigd door deKees op (50%)]

of draad met adereinhulsjes.

Phoenix Contact heeft trouwens wel klemmen waar je soepele draad gewoon in kunt steken: push-X.

Deze ken ik niet, maar bij sommige modellen werkt soepel prima, mits ze open gedrukt worden. Wat eigenlijk ook nodig is bij dun massief.

Ik heb even in die Github van Mobiflight zitten kijken, maar het wordt mijn niet vlot duidelijk of en zoja wat de beperkingen zijn. Vanuit de eenvoud zou ik neigen:

  • Zo veel mogelijk USB te gebruiken voor data en power.
  • Voor gewoon i/o geen extra logica toe te voegen buiten de µC. Die mega heeft 50+ pinnen, dat schiet op. Moderne leds geven op een paar mA licht zat.
  • Zware verbruikers zoals lampjes via een open collector / ULN2308 te schakelen. Neem dan per board een aparte, niet te zware en zwevende voeding. Dan zijn er ook geen voeding scheiding- en zekering problemen.

Dus een stevige USB hub met daaraan een bergje µC's, op aparte printjes. Per instrument of module of zo. Dan blijft het overzichtelijk. Dat is vast niet de goedkoopste optie, maar het plezier zit hem er in iets knaps te maken lijkt mij.

Als de leds in clusters bij elkaar zitten -zoals op de foto van Ronald hierboven- dan kun je beter een apart printje maken voor elke groep leds. Als je dan ook de schuifregisters op dat printje erbij zet dan heb je vandaar nog maar een paar draadjes nodig naar de centrale.

zo zou ik het ook doen.
elk 'display' zijn eigen controller geven (arduino nano ofzo). en, via RX/TC of ander protocol vanuit een hoofd controller gewoon de data doorsturen wat er moet gebeuren.

dit geeft als voordeel dat je een losse module afwerkt, er een pc aanhangt en wat commandos geeft om te zien of de leds oplichten.
volgende module bouwen, commandos geven en leds laten oplichten.
je kan dan module per module bij schakelen tot alles werkt.

wil je ineens toch 1 module moderniseren, is het enkel de eindhardware dat je wisselt. de commandostructuur blijft behouden

dan krijg je allemaal losse 'instrumenten' van je flight simulator die je gewoon met een netwerk (soort canbus) aanstuurt.
Zo een 10-12jaar geleden was ik met simpele arduino nano's bezig in mijn golf 2 (digitale brandstofmeter, digitale temperatuurmeter, clock, parkeersensoren...).
ik liep tegen een geheugen probleem aan, en ging de voorkant met een arduino doen (temperatuur, clock, display), en de achterkant (parkeersensoren, brandstofmeting). en ze beide laten babbelen met elkaar.

nu doe ik dat thuis ook min of meer.
mijn electriciteitsmeter heeft een ESP, mijn thuisbatterij heeft een ESP, mijn 2de thuisbatterij heeft een ESP, mijn energieoverzicht heeft een ESP, mijn energiemonitor aan pc en keuken zijn elk een ESP... en allemaal babbelen ze met wifi tegen elkaar. 1 cluster van ESP's enkel met een 5V voeding eraan

[Bericht gewijzigd door fcapri op (16%)]

Identieke losse boards lijkt mij ook handiger, dat scheelt een boel kabels, en als iets niet werkt kun je zo'n board verwisselen.

Op zondag 9 augustus 2026 16:36:18 schreef benleentje:
[...]. Als je alles los doet en van een klein IO bord valt de voeding weg dan moet je daar toch ook weer een een IC bijzetten die de data lijnen van mega gaan isoleren.

Waarom zou je dat doen, als een weerstandje in serie met elke datalijn ook genoeg is.

Ik ga mee met @fcapri: controllerbordjes zijn zo goedkoop geworden dat er niet moet op bespaard worden. Mijn idee:
* een centrale computer die vanuit Mobiflight kan worden aangesproken, Arduino als die krachtig genoeg is, zoniet Raspberry. Een mega lijkt mij zeker overkill, tenzij er nog veel andere dingen aan te sturen zijn;
* deze is I2C-master;
* maak groepjes van 8-14 leds, of misschien zelfs nog meer;
* elk groepje wordt aangestuurd door een nano of esp32devkit;
* deze subprocessors zijn I2C-client.
* of de subprocessors een eigen printje krijgen dan wel op de "hoofd"print komen, is apart te bekijken; maar een hoofdprint met alles erop en eraan wordt wel heel erg groot.

Overigens heb ik wel wat tijd, en best interesse in dit project - al was het maar omdat ik zelf vele uren heb doorgebracht met flightsimmen. Privebericht welkom.

[Bericht gewijzigd door Paulinha_B op (11%)]

Persoonlijk zou ik CAN bus gebruiken, maar dat is omdat ik gewend ben alles met CAN aan elkaar te knopen; het is niet echt nodig in dit geval.

I2C klinkt als een goed plan. Je kunt overwegen om driver ICs te gebruiken die kortsluitvast zijn.