Bootloader
Software en Firmware
Op veel modules uit het VPEB programma zit een microprocessor. De module is daarmee feitelijk niet meer of minder dan een computertje, gespecialiseerd in het uitvoeren van een specifieke taak.
Een computer vereist software om te kunnen werken, zo'n module met processor dus ook. Omdat het hier gaat over software die je als gebruiker niet zo maar kunt aanpassen praten we hier niet over "software", maar over "firmware". Dit om aan te geven dat die software minder veranderlijk is dan software die op een normale PC draait.
Minder veranderlijk is dus niet helemaal onveranderlijk. Voortschrijdend inzicht leidt er toe dat het soms wenselijk is om die firmware aan te passen, zodat de werking van de module een beetje verandert, of zelfs flink verandert door het toevoegen van nieuwe mogelijkheden. Zo kon je bijvoorbeeld met de TM51 print ooit analoge treinen besturen. Door een firmware aanpassing is de functionaliteit uitgebreid naar Hybride besturing, zodat je naast analoge treinen ook treinen met een DCC decoder digitaal kunt besturen. Het verschil is niet meer dan een firmware aanpassing, de print en componenten die daar op zitten is 99% identiek. Toevallig was er in dit specifieke geval ook een ander type processor nodig omdat de oude simpelweg te traag was om die nieuwe functies aan te kunnen, maar het voorbeeld geeft wel aan wat we hier bedoelen.
Bootloader
Traditioneel wordt de firmware door VPEB in de processor geladen door middel van een programmeerapparaat. De meeste gebruikers beschikken niet over zo'n programmeerapparaat zodat bij een firmware-update de processoren terug moeten naar VPEB.
Modernere processoren beschikken over een Bootloader-voorziening. Zo'n voorziening is een afgeschermd stukje geheugen in de processor waar een speciaal programmaatje kan worden geinstalleerd: de Bootloader. Vanuit dat afgeschermd stukje geheugen is de Bootloader in staat de rest van het programmageheugen te voorzien van nieuwe firmware.
Uiteraard kan de Bootloader dan niet alleen, immers de Bootloader kan geen firmware verzinnen. De firmware (dus de software die zorgt voor het daadwerkelijk functioneren van de module) moet door "iets" worden aangeleverd. Dat aanleveren gebeurt door middel van een normale PC. Op die PC draait dan weer een toepassing (Bootloader), die communiceert met de Bootloader in de processor. De Bootloader op de PC (software) en de Bootloader in de processor (firmware) zorgen er samen voor dat je als gebruiker zelf nieuwe firmware kunt installeren zodra die door VPEB wordt vrijgegeven. De modules en processoren die zijn voorzien van een Bootloader-voorziening hoeven dus niet meer terug naar VPEB voor een update.
Welke modules?
De eerste module die beschikte over een Bootloader was de OC32. Hier was een Bootloader noodzaak, immers de processor van de OC32 zit op de print gesoldeerd. Dat zou betekenen dat zonder Bootloader bij elke update de hele module terug zou moeten naar VPEB.
Sinds januari 2013 is elke processor van elke VPEB module die nieuw wordt uitgeleverd voorzien van een Bootloader. Het betreft hier concreet:
- RM-U
- UCCI/UCCI-s
- OC32
- TM44
- TM-H
- PM32
Al deze modules kunnen dus door de gebruiker zelf geactualiseerd worden.
Voor de TM-H en PM32 geldt dat er wel een bootloader in de CPU zit, maar er is geen update-procedure beschreven. De reden daarvan is dat voor deze modules geen nieuwe firmware verwacht wordt op afzienbare termijn. De bootloader zit er dus meer in "uit voorzorg"
CPU zonder bootloader
Gedurende geheel 2013 hebben we de mogelijkheid geboden RM-U en UCCI CPU's zonder bootloader gratis te upgraden naar een CPU met bootloader.
Heb je na 1 januari 2014 een module met een CPU zonder bootloader die je wilt laten actualiseren dan is dit een betaalde omruilservice die wordt uitgevoerd door de VPEB partners. Desgewenst kun je nu ook je TM-H en PM32 CPU's laten voorzien van een bootloader. Persoonlijk ben ik van mening dat dat op dit moment weinig zin heeft aangezien er voor de betreffende modules voorlopig geen firmware update verwacht wordt.