Redeem architecture: Difference between revisions

From iagent
Jump to: navigation, search
No edit summary
No edit summary
Line 5: Line 5:


===Architecture===
===Architecture===


Most of Redeem is written in Python, with the exception of the most
Most of Redeem is written in Python, with the exception of the most
Line 26: Line 25:
the Debian repository packages for Replicape and Toggle:
the Debian repository packages for Replicape and Toggle:


<syntaxhighlight lang="Python" line='line'>
<syntaxhighlight lang="Bash" line='line'>
     wget -O - http://kamikaze.thing-printer.com/apt/public.gpg | apt-key add -
     wget -O - http://kamikaze.thing-printer.com/apt/public.gpg | apt-key add -
     echo "deb http://kamikaze.thing-printer.com/apt ./" >> /etc/apt/sources.list
     echo "deb http://kamikaze.thing-printer.com/apt ./" >> /etc/apt/sources.list
Line 36: Line 35:
enable kernel repo: http://repos.rcn-ee.com/(debian|ubuntu)
enable kernel repo: http://repos.rcn-ee.com/(debian|ubuntu)


<syntaxhighlight lang="Python" line='line'>
<syntaxhighlight lang="Bash" line='line'>
     apt-get install am335x-pru-package pru-software-support-package swig python-smbus
     apt-get install am335x-pru-package pru-software-support-package swig python-smbus
     mkdir -p /usr/src
     mkdir -p /usr/src
Line 51: Line 50:


===Updating===
===Updating===
..  versionadded:: 2.0.5
The octoprint_redeem plugin should provide a prompt when there is a
The octoprint_redeem plugin should provide a prompt when there is a
redeem update available, and the wizard should work in almost all cases.
redeem update available, and the wizard should work in almost all cases.
Line 60: Line 57:
login as root and execute these commands:
login as root and execute these commands:


<syntaxhighlight lang="Python" line='line'>
<syntaxhighlight lang="Bash" line='line'>
     cd /usr/src/redeem
     cd /usr/src/redeem
     git pull
     git pull

Revision as of 15:13, 20 October 2018

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


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:

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

from Source

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

    apt-get install am335x-pru-package pru-software-support-package swig python-smbus
    mkdir -p /usr/src
    cd /usr/src
    git clone https://github.com/intelligent-agent/redeem.git
    cd redeem
    make install
    mkdir -p /etc/redeem
    cp configs/* /etc/redeem
    cp data/* /etc/redeem


Updating

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:

    cd /usr/src/redeem
    git pull
    python setup.py clean install
    cp configs/* /etc/redeem
    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:

    cd /usr/src
    rm -r redeem
    git clone https://github.com/intelligent-agent/redeem.git
    cd redeem
    git checkout develop
    make clean install
    systemctl restart redeem