In deze editie van de Raspberry Corner onderzoeken we of flash werkt om de website van Scratch te bedienen en ontdekken we een nieuw themanummer van MagPi en een nieuw ebook. Met Ultimo maak je native code voor de Raspberry zonder dat er Linux op nodig is, zoals een Z80 CP/M-emulator. En NEC komt met zakelijk beeldschermen waar een Raspberry is ingebouwd.

Programmeren in C

Alweer een gratis Engelstalig ebook voor beginners, gemaakt door Simon Long van de Raspberry Foundation: “Learn to code with C”. Het boek gaat vooral in op de elementaire aspecten van het programmeren, zoals het werken met variabelen, arrays, functies, invoer/uitvoer en dergelijke.  Je downloadt het net geen 100 pagina’s tellende boekje op www.raspberrypi.org/blog/learn-c-in-our-brand-new-magpi-essentials-book/. Als je echter de foundation wilt sponsoren, dan koop je natuurlijk het (digitale of gedrukte) boek.

 

Flash in Raspberry PIXEL

 

In Chromium zit (Google’s Pepper) Flash ingebouwd. Maar moeten we daar nu heel erg blij van worden? Het proprietary Flash nadert immers zijn einde met de komst van minder zware alternatieven als HTML5. Toch is het handig. De op de Raspberry Pi meegeleverde programmeeromgeving voor kinderen Scratch is een oude (weliswaar onderhouden) versie. De nieuwere versies van Scratch draaien alleen online op de website van Scratch en zijn door het MIT geschreven in Flash. Het is onbekend of het MIT Scratch in de nabije toekomst overzet naar HTML5. Je kunt op de Raspberry Pi nu echter via Chromium toch de nieuwe versie van Scratch gebruiken met Flash! Wel even sudo apt-get update en sudo apt-get upgrade draaien. Flash staat default niet aan, dus je moet op de site met de rechtermuisknop “Deze plugin uitvoeren” kiezen bij het openen van de pagina met Flash. Je Raspberry Pi moet een ARMv7 processor hebben, dus op de oudere Raspberries werkt Flash niet (die modellen zijn waarschijnlijk bovendien niet snel genoeg voor Flash).

 

Vier frambozen

Als je de Raspberry inschakelt, worden er even vier raspberries (frambozen) in de linkerbovenhoek van het scherm getoond. Waarom vier? Er wordt een Raspberry logo getoond voor elke core in de ARM-processor. De Raspberry 2 en 3 tonen daarom elk vier logo’s, de Raspberry Pi B+ en A+, evenals de Raspberry Zero laten slechts een enkel Raspberry logo zien. Maar weet iemand wat het daadwerkelijk nut hiervan is?

 

Raspberry meets Arduino

