Building Heekscad under Linux Mint 13 X64

I got this error:

[ 99%] Building CXX object src/CMakeFiles/heekscad.dir/WrappedCurves.cpp.o
make[2]: *** No rule to make target `/usr/lib/i386-linux-gnu/', needed by `bin/heekscad-0.18.0'. Stop.
make[2]: *** Waiting for unfinished jobs....
[100%] Building CXX object src/CMakeFiles/heekscad.dir/wxImageLoader.cpp.o
/home/markus/heekscad_svn/heekscad-svn/src/TreeCanvas.cpp: In member function ‘void CTreeCanvas::OnLabelLeftDown(HeeksObj*, wxMouseEvent&)’:
/home/markus/heekscad_svn/heekscad-svn/src/TreeCanvas.cpp:523:8: warning: variable ‘recent_first’ set but not used [-Wunused-but-set-variable]
/home/markus/heekscad_svn/heekscad-svn/src/ViewPoint.cpp: In member function ‘int CViewPoint::ChooseBestPlane(int) const’:
/home/markus/heekscad_svn/heekscad-svn/src/ViewPoint.cpp:408:9: warning: variable ‘third_best_dp’ set but not used [-Wunused-but-set-variable]
make[1]: *** [src/CMakeFiles/heekscad.dir/all] Error 2
make: *** [all] Error 2

So I did try to fix this like this:
sudo apt-get install ia32-libs
sudo ln /usr/lib/i386-linux-gnu/ /usr/lib/i386-linux-gnu/
sudo ln /usr/lib/i386-linux-gnu/ /usr/lib/i386-linux-gnu/
sudo ln /usr/lib/i386-linux-gnu/ /usr/lib/i386-linux-gnu/
sudo ln /usr/lib/i386-linux-gnu/ /usr/lib/i386-linux-gnu/
sudo ln /usr/lib/i386-linux-gnu/ /usr/lib/i386-linux-gnu/

Now it is (SVN) building

~/heekscad_svn/heekscad-svn/heekscnc-svn $ make
Linking CXX shared library ../bin/
/usr/bin/ld: skipping incompatible /usr/lib/i386-linux-gnu/ when searching for -lXmu
/usr/bin/ld: skipping incompatible /usr/lib/i386-linux-gnu/ when searching for -lSM
/usr/bin/ld: skipping incompatible /usr/lib/i386-linux-gnu/ when searching for -lICE
/usr/bin/ld: skipping incompatible /usr/lib/i386-linux-gnu/ when searching for -lX11
/usr/bin/ld: skipping incompatible /usr/lib/i386-linux-gnu/ when searching for -lXext
[100%] Built target heekscnc
~/heekscad_svn/heekscad-svn/heekscnc-svn $
~/heekscad_svn/heekscad-svn/heekscnc-svn $ cd ..
~/heekscad_svn/heekscad-svn $ make -j 12
[ 3%] Built target tinyxml
[ 3%] Built target translations
[ 17%] Built target heeksintf
Linking CXX executable ../bin/heekscad
/usr/bin/ld: skipping incompatible /usr/lib/i386-linux-gnu/ when searching for -lSM
/usr/bin/ld: skipping incompatible /usr/lib/i386-linux-gnu/ when searching for -lICE
/usr/bin/ld: skipping incompatible /usr/lib/i386-linux-gnu/ when searching for -lX11
/usr/bin/ld: skipping incompatible /usr/lib/i386-linux-gnu/ when searching for -lXext
/usr/bin/ld: skipping incompatible /usr/lib/i386-linux-gnu/ when searching for -lXmu
/usr/bin/ld: skipping incompatible /usr/lib/i386-linux-gnu/ when searching for -lSM
/usr/bin/ld: skipping incompatible /usr/lib/i386-linux-gnu/ when searching for -lICE
/usr/bin/ld: skipping incompatible /usr/lib/i386-linux-gnu/ when searching for -lX11
/usr/bin/ld: skipping incompatible /usr/lib/i386-linux-gnu/ when searching for -lXext
[100%] Built target heekscad

After doing
make package
and installing the package:
sudo dpkg -i heekscad_beta-0.18.0_amd64.deb

I can type
heekscad and it looks like it works… well I just found out not all is working…

so I started playing with compiler switches like and was using the git version (but I copied libarea stuff from svn):
-arch x86_64

and a lot of this
make clean
cmake .
make -j12

and at one point it i was complaining about i386 stuff, so I copied the files over:

