Commit graph

64 commits

Author SHA1 Message Date
Adrian Bowyer
ef7e528bad README updated to include compile instructions. 2013-12-30 18:43:26 +00:00
Adrian Bowyer
71c1571c6c Synchronising duet branch with the mastr branch. 2013-12-27 15:02:04 +00:00
Adrian Bowyer
91efcc4e48 M82 changed so that it reports steps/mm when given no arguments. 2013-12-06 20:56:08 +00:00
Adrian Bowyer
8b76430a9b RRP logo updated. 2013-11-30 15:48:03 +00:00
Adrian Bowyer
88a929eef4 One ether bug (starting the ether after reading config.g) fixed owing to Tony's brilliant debugging persistence. It still hangs if the ether is unplugged, so that's next on the list. 2013-11-26 21:04:25 +00:00
Adrian Bowyer
c0b7b4bace Working on the ether/USB problem. The network can now be disabled (#define NETWORK in Configuration.h). With it disabled the USB works with or without a network cable plugged in. With it enabled the USB only works with a network cable plugged in too. You have to wait for the ether to reinitialise (ether socket lights go out for a couple of secs, then come on, then the green one starts flashing) before trying to talk via the USB. The ether is initialised before config.g is run, so the IP is the one defined in platform.h. The network is disabled in this commit. The heaters are set on by 0, not 1 (i.e. Duet board v0.6 or later). To change this see #define HEAT_ON in platform.h 2013-11-26 13:38:23 +00:00
Adrian Bowyer
1792c68b49 Heater logic inverted for Duet v0.6. Remember to set HEAT_ON to 1 in platform.h for earlier versions, and to set it back _and_recompile_ before doing a commit for Duet v0.6 of higher 2013-11-25 16:39:46 +00:00
Adrian Bowyer
d89b8bace0 X axis endstop now done with Z Probe (if it's activated). 2013-11-25 09:32:13 +00:00
Adrian Bowyer
c33d1ac723 M503 implemented (tis time with added bug-free-ness...) 2013-11-19 18:34:48 +00:00
Adrian Bowyer
ec5f5fe536 M503 implemented. Prints the config file to USB. 2013-11-19 16:10:53 +00:00
Adrian Bowyer
926aabe078 Added z-probe type selection. See M558. 2013-11-19 15:00:23 +00:00
Adrian Bowyer
965f41e953 Shifted new M codes to start at M550. Added setting of Netmask and gateway. 2013-11-17 22:10:14 +00:00
Adrian Bowyer
104528ab66 Added user-selection of IP address via M502. 2013-11-17 17:58:30 +00:00
Adrian Bowyer
c7286905b2 Ability to specify bed Z probe points added. See M505. 2013-11-15 22:04:52 +00:00
Adrian Bowyer
68e0f833df Marlin emulation implemented. Pretty much working, but not extensively tested. 2013-11-14 23:32:50 +00:00
Adrian Bowyer
bd51a7c3f0 Fixed Timer overflow bug. 2013-11-13 23:23:31 +00:00
Adrian Bowyer
8b3931c8cf Memory diagnostics added. Mem usage is printed whenever you turn debugging on (even if it is already on). 2013-11-13 18:16:43 +00:00
Adrian Bowyer
b94bb6c811 Added cooling fan control. 2013-11-12 15:53:49 +00:00
Adrian Bowyer
f907e2253e All responses to GCodes routed through a single function in the class GCodes
to allow the firmware to emulate how other firmware (e.g. Marlin) responds.  Emulation not yet implemented, but should now be easy.
2013-11-11 17:39:17 +00:00
Adrian Bowyer
971fed0d02 Temperature range checking added (see Configuration.h). If temps repeatedly
fall outside the set range, it assumes the thermistor is bust and turns off the heater.
2013-11-10 21:55:44 +00:00
Adrian Bowyer
e8eafeda22 Hooks added for (I hope) the final and complete set of all parameter-changing
M Codes that we will need.  Network initialisation delayed until after the
config.g file is run, to allow machine name etc to be set from that.
2013-11-10 19:39:13 +00:00
Adrian Bowyer
5707cc1eea Fixed the file listing bug. Either in the RepRap code, or somewhere in the SD file code, the #define for _USE_LFN is defined as fals for RepRap, true in the library file ff.c. The result is that ff.c tried to write long
file names into a structure created in RepRap that was too short for them.  Result - buffer overflow misery.  For the moment I've commented out the bit of code in ff.c that handles long names (look for the string ******), but this needs to be tracked down and dealt with properly.
2013-10-29 15:42:40 +00:00
Adrian Bowyer
708822a54e A couple of tidyings and additions:
1. Z home now moves home, rather than just setting the coordinate.
2. Wait for temps implemented.

Also the JSON requests for the g code filelist has been temporarily commented
out in reprap.htm.  It was causing the firmware to hang sometimes.  To be investigated.

Machine now prints nicely...
2013-10-22 18:27:12 +01:00
Adrian Bowyer
eadac593cc Z probing now works using Jean-Marc's idea. Much better. 2013-10-19 17:38:31 +01:00
Adrian Bowyer
de96171b5d Z probe code improved, but still not there. It now uses hysteresis to
track up the low-precision slope of the IR probe before measuring down
the high-precision slope near 0 mm.  But this means that the probe has to
be set only a fraction of a mm higher than the nozzle itself.  Also (at
the moment for safety) the code thinks Z = 0 occurs when it is actually
0.2mm.  This is easy to fix when the rest is reliable.
2013-10-17 23:18:57 +01:00
Adrian Bowyer
565117cba3 Move and ancilliary classes changed to store coordinates in machine units not mm internally to avoid cumulative errors. 2013-10-17 16:30:24 +01:00
Jean-Marc Giacalone
8d92b70d0f File list implemented. Also M201 to set axis accelerations via USB. 2013-10-08 16:33:10 +01:00
Adrian Bowyer
a3925b2574 Removed pause at start waiting for an input byte on the USB. NB this version
has IR Z probe code.  Need to make the ordinary microswitch act as a hard stop
on Z when that is enabled, so it's failsafe.
2013-10-07 18:55:15 +01:00
Adrian Bowyer
6617b7f3a7 Diagnostic writes commented out. 2013-10-07 17:33:32 +01:00
Adrian Bowyer
368523e3e9 Web interface works! Horray! Key was to prevent lwip requesting pages when
RepRap was still serving the one before.
2013-10-07 17:16:21 +01:00
Adrian Bowyer
0bd51c6582 Still not working. But not working differently... 2013-10-06 22:33:32 +01:00
Adrian Bowyer
d0e2a35e4d Web still not reliable. (A) Trouble is the dynamic allocation of http_state structs. This needs to be tracked through the RepRap network firmware. More tomorrow... 2013-10-04 23:33:54 +01:00
Adrian Bowyer
c15eb1ec43 Improvements..., but not there yet. 2013-10-02 14:32:54 +01:00
Adrian Bowyer
6686e23f4d Webserver coming along. Some tidying. For some reason there is a
big delay on closing the connection when there is a second partly-full
buffer of data sent to the browser after a completely full one.
2013-10-02 12:31:38 +01:00
Adrian Bowyer
7d3016a7f3 Some webserver progreass. Can get http requests, and can serve a simple page, both from within the RepRap Firmware Webserver class. Bugs remain... 2013-10-01 23:03:07 +01:00
Adrian Bowyer
2609f66c86 Webserver not yet working. Rest should be OK though. 2013-09-29 23:15:00 +01:00
Adrian Bowyer
49e9bc29c3 G92 Implemented. Tested interactively, but not from a G Code file. Should work though. 2013-09-27 18:15:49 +01:00
Adrian Bowyer
4e6f8a1b75 Interception of http GET working. 2013-09-27 17:21:51 +01:00
Adrian Bowyer
aaf75220de Working on the http code... 2013-09-24 10:40:21 +01:00
Adrian Bowyer
ce76147fc3 Ethernet semi-integrated, but running its own webserver. Need to intercept
sends and recieves and direct them at the Webserver class.
2013-09-23 23:34:55 +01:00
emaker-11z
60c71e3a07 Configured to use standard separate library. 2013-09-23 16:23:38 +01:00
Jean-Marc Giacalone
43c208ef5b Libraries moved to own repo. Web interface toggled by #define ETHERNET. 2013-09-21 09:56:03 +01:00
Adrian Bowyer
f3e81cbe4c Z probing now working. The probe signal connects to AD7 which (confusingly)
is A0 on the Arduino.  The signal seems quite noisy.  I have put a 10uF
capacitor across its supply.  Maybe add an 0.1uF across its signal?
Two values need to be set in Platform.h:

If v is the value from the A->D on A0, then:

z = v*Z_PROBE_GRADIENT + Z_PROBE_CONSTANT (mm)

Z_PROBE_GRADIENT is dependent on the IR proximity device (though they may
be consistent enough all to have the same value) and Z_PROBE_CONSTANT depends
on how high it is mounted relative to the nozzle.

To generate these values, uncomment the bits of code in and around Platform::Spin()
zero the Z axis by eye, run the program, and raise Z by 0.1mm increments.  Put
the raw A->D values in the spreadsheet in the Data directory, and it will
give you the values of Z_PROBE_GRADIENT and Z_PROBE_CONSTANT.
2013-09-15 18:10:33 +01:00
Adrian Bowyer
953828081e Duet fully (I think) working. :-) 2013-09-10 22:42:43 +01:00
Adrian Bowyer
1dc821cbff Duet all working except for the bed heater. Investigations continue... 2013-09-09 21:25:38 +01:00
Adrian Bowyer
e3fd24ca95 Configuration file (in sys/config.g) implemented. 2013-09-05 16:10:44 +01:00
Adrian Bowyer
c4017b1019 M906 (set motor current) support added. 2013-09-02 22:56:26 +01:00
Adrian Bowyer
c25816668b First working Duet version with SD card file reading for G Codes. 2013-09-01 22:45:32 +01:00
Adrian Bowyer
0d0672e49b "Hollowed out" version with no Ether and no SD, ready for Duet versions of those.
USB works, and firmware communicates over that.
2013-08-28 17:32:16 +01:00
Adrian Bowyer
4a335a6e86 Working on the Duet version... 2013-08-28 16:51:18 +01:00