Duet3D Logo Duet3D
    • Tags
    • Documentation
    • Order
    • Register
    • Login
    1. Home
    2. thehans
    • Profile
    • Following 0
    • Followers 0
    • Topics 3
    • Posts 10
    • Best 0
    • Controversial 0
    • Groups 0

    thehans

    @thehans

    0
    Reputation
    19
    Profile views
    10
    Posts
    0
    Followers
    0
    Following
    Joined Last Online

    thehans Unfollow Follow

    Latest posts made by thehans

    • RE: Duet Web Control 2.0.0-RC3 is ready

      Hi, I just updated to 2.0.0-RC3 just to check it out(still on an incomplete printer hardware build at the moment), and only one quibble so far. I got one error in a red message box in the corner: "Failed to get file list Directory 0:/filaments not found"

      I was able to pull the sd card, pop into my PC to add the directory to the root, but could the WebControl possibly just create the directory automatically if it doesn't exist rather than throwing an error? Its just a slight inconvenience because root directories can't be added through the interface either as far as I can tell.

      posted in Duet Web Control
      thehansundefined
      thehans
    • RE: How to import projects in eclipse, Windows

      OK, it looks like the build succeeds for RepRapFirmware now.

      I didn't realize I should have been making changes in v2-dev branch, and I had been using the dev branch, so I'm moving the code over to v2-dev now.

      For the stepper brake feature I'm working on, you suggested to use a signature similar to ConfigureStallDetection, which has changed between these two branches.
      Right now I'm confused about the difference in usage for StringRef reply vs OutputBuffer outBuf. Could you explain?

      posted in Firmware developers
      thehansundefined
      thehans
    • RE: How to import projects in eclipse, Windows

      OK I deleted the CoreNG folder and started over with "Existing projects into workspace" and now CoreNG seems to build ok (using SAM4E8E build config for Duet 2 Wifi)

      Then I try to build DuetWifiSocketServer|Release and it returns this:

      13:43:27 **** Incremental Build of configuration Release for project DuetWiFiSocketServer ****
      make all 
      Building file: ../src/Connection.cpp
      Invoking: Cross G++ Compiler
      xtensa-lx106-elf-g++ -std=gnu++11 -D__ets__ -DICACHE_FLASH -DF_CPU=80000000L -DESP8266 -DARDUINO_ARCH_ESP8266 -DARDUINO_ESP8266_ESP12 -DARDUINO=10606 -Os -Wall -c -g -mlongcalls -mtext-section-literals -fno-exceptions -fno-rtti -falign-functions=4 -ffunction-sections -fdata-sections -MMD -MP -MF"src/Connection.d" -MT"src/Connection.o" -o "src/Connection.o" "../src/Connection.cpp"
      c:/program files/gnu arm eclipse/build tools/2.6-201507152002/bin/sh: xtensa-lx106-elf-g++: not found
      src/subdir.mk:30: recipe for target 'src/Connection.o' failed
      make: *** [src/Connection.o] Error 127
      
      13:43:28 Build Finished (took 268ms)
      

      When I try to build ReprapFirmware|Duet2 I get errors like this:

      ../src/Storage/FileStore.cpp:295:25: error: 'micros' was not declared in this scope
        uint32_t time = micros();
                               ^
      ../src/Storage/MassStorage.cpp: In member function 'void MassStorage::Init()':
      ../src/Storage/MassStorage.cpp:83:13: error: 'delay' was not declared in this scope
         delay(3000);  // Wait a few seconds so users have a chance to see this
                   ^
      ...etc (too long to include in forum post)
      
      posted in Firmware developers
      thehansundefined
      thehans
    • How to import projects in eclipse, Windows

      I'm attempting to follow the BuildInstructions.md for windows, but I don't regularly use eclipse.

      Step 12 says to just import the projects into eclipse, but under the File->Import menu there are dozens of options, I don't know what is the correct procedure so that it has any idea how to build CoreNG.

      Can anyone elaborate on exact steps to import these projects correctly?

      Also Step 5 says to use "which", but that is not a windows command. I used "where" instead and that seems to verify the path.
      Do I need any other not-mentioned GNU tools installed for this?

      Currently if I try to build CoreNG it is trying to use autoreconf and failing to find it:

      Invoking autoreconf in build directory: C:/Eclipse/Firmware/CoreNG/
      
      sh -c "autoreconf -i" 
      sh: autoreconf: not found
      
      Configuration failed with error
      
      posted in Firmware developers
      thehansundefined
      thehans
    • RE: Recommendation for accessing enable pins for stepper brakes

      More details about the steppers and brakes:
      The stepper motors being used are OK42STH47-1684BZ
      I'm using 24V power for the motors, and the brakes also are for 24V. The product specs don't include the brake current, so I just measured the brake coil resistance which is 228 Ohms. At 24V, it should only be ~100mA per brake. So it seems that a single fan output(rated at 1.5A) should easily be able to handle 4 parallel brakes in terms of current draw. Should I be concerned about the inductive back-emf being an issue though?

      @Jacotheron
      The linear motion is using openbuilds lead screws which have a moderately high helix (2mm pitch, 4 start, 8mm lead, 8mm diameter), and a large heavy bed that can potentially back drive them.

      @dc42 Thanks for the info. I think I would like to modify the firmware to support these brakes, so I'm starting to look into what I would need to change. I haven't looked at the inner workings of the code until now, but it seems that I would need to modify Platform::EnableDrive and Platform::DisableDrive to set one of the Fan outputs when the corresponding axis is being set.

      I am debating whether to just do a quick bespoke hack to set the pin in those functions versus actually try to implement a reusable/configurable feature.

      If it were to be configurable, I'm thinking it would require a new G-code (M-code) to map an axis drive to a brake output pin. That or modify and existing code with an added parameter, but I'm not sure if there is an appropriate command to tack something like that onto.

      Also not sure the best approach for where to store that kind of mapping data, probably add new Brake.h and Brake.cpp files for this?

      posted in Duet Hardware and wiring
      thehansundefined
      thehans
    • Recommendation for accessing enable pins for stepper brakes

      I am working on a printer that uses stepper motors with integrated brakes on the Z axis to keep the bed from falling when powered off.

      The plan is to have the stepper enable signal drive an external mosfet that will power the brake solenoid (disabling the brakes) whenever Z stepper motors are enabled.

      I am looking for some advice on how I can connect a circuit for this purpose. I would like to avoid having to patch in a wire directly to the surface mounted stepper driver chips. The printer is using a Duet Wifi with expansion board. I noticed the header for the expansion has enable pins on the 0.1" headers, so I'm thinking of maybe soldering a wire to the back of those headers to connect the stepper enable to the mosfet gate.

      Is there any issue with configuring the Z motors to be run from the expansion board? This machine has 4 stepper motors just for the Z axis, which I think I will drive with 2 separate drivers, having 2 motors in parallel per driver.

      Also, as I understand the enable pin are active low, so I'm unsure the best way to differentiate between the board being unpowered and the stepper enable pins being active.

      posted in Duet Hardware and wiring
      thehansundefined
      thehans
    • RE: Mixed up heater mapping with IDEX and 4 extruders,hotends

      OK I updated the panel firmware, and it still showed only two tools.
      0_1533228992247_IMG_20180802_104827554.jpg
      0_1533229140990_IMG_20180802_104841419.jpg

      Also the web interface shows the same of only two tools
      0_1533228978142_Screenshot from 2018-08-02 11-30-13.png

      So I then tried rewiring the heaters to use E0 and E1 heaters on the Duet 2 Wifi board, and the first two on the DueX5.
      And I changed M143 and M563 config lines to use H1 through H4 instead of H3 through H6.

      It still shows two tools, but the 3rd and 4th temp sensor info is now also removed from the panel display.
      0_1533229149230_rewired_reconfig.jpg

      And again the web interface after rewiring and reconfiguring
      0_1533229039078_web_after_reconfig.png

      The two tools do heat and stop heating when target temp is reached with these settings, so that is good.

      posted in General Discussion
      thehansundefined
      thehans
    • RE: Mixed up heater mapping with IDEX and 4 extruders,hotends

      OK, I just found the PanelDue firmware releases page and I see that there are much newer versions available.

      I guess I hadn't realized that the panel had its own firmware that's completely separate from the main board firmware. I'll try updating tomorrow when I'm back at the shop and see if that works better.

      posted in General Discussion
      thehansundefined
      thehans
    • RE: Mixed up heater mapping with IDEX and 4 extruders,hotends

      Thanks for the reply,

      The PanelDue shows: firmware version 1.17

      Also here is the full the copy-pasted "Software Information" from the web interface:
      Firmware Name: RepRapFirmware for Duet 2 WiFi/Ethernet
      Firmware Electronics: Duet WiFi 1.02 or later + DueX5
      Firmware Version: 2.01(RTOS) (2018-07-26b2)
      WiFi Server Version: 1.21
      Web Interface Version: 1.21.2-dc42

      So it sounds like I should probably just give in and rewire the heaters to use the first two on the main board for best compatibility?

      posted in General Discussion
      thehansundefined
      thehans
    • Mixed up heater mapping with IDEX and 4 extruders,hotends

      Hello all,

      I'm attempting to configure Duet 2 Wifi , with DueX5 in preparation for a large printer build which will be a cartesian configuration with dual X carriages, and 2 extruders on each carriage for a total of 4.

      I have updated to the latest firmware 2.01(RTOS), and am using stacked dual PT100 interface boards for sensors. The electronics are able to read the temperature for all 4 sensors correctly. However I'm having issue with defining the tool heads and getting the correct heater to correspond with the tool.

      With the configuration below, the LCD is showing only 2 of the tools. And If I try to turn on the first nozzle, just to a low 40C temp for testing, it starts to heat the correct hotend, but its acting like it thinks it is heating the 3rd one(temp highlighted red on LCD) and will thermally run away far beyond the set point on the first hotend.

      lcd_heater

      The setup is currently just being tested on the bench, printer mechanicals have not been completed yet for full integration testing. I have stepper motors connected to drivers for X/Y/Z/U , but none yet connected for extruder motors. (I don't think this should affect the toolhead definitions though?)

      My plan was to run all 4 heaters and extruder steppers off of the DueX5 board just for wiring neatness and consistency, and ignoring the 2 heaters on the main board. Any help is appreciated.

      config.g shown below:

      ; Configuration file for Duet WiFi (firmware version 1.21)
      ; executed by the firmware on start-up
      ;
      ; generated by RepRapFirmware Configuration Tool on Tue Jul 31 2018 14:57:20 GMT-0500 (Central Daylight Time)
      
      ; General preferences
      G90                                        ; Send absolute coordinates...
      M83                                        ; ...but relative extruder moves
      
      ; Network
      M550 PFourHead                             ; Set machine name
      M552 S1                                    ; Enable network
      M586 P0 S1                                 ; Enable HTTP
      M586 P1 S0                                 ; Disable FTP
      M586 P2 S0                                 ; Disable Telnet
      
      ; Drives
      M569 P0 S1                                 ; Drive 0 goes forwards
      M569 P1 S1                                 ; Drive 1 goes forwards
      M569 P2 S1                                 ; Drive 2 goes forwards
      M569 P3 S1                                 ; Drive 3 goes forwards
      M569 P4 S1                                 ; Drive 4 goes forwards
      M569 P5 S1                                 ; Drive 5 goes forwards
      M569 P6 S1                                 ; Drive 6 goes forwards
      ; Secondary X axis is labeled "U"
      M584 X0 Y1 Z2 U3 E5:6:7:8                     ; Apply custom drive mapping
      M350 X16 Y16 Z16 U16 E16:16:16:16 I1           ; Configure microstepping with interpolation
      M92 X80 Y80 Z4000 U80 E420:420:420:420         ; Set steps per mm
      M566 X900 Y900 Z12 U900 E120:120:120:120        ; Set maximum instantaneous speed changes (mm/min)
      M203 X6000 Y6000 Z180 U6000 E1200:1200:1200:1200 ; Set maximum speeds (mm/min)
      M201 X500 Y20 Z250 U500 E250:250:250:250        ; Set accelerations (mm/s^2)
      M906 X800 Y800 Z800 U800 E800:800:800:800 I30   ; Set motor currents (mA) and motor idle factor in per cent
      M84 S30                                    ; Set idle timeout
      
      ; Axis Limits
      M208 X0 Y0 Z0 U0 S1                           ; Set axis minima
      M208 X500 Y700 Z1000 U500 S0                    ; Set axis maxima
      
      ; Endstops
      M574 X1 Y1 Z1 U2 S1                           ; Set active high endstops
      
      ; Z-Probe
      M558 P1 H5 F120 T6000                      ; Set Z probe type to unmodulated and the dive height + speeds
      G31 P500 X0 Y0 Z2.5                        ; Set Z probe trigger value, offset and trigger height
      M557 X15:485 Y15:685 S20                   ; Define mesh grid
      
      ; Heaters
      M305 P0 T100000 B4138 C0 R4700             ; Set thermistor + ADC parameters for heater 0
      M143 H0 S120                               ; Set temperature limit for heater 0 to 120C
      
      M305 P1 X200
      M143 H3 S280
      M305 P2 X201
      M143 H4 S280
      M305 P3 X202
      M143 H5 S280
      M305 P4 X203
      M143 H6 S280
      
      ; Fans
      M106 P0 S0.3 I0 F500 H-1                   ; Set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned off
      M106 P1 S1 I0 F500 H1:2:3:4 T45            ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned on
      M106 P2 S1 I0 F500 H1:2:3:4 T45            ; Set fan 2 value, PWM signal inversion and frequency. Thermostatic control is turned on
      
      ; Tools
      ; Pn is tool number, not heater
      ; H0 is for bed, skip H1 and H2 on main board, H3 is first heater on DueX5?
      ; D0 is first extruder driver, skip 2 on main board, so D2 is first extruder driver on DueX5?
      M563 P0 D2 H3                             ; Define tool 0
      G10 P0 X0 Y40 Z0                           ; Set tool 0 axis offsets
      G10 P0 R0 S0                               ; Set initial tool 0 active and standby temperatures to 0C
      M563 P1 D3 H4                              ; Define tool 1
      G10 P1 X0 Y40 Z0                           ; Set tool 1 axis offsets
      G10 P1 R0 S0                               ; Set initial tool 1 active and standby temperatures to 0C
      M563 P2 D4 H5                              ; Define tool 2
      G10 P2 X0 Y-40 Z0                          ; Set tool 2 axis offsets
      G10 P2 R0 S0                               ; Set initial tool 2 active and standby temperatures to 0C
      M563 P3 D5 H6                              ; Define tool 3
      G10 P3 X0 Y-40 Z0                          ; Set tool 3 axis offsets
      G10 P3 R0 S0                               ; Set initial tool 3 active and standby temperatures to 0C
      
      ; Automatic saving after power loss is not enabled
      
      ; Custom settings are not configured
      
      posted in General Discussion
      thehansundefined
      thehans