2014-10-28

VisualSFM

After Autodesk 123D Catch didn't work at all even given a perfect series of photos,
I'm now trying to get VisualFSM to work.

...stay tuned.



FabScan

I just found the FabScan project of RWTH Aachen.
Aparently back in January it was still quite buggy but nowadays you can get complete kits and there is a very interesting 2-laser + Z stepper spinoff being developed.

This blog post is basically for myself so I don't forget these links. ;)

Rooting Jiake P6

I finally managed to root my Jiake P6 non-camera phone.



"Root Genius"  (worked)

http://www.gizchina.de/downloads/viewdownload/3-flashtools-firmwarebearbeitung/34-root-genius.html
http://www.gizchina.de/downloads/viewdownload/3-flashtools-firmwarebearbeitung/33-universal-adb-treiber.html


ADB method (did not work)

using the MTK or the Google driver
MKT Driver won't be offered as a driver for this phone after install
http://forum.fairphone-freunde.de/Thread-MT65xx-Android-Phone-Treiber-nicht-gefunden
http://developer.android.com/sdk/win-usb.html#top
http://forum.xda-developers.com/showthread.php?t=2247537

2014-10-27

Kinect V1 with diopters


Intended use

My CAD program of choice is Geomagic Design (started out as Alibre Design). Since the last major release it can import meshes (and even directly use 3D scanners of the same manufacturer) and convert these into solid geometries.
I already used these features heavily for 3D modelled meshes of organic, artistic parts.
What I want to do is use it's advanced features of reconstructing technical parts with flat surfaces, right angles and precise holes with an affordable 3D scanner.
So based on the promise that Skanect will support the Kinect V2 on the day of official sale, I preordered one with Microsoft half a year ago.

Current status 

Skanect still didn't deliver the promised Kinect V2 support and i am tired of waiting with my Kinect V2 in hand.
Thus I got myself a used XBox 360 Kinect V1 and am testing Skanect on MacOS with it to get some first experiences with 3D scanning using this device. Hopefully these will help me get better results with the Kinect V2 later.

...the 3D scan results are terrible so far.
Small object (size of a hand) are not much more then a blob with heavily rounded features.
It may be useful for object the size of a human, maybe barely useful for entire faces as long as dimentional accuracy is not important (no masks that actually fit well) but not for smaller objects.
I'm looking into hacks that may improve this by reducing the minimum focus distance and thus concentrating the low resolution fully onto the  (small) object.

+3 diopters didn't help at all.

Stock Kinect

Minimum focus distance in normal mode: 80cm  (1/0.8m = 1.25 dioptrien)
Minimum focus distance in near mode: 40cm  (1/0.4m = 2.5 dioptrien)
Near Mode is Kinect V1 for Windows only
Accuracy: 2-3mm in a distance of 1.5m
IR resolution: 640x480 but only 1 depth value per cluster.

Kinect V2 has a slightly lower IR resolution (only the color camera is FullHD) but 1 depth value per pixel.

Reading glasses hack

Literary taping +2.5 reading glasses (technically a dioptre[UK]/diopter[EN]) in front of IR-projector and IR-camera seem to reduce the minimum focus distance from 40cm to 35cm. Object appear 1.2x larger. (Based on the report in the thread below)

Normal Mode:
+2.0 result in 1/(1.25+2.0)  = 31cm  minimum focus distance, 1/2.0=50m maximum focus distance
+2.5 result in 1/(1.25+2.5)  = 27cm  minimum focus distance, 1/2.5=40cm maximum focus distance
+3.0 result in 1/(1.25+3.0)  = 24cm  minimum focus distance, 1/3.0=33cm maximum focus distance

Near Mode: (Kinect V1 for Windows only)
+2.0 result in 1/(2.5+2.0)  = 22cm  minimum focus distance, 1/2.0=50m maximum focus distance
+2.5 result in 1/(2.5+2.5)  = 20cm  minimum focus distance, 1/2.5=40cm maximum focus distance
+3.0 result in 1/(2.5+3.0)  = 18cm  minimum focus distance, 1/3.0=33cm maximum focus distance

I know that these also exist in higher quality as "near filters" for macro photography. I even used one of them on the Raspberry Pi camera to make it focus on closer objects to mount it on a Makibox 3D printer.

Single lens diopters cause color-halos.
Dual-lens diopters, called achromatic lenses correct these issues. (Obviously made for visible light while we are working in infrared)  There are achromatic lenses for the infrared spectrum.

You should not use a diopter stronger then 20% of the focal length of your lens.
The Kinect IR lens has a field of view of 57.8°, putting it in the 40mm ballpark.
So everything below +4.0 should be fine.

Links


Settings for ReconstructMe 

(I'm using Skanect where I can't use them)


camera_size_x: 640
camera_size_y: 480
camera_fx: 514.16
camera_fy: 514.16
camera_px: 320
camera_py: 240
camera_near: 100
camera_far: 2000
volume_size: 512
volume_min {
x: -250
y: -250
z: 400
}
volume_max {
x: 250
y: 250
z: 900
}
integrate_truncation: 10
integrate_max_weight: 64
icp_max_iter: 20
icp_max_dist2: 200
icp_min_cos_angle: 0.9
smooth_normals: false
disable_optimizations: false
extract_step_fact: 0.5

2014-10-22

Geomagic Design - Mesh to Solid suddenly missing


Update: FOUND IT!  You can scan meshes in the parts and the assembly editor but only in the parts editor are the other tools visible. Very confusing UI inconsistency. There's no reason this wouldn't just create a new solid part in the assembly editor.


My Geomagic Design suddenly decided to no longer allow me to convert Meshed to Solids.

