Redeem architecture: Difference between revisions
No edit summary |
No edit summary |
||
| (3 intermediate revisions by the same user not shown) | |||
| Line 1: | Line 1: | ||
Redeem is the Replicape firmware; it is a daemon process that chews G-codes | Redeem is the Replicape firmware; it is a daemon process that chews G-codes | ||
| Line 4: | Line 5: | ||
https://github.com/intelligent-agent/redeem | https://github.com/intelligent-agent/redeem | ||
=== | ====See Also==== | ||
[[Redeem settings]]<br> | |||
[[Redeem g-codes]]<br> | |||
[[Redeem m-codes]]<br> | |||
==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 | ||
heavily used gcode commands: G0/G1. These have been optimized in C. | heavily used gcode commands: G0/G1. These have been optimized in C. | ||
| Line 12: | Line 16: | ||
run -- such as bed leveling -- using python's scripting language capabilities | run -- such as bed leveling -- using python's scripting language capabilities | ||
of garbage collection and extensive libraries | of garbage collection and extensive libraries | ||
[[File:Software-stack.png|center]] | [[File:Software-stack.png|center]] | ||
| Line 26: | Line 29: | ||
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 39: | ||
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 54: | ||
===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 61: | ||
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 | ||
| Line 69: | Line 70: | ||
Develop branch | ===Develop branch=== | ||
If your printer suffers from problems that are being addressed or if you | If your printer suffers from problems that are being addressed or if you | ||
| Line 80: | Line 80: | ||
<syntaxhighlight lang="Bash" line='line'> | <syntaxhighlight lang="Bash" line='line'> | ||
cd /usr/src | cd /usr/src | ||
rm -r redeem | rm -r redeem | ||
Latest revision as of 15:19, 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
See Also
Redeem settings
Redeem g-codes
Redeem m-codes
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