12 Nov 2011

feedPlanet Linux-to-go

Paul 'pfalcon' Sokolovsky: Shopping for 3D TV...

Shopping for 3D TV (again), few findings:

12 Nov 2011 6:55pm GMT

Paul 'pfalcon' Sokolovsky: Hacking Luxeon SP-1

I finally going to get Arduino, and while I'm choosing flavor and waiting for it, I can't help but disassembling all devices I have at home, each time speaking: "This must have Arduino inside!" (meaning of course that I expect it to be based on general-purpose MCU). Gosh, I usually get "blob chip" (uncased chip with blob of epoxy on top).

Well, I finally had my expectations fulfilled - Luxeon SP-1 voltage stabilizer/cutter features ATMEGA48V-10PU (Flash: 4k, EEPROM: 256, RAM:512). Not only that, it is installed in DIP socket! Buy from Luxeon, they're hacker-friendly ;-).

I bought the device actually for a wattmeter it features (which fact is hard to figure out from common specs found in the shops, I accidentally read somebody mentioning it on a forum). The wattmeter is of course not bright - for a lamp rated 100W it shows 88W, and for more powerful equipment (like perforator) understates wattage even more (maybe it's difference between real and apparent power factor).

Still, for $17 you get Arudino-alike with voltage/current sensor and hacking possibility. Woot!

High-power board:

MCU board:

12 Nov 2011 5:58pm GMT

10 Nov 2011

feedPlanet Linux-to-go

Paul 'pfalcon' Sokolovsky: Links for November 2011


Linux kernel module tricks:

10 Nov 2011 3:21pm GMT

09 Nov 2011

feedPlanet Linux-to-go

Paul 'pfalcon' Sokolovsky: Kindle Packages I use

09 Nov 2011 7:53pm GMT

Holger 'zecke' Freyther: OpenOCD and SIMtrace

This is just a short note to myself (and then copied into our SIMtrace wiki).

This is working for OpenOCD (74558296d1e185fc4a7522f08832eceed460cbd7) and the Amontec JTAGKey (but should work with any JTAG adapter). The easiest way is to start OpenOCD with default config files.

The SIMtrace v1.0 hardware is powered by the Atmel SAM7S microcontroller and the closest match for this platform is the atmel_at91sam7s-ek.cfg board configuration file.

First try

$ sudo openocd -f interface/jtagkey.cfg -f board/atmel_at91sam7s-ek.cfg
Error: An adapter speed is not selected in the init script. Insert a call to adapter_khz or jtag_rclk to proceed...

Second try

You can patch one of the two files, create a new config file and load it with -f
or specify the command. The below example specifies it on the command line.

$ sudo openocd -f interface/jtagkey.cfg -f board/atmel_at91sam7s-ek.cfg -c "adapter_khz 30"

Final config

$ echo "adapter_khz 30
> arm7_9 dcc_downloads enable
> init
> reset init
> " > myinit.cfg

$ sudo openocd -f interface/jtagkey.cfg -f board/atmel_at91sam7s-ek.cfg -f myinit.cfg

One of the calls appear to fix 'halt' not really halting the SoC, I have not investigated which of the options is doing it.

Flashing First try

$ telnet 4444
> flash write_image /tmp/main_simtrace.samba 0 bin
wrote 0 bytes from file /tmp/main_simtrace.samba in 0.238727s (0.000 KiB/s)

With a quick look into the NOR Flash code, it appears to fail as it does not
find a flash region at the address it is looking for one and then reports to
you the success of 0 bytes (instead of a failure).

Flashing Working

$ telnet 4444
> flash write_bank 0 /tmp/main_simtrace.samba 0
wrote 37020 bytes from file /tmp/main_simtrace.samba to flash bank 0 at offset 0x00000000 in 39.175068s (0.923 KiB/s)
> reset init
> resume

09 Nov 2011 4:34pm GMT

08 Nov 2011

feedPlanet Linux-to-go

Koen Kooi: Kernel compression experiments

After discovering grabserial my boot time experiments are a lot easier to perform and analyze. Grabserial will spit out absolute and relative time for each line, like so:

2.21       0    Loading file "/boot/uImage" from mmc device 0:2 (xxa2)
5.52     331     2188008 bytes read

In the above example it took 3.31s to load the kernel from SD. For the BeagleBone we want a sub 10 second boot time, so spending a few seconds loading from SD is unacceptable.
The kernel provides various compression options that trade size for speed and I tested them all! The below results are the average over 5 boots on a BeagleBone revision A3 with the latest builds from angstrom + meta-ti.

Compression algo uImage size load time from SD uncompression time difference
LZO 2932KiB 3.34s 0.27s
Gzip 2636KiB 3.29s 0.62s -0.30s
LZMA 2140KiB 2.68s 1.87s -0.94s

As you can see the uImage shrinks considerably, but it takes longer to uncompress. LZO is still the best choice for this board.

Raw data and full grabserial log below the break

1.30       0    U-Boot SPL 2011.09-00000-gf63b270-dirty (Nov 07 2011 - 21:35:55)
0.00    -129    Texas Instruments Revision detection unimplemented
0.51      51    OMAP SD/MMC: 0
0.59       7    reading u-boot.img
0.59       0    reading u-boot.img
0.62       3    
0.62       0    
0.62       0    U-Boot 2011.09-00000-gf63b270-dirty (Nov 08 2011 - 08:11:50)
0.62       0    
0.62       0    I2C:   ready
0.69       6    DRAM:  256 MiB
1.06      36    No daughter card present
1.06       0    NAND:  HW ECC Hamming Code selected
1.06       0    No NAND device found!!!
1.06       0    0 MiB
1.06       0    MMC:   OMAP SD/MMC: 0
1.07       1    *** Warning - readenv() failed, using default environment
1.07       0    
1.12       4    Net:   cpsw
1.12       0    Hit any key to stop autoboot:  0 
2.19     107    SD/MMC found on device 0
2.19       0    reading uEnv.txt
2.21       1    
2.21       0    14 bytes read
2.21       0    Loaded environment from uEnv.txt
2.21       0    Importing environment from mmc ...
2.21       0    Loading file "/boot/uImage" from mmc device 0:2 (xxa2)
5.52     331    2188008 bytes read
5.54       1    ## Booting kernel from Legacy Image at 80007fc0 ...
5.54       0       Image Name:   Linux-3.1.0+
5.54       0       Image Type:   ARM Linux Kernel Image (uncompressed)
5.54       0       Data Size:    2187944 Bytes = 2.1 MiB
5.55       1       Load Address: 80008000
5.55       0       Entry Point:  80008000
5.55       0       Verifying Checksum ... OK
5.58       3       XIP Kernel Image ... OK
5.58       0    OK
5.58       0    
5.58       0    Starting kernel ...
5.58       0    
5.60       1    Uncompressing Linux... done, booting the kernel.
7.47     187    [    0.065947] omap_l3_smx omap_l3_smx.0: couldn't find resource
7.58      11    [    0.222473] _omap_mux_get_by_name: Could not find signal leds-gpio
7.65       6    [    0.289454] omap2_set_init_voltage: unable to get clk dpll1_ck
7.66       1    [    0.295541] omap2_set_init_voltage: unable to set vdd_mpu_iva
7.66       0    [    0.301568] omap2_set_init_voltage: unable to get clk l3_ick
7.66       0    [    0.307471] omap2_set_init_voltage: unable to set vdd_core
9.98     231    systemd-fsck[59]: Angstrom-Cloud9-: clean, 25797/874496 files, 735974/3494137 blocks
12.82    283    
12.82      0    .---O---.                                           
12.83      1    |       |                  .-.           o o        
12.83      0    |   |   |-----.-----.-----.| |   .----..-----.-----.
12.83      0    |       |     | __  |  ---'| '--.|  .-'|     |     |
12.85      1    |   |   |  |  |     |---  ||  --'|  |  |  '  | | | |
12.85      0    '---'---'--'--'--.  |-----''----''--'  '-----'-'-'-'
12.85      0                    -'  |
12.85      0                    '---'
12.85      0    
12.85      0    The Angstrom Distribution beaglebone ttyO0
12.86      1    
12.86      0    Angstrom v2011.10-core - Kernel 3.1.0+


2932 arch/arm/boot/uImage
4500 arch/arm/boot/Image

5.55 334 2999712 bytes read

5.65 1 Uncompressing Linux... done, booting the kernel.
5.92 27 [ 0.066005] omap_l3_smx omap_l3_smx.0: couldn't find resource


2636 arch/arm/boot/uImage
4500 arch/arm/boot/Image

5.50 329 2695288 bytes read

5.60 3 Uncompressing Linux... done, booting the kernel.
6.22 62 [ 0.065996] omap_l3_smx omap_l3_smx.0: couldn't find resource


2140 arch/arm/boot/uImage
4500 arch/arm/boot/Image

4.90 268 2188008 bytes read

4.98 1 Uncompressing Linux... done, booting the kernel.
6.85 187 [ 0.065980] omap_l3_smx omap_l3_smx.0: couldn't find resource

08 Nov 2011 7:42am GMT

04 Nov 2011

feedPlanet Linux-to-go

Marcin 'Hrw' Juszkiewicz: I got interviewed during Linaro Connect

Half year ago at UDS-O in Budapest Michael Opdenacker interviewed some people from Linaro. I remember that at the end of event Kiko asked him did he talked with me cause he thought that it could be interesting for someone.

Then we had another Linaro Connect (in Cambourne) and nothing happened. But in previous week I got an email that there will be interview with me in Orlando and that I should choose time slot for it. So I did and here is the result:


What we were talking about? Check it yourself. And please comment did you enjoyed.

All rights reserved © Marcin Juszkiewicz
I got interviewed during Linaro Connect was originally posted on Marcin Juszkiewicz website


04 Nov 2011 10:36am GMT

01 Nov 2011

feedPlanet Linux-to-go

Marcin 'Hrw' Juszkiewicz: Calxeda announced ARM server product

It is not often when I am writing about just announced things but today Calxeda company has announced their EnergyCore cpu modules.

Imagine processor which takes 5W energy, has 4 ARM cores, 4MB of L2 cache, 4 Serial-ATA connectors (lot of 4s ;D) and 5 10Gb links for connecting with other cpus. Then put four (again :) such chips on card. Then take 4U rack case and put 4 trays of cpu modules (72 cpus) and you have insane amount of nodes in small space. And all of that will take really small amount of power (5W per cpu, no network switches, no cables).

HP Redstone server

In HP announcement they wrote that first servers will be available in 1H of 2012 - no pricing anyway. Presentation shown that half of rack of HP Redstone servers will take 9.1kW of energy and can replace 10 racks of x86 machines (eating 91kW). Of course that's for situations when there is no need for more then 4GB of ram per node (which is limit of ARM cores used by Calxeda).

I wonder when one of such beasts will land in Canonical build farm. It would make Ubuntu port of ARM flying when it comes to building software.

All rights reserved © Marcin Juszkiewicz
Calxeda announced ARM server product was originally posted on Marcin Juszkiewicz website


01 Nov 2011 11:11pm GMT

31 Oct 2011

feedPlanet Linux-to-go

Marcin 'Hrw' Juszkiewicz: Open Source Szczecin conference

During 20-21 October there was a local conference about Open Source projects. There were interesting talks and also some not so interesting ones as usual.

On first day we had a presentation about Minix - what it is, how it was done, what for etc. Nicely done cause there were many students here and some of them even knew what Minix is.

Arch Linux was described by one of 'trusted users' (that's how they name contributors). We got information what Arch is, what it supports, how development is made and why presenter thinks that packaging is easier then Debian one ;) Have to discuss more about it one day with him.

Talk about Celery was interesting. What it is? Let me quote website:

Celery is an asynchronous task queue/job queue based on distributed message passing. It is focused on real-time operation, but supports scheduling as well.

Presentation shown it using video conversion as example. First set of ugly workarounds used by people in PHP code and then how to use Celery to make the same in nicer way.

Second day started with presentation about Sonar code analysis tool and it's role in software development. According to presenter it allowed them to cut code review times by not having to deal with many issues (like code duplication for example).

The most interesting one was about using open source applications in local government. From Novell NetWare with mix of stations running MS DOS, MS Windows 3.11/95/98/Me/2000 with mix of applications to Debian/Mandrake based servers with one additional MS Windows server for Win32 applications. From commercial applications to open ones. Lot of movement was done due to low budget but also to increase security by having systems with good security updates. Also licensing issues with Microsoft Office applications when each year combinations of components were available or not for separate buy (accounting office does not need Powerpoint but require Excel for example).

Education of users was mentioned - teaching users how to convert documents before sending them to outside people/government offices etc. Also dealing with users often used to use pirated software which do not understand that if there is no license available then they will not be able to get what they think they need.

Resulting system got documented and installed in few local public schools. Structure was shown and described how it works from intruder detection/blocking, content filtering, hardware monitoring etc. Why no SSH from outside - VPN as the only way to access internal network. Long list of components was presented with description why each of them was used - nice part which got some comments from people with suggestions of changes and many questions were asked.

Summary of talk: lower costs, less licensing problems, stability, security updates, better control and scalability. Cons? more work on configuration, users need education to use new tools.

There was also talk about using WordPress 3.x as CMS. Interesting for me as I am using it for many years to handle this and few other services. Presenter told that sometimes it is hard to convince people as they are thinking of WP more like on blog platform rather then framework for running websites. He also presented few of his creations. During discussion later I got few nice suggestions on plugins which I use here and replaced few of them with different ones.

In overall conference was good. Some talks resulted in discussions, got some new contacts. Hope that there will be next edition.

Related content:

  1. LinuxTag 2010
  2. ELC-E 2009

All rights reserved © Marcin Juszkiewicz
Open Source Szczecin conference was originally posted on Marcin Juszkiewicz website


31 Oct 2011 4:14pm GMT

25 Oct 2011

feedPlanet Linux-to-go

Paul 'pfalcon' Sokolovsky: Fixing fan cooler in Asus X34F notebook

I spent good deal of day today fixing howling, growling, roaring and making other pleasant noises fan in my Asus X34F notebook. X34F appears to be region-specific version of U35F, and motherboard bears labels of UL30A, so I guess this may be pertinent to them either.

I wasn't able to find a service manual, so I proceeded with disassembly by experience and intuition. It turns out that to detach cooler one needs to unscrew one motherboard plate completely (there're two, bound with a connector). The cooler part number turned out to be KDB04505HA by Delta Electronics. Vendor site showed no trace of this part no. But quick googling showed that it's the same part no used in Macbook Pro with similar performance stories. One another reason you don't need to pay a lot to get the same c.r.a.p.

Once I completely detached it, I figured how it could make those noises - impeller could dance on its axis, and while doing so could touch plastic casing. So, my idea was to either cut the corresponding side of impeller, or increase vertical space in which it "dances". I went for the latter, adding two washers between metal and plastic casing parts and gluing another washer on third point to get more support.

I decided also to oil fan, and considering oiling with machine oil could lead to just more dust accumulation, figure I take a pencil and oil it with graphite. Big mistake - either that pencil didn't really have pure graphite, or I put it there too much, but after re-assembling and powering all stuff, I saw that the cooler stopped working at all.

I almost gave up and started to look for closest repair shop, then figured I already have thing half-disassembled, and they would need to extract the fan anyway, so guessed I do it myself and deliver it to repairman in pieces. But before then, heck, I'll make another pass it it - first of all, try to power it on despite its rather home-use unfriendly connector.

Couldn't reliably figure the connector pinout (found pinout only for 12V desktop fans, who knows if laptop one would be proprietary), so tried googling for wire color codes instead. This page gave me good hints (black - GND, red - VCC, blue - PWM for speed control, yellow or another - speed sensor) which I decided to try with power supply at last. Unfriendly connector? Was able to stick into it breadboard wires, then breadboard, then breadboard power adapter. Saw the motor nudge, as struggling with friction. Took off the impeller, wiped its axis, and cleaned other part as best as I could. Put it back and powered, and so it moving - but, with whistling and vibration, even though suspected plastic part was off. Well, decided there's little to lose and oiled it with smallish drop of machine oil.

That was it! The thing stopped its hellish screams and just monotonically buzzed if move ear close to it. Reassembled all the stuff - the noise level is close to that which was when I bought it, as far as I can tell. acpitz sensor temperature is down to 55dC from 95dC I saw before. Finger crossed that oiling will help for decent time.

Conclusion and note to myself: It's indeed nice idea to be in power of your hardware, no doubts, and fears off. And its better to invest into tools than to pay for services of unknown quality (could easily imagine the same oiling to be done, but charged as replacement).

UPDATE: No, it didn't last even a day :-(

25 Oct 2011 9:53pm GMT

23 Oct 2011

feedPlanet Linux-to-go

Koen Kooi: Serial console slows down booting - a lot!

I've been banging my head against this for two weeks:

root@omap4430-panda:~# systemd-analyze time
Startup finished in 3757ms (kernel) + 1265ms (userspace) = 5022ms

Which doesn't meet the goal of my presentation of less than 1 second. Then I remembers to good old put-quiet-in-cmdline trick:

root@omap4430-panda:~# systemd-analyze time
Startup finished in 1607ms (kernel) + 825ms (userspace) = 2432ms

So spewing to serial console eats up 2.59 seconds at 115200 baud!

23 Oct 2011 10:35am GMT

21 Oct 2011

feedPlanet Linux-to-go

Holger 'zecke' Freyther: DirectFB contribution to the Qt Project

The Qt project was launched today, I got my 15 DirectFB patches merged, got some first experience with Gerrit, created an account for the Qt wiki, fixed some documentation, so all in all I think it is the great start of the Qt Project we have been waiting for! So thank you very much for all you involved with it!

Now to something completely else, somehow I like to see the parts that are not great yet. But most importantly it is a great opportunity for everyone to get involved with the Qt project and improve things. So here is my short wishlist for the Qt project.

Once again, thank you Nokia, thanks everyone involved!

21 Oct 2011 7:49pm GMT

19 Oct 2011

feedPlanet Linux-to-go

Paul 'pfalcon' Sokolovsky: Making hcitool commands work

It's a shame how some now-ubiquitous technologies, like Bluetooth, are under-used and under-understood. And by usage I don't mean here occasional business card exchange, net access, being bluesnarfed and other boring consumer-level activity, but page scans, inquiries and having secure wireless communication you can trust (or not).

Anyway, if you ever tried using hcitool you may think it barely works. For example:

# hcitool cc <bdaddr>
# hcitool lq <bdaddr>
Not connected.

Ok, so here's the matter. First of all, hcitool accesses hci device directly, and that requires root access. Secondly, it works on low protocol level (ACL), so connection established by "cc" is of course not pairing or service-level connection. It's low level connection, which persist only while data is transferred and shutdown quickly to preserve the power. Yep, it shuts down while you type or even re-run next command. That's how it should be done:

# hcitool cc <bdaddr>; hcitool lq <bdaddr>
Link quality: 255

More fun:

# hcitool cc $BDADDR; hcitool auth $BDADDR; hcitool enc $BDADDR; hcitool key $BDADDR; hcitool conConnections:
< ACL 7D:75:75:02:68:75 handle 12 state 1 lm MASTER AUTH ENCRYPT SECURE

19 Oct 2011 4:52pm GMT

Koen Kooi: Wirefree beagleboard

Beagleboard XM + Beagleboardtoys uLCD lite board + Liquidware Beaglejuice + TinCanTools Beaconboard

19 Oct 2011 11:33am GMT

17 Oct 2011

feedPlanet Linux-to-go

Holger 'zecke' Freyther: First days with Ubuntu 11.10

17 Oct 2011 3:32pm GMT

15 Oct 2011

feedPlanet Linux-to-go

Koen Kooi: SSH tweak

If you have a lot of boards and/or a lot of new installs every day the fingerprint checking from SSH gets under your nerves quickly. Today I finally sat down and made SSH ignore all my development boards. Add the following to ~/.ssh/config

Host *.local 172.20.1.*
  CheckHostIP no
  StrictHostKeyChecking no
  UserKnownHostsFile /dev/null

So if I do 'ssh beagleboard.local' to test out a new release candidate I won't get bothered about changed keys anymore!

15 Oct 2011 3:09pm GMT