De Raspberry draait een volwaardig besturingssysteem en wordt een single-board computer genoemd. De Arduino draait geen besturingssysteem en is een microcontroller, die je programmeert vanaf een andere omgeving. Het is mogelijk de Raspberry Pi in te zetten als veredelde microcontroller, dat wil zeggen dat er geen besturingssysteem op hoeft te draaien om het systeem toch zinvol te gebruiken. Ultibo belooft (www.ultibo.org). Ultibo is een open source ontwikkelomgeving voor embedded systemen. De basis is een Lazarus ontwikkelomgeving (IDE), die gebruik maakt van Free Pascal als programmeertaal. Ultibo is alleen beschikbaar voor Windows. De compiler binnen de IDE is een cross-compiler: hij draait op de x86/x64, maar genereert code voor de ARM-processor van de Raspberry. Met de code bouw je dus een embedded applicatie, die op de ARM-processor draait zonder dat er een besturingssysteem als Linux nodig is op de Raspberry. De Raspberry wordt zo een device dat te gebruiken is als een Arduino: native code op topsnelheid.

 Een mooi voorbeeld van een ‘eindproduct’ dat met Ultibo gemaakt is, is de bare-metal CP/M-emulator EMUZ80 RPI voor de Raspberry, gemaakt door de Duitser Ronald Dalaske. Het CP/M-besturingssysteem is ontwikkeld voor de Zilog 8080 en Z80 processor, waarvan de eerste versie uit 1974 stamt. CP/M was populair op zowat alle (thuis)computers met een Z80-processor. Heb je nog een Commodore 128 gehad? Die bevatte ook een Z80 om CP/M te draaien. Zelfs Microsoft is sterk geïnspireerd door het 8-bit besturingssysteem voor het ontwikkelen van MS-DOS. Je downloadt EMUZ80 RPI van de website Dalaske: www.projekte.daleske.de (het ZIP-bestand is slechts 3MB groot). Pak het bestand uit en kopieer de 7MB inhoud van de directory 05_BOOT naar een micro-SD-kaartje dat geformatteerd is met FAT of FAT32. Stop het SD-kaartje in je Raspberry Pi en schakel de stroom van je systeem in. Omdat er geen Linux gestart hoeft te worden, start CP/M 2.2 inclusief de Z80 emulator op in ongeveer 6 seconden op de RPi 3. Niet alles werkt naar behoren en sommige handelingen zijn traag. Zo blijft zelfs het opvragen van een directory van de beide geëmuleerde floppydrives soms hangen en is de ondersteuning voor toetsenborden karig. POWER.COM is wel geïnstalleerd, dat is een simpele commandline shell met ingebouwde commando’s (een beetje vergelijkbaar met busybox onder Linux, maar dan 30 jaar eerder ontwikkeld). Je eigen CP/M-programma’s download je van bijvoorbeeld http://pcsauro.altervista.org/CPM.PHP. Door het ZIP-bestand uit te pakken en simpelweg op het SD-kaartje te kopiëren naar de directory CPM_LW_Aof CPM_LW_B, zijn ze onder CP/M op je Raspberry meteen te gebruiken op drive A: respectievelijk drive B: van de emulator. Je hebt er functioneel niet zo heel veel aan, maar het is wel cool en retro om (bijvoorbeeld) één van de oudste spreadsheets SuperCalc op je Raspberry te draaien. Bovendien is Ultibo een heel aardig studie-object. Helaas draait het alleen op Windows.

 

 

MagPI-themanummer

De Educator’s Edition van het tijdschrift MagPi is geactualiseerd en opnieuw uitgebracht. Net zoals altijd is dit nummer weer gratis te downloaden. Of je wacht op een gedrukte versie tegen betaling. De inhoud is niet uniek en velen van ons zullen er niet zoveel aan hebben. Maar het nummer is wel gericht op scholen: hoe organiseer je een codeerklasje? Wat is een Raspberry jam? Hoe gebruik je Minecraft om te leren programmeren? En speciaal voor Engeland: hoe gebruik je de Micro:bit met de Raspberry Pi? Download het magazine hier op: www.raspberrypi.org/education/magpi-educators-edition

 

Compute Module

Ken je de Compute Module? Dat is een speciale compacte Raspberry voor ontwikkelaars van hardware, die een Raspberry willen integreren. Binnenkort komt versie 3 uit van deze Compute Module. De standaard Compute Module heeft geen SD-adapter maar 4GB eMMC Flash. Ook worden alle mogelijkheden van de SoC opengesteld, je kunt er dus meer mee dan de standaard GPIO-bus van de Raspberry Pi. NEC heeft aangekondigd dat er een serie beeldschermen op de markt komt, waarin de Compute Module is geïntegreerd. De schermen zijn 40 inch, 48 inch, 55 inch en 98 inch en bedoeld voor commercieel gebruik, om bijvoorbeeld infosystemen en narrowcastingsystemen in publieke ruimtes te voorzien van data of om er internet of

Things-devices op aan te sluiten. De door NEC gebruikte Compute Module is een speciale versie, die voorzien is van 16GB Flash. Op dit boardje is een messanine board gemonteerd (piggyback), of eigenlijk is het andersom: de Compute Module is net zo klein als het geheugenkaartje van je laptop en is gemonteerd op de NEC IO-adapter. Als je de tv aansluit op één van de twee ethernetverbindingen, krijgt het scherm, de interne mediaspeler en de Raspberry een eigen IP-adres. De NEC Computer Module en IO-kaart (die overigens optioneel zijn voor de modulaire tv’s), hebben twee USB-aansluitingen voor eventueel  toetsenbord/muis/bluetooth/WiFi en een USB-aansluiting om het flashgeheugen van de Compute Module te schrijven. Met de IR-afstandsbediening van de tv bedien je ook het Raspberry-besturingssysteem als je wilt.