3D Printing ISO

From Open Source Ecology
Jump to: navigation, search

Tue Jan 31, 2016

Feedback on ISO Creation from Torbjorn

Hi. I'm glad to hear you're doing RepRap Assembly Workshops again!

I updated the repo so that file changes are saved upon reboot. I also made an ISO and put it in the Dropbox - [1].

I can't configure without a machine. Auto bed leveling is enabled by default. Connect the same sensor as before in the same way as before, and it should work...

Suggestion to the one who will do configuration:

* Step 1: Get to the configuration file
  git clone https://github.com/tobbelobb/D3D-Porteus.git
  cd D3D-Porteus/porteus/modules
  sudo unsquashfs Marlin_in_home.xzm
  cd squashfs-root/home/guest/Marlin/Marlin
* Step 2: Edit Configuration.h
  - Line 482 will need to be changed
      #define DEFAULT_AXIS_STEPS_PER_UNIT   {80,80,4000,90}
         You can use Steps per millimeter calculator at
    http://www.prusaprinters.org/calculator/
    ... to find the new and correct values.
  - Line 320 to 323 will probably need changed to fix some motors going backwards (inverted directions)
      #define INVERT_X_DIR false
  • Step 3: Replace old package
  cd ../../../../..
  sudo mksquashfs ./squashfs-root ./Marlin_in_home.xzm -comp xz -b 256K -Xbcj x86 -noappend
  sudo rm -rf squashfs-root
    (I'm not 100% sure the mksquashfs command will work.
     If it doesn't, see http://www.porteus.org/tutorials/9-modules.html)
* Step 4: Make new iso
  cd ..
  sudo ./make_iso.sh

The above instructions assume you're on an Ubuntu computer.

Good luck /Torbjørn

Question on Parallel Development

MJ: What is required regarding the machine definition that would be sufficient to enable parallel development of the code settings? We are trying to create sufficient interface design to allow parallel development on all design fronts so we can have a robust product for April 15.

TL: I would need to know number of teeth on the pulleys and which poles on the stepper motor gets connected to what pins on the circuit board. I would also need many close-up pictures of calibration prints and possibly also close-up video of many parts of the machine during print. We would probably need 3-4 rounds of reconfiguring and producing more emails and videos.

Producing this information, sending it to me and reading it will take maybe 10x or more work hours than the actual configuring work. I don't recommend parallelizing the configuration part in this way.

MJ:Ok, thanks for the feedback. Once the software has proper motion - in terms of calibration and print motion - what other parameters in the software would need to be changed to complete the calibration process?

It appears that the only way we can arrive at turnkey operation on the calibration front is if there is a calibration process built into the software - so once the machine is built - the calibration procedure is run and set one time. The settings would then remain for future prints. What are your latest thougths on turnkey calibration?

TL: I'm considering adding draw-wire displacement sensors to Hangprinter to get the kind of operation you're describing:

http://www.micro-epsilon.com/displacement-position-sensors/draw-wire-sensor/

This solution is optimal for Hangprinter because its axes change direction all the time. With linear axes like the universal axis you're working on, I would also consider a setup with a diode laser hitting an array of photodiodes (position detection sensor) via a mirror mounted on the moving part.

Once you measure the actual movement, calibrating step/mm and direction is a matter of quite straightforward programming. Maximum accelerations are maybe possible to auto-calibrate with the same sensor. Less straightforward though. Auto-calibration of the E-axis requires a filament width sensor or a filament force sensor. In general, each added sensor could replace ca 1 line in Configuration.h.

You also need to state what thermistor or thermocouple you have in the configuration file. I don't know how to auto-detect thermistor/thermocouple characteristics.

Auto-calibration will ease parallelization of development, but it will also hide technical details with software and will make the road to a complete understanding of the machine longer for new users.

/Torbjørn