This repository contains various CAmkES applications, default configurations and testing scripts.
apps/ Example applications
configs/ Default configurations
test/ Testing scripts
This is not a standalone repository. Checkout the camkes-manifest
repository or
go to our website for details.
The applications in this repository are:
adder
: demonstrates the use of dataport wrapper to pass pointers via CAmkES RPC
epit
: demonstrates the use of CAmkES interrupt connector to receive hardware interrupts
exchangestring
: demonstrates how to pass string arguments between components
filter
: demonstrates the use of a component to filter communication
global-imports
:
hierarchical-attributes
:
hierarchical-components
:
keyboard
: demonstrates the use of IO ports and interrupts in a CAmkES component
lockserver
: demonstrates how to use built-in mutex
multiassembly
:
multiclient
: domonstrates multiple clients sharing one connection
multiplier
: demonstrates the use of arrays as arguments
mutex
: demonstrates the use of user-defined connectors in CAmkES
picoserver-uboot
: demonstrates the use of the libubootdrivers driver framework for use with picoserver, using an instance of the library in place of the Ethdriver component
rotate
: demonstrates the use of user-defined types as the arguments of an interface
security-demo
: demonstrates the use of multiple drivers within the libubootdrivers library (Ethernet, filesystem, USB) across multiple CAmkES components, transferring data (e.g. keystrokes read by the USB keyboard driver) between a high side and a low side via a ROT13 cipher, transmitting the encrypted characters across a network via Ethernet, and logging them to a filesystem on an SD card
swapcounter
:
socket
: demonstrates the use of user-defined dataports
structs
: demonstrates the use of struct and array attributes
terminal
: a prototype for a secure terminal system
uart
: demonstrates how to access hardware device memory
uboot-driver-example
: tests a range of drivers from the libubootdrivers driver library including clocks, SPI, LEDs, I2C, Ethernet, SD/MMC, USB, IOMUX, GPIO, and Filesystem.