Brumbaer / 3D Printing / Raspberry print controller
 

December 2014. 

What's this ?

Functionally the B9 Software consist of two parts. 

The design part to add supports and slice the model and the printer control part to ... obviously control the printer. 

As adding supports and slicing is basically part of the design process, it is done on my "main" computer. 

Printer control is run from a computer connected to the B9. 

Having a 1.1 and a1.2 machine that's two additional computers - it might be possible to do with just one, but I'm not that confident that this will work out well. 

Those control computers can be very simple machines, but instead to look for some cheap netbook, I decided to go the full Monty and to create some "intelligent printer controller". 

The printer controller is based on an Raspberry Pi.

The Raspberry Pi is connected to the Printer via USB and HDMI and to your computer network via ethernet or WLan.

The Raspberry shows a split personality to the world. 

A network drive, so you can copy the files be printed onto it's SD card - as this is a standard samba server, you can slice your model directly onto the Raspberry's drive. 

It also puts up a webpage, which allows you to control the B9 from any device that can run a "modern" browser. 

The Raspberry supports all the printer, material and calibration commands you're used to from the B9 software. 

All file formats including the Material library are compatible and so is the Factor Calculator. 

There might be differences in the handling of the exposure regarding hotspot and slope - I can't check, because the sources are not longer available. 

The Webpage can be accessed from everywhere, if you setup your network accordingly, you could even control it over the internet. 

Multiple computers can access it simultaneously. So you can finish a task on the printer from one device, even if it was started on some other device. 

The iMac in the back has two browser windows open, connected to the 1.1 (black bar) and 1.2 (blue bar) B9ers. The iPhone and iPad are connected to the 1.1. All changes are reflected on all devices at the same time.

It's convenient to have a device for printer control at the printer. In this case I use an iPad mounted on a goose neck. The cable connection is the power supply. Of course, I could use my phone or an "mobile" iPad, but having the iPad mounted spares you to look for a save space to lay it down and keeps it out of harms way. I use the iPad for both B9s - which are located to each other - I just have to tap to switch between them. I could write a browser that has a split window - there's an idea.

Hardware - what you need

Each printer controller consist of an RaspberryPI, power supply and if desired a Wireless Dongle. The Hardware costs less than 60€ as a bundle. Taking an educated guess I'd expect the price in the US to be about 60$. 

I used a Raspberry B, you could also use a B+, if you wanted.

For the Raspberry B you will need a 8GB SD card, for the B+ a 8GB Micro SD card. 

A case for the Raspberry will cost somewhere between 5 and 12€.

A power supply about 8€, but if you have an USB power supply with a MicroB connector and at least 1A you can use that.

The Raspberry B and B+ have ethernet on board, so you do not need a Wireless USB Stick. But if you want to use wireless, I recommend the Edimax EW-7811Un. It costs about 8€ and the Raspberry's Linux has drivers for the Edimax already installed.

In Germany you can buy bundles with exact that combination and the OS preloaded on the SD for about 60€.

Software - what you need

You need the operating system, which you can get preloaded on an SD or download from the Raspberry website.

And of course the software to control the printer. This you can get from my website.

Software - installation

Even if you have a Wireless Dongle, you will need a wired ethernet connection during setup. So connect your Raspberry to your home network with a network cable.

Install the OS as described on the Raspberry HomePage.

Note you will need either a ssh connection or keyboard and screen to do so.

Once the OS is installed you run raspi-config.

Best to leave most options alone. 

What you could/should change is the user password (default: raspberry). But do not change the user as the installation of the printer-controller-software expects a user called pi.

You could also change the hostname (default: raspberrypi) to something more telling. The hostname is the name you will use to access the printer-controller via ssh or browser.

Once you finished raspi-config, you have to download the install script. Enter the following command string after the Raspberry's prompt:

wget.... This email address is being protected from spambots. You need JavaScript enabled to view it. if you want to try the software out

This will download the install file which you have to run by entering

./install

after the prompt.

The installation will stop at some point and ask you for a password. This password is used for file access from a different computer. It's a good idea to use a password different to your system password.

Once the install scrip finished, your ready to connect your Raspberry to your B9.

You will need a wired ethernet connection to set the WLan ssid and password.

So it would be a good idea to set it now.

Plug in the WLan dongle and start the printer-controller by entering

B9/do

Start a browser on any device in the same network.

Connect to the URL

raspberrypi:8080/

Should you have changed the hostname, you will have to replace raspberrypi with your hostname.

Alternatively you can enter the ip address of the raspberry followed by :8080/ i.e.

192.176.144.102:8080/

Select System in the main menu and WLAN selection in the system menu.

Enter the ssid (wireless network name) and it's password. Press ok. The raspberry will reboot.

Hardware - installation

The Wireless Dongle will, if you decide to use it, occupy one USB port, the USB cable to the printer occupies the second USB port. 

The HDMI cable from the projector is connected to Raspberry's HDMI port. 

The power supply is connected through the USB Micro B port.

The Raspberry mounted at the back of the 1.2. The keyboard and display are only printed on the case and have no function. When using a Wireless Dongle as shown the "Printer Setup" needs only power.

Operation

The printer-controller-software starts automatically, when the raspberry is powered up. The software runs in an infinite loop. You can switch off the raspberry whenever you want, but preferably notduring a print or file transfer.

To connect to the-printer-controller, start a browser on any device in the same network.

Connect to the URL

raspberrypi:8080/

Should you have changed the hostname, you will have to replace raspberrypi with your hostname.

Alternatively you can enter the ip address of the raspberry followed by :8080/ i.e.

192.176.144.102:8080/

 In the top bar the stati of application and printer connection are displayed in light blue.

The main menu is the starting point. Most options allow you to do tasks that mimic options of the B9 software.

System is an additional option, that lets you select WLan parameters and update the application.

Options that need a connection to the printer will be greyed out when no connection between printer and raspberry exists.

Use Printer Management to select the configuration and set machine parameters.

Calibrations let you perform all the usual calibrations. When you first try out the Software you should run the Test Printer Function calibration once.

Perform other calibrations as needed.

Print will ask you for a filename. The files are b9j files from the data folder in the B9 folder.

To put files into that folder connect to your raspberry as you would connect to any other network storage. When you open the "share" it will show you a B9 folder, besides other files and folders. Inside the B9 folder is the data folder. Copy the files to be printed into this folder.

The file list in the browser is only refreshed, so do not be surprised if the browser displays the file list, but does not show the newly copied file, just refresh the browser window.

After selecting the file to be printed, you will be presented with the print parameters used last. To have them recalculated, click on the material and select the material to be used, which may be the same as has been displayed.

Press proceed and the rest is as you expect. In the moment there is no pause only an abort option.

When you edit an material, the factor tool is always present. In difference to the original software, this tools uses the current configuration as preset. 

I'll add additional information at a later time, but this should be enough to get you running.

 

This is a hobby project, to be used as is on your own risk. 

IN NO EVENT WILL I BE LIABLE FOR ANY DAMAGES, INCLUDING LOSS OF DATA, LOST PROFITS, COST OF COVER OR OTHER SPECIAL, INCIDENTAL, CONSEQUENTIAL OR INDIRECT DAMAGES ARISING IN ANY WAY OUT OF THE USE OF THE PROGRAM OR ACCOMPANYING DOCUMENTATION.

I hold the copyright on the printer controller software and it's web-frontend.

The software includes files and drivers copyrighted by B9Creator used with permission.

This software may not be sold or otherwise distributed.