Skip to content

Eirlab/ultimaker-screen

Repository files navigation

Monitoring application for Ultimaker S series

Since September 2021, Eirlab Community has 2 Ultimaker S series printers. These printers are delivered with an API developed by Ultimaker to get different information about the prints, the status of the printer etc.

As a result, Antoine and Sébastien have developed an application to track the printing in progress at Eirlab, this application is licensed under GPL-3.0 License on this repository and is developed in Javascript to be displayed on a browser.

The application is currently used on one of Eirlab's TVs allowing us to see the status of the printers from the open space.

Television

Quick setup

git clone https://github.com/Eirlab/ultimaker-screen
cd ultimaker-screen
npm install
echo "$USERNAME ALL=(ALL:ALL) NOPASSWD: `pwd`/reboot-raspberry.sh" >> /etc/sudoers
npm run start

This application runs on the following environment:

  • Raspberry Pi 3B+ (16Gb, this OS)
  • npm 5.8.0
  • node 10.21.0
  • nodejs 10.19.0

Usage

A bash script allow us to reboot the raspberry if it can't connect to the internet. This script needs sudo privileges. To add them , run the following command:

echo "$USERNAME ALL=(ALL:ALL) NOPASSWD: $PATH_TO_APPLICATION/reboot-raspberry.sh" >> /etc/sudoers

To edit the configuration, open the index.js file in src/ folder. You should edit:

  • API.HOST_URL here with the ip of your cluster of Ultimaker printers
  • The printers instantiated here
  • The timers on TV instantiation here.

To run the application, run the following commands:

npm install
npm run start

Result

Screenshot Screenshot
Screenshot Individial Screenshot General

Contribution

  • ✨ New features and ideas for features of this screen are welcome! ⚠ Access to the 3D printers API can only be done via the eirlabIoT network.
  • 🐛 Although this is v2 of the implementation, the application surely contains errors in the console, if you find any, please report them in the issues and suggest a fix if you know of one.