That's the sole reason I purchased the last update.
I had positive email confirmation that the features would be in there (they where not on the website then, only in the promotional video for the new version) and based on that information I shelled out the money for the extended support contract that would give me that update.

My license states "Geomagic Design".
(Not "Geomagic Elements")
The website states that this feature is included in Geomagic Design.
I still used that feature extensively in May after having extended the support contract in March.
Now in October this most important feature is suddenly gone.

2014-10-12

White Ultimaker II studio case

Due to my work, I travel A LOT.
So as with my TravelCNC I'm custom making a studio case to keep my Ultimaker II 3d printer safe.
Since the Ultimaker has a nice, white case, the studio case is going to white too.

It will not be sound-proof with Basotect foam but use a hard foam to stand on and keep the Ultimaker II centered and a soft foam for padding.

Note:
You REALLY want to use buy a pneumatic rivet gun for this.
Mounting 150 rivets by hand alone is tiring, very loud and takes weeks.
...as opposed to silent operation (except of cause the compressor recharging since cheap rivet guns take a lot of air volume) of a few hours.




2014-09-18

SYSCLK DX on MacOS

I never got my 2 SYSCLK DX - USB oscilloscopes to work with their Windows software. So now I'm trying to buils the unstable version of sigrok pulseview and sigrok-cli on my Mac...

 The stable command line version seems to detect and identify the device but I can't figure out how to tell it what device to use to do any actual stuff. Last step doesn't seem to work.


bash-3.2# brew install --HEAD pulseview
==> Installing pulseview dependency: cmake
==> Downloading https://downloads.sf.net/project/machomebrew/Bottles/cmake-3.0.2.mavericks.bottle.tar.gz
######################################################################## 100,0%
==> Pouring cmake-3.0.2.mavericks.bottle.tar.gz
��  /usr/local/Cellar/cmake/3.0.2: 1641 files, 26M
==> Installing pulseview
==> Cloning git://sigrok.org/pulseview
Updating /Library/Caches/Homebrew/pulseview--git
==> cmake . -DENABLE_DECODE=y -DCMAKE_INSTALL_PREFIX=/usr/local/Cellar/pulseview/HEAD -DCMAKE_BUILD_TYPE=None -DCMAKE_FIND_FRAMEWORK=LAST -DCMAKE_VERBOSE_MAKEFILE=ON -Wno-dev
==> make install
1 error generated.
make[2]: *** [CMakeFiles/pulseview.dir/pv/view/viewport.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [CMakeFiles/pulseview.dir/all] Error 2
make: *** [all] Error 2
/usr/local/Library/Homebrew/build.rb:194:in `dump': can't dump anonymous class # (TypeError)
    from /usr/local/Library/Homebrew/build.rb:194:in `rescue in

'
    from /usr/local/Library/Homebrew/build.rb:179:in `
'
Error: marshal data too short
Please report this bug:
    https://github.com/Homebrew/homebrew/wiki/troubleshooting
/usr/local/Library/Homebrew/formula_installer.rb:511:in `load'
/usr/local/Library/Homebrew/formula_installer.rb:511:in `block in build'
/usr/local/Library/Homebrew/utils.rb:239:in `ignore_interrupts'
/usr/local/Library/Homebrew/formula_installer.rb:505:in `build'
/usr/local/Library/Homebrew/formula_installer.rb:181:in `install'
/usr/local/Library/Homebrew/cmd/install.rb:118:in `install_formula'
/usr/local/Library/Homebrew/cmd/install.rb:45:in `block in install'
/usr/local/Library/Homebrew/cmd/install.rb:45:in `each'
/usr/local/Library/Homebrew/cmd/install.rb:45:in `install'
/usr/local/Library/brew.rb:131:in `
'

2014-08-13

BMPCC display shade

I finally got around to design something again.
It's not perfectly refined yet but doing it's job.

I have a Blackmagic Pocket Cinema Camera with the Zacuto Z-Finder.
But often I don't want to use the Z-finder on my eye, yet I need something to keep the sun out.
So I designed this parametric display shade to attach to the Zacuto's quick release frame for quick swapping.

2014-07-23

Ultimaker II - first impressions

So I have my Ultimaker II for a day now and these are my impressions so far.

Reliability

It is super reliable IF before every print I freshly level the bed, then extrude some filament into thin air using the maintenance->expert->move filament function.
For that the extruder usually needs a bit of manual push on the filament.
Maybe it retracted AFTER cooling down too much, maybe it wants to start moving to early, I don't know. It certainly starts up with a bit of grinding every time.

As for reliable, my first prints where 16 and 15 hours. while I slept and while I was away at work.
Haven't done that since the RepMan 3.0 days.

You do hear a little bit of skipping all the time but it does seem to work fine nonetheless.

Cura

is easy enough to use, maybe a bit too easy.
I cannot set the name of the gcode file when using the "export" button (I probably can using the menu).
I cannot see what the 3 default settings are to just modify one or two parameters (such as infill).

Build times are very accurate and everything works very well so far.
The Ultimaker II does display a "time left", something I've never seen before as it requires out of band information from the slicer or a complete simulation of the entire g-code including acceleration and time to change temperatures. However for a 6 hour print it did jump from 6 to 15 hours and then to 5.

Cura does seem to have an issue in deciding how to support curved surfaces on a 20% infill grid.
It likes to start and stop flat areas right in the are between infill grids.
This does work out 2 or 3 layers later.

Also beware that a "Fast low quality print" will not be water tight in any way.

What next?

Next I'll prepare a specially shaped plastic bag to protect the filament mounted on the back from dust to prevent blocked nozzles.
I couldn't get +-0.05mm filament at the moment, so I ordered some +-0.1mm and will switch in a few weeks.
I also ordered a custom made stage box to transport the Ultimaker, just like I dd with my TravelCNC.