robotsinthesun / monkeyprint

A simple tool for pre-processing 3d models and controlling 3d DLP printers
GNU General Public License v2.0
60 stars 35 forks source link

Debian stretch vtk6.3 "Segmentation fault" #31

Open Joel-Mckay opened 6 years ago

Joel-Mckay commented 6 years ago

Command: python monkeyprint.py --sync

Command (variant 2): python monkeyprint.py --server --sync

Symptom: "Segmentation fault"

OS: Debian Stretch Raspbian hw float

Hints: Seems to occur after the 4 threads initiate

Support libraries (no vtk5.8 in ARM repository at this time): sudo apt-get install libopencv-core2.4v5 python2.7 python-gtkglext1 python-numpy python-opencv python-imaging python-scipy python-serial python-zmq libvtk6-qt-dev libvtk6-dev python-vtk6 libvtk6.3

I also tried the old kakaroto/vtk6 branch, and it gave somewhat more meaningful error outputs: vtkOpenGLTexture : No scalar values found for texture input!

I noticed the vtk6 patches are already merged, but is there a specific branch that differentiates from the "robotsinthesun/release" for pi3?

Best regards, J

robotsinthesun commented 6 years ago

Hi Joel,

what's the configuration / printer setup that you want to run monkeyprint with? Is it PC with monkeyprintRaspi with monkeyprint as serverprinter board or is it just Raspi with monkeyprintprinter board?

Does the segfault occur directly on running or during model loading?

Best, Paul

robotsinthesun commented 6 years ago

Oh and yes, the current release contains the VTK6 stuff...

Joel-Mckay commented 6 years ago

Hi Paul, We are putting together some custom hardware based around a standalone pi3. My intent was to see if libCEC can also support controlling some projectors over HDMI.

Also, I thought it may prove interesting if someone tried opencv's optical calibration techniques by using DLP to print the classic checkerboard pattern onto a flat build plate, compare it to a calibrated sample pattern from a high resolution ink-jet/laser printer, and create a slicer image-layer transform filter to auto-correct distortions in more complex optical setups.

Also, I was thinking of trying a full-screen-mode... where the program controls are on a thin tool bar (must mirror graphics/text for rear projection) at the bottom edge of the screen during print-mode. Thus, the bottom 48 pixels are donated to the users GUI, and the top remains an active build area. This would simplify the desktop layout challenges for students wanting to try tweaking the DLP process.

This project seems to be the only truly open option around now, and I really like the openCV aspect.

Cheers, J