Home » 2014
Yearly Archives: 2014
I have Now installed and had a chance to review Both OctoPrint and RepRapWeb browser based 3d printer controllers installed on a Rasperry PI. One thing I want to make clear before I start is this is not an evaluation of slicing tools of which each tool comes with at least one. Since slicing is a time consuming process with larger models I found a Raspberry PI and it’s small CPU was just not the place to get that done.
So for now here is what I found, RepRapWeb is a cool new tool in the field, written entirely in Node.js for both client and server it’s a really great work in progress for building a controller but its really not ready for “Prime time”. As of this article, although it looks in the YouTube video that there is a integrated video component it does not have one yet; that is still in the works. So with no integrated video there is also no option for time laps videos either. The lack of integrated video was the show stopper for me as a web based controllers strength in my book is the ability to start a 3D print and then leave the 3D printer, checking it from your cell phone every once in a while to make sure something did not screw up. I know you could run a separate video feed on the Raspberry pi but I was looking for something I could view from my office and the company firewall only lets in port 80, so everything coming through that one port is a must. Another issue is the lack of security at the moment in the RepRapWeb, it completely open right now. OctoPrint on the other hand has a sign on, role based model in place to control the 3D printer.
The long and short of it is RepRapWeb has a great deal of potential if your hosting the application on a PC to use as a 3D print controller but right now as a Raspberry PI solution to control your printer remotely it still has a little ways to go. Id stick with OctoPrint.
First, this is really easy to set up and since its U-Verse you already have a static IP address that comes with the U-Verse router/server.
1) Step one, Get your external network IP address. just type http://www.myipaddress.com/ in your browser and you get that.
2) You need to open the firewall for just the app you want. Any app you make available will be just a port on the external IP address. As an example my application which is on the default port 80 of an internal local server is set up as port 8091 of my external IP so I reach it with http://126.96.36.199:8091
a) Go to U-Verse control panel by typing http://192.168.1.254 in you browser
b) In the top tabs select “settings”
c) Under settings select tap for “Firewall”
d) Select the top bar option of “Applications, Pinholes and DMZ”. You should see select a computer as step 1 and edit firewall as step 2. We are going to the step 2 first.
e) Near the bottom of page click “Add a new user-defined application”
f) This part is really strait forward –
i) give it a simple application name
ii) keep protocol on TCP
iii) Port range should is just the port where the application delivers the content in you local network. In a normal web server that’s 80 so the values for both is the number 80.
iv) Leave timeout empty
v) Map to host Port is just whatever you want it to be but remember that is the port your external access is going to be using, I used 8091.
vi) leave the application type blank.
vii) hit add to list
vii) select the back button. You should now be back at the select a computer page.
g) Select you internal server by name or type it’s IP if you have a static on setup
h) down below select “Allow individual applications”
g) back at the edit firewall you can now see your new application in the list. Just move it over to hosted applications using add and your done.
OK that’s it you should now be able to test it using something from outside you local wifi network.
Once you have a working IMG of the RepRapWeb application on your Raspberry PI you probably want to get it tricked out so you can get to controlling your 3D printer. This is a short description of what I did…
When login on to your image the login / password is not your standard one, it’s pi / raspbian. After the image was created I connected it to the network by hardwire to setup my static IP and WIFI. I used a “EDIMAX wireless 802.11 nano USB Adapter” and that worked great for me. Here is the link I used as a reference http://raspberrypihq.com/how-to-add-wifi-to-the-raspberry-pi/
My interfaces file looks like this and my static ip is 192.168.1.97
just run “sudo nano /etc/network/interfaces” make the changes and your ready to disconnect you hard connection.
iface lo inet loopback
iface eth0 inet static
iface wlan0 inet dhcp
OK my next step was streaming video because lets face it you need to see what your doing. This takes a little while but the directions I found are great. Just go to http://jacobsalmela.com/raspberry-pi-webcam-using-mjpg-streamer-over-internet/ and follow those instructions. You want to follow the instructions to set it up as a service.
** A little disclaimer at this point, as if this writing the reprapweb application does not have a video feed embedded in it. I talked to Andrew and he said he’s working on that now and it should be done soon. Until then you have to run a separate browser window for your video streaming. Not a big deal as mjpg_streamer has a default stream running on port 8080 so once your set up it’s a snap to use.
I’m beginning my install and configurations of a new 3D printing web based controller from XYZBots and wanted to pass on a few things. This controller is pretty strait forward but it sits on a Raspberry PI b+ controller and having never set on up before I ran into a couple of things. First, Make sure you follow the direction on the software site REPRAPWEB when setting things up or like me when you first plug in your board you’ll get nothing but two solid lights on your board, one green and the other red. The issue is if the image you placed on the SD Micro card is not correct you get nothing and that includes nothing on the video to even tell you what is wrong. Below are my steps to get a functional image on the Raspberry pi b+. You’ll know you’ve got a good image as the red light on the board stays red and the green light flashes as it accesses the card.
1) Run “sudo fdisk -l”. Look at what is returned and then plug in SD Micro card and run again, you’ll see the new device name. Mine was.
“Device Boot Start End Blocks Id System
/dev/sdc1 8192 62333951 31162880 c W95 FAT32 (LBA)”
2) Format the card with FAT32, I downloaded GParted app using Ubuntu Software center.
3) Download the latest image from software site REPRAPWEB. I took the image, I might play with the source some day but it won’t be today.
4) Unzip the Download into directory and go to it.
** before I go further you need to remember two things. First, be careful you run dd command against wrong device you will be in a world of hurt. Second, in the directions on the software download site it explains that Raspberry Pi for this install does not use partitions. If you just use the device name you found in step 1 without modifying it and push the image across it will install on the SD micro card but Raspberry pi will not function.
5) to install the code to the SD Micro card run the following. Obviously you need to use the right image name if it’s changed. What is most important is my Step 1 command returned and device of “/dev/sdc1” but my “of” parameter below only uses “/dev/sdc”. The reason for that is removing the last number from the device copies the code in one partition. Also an FYI is this stuff is case sensitive the “M” in the bs=4M needs to be capitalized, found that out the hard way.
sudo dd if=reprapweb-2014-09-09-wheezy-raspbian.img of=/dev/sdc bs=4M
The command takes a while but once it completes you can plug in the SD Micro card to you raspberry and your good to go.
Experimenting with NinjaFlex which as the name implies is a flexible 3D printing filament. So far my impression is that it’s a great product if not a little difficult to work with. I’m guessing a Bowden would be even more difficult as this stuff is really, really bendable. I found my standard “Go To” setting for my printer just did not work. So to save anyone some time who might read this here is my quick list.
- This material seems to melt slower than normal PLA or ABS so I really had to slow my extruding down. I set all slicer settings to 15 mm per second and that seemed to get things going. Funny as it sounds even my manual extruding using “PrintRun” to get my printer set up extruded too fast.
- If you extrude too fast the extruder will bend the material so if you do start to see slippage in the extruder just give it up, pull out what is in there cut off the 2 inches and re-thread and try again. Once there is slippage the material deforms and the extruder can’t grip it anymore.
- This stuff needs to run hot. I found 250 was a good number with 50 for the bed
- Give up using Kapton tape or some type of hair spray to cause it to stick to the bed. The only way I got things to work was Blue carpenters tape.
If it sounds like a pain to work with then, yea maybe just a little but the results are great. To print something with a little give and bounce is really a trip compared to standard hard plastic and by controlling the infill you can create objects that can go all the way from almost soft to hard as normal plastic.
Over the last year I’ve spent a lot of time trying to find conductive plastic that has resistance properties even close to wire. What I’ve found is currently there is nothing on the market that comes even close. Although a plastic “Described” as conducting is offered by quite a few venders the conductivity it pretty bad. If you are making an anti-static pad or a Faraday cage your OK but for most circuits it’s not practical, basically it just plastic with infused Carbon Black.
I did spend some time trying to make my own and I did get some good batches but I had a real hard time with getting consistent batches. If you interested I used Multi Walled Carbon Nanotubes and infused them is standard PLA. believe it or not nanotubes are pretty cheap now. I got mine from “CheapTubes.com“. Yes, believe it or not that’s the name of the company. I tried a bunch of combinations but my greatest success was with MWNT’s around the 30-50nm range. Basic method is to take existing 3D printing plastic and mix it with “Dichloromethane” this liquefies it and after a time just remove to stopper off your mixing bottle and the dichloromethane will evaporate leaving just the plastic infused with the nanotubes. Now all you have to do is get it back in 3D printer plastic form. To do that I just built a 3D printing extruder.
If someone comes up with a better way to do it let me know but the best I was able to get was about 200 ohms per inch, still not what I was looking for but way better then stuff available on the market now.
When selecting the extruder for the RepRapPro be sure to take a little extra time before just selecting the Mini extruder as I did. My line of though was that it was smaller and would look better on the printer which, looking back on it was a pretty stupid reason to make a section. By and large I consider my selection of the Mini extruder to be my biggest misstate with regard to that printer build. Here is what I’ve fount;
- The mini is really small. it’s small so the gear teeth are small which means your prints need to be dead on. There is no room for even a small deviation.
- The threading channel hole for the plastic is static. Simply put it’s a printed diameter hole. threading and working with it is a pain.
- the Friction adjustment is not really all that effective.
- The mounting of the extruder on the printer itself can effect the friction applied to the plastic being extruded. (Really an pain)
So simply put for me the choice of the Mini extruder was really bad! It’s just my opinion but you’ve been warned, choose the curtain on the left and go with the normal, proven Huxley_Extruder.
in the RepRapPro model files it’s the directory Modified_RepRapPro_Huxley_Extruder not the Mini you want. (Picture on left)
OpenSCad is a great open source 3D modeling tool for 3D printable models but it’s weak point is the code editor and since everything is code based with no GUI tool set you have to look elsewhere for a good editor. I’ve found for myself that Notepad++ has some great plug-ins. It’s a windows tool but Ubuntu has “Wine” a windows compatibility emulator that works great with it and is available in the Ubuntu Software Center. After installing OpenSCad and Notepad++ go to Thingiverse to pick up the XML Config files for OpenSCad and follow the directions provided along with them. Remember to configure OpenScad for Automatic Reload and Compile and also in the view tab you can hide the default OpenSCad editor which you won’t be using anymore. I’ve found the whole experience of using OpenSCad to be much better since I moved on from the default editor.
This is a little heads up on an issue I ran into a while back regarding my 3D printer and Ramps 1.4. The symptom where that although the printer worked when connected to the USB and external power the LCD went blank. When using just the external power supply it didn’t function correctly. The most obvious thing was when connected just though the USB to the computer the LCD interface worked but once external power was applied the LCD went blank. After a lot of looking around I found it was all about a 5V power regulator on the mega board. In fact on the board below you can see a three prong power regulator right there on the lower left next to the power plug. I ordered a new regulator “10 Pcs AMS1117 LM1117 1117 5.0 H342TE 5V 1A Voltage Regulator SOT-223 from eBay and was good to go. In all honestly I just bought the new board on amazon for 40 dollars and fixed the old one later for a backup.
Since I’m fundamentally cheap and have an unreasonable phobia regarding Microsoft products over the years I’ve been attempting to find the best tool for my 3D modeling restricted to the open source community. So, here is what I’ve found, as far as machine operating systems go I finally settled Ubuntu, its simple to use and more then covers my needs. CAD software is a lot more challenging, I’ve started to become convinced that software companies are using the Microsoft platform as a way to enhance there licensing enforcement. Lets face it, if the software only runs on Windows then it much more likely the end user will pay for it since they already payed for the operating system and if it was pirated they can ride right along with the Microsoft’s legal team. So anyway my final tool box ends up being OpenSCad for most models. I thought I’d hate the command line driven tool but with a plug-in from Notepad++ it ends up being easy to use and very strait forward, it’s no wonder it’s the top file type format you see when going to Thingiverse. If I’m looking to really build something complex with a lot of moving parts I use FreeCad and yes, I know it use to suck but the last few releases have really cleaned things up. Last but not least for “Art” I use Blender and honestly it’s not all that often I feel the need to go down the Blender path. Blender is great but for 3D printing models it clunky and time consuming. Last but not least I have two favorite slicers. Number one for single extruder prints and dual extruder prints for support I’ve found KISSlicer is the way to go, I know the web site doesn’t look like much, but the slicer is free and trust me you will not be disappointed. Things get a little more complicated for dual extruder printing when your not using one of the extruders for support, If thats the model type I’m working with I use Slic3r.
OK, thats all my rambling for the moment, if you have any other solutions that are Linux based and free of cost let me know.