Redeem architecture

From iagent
Revision as of 15:12, 20 October 2018 by Elias (talk | contribs)
Jump to: navigation, search

Redeem is the Replicape firmware; it is a daemon process that chews G-codes and spits out coordinates. The software can be found in the redeem repository: https://github.com/intelligent-agent/redeem

Architecture

Most of Redeem is written in Python, with the exception of the most heavily used gcode commands: G0/G1. These have been optimized in C. This allows rapid development of new features which are infrequently run -- such as bed leveling -- using python's scripting language capabilities of garbage collection and extensive libraries


Software-stack.png

Installation

The recommended method for installation is to use the Umikaze image which includes operating system, redeem, octoprint and all the dependencies needed.

from Package

If you'd rather install the Redeem firmware on your own operating system, you can use the Debian repository packages for Replicape and Toggle:

1     wget -O - http://kamikaze.thing-printer.com/apt/public.gpg | apt-key add -
2     echo "deb http://kamikaze.thing-printer.com/apt ./" >> /etc/apt/sources.list
3     apt-get update

from Source

enable kernel repo: http://repos.rcn-ee.com/(debian%7Cubuntu)

1     apt-get install am335x-pru-package pru-software-support-package swig python-smbus
2     mkdir -p /usr/src
3     cd /usr/src
4     git clone https://github.com/intelligent-agent/redeem.git
5     cd redeem
6     make install
7     mkdir -p /etc/redeem
8     cp configs/* /etc/redeem
9     cp data/* /etc/redeem


Updating

.. versionadded:: 2.0.5

The octoprint_redeem plugin should provide a prompt when there is a redeem update available, and the wizard should work in almost all cases. If it doesn't, or if you prefer knowing the gritty details of how to do this by hand, here are the manual instructions:

login as root and execute these commands:

1     cd /usr/src/redeem
2     git pull
3     python setup.py clean install
4     cp configs/* /etc/redeem
5     systemctl restart redeem


Develop branch


If your printer suffers from problems that are being addressed or if you want to help test the next version of redeem, you need to switch your installation to the develop branch of Redeem. **Beware: there be bugs and dragons in this code!**

To do so, follow these instructions:

1     cd /usr/src
2     rm -r redeem
3     git clone https://github.com/intelligent-agent/redeem.git
4     cd redeem
5     git checkout develop
6     make clean install
7     systemctl restart redeem