sudo cp /usr/lib/x86_64-linux-gnu/ /usr/lib/i386-linux-gnu/
sudo cp /usr/lib/x86_64-linux-gnu/ /usr/lib/i386-linux-gnu/
sudo cp /usr/lib/x86_64-linux-gnu/ /usr/lib/i386-linux-gnu/
sudo cp /usr/lib/x86_64-linux-gnu/ /usr/lib/i386-linux-gnu/
sudo cp /usr/lib/x86_64-linux-gnu/ /usr/lib/i386-linux-gnu/

I’m not sure if this is a bug in linux mint, cmake or heekscad?

However it’s working now and producing g-code 🙂

Selecting a video projector

One of my coworkers had ask me about my thought regarding video projector, here is what I came up with:

Getting a projector is only half or 1/3 the cost of your home cinema system. Don’t forget the surround sound system, this will cost a lot too. You may be able to save money by projecting against a white wall. I did this in 2001 and it looked very good (I suggest to create a black boarder around the picture, this gives a good contrast!). However a real screen is good to have too, I use a manual screen in my bed room and I have a automatic screen in my living room. If you get a high end programmable remote you can configure it the turn the projector on, put the screen down, turn the DVD on and turn the surround sound system on and set it to DVD – all with the press of just one button (same goes for turning things off). You will need some cable too, check for a cheaper options. Depending on your setup cable can be expensive too.

Good page to get an idea what projectors are available:

My first projector 800×600 (4×3) $2500 10 years ago, ;-), + cheap ~$50 / 5.1 surround sound system and manual ceiling mount screen (~$150):
Pro long lamp life, optical zoom
Con no optical lens shift (only digital), 1000 ANSI lumen

My second projector 1280×720 (16×9) $1000, + mid price ~$600 / 7.1 surround sound system and automatic ceiling mount screen (~$600):
Pro optical zoom and lens shift, 2000 ANSI lumen
Con short lamp life
I got the AX200U from and I would buy from them again.

Right now I would look for features in this order:
optical zoom (gives freedom of installation on Y axis, the distance from the projector to the screen)
optical lens shift (gives freedom of installation on Z axis and X axis (ceiling mount or on table and corrects if not exactly center))
3D support
low price
long lamp life

Japanese speech output with open_jtalk

This is not as easy as espeak with English… and it looks like Japanes is not as easy as English. However here is what I had done:


  • libhtsengine1_1.06-1_amd64.deb
  • open-jtalk-mecab-naist-jdic_1.05-1_all.deb
  • open-jtalk_1.05-1_amd64.deb
  • hts-voice-nitech-jp-atr503-m001_1.04-1_all.deb
  • hts-voice-mei_1.1+dfsg-1_all.deb


found the right commands
I found a script to use open_jtalk on this page

Here is my version modified version of the script:

case "$1" in
1) echo "mei_angry"
2) echo "mei_bashful"
3) echo "mei_happy"
4) echo "mei_normal"
5) echo "mei_sad"
*) echo "nitech-jp-atr503-m001"
open_jtalk $2 \
-td $VOICE/tree-dur.inf \
-tf $VOICE/tree-lf0.inf \
-tm $VOICE/tree-mgc.inf \
-md $VOICE/dur.pdf \
-mf $VOICE/lf0.pdf \
-mm $VOICE/mgc.pdf \
-df $VOICE/lf0.win1 \
-df $VOICE/lf0.win2 \
-df $VOICE/lf0.win3 \
-dm $VOICE/mgc.win1 \
-dm $VOICE/mgc.win2 \
-dm $VOICE/mgc.win3 \
-ef $VOICE/tree-gv-lf0.inf \
-em $VOICE/tree-gv-mgc.inf \
-cf $VOICE/gv-lf0.pdf \
-cm $VOICE/gv-mgc.pdf \
-k $VOICE/gv-switch.inf \
-x /var/lib/mecab/dic/open-jtalk/naist-jdic/ \
-s 48000 \
-p 240 \
-a 0.58 \
-u 0.5 \
-jm 0.7 \
-jf 0.5 \
-l \
-z 48000 \
-ow ~/jpout.wav \
-ot ~/jpout.log
play ~/jpout.wav --norm

female voice
$ ~/bin/ 2 jp.txt
male voice
$ ~/bin/ 0 jp.txt

I use Geany text editor in Gnome to modify text files (it is very important that the encoding is set the EUC-JP or you get this error: WARNING: text2mecab() in text2mecab.c: Wrong character.) file and I configured a command in Geany to call the script, the only thing I need to do it to type something in Japanese and press F8 for male or F9 for female and it talks.

To install the Japanese keyboard in Ubuntu/Mint you need to go to Administration->Language Support and install Japanese and set input method to IBus (on mint you also need to install ibus). Under System->Keyboard Input Methods you will need to configure the short cut and add Japanese to the list. There are YouTube videos and lots of forum post that explain this in great detail.

