Brendan in Tech / Boordcomputer

De boordcomputer

Mijn grote project. De hardware: een computer met touchscreen en uitbreidingsmodules om alles aan boord te schakelen en te bewaken. De software heet BKOS.

Het project

Eén scherm voor alles aan boord

De boordcomputer bestaat uit de computer met het touchscreen en uit uitbreidingsmodules die je er naar behoefte aan koppelt. Samen schakelen en bewaken ze wat er aan boord staat: verlichting, pompen, koeling, sensoren.

Deze pagina gaat over de hardware: wat hij kan en wat hij moet doen. Welke software erop draait, lees je bij BKOS.

Impressie, geen schermafdruk. Echte foto's van het 7-inch paneel volgen.

Doel

Wat hij moet doen

Schakelen

Lichten, pompen en apparaten aan en uit zetten, op het scherm of automatisch.

Bewaken

Zien wat er aan staat, en gebeurtenissen of storingen melden.

Meegroeien

Beginnen met weinig en modules toevoegen als je meer wilt aansturen.

Eenvoudig blijven

Zo weinig mogelijk onderdelen die stuk kunnen of die je moet programmeren.

Het uitgangspunt

Domme modules, slimme computer

De modules worden achter elkaar doorgelust met een UTP-kabel. Ze bevatten geen programmeerbare onderdelen: alleen eenvoudige onderdelen, zoals schuifregisters, die volledig door de boordcomputer worden aangestuurd.

Module 1LogischUitvoerendModule 2LogischUitvoerendModule 3LogischUitvoerendBoordcomputerESP32-S3 / 7"UTPUTPUTP...lampenpompensensoren
Waarom dat zo is

Alle logica zit op één plek, in de software. Als er iets misgaat, ligt het dus aan de software en kan ik het op die ene plek onderzoeken, of aan kapotte hardware. Er zit niets tussenin dat een eigen leven leidt.

Modules

Modulair, ook binnen de module

Elke module bestaat zelf uit een logisch en een uitvoerend deel. Zo combineer je wat je nodig hebt.

Logisch deel

Het deel dat signalen inleest of doorgeeft: de schuifregisters die de ingangen en uitgangen van de computer verlengen.

Uitvoerend deel

Het deel dat echt iets schakelt of meet: de stap van laag-voltage signaal naar lamp, pomp of sensor.

Herkenning

Elke module meldt zich met een ID, zodat de computer weet wat er aan de kabel hangt.

Soorten

Er zijn onder meer schakelmodules, sensormodules, bypassmodules, hubs (analoog en UART) en logische modules, naast de hoofdmodule zelf.

8 / 16kanalen per module
30modules maximaal
240kanalen in totaal
UTP

De kabel en zijn layout

Al vroeg in het project is de UTP-kabel als verbinding gekozen, met een vaste indeling van de aders. Die indeling gebruik ik nog steeds. Wie eigen hardware voor BKOS wil maken, moet deze layout volgen, dan werkt het met elke andere module.

Pinout volgt

De exacte indeling per RJ45-pin en aderkleur staat nog niet op de site. Dat vul ik aan zodra het schema en de foto's erbij staan.

SignaalWat het doetRJ45
Seriële klokSchuift de data bit voor bit door de schuifregisters.volgt
Parallelle klokZet de ingeschoven waarden tegelijk op de uitgangen en leest de ingangen in (latch).volgt
Data uitVan de computer naar de modules: de uitgangen (74HC595).volgt
Data inVan de modules naar de computer: de ingangen (74HC165).volgt
Module-IDDe modules melden hiermee wat ze zijn.volgt
Voedingsspanning12 volt, of in elk geval de voedingsspanning van het systeem.volgt
Logische spanning3,3 of 5 volt, voor de chips op de modules.volgt
Ontstaan

Van breadboard tot 7 inch

Een project dat langzaam groeit, met twee grote verbeterslagen per jaar.

2022

Het begin: een alarm voor een stalen boot die water kon maken.

2023

Een breadboard met een Raspberry Pi Pico (de eerste): berichten sturen, een klein scherm, schuifregisters om met weinig pinnen veel te schakelen.

2023-24

De eerste eigen printplaten, puur op functie ontworpen (versie 0.2 in december 2023, versie 0.3 in mei 2024, versie 0.4 in november 2024). Al vroeg kwam de UTP-kabel met de layout die ik nu nog gebruik.

2024-25

De ontdekking van de ESP32 en van displaymodules, tot en met het 7-inch scherm dat nu de basis is. Een mooier ontwerp met behuizing en een tweedelige printplaat.

2025

Versie 1.5 en 1.6 (mei tot juli 2025): schakelmodules in een budget- en een premiumuitvoering, een sensormodule, een bypassmodule, een seriële module en een moederbord voor het 4-inch scherm.

2025-26

Meer functies en meer modules, aangestuurd door BKOS op de ESP32-S3.

Versienummers

Zo lees je een versie van een printplaat

Ik nummer mijn hardware als publicatie.iteratie.id-code.datumHW. Zo valt er veel af te lezen uit het nummer zelf. Het voorbeeld is de seriële module (BPC 0.5.0.250511D1616).

0.5.0.250511D1616
publicatie

0

Telt per project. Een eerste versie is altijd 0: nog niet goed genoeg getest om te delen.

iteratie

5

Loopt op elke keer dat ik een set printplaten maak. Nieuwe hardware begint meteen bij de dan huidige iteratie, niet bij 0.

id-code

0

De code die bij het soort printplaat hoort.

datum

250511

De datum van het ontwerp, als jaar, maand en dag (hier 11 mei 2025).

HW

D1616

Een letter voor het soort behuizing van de onderdelen (package), soms gevolgd door de belangrijkste chip: bij een schakelmodule het type mosfet, hier het ATtiny-nummer van de seriële module.

Hardware die goed blijkt

Blijkt een stuk hardware zonder aanpassing goed te zijn, dan verhoog ik alleen de publicatie. Er is technisch niets veranderd, dus de iteratie blijft gelijk.

Bestanden

Printplaten en behuizingen

De bestanden voor de hardware staan op mijn tweede GitHub-account. Zie hierboven hoe de versienummers zijn opgebouwd.

Boordcomputer_printplaten

Alle printplaten als gerber-bestanden, per versie, met bestellijsten (BOM en CPL) en testresultaten.

Behuizing

3D-printbare behuizingen: profielbehuizing, schakelmodule, sensormodule, bypassmodule en de 2,8-inch computer.

Boordcomputer_project

Het oorspronkelijke project: de eerste code, de eerste printplaten en de eerste behuizingen.

Testen en aanpassingen

Ik test de printplaten zelf en laat in de video's en in de readme van de repo weten of ze werken en welke handmatige aanpassing nodig is. Lees dat dus voor je bestelt.

Zelf bouwen

De bouwgids is in de maak

Een onderdelenlijst, schema's en foto's komen op de site. Tot die er zijn, staat alles op GitHub. Loop je ergens op vast, vraag het gerust.