LPC port of RepRapFirmware February 14, 2018 06:18AM |
Registered: 11 years ago Posts: 341 |
Re: LPC port of RepRapFirmware March 09, 2018 05:51PM |
Registered: 6 years ago Posts: 17 |
Re: LPC port of RepRapFirmware March 10, 2018 03:37AM |
Registered: 11 years ago Posts: 341 |
Re: LPC port of RepRapFirmware March 10, 2018 04:40AM |
Registered: 10 years ago Posts: 14,685 |
Quote
sdavi
I haven't looked into the ethernet part yet. It will depend on how much RAM is required etc. I really hope there is enough as the RRF web gui is very good.
Re: LPC port of RepRapFirmware March 10, 2018 06:15AM |
Registered: 11 years ago Posts: 341 |
Quote
dc42
I'd love to see the Ethernet interface working on the LPC port; but I think RAM usage may be a problem. AFAIK the LPC processor on the current Smoothieboard and clones (including Re-ARM) has only 64Kb RAM. Even the legacy Duets had 96kb RAM and RRF for them used most of it. The current Duets have 128kb RAM.
You could reduce the RAM usage somewhat, for example by reducing the maximum number of stepper motors supported (maybe you already have) and therefore the number of DriveMovement objects allocated. Also you could save on RAM needed for the Ethernet interface by only allowing one HTTP connection at a time. Finally there are some buffers used to read and write info to/from the SD card, and these could all be reduced to 512 bytes, at the expense of file upload speed.
HTH David
PS - there are 2 separate networking subsystems in the RRF source tree for handling built-in Ethernet ports: the one for the legacy Duets which is based on LWIP 1.4 and in subfolder Duet, and the one for the SAME70 which is in subfolder Networking. The one for the legacy Duets almost certainly uses less RAM than the other one..
Re: LPC port of RepRapFirmware March 10, 2018 09:38AM |
Registered: 10 years ago Posts: 14,685 |
Re: LPC port of RepRapFirmware March 10, 2018 09:24PM |
Registered: 6 years ago Posts: 17 |
Re: LPC port of RepRapFirmware March 10, 2018 09:49PM |
Registered: 6 years ago Posts: 17 |
Send: M119 Recv: Endstops - X: not stopped, Y: not stopped, Z: not stopped, Z probe: not stopped
Re: LPC port of RepRapFirmware March 11, 2018 12:18AM |
Registered: 6 years ago Posts: 17 |
Re: LPC port of RepRapFirmware March 11, 2018 12:21AM |
Registered: 11 years ago Posts: 341 |
Quote
cyris69
I reran it as marlin and connected fine but running M119 but getting
Send: M119 Recv: Endstops - X: not stopped, Y: not stopped, Z: not stopped, Z probe: not stopped
Seems my stops are on the axis min just need to move them to max, then in the configuration tool set their end stop locations to 'at high end' and leave z to "at low end". Still faster than I got smoothie to even do anything lol
EDIT:
I don't know the trigger height of the capacitive probe just the offset, is this important at all and do I need to measure it?
Re: LPC port of RepRapFirmware March 11, 2018 12:38AM |
Registered: 11 years ago Posts: 341 |
Quote
cyris69
Endstops aren't working no matter how configured as well as the pins must not be right for the axises. Is this something I could compile?
Re: LPC port of RepRapFirmware March 11, 2018 12:42AM |
Registered: 6 years ago Posts: 17 |
Recv: ; Configuration file for Duet Ethernet (firmware version 1.20 or newer) Recv: ; executed by the firmware on start-up Recv: ; Recv: ; generated by RepRapFirmware Configuration Tool on Sun Mar 11 2018 00:13:13 GMT-0500 (Eastern Standard Time) Recv: Recv: ; General preferences Recv: G90 ; Send absolute coordinates... Recv: M83 ; ...but relative extruder moves Recv: ; Network Recv: M550 PMy printer ; Set machine name Recv: M540 PBE:EFE:AD:FE:ED ; Set MAC address Recv: M552 P0.0.0.0 S1 ; Enable network and acquire dynamic address via DHCP Recv: M586 P0 S1 ; Enable HTTP Recv: M586 P1 S0 ; Disable FTP Recv: M586 P2 S0 ; Disable Telnet Recv: Recv: ; Drives Recv: M569 P0 S0 ; Drive 0 goes forwards Recv: M569 P1 S1 ; Drive 1 goes forwards Recv: M569 P2 S1 ; Drive 2 goes forwards Recv: M569 P3 S0 ; Drive 3 goes forwards Recv: M350 X32 Y32 Z32 E16 I0 ; Configure microstepping without interpolation Recv: M92 X160 Y160 Z800 E95 ; Set steps per mm Recv: M566 X900 Y900 Z12 E120 ; Set maximum instantaneous speed changes (mm/min) Recv: M203 X6000 Y6000 Z180 E1200 ; Set maximum speeds (mm/min) Recv: M201 X500 Y20 Z250 E250 ; Set accelerations (mm/s^2) Recv: M906 X800 Y800 Z800 E800 I30 ; Set motor currents (mA) and motor idle factor in per cent Recv: M84 S30 ; Set idle timeout Recv: Recv: ; Axis Limits Recv: M208 X0 Y0 Z0 S1 ; Set axis minima Recv: M208 X300 Y300 Z400 S0 ; Set axis maxima Recv: Recv: ; Endstops Recv: M574 X1 Y1 S1 ; Set active low endstops Recv: M574 Z0 S0 ; Set endstops controlled by probe Recv: M558 P1 H5 F120 T6000 ; Set Z probe type to unmodulated and the dive height + speeds Recv: G31 P600 X-41 Y0 Z-3.45 ; Set Z probe trigger value, offset and trigger height Recv: M557 X15:285 Y15:285 S20 ; Define mesh grid Recv: Recv: ; Heaters Recv: M301 H0 S1.00 P10 I0.1 D200 T0.4 W180 B30 ; Use PID on bed heater (may require further tuning) Recv: M305 P0 T100000 B4138 C0 R4700 ; Set thermistor + ADC parameters for heater 0 Recv: M143 H0 S120 ; Set temperature limit for heater 0 to 120C Recv: M305 P1 T100000 B4138 C0 R4700 ; Set thermistor + ADC parameters for heater 1 Recv: M143 H1 S280 ; Set temperature limit for heater 1 to 280C Recv: Recv: ; Fans Recv: M106 P0 S0.3 I0 F500 H-1 ; Set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned off Recv: M106 P1 S1 I0 F500 H1 T45 ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned on Recv: M106 P2 S1 I0 F500 H1 T45 ; Set fan 2 value, PWM signal inversion and frequency. Thermostatic control is turned on Recv: Recv: ; Tools Recv: M563 P0 D0 H1 ; Define tool 0 Recv: G10 P0 X0 Y0 Z0 ; Set tool 0 axis offsets Recv: G10 P0 R0 S0 ; Set initial tool 0 active and standby temperatures to 0C Recv: Recv: Recv: ; Automatic saving after power loss is not enabled Recv: Recv: ; Custom settings are not configured Recv: Recv: ; Miscellaneous Recv: M501 ; Load saved parameters from non-volatile memory Recv: ok Send: M122 Recv: === Diagnostics === Recv: Used output buffers: 1 of 32 (28 max) Recv: === Platform === Recv: RepRapFirmware for LPC17xx based Boards version 1.21RC2 running on ReArm Recv: CPU Clock Speed (MHz): 100.000000 Recv: Static ram used: 5880 Recv: Dynamic ram used: 14952 Recv: Recycled dynamic ram: 3744 Recv: Stack ram used: 3040 current, 4008 maximum Recv: Never used ram: 4184 Recv: AHB0 Static ram used: 0 Recv: AHB1 Static ram used: 316 Recv: AHB0 Dynamic ram used: 15388/16384 Recv: AHB1 Dynamic ram used: 7712/16068 Recv: -- RAM Totals -- Recv: Main RAM: 23872/32768 (8896 free) Recv: AHB0 RAM: 15388/16384 (996 free) Recv: AHB1 RAM: 8028/16384 (8356 free) Recv: Error status: 1 Recv: Free file entries: 10 Recv: SD card 0 detected Recv: SD card longest block write time: 0.0ms Recv: Date/time: 1970-01-01 00:00:00 Recv: Slowest main loop (seconds): 0.356111; fastest: 0.000019 Recv: Recv: === GPIO Special Pins available === (i.e. with M42) Recv: LogicalPin - PhysicalPin Recv: 60 - P7_31 Recv: === Move === Recv: MaxReps: 0, StepErrors: 0, LaErrors: 0, FreeDm: 100, MinFreeDm 100, MaxWait: 0ms, Underruns: 0, 0 Recv: Scheduled moves: 0, completed moves: 0 Recv: Bed compensation in use: none Recv: Bed probe heights: 0.000 0.000 0.000 0.000 0.000 Recv: === Heat === Recv: Bed heaters = 0, chamberHeaters = -1 -1 Recv: Heater 0 is on, I-accum = 0.0 Recv: === GCodes === Recv: Segments left: 0 Recv: Stack records: 1 allocated, 0 in use Recv: Movement lock held by null Recv: http is idle in state(s) 0 Recv: telnet is idle in state(s) 0 Recv: file is idle in state(s) 0 Recv: serial is ready with "M122" in state(s) 0 Recv: aux is idle in state(s) 0 Recv: daemon is idle in state(s) 0 Recv: queue is idle in state(s) 0 Recv: autopause is idle in state(s) 0 Recv: Code queue is empty.
Re: LPC port of RepRapFirmware March 11, 2018 12:52AM |
Registered: 6 years ago Posts: 17 |
Re: LPC port of RepRapFirmware March 11, 2018 05:22AM |
Registered: 11 years ago Posts: 341 |
Quote
cyris69
I was able to get xy to trigger they are your run of the mill reprap endstops. Your re-arm pins are correct I went through your code.
Can't get probe though, here is all the output. Also in the rrf tool I picked the unmodulated or smart ir probe since it was default and not sure which for capacitive NPN NO probe. Also seems motors aren't activating using the values taken from your config. Sorry, I'm not a big software configurer so a lot of this is still new to me. Been printing for over 5 years but never really did much besides use pre-built firms.
Re: LPC port of RepRapFirmware March 11, 2018 05:39AM |
Registered: 10 years ago Posts: 14,685 |
Re: LPC port of RepRapFirmware March 11, 2018 06:03AM |
Registered: 11 years ago Posts: 341 |
Quote
dc42
On the Duets you can use NPN sensors with the Z probe input too, but depending on the amount of leakage from your sensor output you might need to add an external pullup resistor to +3.3V. The reason we suggest using the E0 input is because on the Duets it includes an LED + resistor pullup already.
Re: LPC port of RepRapFirmware March 11, 2018 09:58AM |
Registered: 6 years ago Posts: 9 |
Re: LPC port of RepRapFirmware March 11, 2018 02:09PM |
Registered: 6 years ago Posts: 17 |
Send: M119 Recv: Endstops - X: at min stop, Y: at min stop, Z: not stopped, Z probe: at min stop Recv: ok
G31 P500 X-41 Y-3.45 Z2.5 ; Set Z probe trigger value, offset and trigger height
G31 P500 X-41 Y0 Z-3.45 ; Set Z probe trigger value, offset and trigger height
Re: LPC port of RepRapFirmware March 11, 2018 02:44PM |
Registered: 6 years ago Posts: 17 |
Re: LPC port of RepRapFirmware March 11, 2018 03:27PM |
Registered: 6 years ago Posts: 17 |
Recv: Error: Attempting to extrude with no tool selected. Changing monitoring state from 'Operational' to 'Error: Attempting to extrude with no tool selected.
Re: LPC port of RepRapFirmware March 11, 2018 06:35PM |
Registered: 11 years ago Posts: 341 |
Quote
cyris69
Ok, that line of code worked in terminal and all motors moved to home, just my x/z axis thinks min is to the right when it should be left/down.
Quote
cyris69
Also anyway to set z to home to XY 150+offset before probing?
Quote
cyris69
How do I save it to memory, does M500 work with RRF?
M501 ; Load saved parameters
Quote
cyris69
SO my probe has an x offset of -41 from nozzle, z offset to move down at start of print is -3.45mm, I know large value but I'm lazy to relevel etc. But this is how it's shown in config, why is the offset to move down after homing for print set in the Y axis and I assume the Z is trigger height which I think I make it 3mm from nozzle when setting the probe up
Quote
cyris69
Also, I'm using DRV88235's physical pot, all but extruder is 1/32 but getting:
M350: Drive Z does not support 32x microstepping
Quote
cyris69
Recv: Error: Attempting to extrude with no tool selected.
Changing monitoring state from 'Operational' to 'Error: Attempting to extrude with no tool selected
Re: LPC port of RepRapFirmware March 11, 2018 11:53PM |
Registered: 6 years ago Posts: 17 |
Re: LPC port of RepRapFirmware March 12, 2018 01:55AM |
Registered: 11 years ago Posts: 341 |
Quote
cyris69
Have any idea why hotend is working but bed isn't being triggered? It is controlled by a mosfet board which is wired into the board like you'd normally do if direct. Worked on marlin/smoothie but haven't gotten down to reading more of the code yet. However, this all feels quite promising at its current state as the issues are PEBCAK. I plan on if all goes well to get another rearm and use it on my rostock max v3 since duet no matter how much I drool over just won't ever happen
Quote
cyris69
So what you are saying is that the offset for the probe where I had in marlin as -3.45mm which I'm sure if you've used marlin, I assume you have so know how it works. So when printing it would be at default 10mm from bed then move down 10+offset from nozzle to bed so technically -13.45mm total down to bed with enough space between to print a normal first layer.. With that said I'd actually just put offset how high I want the nozzle to be not how much its moving down, so I'd use lets say I like my nozzle to be about 0.05 to 0.10 from the bed I'd just enter positive 0.05 or 0.10 not -3.45. I don't have an LCD so not sure how to babystep it down so just use octoprint to move down until the prob trigger and measure distance from nozzle to bed or just from probe to bed?
; Lift Z 5mm up relative to current position G91 G1 Z5 F6000 G90 ; Back to absolute positioning ;move to center of bed G1 X125 Y100 F6000 G30; do probe ;slow move to desired z position G1 Z0.1 F100
Re: LPC port of RepRapFirmware March 12, 2018 12:29PM |
Registered: 6 years ago Posts: 17 |
Re: LPC port of RepRapFirmware March 12, 2018 07:14PM |
Registered: 6 years ago Posts: 17 |
Send: G30 Recv: Error: Z probe already triggered at start of probing move Changing monitoring state from 'Operational' to 'Error: Z probe already triggered at start of probing move '
Re: LPC port of RepRapFirmware March 12, 2018 11:03PM |
Registered: 11 years ago Posts: 341 |
Quote
cyris69
Apparently My hot end has been at 200C for like 18 hours without me knowing... however the M105 reports the correct room temp for the bed.
This is how I have my ramps wired, haven't noticed any new lights flashing and on my mosfet board for controlling the bed has an LED that will blink light when its sending power to bed. If you look at the LED closets to the group of mosfets the LED labeled LED1 is red and constant lit as normal no other LEDS are lit
Quote
cyris69
Got motors going correct way, can extrude and its pushing the right way. Part fan doesn't do anything but maybe thats the firmware. I just used second hotend terminals like I found to do online so maybe need to adjust that somehow. Alos, when setting the z offset, if I do a home for Z it just goes down 5 then back up even though I tested at Z5 offset.
Re: LPC port of RepRapFirmware March 13, 2018 03:14AM |
Registered: 6 years ago Posts: 17 |
Re: LPC port of RepRapFirmware March 30, 2018 06:11AM |
Registered: 11 years ago Posts: 341 |
X_Min | (Spare) |
X_Max | Wire to X Endstop |
Y_Min | (Spare) |
Y_Max | Wire to Y Endstop |
Z_Min | Wire to Z Probe |
Z_Max | Wire to Z endstop |
Driver | Width | Interval | Setup | Hold |
---|---|---|---|---|
DRV8825 | 1.9 | 1.9 | 0.65 | 0.65 |
A4988, A4982 | 1.0 | 1.0 | 0.2 | 0.2 |
A5984 | 1.0 | 1.0 | 0.4 | 0.4 |
Re: LPC port of RepRapFirmware March 30, 2018 02:59PM |
Registered: 10 years ago Posts: 14,685 |
Re: LPC port of RepRapFirmware March 30, 2018 09:25PM |
Registered: 11 years ago Posts: 341 |
Quote
dc42
Wow, I'm impressed that you managed to enable networking using only 64kb of RAM!
Quote
dc42
I suppose it's too much to hope that there's another chip pin-compatible to the LPC1769 with 128kb RAM, that could be used to upgrade existing boards? 128kb is enough to run the in-development RTOS version of RepRapFirmware.
Quote
dc42
You might be able to fix the M503 issue (and I suspect you may find an issue with M122 as well) by generating part of the response, then returning to allow the web client to take that part and release the buffers, before you generate the next chunk. But this might still cause momentary pauses if you use those commands during a print.