12″ lower calorie and lower carb test pizzacrust

This is my experiment for the day, a new test pizza crust:

  • 1 oz whole wheat white flour
  • 1 oz whole wheat flour
  • 1 oz special mix
  • 2g salt
  • 6g yeast
  • 1 tsp dough conditioner
  • 1 tsp gluten
  • 120g water
Calories Fat Carbs Fiber Protein Sodium
307 5 50 16 18 775

Here is the special mix (107 calories, 2.8g Fat, 13.55g carbohydrate and 9.7g fiber and 0.7g sugar, 9.6g protein):

  • 360g Psyllium husk
  • 629g Bobs Gluten Flour
  • 453g Soy Flour
  • 454g Coconut flour
  • 238g sifted carb quick (removed the palm fat)
  • 546g old mix (almond, coconut, low carb bake mix, bread flour)

Mix everything quick together.

I let it raise for 10 min before backing, but I don’t think this is needed.

Backing time 7 minutes at 325 F in my convection oven, turned oven off and let sit 3 more minutes in oven to conserve power..

My first baby steps with the XuLA 50 board and Xilinx ISE on Ubuntu 11.04

1 week ago I didn’t know what FPGAs are, but yesterday I received my XuLA 50 board and I started with this great tutorial.

I got my LED to blink first because I had some GLIB problems and I was not able to simulate the design. But I found if I copy some lib files from my system over the the ISE install and do some kind of clean all generated project files it solved the issue…

I was in this (../Xilinx/13.2/ISE_DS/ISE/lib/lin64) directory and I copied and did override libstdc++ with this command: cp /usr/lib32/ (all three)

It would be nice if I could run the XSTOOLS also under Ubuntu, but it will not work with Wine. Right now I use a VM. I think there was a Linux download, but the link is broken.

Powerful but most inexpensive SDR (software defined radio) quest

Looks like there are a lot of open source SDR related things on the web. But the more powerful SDR hardware is expensive. The USRP is part of the GNU Radio project and it is $700 another radio with this price tag is the QS1R.

Now the question is, would it be possible to connect some of the components found in those devices modular together.

Looks like the LTC2208 is used in a lot of projects like this for ADC, the price for this hardware alone is $70 to $160 depending on the version and pieces. I’m not sure if there is a breakout board for this chip?

Another component found is a FPGA,  the XuLA project has  FPGAs between $39 (50,000), $79 (200,000)and $200 (1,000,000). VHDL is required to use the FPGA, I did order a $39 version – but I never used FPGAs and VHDL. I found this tutorial I will may use to learn something new.

A micro controller is also found on those board.

A onboard DAC could also be used to listen directly.

Gigabit Ethernet, USB or some other fast method to transfer all the data to the PC. Could SATA be used? Or firewire?

Sandwich bread like Subway rolls


This recipes is a copycat Subway roll.
wet stuff:
236ml or 1 cup fat free milk
236ml or 1 cup water (if the low carb mix is not used only 1/2 water)
1 egg
dry stuff:
195g or 1.5 cup whole wheat flour)
195g or 1.5 cup white whole wheat flour
180g or 1.5 cup low carb mix (1/3 coconut flour, 1/3 almond flour, 1/3 sifted carbquick mix (to remove the palm fat)) or 195g or 1.5 cup white whole wheat or whole wheat flour
14g or two packs yeast
24g or 2 tbs sugar
8g or 1.5 tbsp salt
only if you have:
1 tbsp gluten
1 tbsp dough conditioner

Proof for 1 to 2 hours and bake for 17-20 minutes at 325F (162C) in a convection oven. I guess in a normal oven you will need to back it at 350F (177C)

Nutrition facts:
1 serving 1/2 roll
Calories 209
Carbs 30
Fat 6
Protein 9
Fiber 8
Sugar 4

  1. add all the wet stuff in a large measuring cup.
  2. add all the dry stuff in a mixing bowl
  3. let the dough hook make a round indentation in the dry stuff.
  4. stop and add the wet stuff, start and let everything pull together
  5. let knead for 10 to 15 minutes
  6. weigh the dough and divide in equal 5 pieces
  7. lightly flour each piece and roll out and roll to a 11″ baguette type form
  8. tag the seam on the bottom and roll the end in
  9. lay in backing form and spray lightly with water and cut 4 diagonal insertions
  10. turn your oven to proof and bring a large pan water to a rolling boil
  11. put the pan in the bottom of the oven and the bread in the middle and close the door
  12. let proof for 1 hour or until it has the right size
  13. remove the water pan and proofed bread from the oven
  14. heat the oven to 325F or 162C
  15. put the bread in the oven for 17 to 20 minutes
  16. remove bread from oven and let cool down