Redeem architecture: Difference between revisions
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=" | <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=" | <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=== | ||
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=" | <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