Table of Contents

Other

Workflows

Web-Print

Website

Formlab - Grav website CMS system

Occulus Go

standalone VR goggles

Troubleshooting:

When controller doesn't want to connect, do a factory reset: - Press power and volume-down button - Navigate to the factory reset option with the volume buttons - press OK with the power button

Assortments

Join shared folder on Windows

Lumix GH5S Remote shutter release:

https://www.norwegiancreations.com/2018/07/controlling-a-camera-shutter-remotely-with-an-arduino/
I used this circuit with the 4N25 optocoupler: http://wei48221.blogspot.com/2016/06/how-to-use-4n25-optocoupler_27.html To use this with a 3.3V trigger signal, the resistor going to input 1 on the optocoupler should be around 50Ω.

Raspberry Pi Videolooper

Download here: videolooper.de

Keep in mind that 1920×1080 is the max playable resolution.

Use other aspect ratio than 16/9

If you want to use a aspect ratio other than 16/9, edit the config file ( /boot/config.txt ):

Removing those functions allowed the raspberry pi videolooper to play non 1920×1080 footage.

Source

Run the svg2gcode web app locally

Disclaimer: I don't know what I'm doing, but it seems to work.

The svg2gcode webpage converts svg drawings to gcode for pen plotters. Very cool! But sometimes it's off line. That's where this local copy comes into play. The code is written in Rust. Cargo is the package manager for Rust. Packages are called crates. Trunk is a rust crate that is a web server and prepares code to be ran online and Yew is another crate that takes the data from Trunk and provides the framework for front-end web applications.

Start the server

Stop the server

Install the server

Run these commands with the terminal.

Gcode based shutoff

Make the pen plotter (OpenBuilds Acro) shut down after plotting so it can plot even nobody is present in Formlab. This prevents the motors from staying hot for too long.

Overview

The G-code sender (Openbuilds Control) sends commands to the pen plotter. Add this custom bit of gcode to quickly toggle the relay at the end of the plotting program:

M8 ; close relay
G4 P0.2 ; wait for 20ms
M9; open relay

The Arduino nano detects the relay closing as a pushbutton. When this happens, the Arduino will transmit the code over radio signal to turn off the remote switch.

Products

Info

Steps

This is the code I'm using now:

/*
Plotter auto shutdown 01
 
For the Openbuilds Acro pen plotter.
The Gcode sender (Openbuilds Control) will send the following Gcode sequence after finishing a plot:
  M8 ; close the relay
  G4 P0.2 ; wait 20 MS
  M9 ; open the relay
 
The relay is connected with the arduino nano with a cable. This signal can be detected as if it were a button press
When the arduino received the 'button press', it transmits a code so the remote power socket will switch off.
I'm using the Bounce2 library for debouncing and the NewRemoteTransmitter library for receiving and transmitting the 433Mhz radio remote signals.
 
Formlab
08/07/24
*/
 
#define BUTTON_PIN 3
#define LED_PIN 13
 
// https://github.com/thomasfredericks/Bounce2
#include <Bounce2.h>
 
// Create a debouncer instance
Bounce2::Button button = Bounce2::Button();
 
// https://github.com/1technophile/NewRemoteSwitch/tree/master
#include <NewRemoteTransmitter.h>
 
// Create a transmitter instance
NewRemoteTransmitter transmitter(30980307, 11, 260, 3);  // address, pin, period_microseconds, repeats
 
void setup() {
  // Button setup
  button.attach(BUTTON_PIN, INPUT);  // USE EXTERNAL PULL-UP
  button.interval(5);                // (ms)
  button.setPressedState(LOW);
 
  // LED setup
  pinMode(LED_PIN, OUTPUT);
}
 
void loop() {
  button.update();
  if (button.pressed()) {
 
    shutdown();
  }
}
 
 
void shutdown() {
  digitalWrite(LED_PIN, HIGH);
  delay(100);
  digitalWrite(LED_PIN, LOW);
  delay(100);
  digitalWrite(LED_PIN, HIGH);
  delay(100);
  digitalWrite(LED_PIN, LOW);
  delay(100);
  digitalWrite(LED_PIN, HIGH);
  delay(100);
  digitalWrite(LED_PIN, LOW);
  delay(100);
 
  transmitter.sendUnit(0, false); // switch off unit 0
}

Docuwiki troubleshooting