Skip to content

llenroc/Monkey.Robotics

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

73 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Xamarin.Robotics

Xamarin Robotics

Xamarin Robotics is a full-stack framework that aims to make Robotics and Wearable development much easier by providing a foundation that provides core functionality both for bulding both mobile apps that are Wearables/Robotics aware, as well as .NET Micro Framework based applications that run on microcontrollers such as the Netduino and use peripherals such as sensors, servor, actuators, motor drivers, etc.

Architecture

It is split into two major platform stacks:

  • Mobile Stack - The Mobile Stack is built in C# and runs on iOS, Android, and Windows Phone via the Xamarin platform and contains features for communicating with wearables such as health monitoring devices and smartwatches, as well as microcontrollers such as the Netduino and Arduino.
  • Microcontroller Stack - The Microcontroller Stack is built with C# and runs on .NET Micro Framework compatible microcontroller platforms such as the Netduino.

The following diagram illustrates the topology of the entire stack:

Stack Topography

Mobile Stack

The Mobile stack consists of three different parts:

  • Low-level Bluetooth LE (BLE) API - A cross-platform API (iOS and Android only right now) that supports communicating with BLE devices.
  • Low-Level Wifi API - A cross-platform API (iOS and Android only right now) that supports connecting to WiFi enabled devices.
  • Messaging Framework - A high-level cross-platform protocol for messaging peripherals via WiFi or BLE.
  • Peripheral Libraries - Strongly typed libraries for communicating with various vendor-specific peripherals such as health monitoring devices, smart watches, and the like.

Microcontroller Stack

The Microcontroller stack consists of two parts:

  • Low-level Hardware Abstraction - This is a modular/compositable based on the concept of Blocks and Scopes that represent devices and listeners, accordingly.
  • Sensor and Peripheral Library - Strongly typed libraries that do the heavy lifting of integration with hundreds of popular sensors spanning the gamut from Alcohol Sensors to 3-axis Accelerometers.

Sample Projects

Plant Waterer

Level: Beginner

A simple robot that monitors soil moisture, waters when needed, and logs and reports moisture and watering.

BBQ Temp Control

Level: Beginner

A simple robot that monitors the temperature inside a BBQ/Smoker, adds oxygen as necessary to increase temperature, and logs and reports its progress.

Coop

Level: Intermediate

A relatively simple robot that opens and closes a chicken coop based on sunlight/time of day.

Mobile Control Car

Level: Intermediate

An RC car that is controllable via a mobile device via BLE or WiFi.

Drone

Level: Advanced

An semi-advanced robot that can perform basic collision avoidance and can be optionally controlled by a mobile device.

Authors

Bryan Costanich, Frank Krueger

About

Xamarin.Robotics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C# 77.6%
  • C++ 22.1%
  • Other 0.3%