Author: ulrichard

  • Screen went black

    This morning, I had a short moment of horror when I turned on my Netbook. After the ubuntu splash screen, it went black and didn’t respond to any keys. The only response was for the power key, where it displayed the ubuntu splash screen again and shut down.

    My Acer aspire one has the dreaded Intel gma500 poulsbo graphics card. This graphics chipset was bought by Intel, and it’s absymal driver support has embarassed them ever since. It is also the reason I still run maverick on the netbook. Knowing that, I was even more horrified by the screen turning black.

    First thing was trying to boot an older kernel. In case you’re not presented with a grub menu, press shift after the BIOS.  Didn’t help, not even in recovery mode.

    So I booted to a console, and examined

    $cat /var/log/apt/history.log | tail
    
    Start-Date: 2012-01-24  21:15:04
    Commandline: apt-get install python-pyopencl
    Install: nvidia-current:i386 (260.19.06-0ubuntu1, automatic), nvidia-settings:i386 (260.19.06-0ubuntu1, automatic), python-pyopencl:i386 (0.92~beta+git20100709-1ubuntu1), python-pytools:i386 (10-7, automatic), python-decorator:i386 (3.2.0-1, automatic)
    End-Date: 2012-01-24  21:20:26

    The only thing I installed yesterday was python-pyopencs as it was the only package in the repository that seemed like a starting point to experiment with OpenCL. It has dependencies to nvidia drivers, but I didn’t think that installing these would break my system.

    So, all I had to do was “apt-get purge python-pyopencs nvidia-current nvidia-settings” and the system would boot again normally.

    It’s amazing how a linux system that doesn’t boot can almost always be saved relatively easily. With a Windows system that has the same symptoms you’re fucked.

  • Visited countries

    A long time ago, I found a web service to visualize a map with all the countries you have visited. Now I finally figured out how to get it displayed in wordpress using the code-embed plugin.
    Well, since we got kids, travelling is in hibernation mode, but we already have plans on where to go when the boys grow older.

    So, here are the countries I visited:
    The countries where I flew paraglider are red, the ones I only visited are blue.
    %CODE%

  • Robot Arm part 1 packaging and simple manipulation

    Another project that I had in mind for a while was to experiment with robot arm path planning and inverse kinematics. If you don’t know what that is, think about how robot arms could be programmed. The simplest form would be capture and replay, in which you have a controller which which you record how you manually move the joints. The robot can then replay the movements. We humans have developed a good  intuition for moving our body parts and grasping, but when it comes to formally describing what you do with the joints of your arm, it quickly becomes difficult. My younger son is in the phase of learning to grasp right now, and it’s amazing to see how the eye arm coordination evolves. The second approach would be to program it like a CNC milling machine with something like G-codes.  This is a bit more general and more exact, but it’s also more difficult to do collision avoidance. And it’s complicated to calculate as most joints tend to be revolutionate. Both these approaches are only suited for repetitive tasks often found in industry automation, but completely unsuited for robots in dynamic environments. Now with inverse kinematics, you can tell the robot where the arm should move to in cartesian coordinates, and it does all the arm geometry calculations and positions the gripper to the correct position in the desired orientation. Maybe there are obstacles in between the current and the target position. To navigate around these, you also need path planning. That is usually done in configuration space. Real robots have also to care about dynamics such as inertia, but I won’t go that far.

    (more…)

  • Speedflying in Andermatt

    Finally we have snow, good weather and I could take a day off. So, I went to Andermatt, my favorite ski resort. I had the intention to do speedflying, paragliding and skiing, all on the same day. It was wonderfull! But see for yourself …

  • Mixing boost versions –as-needed

    Some linux distributions defaulted to use the –as-needed linker flag for a while. Ubuntu tried it in natty, but then reverted. Now with oneiric, it really is enabled by default.

    I ran into this when one of my packages wouldn’t compile on oneiric. I always got linker errors with boost::filesystem and boost::system. Between natty and oneiric, the default version of the packaged libboost changed from 1.42 to 1.46, thus switching from filesystem v2 to v3. Obviously my first thought was that it must have to do with that. Also libwt which I use in the project had the same error in a previous version. So, I reduced my app until I was sure that couldn’t be the cause here. Also all my other packages didn’t have any problems with the transition to filesystem v3 apart from the regular changes for adapting to the new interfaces. But for these changes the compiler helps.

    The project in question is organised more or less like that:

    (more…)

  • Best names for algorithms

    I’ve worked in Baar for two months now and I go to work by train. It takes a while longer than to Schwyz as before, but I don’t have to switch trains or busses. That means it’s good for reading. Currently I read “Artificial Intelligence: A Modern Approach” which is accompanying an online curse (ai-class.com from Stanford) that I currently attend. Today I was reading in the chapter about neuronal networks. There it describes an algorithm called “optimal brain damage“. It tries to find an optimal topology for the NN by randomly cutting connections from an initially fully connected NN.While it describes adequately what the algorithm does, it struck me awkwardly when I first read the name.

    What are the best names for algorithms you have come across?

    (more…)

  • Schächental GoPro Fotos

    Yesterday I waited for the fog to disappear as predicted, but it didn’t happen. So today we went to Unterschächen in Uri where there is very seldom fog. When we arrived, I saw that WinWings were there just ready to dirve to take off. Sure enough they had a place left for me in the bus. The flight was nothing special, but in November every flight is better than sitting in the fog. The calm air was perfect thought to try my new toy. I got the GoPro outdoor camera mainly to take pictures during tandem flights so I can sell them. But now that I have it, why not use it for solo flying and speed flying as well? Here are some pics:

  • RepRap part 3: Ethernet connection

    With the X and Z gears propperly glued, all axes moved. But it didn’t take long for the Z axis gear to break again. The gear that came with the kit was multilayered wood glued together and laser cut. The place where the belt is, is off the axle of the stepper motor. That’s obviously not a good combination. So I ordered an alloy gear from maedler. That came without a hole in the center. I didn’t have anything else then my hand drill available. Well it’s a bit more off center then I had hoped, but nut much worse than the laser cut wooden gears. And still, it works. So, all three axes work now. The ammount by what they move doesn’t seem right, so I’ll have to adjust some parameters still.

    (more…)

  • RepRap Part 2 : It moves

    It’s been a while since I assembled the Gen7 Electronic board and the extruder. I ordered the extruder together with the steppers from the Netherlands. The hot end v6 is a very nice design compared to the original, where you had to wrap the heating wire around the nozzle yourself. But it’s too big to fit through the hole of my wooden X-Axis sledge from the gffr kit. So, for the moment the extruder is tied to the X-sledge with a clamp.

    When I assembled the electronics, I flashed the Teacup firmware onto it but I was never able to connect to it with the reprap host software on the computer. When I connected to it with a serial terminal, I saw a “0” about once a second.

    Now after some months I found the time again to make some progress on my RepRap. Also ReplicatorG showed no sign of a successful connection. So I thought to be sure, I would flash the firmware again. But this time I didn’t succeed in doing so, not even with the ICS programmer. Looks like my avr suffered from a corrupted bootloader. That’s a known bug resulting from random operation during power down. Traumflug guided me through the process of flashing the bootloader on IRC. After that, flashing the firmware worked again. Traumflug also told me that neither the reprap host nor ReplicatorG are too well suited for operating with Teacup. He suggested to use printrun instead.

    (more…)

  • My first night at a hospital

    Last time I spent a night in a hospital was when I was born moren than 34 years ago. I was never looking forward to the next one.

    But this weekend our son Levin hit the ground with his head really hard while playing. He cried badly, and the spot on his head that hit got swollen. We immediately went to the hospital with him. As we suspected, the doctors diagnosed a concussion, and wanted to keep him vor supervision for 24 hours. During the night he cried a couple of times, but because the nose was filled in. They woke him every hour to flash into his eyes with a torch. The next day he plays again as if nothing had happened.

    So, my first night in hospital was not as bad …