HowTo build the Marlin 3D Printer Firmware on the Raspberry Pi

If you are already running octoprint as a printserver on a Raspberry Pi it is very convenient to also build Marlin on it via ssh. I made a script that sets up the necessary build environment and provides commands for building and uploading from the commandline. It uses the official Arduino toolchain for ARM. Everything is standalone, nothing is installed.

It should also work on Linux in general. If you don’t build on ARM you will need to change the architecture though. Check the parameters at the beginning of the script for that.

The script is setup by default to build the Marlin fork “Skynet3D” for the Anet A8 Prusa clone. If you want to build stock Marlin change the “marlinRepositoryUrl” parameter respectively. You should also set the parameter “hardwareDefintionDirectory” to an empty string, this prevents the script from trying to copy the board definition that is needed for the A8.

If you are running octopi on you Raspberry you need to disconnect it from your printer before uploading otherwise the serial port is blocked.

Code

here on github: https://github.com/mmone/marlintool

 

Commandline parameters

-s  — setup

Download and configure the toolchain and the necessary libraries for building Marlin.

-m  — marlin

Download Marlin sources.

-v  — verify

Build without uploading.

-u  — upload

Build and upload Marlin. If you are running octopi on you Raspberry you need to disconnect it before uploading otherwise the serial port is blocked.

-b  — backupConfig [file]

Backup the Marlin configuration to the given file.

-r  — restoreConfig [file]

Put the given configuration into the Marlin directory. Rename to Configuration.h implicitly.

-c  — clean

Cleanup everything. Remove Marlin sources and Arduino toolchain.

-p  — port [port]

Set the serialport for uploading the firmware. Overrides the default set in the script.

-h  — help

Show help.

 

Tweet about this on TwitterShare on Google+Share on FacebookPin on PinterestShare on RedditShare on LinkedInShare on StumbleUponEmail this to someone

Formatting a Disk with FAT32 on OSX Command-Line

If the Disk Utility GUI on OSX doesn’t allow you to format a USB Stick or SD Card with FAT32 the command-line does.

  1. List the available disks with: “diskutil list”
  2. Find the device you want to format eg.: “/dev/disk2” and use this device in the next command.
  3. Format with:sudo diskutil eraseDisk FAT32 DISKNAME MBRFormat /dev/disk2″
Tweet about this on TwitterShare on Google+Share on FacebookPin on PinterestShare on RedditShare on LinkedInShare on StumbleUponEmail this to someone

Lighthouse Sensor Schematics

Basic information on Lighthouse and schematics

Schematics of the discrete part of a sensor node for the Valve/HTC Vive Lighthouse Tracking System courtesy of Alan Yates. More info in this thread on reddit: reddit.com/r/Vive/comments/465lqw/lighthouse_sensor_module_designs/ in Alan Yates posts here: reddit.com/user/vk2zay and in this video with him talking about it at maker faire:

Also interesting the embedded-fm podcast with Alan Yates talking about Lighthouse Development and the science behind it in general: http://embedded.fm/episodes/162

In depth analysis of lighthouse technology

For an in depth analysis of the lighthouse system read Oliver Kreylos post here: doc-ok.org

lighthouse-sensor

Someone made a board from the schematics. The data is on github: github.com/pdaderko/lighthouse_sensor/tree/master/hardware

lighthouse-node-pcb

Official Licensing of Lighthouse Technology

Last but not least. Valve started a royalty-free licensing program to use lighthouse technology for third-party products. Licensees will need to pay $2,975 to attend a training course, but other than that, there’s no licensing fees or royalties for using the tech.

Valve provides a Lighthouse ‘Licensee Dev Kit’ to companies who apply to use the technology. It includes:

Dev Kit Contents

  • A modular reference tracked object suitable for attaching to prototype HMDs or other devices
  • Full complement of EVM circuit boards to enable rapid prototyping of your own tracked object
  • 40 individual sensors for building your own tracked object
  • Accessories to enable custom prototypes

Tools

  • Software toolkit to assist with optimal sensor placement
  • Calibration tools for prototyping and manufacturing

Documentation

  • Schematics and layouts for all electronic components
  • Mechanical designs for the reference tracked object and accessories
  • Datasheets for the sensor ASICs
Tweet about this on TwitterShare on Google+Share on FacebookPin on PinterestShare on RedditShare on LinkedInShare on StumbleUponEmail this to someone