New Platforms for Bulldog Library

Bulldog [1] is java library for controlling of Low-level peripherals. This allows developers to control low levels like GPIO in pure Java. The motto of library is “write once, deploy anywere”. Therefore the aim of bulldog is to create platform agnostic library which hides platform dependencies from user and works out of the box.

Goals:

  • Investigate existing platform bindings in bulldog[1] library
  • Learn abstract model used in bulldog
  • Investigate low-level access interfaces on selected board
  • Find which memory registers controls which peripheral
  • Find which registers controls Device tree overlay and how its being set
  • All the control is performed by /dev/mem
  • Expose those registers into bulldog so that new device will fulfill the interfaces in bulldog
  • Add support for Aarch64 devices in bulldog

Devices:

References:

[1] https://github.com/SilverThings/bulldog
[2] https://www.raspberrypi.org/products/raspberry-pi-3-model-b/
[3] https://www.raspberrypi.org/products/pi-zero/
[4] https://getchip.com/pages/chip
[5] http://www.bananapi.org/
[6] http://www.orangepi.org/
[7] http://www.hardkernel.com/main/main.php

Miroslav Jaroš

Team:
Location: Brno
Brno