OSHUG

— Open Source Hardware User Group

Event #57 — Getting started with NetBSD on embedded platforms

On the 20 April 2017, 17:30 - 20:00 at BCS London, 25 Copthall Avenue, London, EC2R 7BP, [map] (51.5168155, -0.090039)

Please register to attend.

Workshop scope

You're hired at the latest startup as a hardware engineer and required to build the firmware which will run on "The Greatest Next Generation Appliance" (GNA). The GNA boots, prints a message and interacts with a device (in this case an LED).

In this workshop we cover how a person with an interest and a focus on hardware can make progress with the software side by using the NetBSD operating system and the features it offers to save considerable time and effort.

  • NetBSD supports a wide & diverse range of systems & CPU architectures.
  • Support for cross compilation is offered by default and works out of the box.
  • There is a high level language interface to interact with the system internals.
  • File integrity verification support to detect tampering of binaries and preventing execution is builtin.
  • An instance of the kernel can be run as a user process on different operating systems where rapid development can take place.

Things we will cover:

  1. An introduction to cross-compilation with build.sh and constructing an image to boot on your hardware.
  2. Interacting with the system using Lua (which is embedded in the kernel, avoiding having to write C or have knowledge of OS internals) to e.g. access GPIO.
  3. Preventing the execution of tampered or unauthorised binaries with veriexec.
  4. Using rump kernel for rapid development away from a potentially slow dev board.

Note: Due to budgeting cuts, "The Greatest Next Generation Appliance" has not yet been purchased, so, the workshop will target the development of the firmware on a Raspberry Pi or BeagleBone Black.

Participant requirements

You will need to bring:

  • Your own laptop (running Windows, Linux or Mac OS X);
  • A Raspberry Pi or BeagleBone Black;
  • An appropriate SD card for your board;
  • USB card reader to write a new OS image onto said SD card;
  • An ethernet cable to connect board to laptop and/or a USB UART/FTDI adapter to access the board via the serial console.

Any questions shuold be directed to the discussion list.

Hosted by

Sevan Janiyan is founder of Venture 37, which provides system administration & consultancy services. As a fan of operating systems and computers with different CPU architectures, in his spare time he maintains builds of open source software on a variety of systems featuring PowerPC, SPARC and armv7l CPUs. He hopes to own a NeXTcube & OMRON LUNA-88K2 one day.

Note: Please aim to arrive by 17:15 as the workshop will start at 17:30 prompt.

To add your photographs to ones shown here, upload them to Flickr with the tag "oshug:event=57". You might also like to join the OSHUG Flickr Pool.