The Netduino forums have been replaced by new forums at community.wildernesslabs.co.
This site has been preserved for archival purposes only
and the ability to make new accounts or posts has been turned off.
Hey all I know Phil created a repo for this a while back but I needed to update the code to with with .NET MF 4.2 so I created a new public repo under a MIT License. I will try to keep it up to date and maybe toss in some new features.
got it to work on 4.2 but throws exception on one of the interrupts so I just commented it out to test but if you get everything working just give me a shout thanks
exception is thrown on the Limitswitch.OnInterrupt line its highlighted
Hi twinnaz
I do not think the problem is in your code
I'm writing in VB and I'm getting the same error on interrupts in my project on the OnBoardButton.Oninterrupt. I'm using the on board button for some testing of my stepper code. Basically my code starts the stepper for 1000 steps when the button is pressed. On the next press in reverses direction and steps a 1000 steps again.
I am not sure if this would be the correct spot for this, so sorry if it is not.
I am new to CNC machines and the netduino. I found this project and thought what a great way to get started, so I am working on getting the parts together to build my CNC machine. I was planning on using a RotoZip for my spindle, but not sure what end mills people are using and/or recommend. I would like to cut/mill and drill plastic, wood, light aluminum (not sure what this means), and PCB boards.
Can anyone provide some information or good recommendations on end mills?
Can anyone provide some information or good recommendations on end mills?
Thanks in advance
http://www.shapeoko.com is a good place to ask. It is the CNC machine I have but I have not been working with end mills. Everyone there is very helpful and the answer you are looking for I am sure has already been answered.
Yay, finally got the UI to connect to my Netduino+. Now to wire it up to my driver boards. Any tips for how to connect up the Ethernet? It seems very finnicky on when it will connect and when it won't. Out of 30-40 tries I have gotten it to connect twice but I may just be missing something simple or trying to go to quickly.
Still pretty new to this. Any instructions on how to test the system and prepare G-Code files? It has been a long time since I did any CNC and everything I did back then was MasterCAM and HAAS machines.
Yay, finally got the UI to connect to my Netduino+. Now to wire it up to my driver boards. Any tips for how to connect up the Ethernet? It seems very finnicky on when it will connect and when it won't. Out of 30-40 tries I have gotten it to connect twice but I may just be missing something simple or trying to go to quickly.
Still pretty new to this. Any instructions on how to test the system and prepare G-Code files? It has been a long time since I did any CNC and everything I did back then was MasterCAM and HAAS machines.
Hi there trucker!
Glad you've been successful, congratulations! Sorry my response comes late, I haven't been using my machine or monitoring this topic much lately. However last week I dusted it off and starting using it again.
I'd be more than happy to help answer your questions. I haven't had any difficulty connecting to the Netduino+ via ethernet. I just configured it using Visual studio, gave it a static IP address and DazCamUI running on a laptop connects to that IP address. It's never an issue for me.
To prepare G-Code, I used to use TurboCAD to prepare my drawings, but now I'm using the free edition of google sketchup. I export from CAD in DXF and import into CamBam and from there I create my toolpaths and produce the g-code. Then I open that g-code in DazCamUI which drives the Netduino.
If you would like to chat or ask any specific questions, feel free to contact me by private message or email (planetdaz@gmail.com).
First, thanks for a great project and a great way to make possible what has just been a dream for me for a number of years.
Finally, I am able to start my own project. So far, I just plugged my Netduino Plus 2 to a Pololu A49888 controller, and a Nema17 motor to the Pololu, and after a few problems mostly due to a bad breadboard (no or bad contacts), I finally was able to spin my motor with some quick and dirty code. Great first step!
So my next step is to wire everything on a breadboard, and make it work, before starting to cut wood (I mean, MDF) to actually build my machine.
It's about this wiring it all that I have a couple of questions for you:
I am not sure what "Jog" is, and what should be wired to Jog X, Y and Z. ?
Same for Speed Override. In your description (but I know pins have changed now), you indicate A3, speed override (%). But I don't see what would be matching this on the A4988 ???
I will certainly not wire any limit switch until the machine starts to exists, but I would like to be sure I understand and make work all the software/electronics before going further.
For those who might be interested, as soon as I have all the circuitry completed and working, I will have a Fritz drawing available for those interested. It help me so much to see better what I am doing, maybe it could help a few others too.
Thanks for you help, Darrin, as well as all others in this discussion.
First, thanks for a great project and a great way to make possible what has just been a dream for me for a number of years.
Finally, I am able to start my own project.
Hi Bernard,
Congratulations, that sounds great!
I am not sure what "Jog" is, and what should be wired to Jog X, Y and Z. ?
Jog refers to manually "jogging" or moving the Axes. I wired those to a 2 axis variable resistor joystick that I use to move the router around and position it. You can skip this part of the wiring, but it is pretty convenient to have. If you don't have a joystick, you could connect those to 2 potentiometers.
The same goes for speed override. I actually never implemented that in the software, so I'd skip that for now.
The limit switches are pretty simple, and you can have 1 or 2 per Axis (for Min and Max travel). If you wire 2, wire them in parallel on the same pin for each axis. This means you only need 3 pins instead of 6, since the software knows which way the axis is travelling it can assume which of the two switches was tripped if the circuit closes.
I hope that helps. Please keep us posted with pics and videos of your progress, we'd love to see how you go!
Jog refers to manually "jogging" or moving the Axes. I wired those to a 2 axis variable resistor joystick that I use to move the router around and position it. You can skip this part of the wiring, but it is pretty convenient to have. If you don't have a joystick, you could connect those to 2 potentiometers.
The same goes for speed override. I actually never implemented that in the software, so I'd skip that for now.
The limit switches are pretty simple, and you can have 1 or 2 per Axis (for Min and Max travel). If you wire 2, wire them in parallel on the same pin for each axis. This means you only need 3 pins instead of 6, since the software knows which way the axis is travelling it can assume which of the two switches was tripped if the circuit closes.
I hope that helps. Please keep us posted with pics and videos of your progress, we'd love to see how you go!
Thanks very much for your answer, Darrin.
That makes it much clearer, and yes, I will post some pics and videos as I go along.
I have my test wiring almost done. I don't have Joysticks for now. I ordered a couple, and will wiring them at that time. I don't have limit switches either, as I don't see the point on a test setting like this, but will put them on the actual machine, of course.
It looks like everything is working ok, but for some reason, parsed GCode is not written to Commands.txt, only the parameter line is.
Anyway, here are a couple of pictures:
I have a few questions to John Cutburth, as I have seen his Fritzing wiring diagram:
-1- I noticed the Duino and 24V power supply grounds are connected. Is it better/required to do this? For now I am a 12V from a computer power supply source, but for the machine I will certainly use 24 Volts.
-2- I see the electrolytic capacitors recommended on the Pololu diagram, which I don't have yet, but I also see "something" (capacitor, also?) on the Netduino Power supply to the Pololu. In the same time, I see the "Enable" pin wired to the netduino plus power supply with a (if I am not wrong) 10K resistor.
As I am very much discovering electronics (programming is more my thing), could please explain this to me. I am sure it will be useful to others as well.
Thanks for posting pics, it's very exciting to see your progress!
I'm not sure what you mean about the commands.txt file, could you show me what you are seeing? I assume you are using DazCamUI to send the commands to the Netduino?
To answer your question #1 to John: If you use 2 power supplies, you will need to connect their grounds together. If you are only using one power supply, that is fine too (that's what I'm doing).
I'll do my best to post some pics and videos as I progress.
About the commands.txt file, when I open the test.nc file in DazCamUI and click to run it, everything looks normal, I see the parser counting the number of lines parsed (in the bottom left part of the window frame), and the positions log being updated, but the file itself, on the sd card, contain only one line: IgnoreLimits:1/StepEnable:1/StepEnable:0/IgnoreLimits:0, and the file/commands is not executed.
It looks like it is not sent to the Netduino.
I am on a Netduino + 2, and .Net Micro Framework 4.3, so there might be some small changes creating a problem here, I don't know. I will look at this through the debugger. Working on the Netduino with VS 2013 is just so cool....
By the way, I hope you don't mind, but I intend to port (once I am sure everything works OK) DazCamUI to WPF. I am more familiar with WPF than windows forms, and it might allow for more flexibility.