A 3D printed battery powered bluetooth speaker made with the speakers from a 2007 MacBook Pro. Sources and build instructions on thingiverse: https://www.thingiverse.com/thing:2458126
On the remote computer
Create a ssh connection to the home computer and start a local ssh server listening on port 2210 on it.
ssh -R 2210:localhost:22 homeuser@[home-ip]
add –C to activate compression
add -f -N to put the process into the background
On the home computer
Connect to the local ssh server created by the remote connection.
ssh -p 2210 remoteuser@localhost
The onboard Bluetooth device of the Raspberry Pi Zero W and the Pi 3 can be disabled by adding “dtoverlay=pi3-disable-bt” to the /boot/config.txt file. Wifi can be disabled with “dtoverlay=pi3-disable-wifi”.
More boot config options for the Raspberry devices are documented here: https://www.raspberrypi.org/documentation/configuration/config-txt/
If you are already running the excellent octoprint as a printserver on a Raspberry Pi it is very convenient to also build Marlin on it. The new Raspberry Pi Zero W with onboard wifi is at only 10$ just perfect for both tasks. If you want to use the camera streaming of octoprint I would recommend a Pi3 though.
I made a script that sets up the necessary build environment and provides commands for building and uploading. It uses the official Arduino toolchain for ARM. Everything is standalone, nothing is installed.
It also works on Linux in general. The script auto detects the build platform architecture. At the moment Linux 32 Bit, 64 Bit and ARM are supported.
Several parameters at the beginning of the script allow to adapt it further to your needs. The script is setup by default to build the Marlin fork “Skynet3D” for the Anet A8 Prusa clone.
Recently Anet A6/A8 support has been merged back into the main Marlin branch. You can find example configurations for Anet printers in the Marlin sources at: github.com/MarlinFirmware/Marlin/tree/1.1.x/Marlin/example_configurations/Anet
If you want to build stock Marlin change the “marlinRepositoryUrl” parameter respectively.
If you build for non Anet platforms you can 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.
here on github: https://github.com/mmone/marlintool
or download directly as a zip: https://github.com/mmone/marlintool/archive/master.zip
-s — setup
Download and configure the toolchain and the necessary libraries for building Marlin.
-m — marlin
Download Marlin sources.
Update an existing Marlin clone.
-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 [name]
Backup the Marlin configuration to the named backup.
-r –restoreConfig [name]
Restore the given configuration into the Marlin directory.
-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
A detailed illustrated list of the most common problems that occur when printing with FDM 3D printers.
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.
- List the available disks with: “diskutil list”
- Find the device you want to format eg.: “/dev/disk2” and use this device in the next command.
- Format with: “sudo diskutil eraseDisk FAT32 DISKNAME MBRFormat /dev/disk2″
A good primer on the problem of human level AI by Nils Bostrom author of “Superintelligence – Paths, Dangers, Strategies”.
Great lecture series at Stanford by RichardSocher on Natural Language Processing with deep learning.