richrap Wrote:
-------------------------------------------------------
> joshnuss Wrote:
> --------------------------------------------------
> -----
> > Hi!
> >
> > I've been working on a RBPI 3D printer
> controller
> > board, based on Ramps/Teensylu/Printerboard
>
> Hi Josh,
>
> Nice rendering and It's great to see someone else
> working on a RPi for 3D printing.
>
> Are you planning to have a standard style firmware
> on the ATMEGA164 interpreting the GCODE sent by
> SPI/I2c from the RPi.
> Or are you planning to do all the processing on
> the RPi and just send motor control commands down
> via the SPI/I2c
>
> Either way you may well still be better off doing
> it as a USB peripheral rather than a SPI/I2c
> device on the RPi.
>
> I have the RPi working as a printer controller,
> but still have issues with serial port speed, not
> a problem if using an SD card, but the RPi needs
> to be doing some more work to justify itself,
> that's why I ask the question above.
>
> How good are you at Linux then? I'm using this as
> an excuse to learn a lot more about it, but I'm
> getting a little frustrated.
>
> Cheers,
>
> Rich.

I've been using my Ultimaker with a Raspberry Pi for a while. The Arduino-Pi split gives a nice division of real time control from other processing.

I've frequently found that printing using a RPi and sending gcode over USB randomly stops during a print. Pronterface shows an error that it can't talk to the printer. The printer and the RPi seem to still be running but there are no error messages from the printer (Marlin). A restart of Pronterface and a reconnect get the printer moving again (until the problem reoccurs).

If I print using my Atom netbook running Ubuntu then it seems to be OK.

Has anyone else experienced this? Is there perhaps a low power mode being entered? Any ideas for debugging the problem?

My experimental Vis/Printer printer interface server mentioned in this forum runs on the Raspberry Pi too. It can also be viewed on the pie's browser, except for the 3d preview.

However, it is not very useful as long as there is no running Slic3r on the raspberry. As the RPi would be somehow slow on slicing, I'm planning to add remote slicing on more powerful machines.

I'm also planning to do a compact UI design soon that would be useful on small touchscreens attached to the RPi.

Thus there would be two UI's: A large one visible over network to upload and print files via a web browser, and a small touch UI mounted to the printer for manual control, print stl's from pluggable media or from the internet.

I am currently into getting a small touchscreen working for the Pi, the work on Vis/Printer will continue afterwards.

I've now switched to using pronsole over ssh. I find it to be much faster, responsive and easy to use than pronterface. I can run it inside "screen" so I can detatch the ssh session and log out while the RPi keeps printing.

I use a N150 wifi dongle to connect the RPi to my network. Nice and small.

The Melzi board has a 5V output on the pins used for reprogramming and with a hacked USB cable this powers the RPi just fine.

This setup along with printing from RPi over USB (i.e. no SD cards) gives me reliable and good quality printing (so far!).

I had some issues with a freezing printer in the moment someone switched on a fluorescent tube in the house. Since I'm running my RasPi with a Blackberry Charger, and Melzi also powered by USB (from RasPI), all Probs are gone.
Pronsole gives a 18% CPU Load on RasPI, so no Problems at all!

I noticed a similar issue. With the RPi powered from a cell phone USB power adapter it would sometimes reset when the tumble drier turned on. Since switching to power from Melzi no issues. Although I am thinking of adding a UPS to be absolutely safe.

Tibbey Wrote:
-------------------------------------------------------
> Hello,
>
> Is there a definitive how-to guide that shows how
> to set this up from scratch? As in if you already
> have the printer and the RasPi.

I've been using the method outlined in britishideas.com to use my Pi as a host, but today I started messing around with another solution. Repetier has published Repetier-Server, and it seems pretty handy. The source is at [github.com], and apparently if you have a new and sparkly 512 MB Pi you can compile from source. However, if you have an older 256 MB Pi like I do, he has helpfully put up an archive with a pre-compiled binary here: [www.repetier.com] for use with a fresh install of Wheezy.

I have not printed yet, I've just made sure it connects and sent simple move commands and checked temps, but it seems to work smoothly, and has a nice interface. It doesn't slice or do any visualization, but that's how I've been using the pi anyway, and it seems like everyone else has too.

A quick update on the USB/IP mentioned earlier in the thread.
It seems some people got it working on a Raspberry Pi.
I'll give it a shot later tonight, doesn't seem too complicated, although that forum thread is quite confusing...

(The purpose of this is to run the host software on a more powerful standalone computer, with the Pi acting as a networked USB port)

I'm using Raspbian, and it works the same way as for the older Debian image.
Just make sure you update the kernel + firmware first, they need to match the stuff you download.

A few things to note (these are mentioned in the thread, but important gotchas):
1. You need to start the deamon on the Pi before connecting

sudo usbipd -D

2. There's a sudo missing in the following line

usbip list --remote

3. The daemon/connection/whatever is likely to hang on the first try.
My desktop actually hung quite badly when I tried to launch the Arduino IDE, but it may be unrelated (runnning an experimental kernel...)
After a reboot things worked fine.

NB I'm running Debian on the desktop.
The windows client may not be up to snuff, i've seen references to some version mismatch.

I've only tried running Pronterface and jogging/homeing the axes so far, but it's working well.
Things are very snappy, but I guess anything would be compared to a Pi.
I can now use the Gcode preview properly, yay!

I'll try things out for a while and see how stable it is, then if I'm brave I might try a (Marlin) firmware update tomorrow.

I would not reccomend this option to someone who is new at Linux and/or computer tweaking.
It seems to be slightly immature/buggy software at the moment.
However, with some patience and luck/skill it can be made to work acceptably.

One thing to note is that the first connection after boot always seems to fail with a Pronterface freeze as a consequence.
Second time (after a detach/attach from the client) it mostly seems to work well.

I've printed several things through this connection (over wifi) and see no difference in print quality or controller behaviour compared to Pronterface running on the Raspberry Pi itself. I'm very happy with the performance once working. Pronterface and the printer responds quickly to user input and all the other hassles of running Slic3r/Pronterface on the Pi are gone.

The only thing I have yet to try is flashing firmware over this link. It seems slightly scary somehow... It would be very convenient if it worked though.

I've made a very basic init.d script/udev rule combo, both to avoid having to run the server daemon manually, and so that the Arduino gets bound to USB/IP at boot/hotplug. If anyone is interested send me a PM and I'll give you the files.

PS. My attempts to connect two different USB webcams over USB/IP have failed miserably, but it may be better to stream them over ethernet anyhow.

I know of some guys that did a similar project using a Picaso micro controller with marlin and a pronterface style UI. I am currently working on a 7" screen for my Printrbot Nintendo ed. I am debating whether to use raspberry pi or a custom version of arduino, atmega. Its in the works but I do have it setup to be controlled with my original NES controller. Good ideas. If your interested click the link.

If you are going to use Linux, then why not just use any old PC motherboard with a EPP parallel port?

8 - outputs
5 - inputs
3 - I/O pins

Even a really old board will be a -lot- faster. If that is not enough I/O, then you can just add another parallel board with no performance penalty and they only cost about $10US. The drivers are already written and the realtime questions have all been answered in the form of LinuxCNC. It would be simple to add an analog temperature sensor with a single digital output each to sense the heaters.

Anyhow, that is the tack that I am taking. You can check my status here: [chucktilbury.com]