Michal Čihař - Blog Archives for English

Kernel 2.6.21 hits Gammu

Since Linux kernel 2.6.21 entered higher release candidates, more people started to report that Gammu has problem on that with connecting over USB cable. First I thought it is some misconfiguration of kernel, but when several same reports appeared, I decided to take a look at it.

As great side effect of this, I found out that I can use snapshots of Debian kernel, where current version (2.6.21-rc7) is available as Debian package. This saved me lot of time, thanks guys!

After installing and booting new kernel, I quickly found out that the problem is not SIGSEGV as many people reported, but SIGIO. After quick look at code, it was obvious that setting file to asynchronous I/O causes this.

Well this is how asynchronous I/O is supposed to work and kernel people implemented it now for (some?) serial drivers. I have no idea why there was attempt to use it in Gammu. The code is not at all ready for this and makes no use of asynchronous I/O. So the fix was quite easy - just to remove this flag from file.

Fix now sits in SVN, impatient users who run kernel 2.6.21 can get SVN snapshot :-). Testing release will follow during next week.

Gammu test version 1.10.4

I just released new version of Gammu, you can download it from download server. The only reason for this release is fixed Windows binary distribution, other changes are:

  • Fix decoding of new style address records in Nokia phones. Thanks to Martin Strigl, see also bug #286.
  • Reorganised documentation a bit.
  • Use correct format strings for IrDA debug messages.
  • Identify Alcatel One Touch 55x.
  • Improve detection of OBEX support.
  • Fixed Windows build.

Gammu test version 1.10.3

I just released new version of Gammu, you can download it from download server. There is quite a lot of changes:

  • Work with AT phones which can not write SMS to ME (bug #282).
  • Increse limits for SMS backups (this requires dynamic allocation).
  • Development switched to Subversion, see README for details.
  • Detect Motorola Bluetooth port (Daniel Gimpelevich).
  • Fixup AT driver to work with Samsung SGH X160.
  • Support for last modified field in vCalendar.
  • Adjust vCalendar entries from SE phones on DST (bug #81).
  • Fix updating of delivery report date in SMSD (thanks to Peter Stuge).
  • Fix format strings for Win32 build.
  • Fix crash when no config exists.
  • Support for MinGW crosscompation with MySQL.
  • Support for MinGW crosscompation with PostgreSQL.
  • MakeTerminatedCall can be now called more times in batch mode.
  • Support for MinGW crosscompation with Gettext.

As I can now build full featured Gammu binary for Windows, the download size increased a lot. If you thing it is too big, I can start to produce two sets of binaries.

Debug packages for Gammu

As I have problem on getting useful reports from Gammu/Wammu crashes, I realised that having debug package for Gammu is good idea. However looking into official documentation didn't reveal how to achieve this. The wiki seems also miss information about this. Well then it must be something obvious. Fortunately I'm not only one who didn't find it on first attempt and dinosaur already wrote about this.

However I still wonder why this didn't get to some official documentation. For now I wrote down this to wiki, so it is easier to find for anybody else.

CIA taken over

When migrating tags from Bazaar to Subversion, I generated lots of commits. When I did that, I didn't realise, that CIA will count all my tagging as commit and I will become most active author and Wammu will read 6th position among most active projects. Anyway this has just happened and maybe it will advertise Wammu a bit.

But don't expect that I or my projects will reappear there in near future ;-).

Migration to Subversion completed

Today last batch of Wammu and python-gammu has been converted to Subversion. It was almost painless, it only required lot of CPU time. All project pages should now link to Subversion repositories and snapshots. Also all projects now have publicly available statistics on http://www.ohloh.net and http://cia.vc.

Unfortunately for python-gammu and Wammu are statistics a bit messed up - for Wammu ohloh didn't find license header, which is in almost every file, in python-gammu, doc string comments are not counted as being comments, so without it project has obviously to low comments ratio.

Anyway I was quite impressed by code grow of Wammu in last half year, because I still thing I don't have enough time for Wammu. However if their stats are true, the code amount grows quite fast in last months.

How could I ever work without *-buildpackage?

I was always a bit afraid to try those complex tools, but now with switch to subversion, I decided to give it a try. And it payed off. Now package management is much easier and everything is recorded in VCS. Yes I could do it with previously used bazaar too, but VCS migration was the latest impulse which made me try it. Now I can only thank to people who invented these tools.

Ancient ruins found

…and imported into subversion. Today I walked over some older stuff in my CVS repository, I decided to import them also to subversion.

The only major unpublished thing there is Wessie. It was supposed to be modular publishing system written in PHP. However I lost interest in improving this during time and it was used only on two real life projects - one is site about Alcatel phones, which is still alive, the other one was our semester project for software engineering, which is now dead.

Anyway maybe somebody will find the sources useful, so feel free to do with sources whatever GNU GPL permits :-).

Gammu switched to Subversion

As continuation of migration to Subversion, Gammu now also uses Subversion as version control. This is now pretty standard version control system, so you can easily use latest development source.

Besides this, using Subversion brings us possibility to use various free services to work with this repository.

If you want to follow development, you can use RSS feeds on CIA.vc. For code statistics hungry people, there is Ohloh service, which directly analyses repository.

There might be also other useful tools, if you want some integration, just tell me.