Michal Čihař - Archive for 12/2008

Radosti s OpenCard

Jak už jsem tu popisoval , za nemalého úsilí se mi podařilo pořídit tramvajenku na OpenCard. Tušil jsem, že spolehlivost dosavadního papírového řešení je nedostižná (kolikrát se vám stalo, že by nešel papírový kupón přečíst?), ale zážitky z dvou týdnů používání OpenCard předčily má očekávání.

Protože bydlím na okraji Prahy, kam jezdí příměstské linky (3xx), mám tu úžasnou možnost otestovat spolehlivost čteček na OpenCard v každodenním provozu - při nástupu člověk musí ukázat platnou jízdenku. Zhýčkaný jinými místy, kde RFID používám, jsem začal nejjednodušším způsobem - peněženku, ve které je několik RFID karet, dám ke čtečce a předpokládám, že ta bude natolik inteligentní, že se domluví s tou správnou kartou. Bohužel to jí očividně dělá problémy a po několika chybách při čtení jsem donucen kartu stejně vyndat. U samostatné karty už je pravděpodobnost úspěchu o něco vyšší, ale zatím se stejně pohybuje někde kolem 50% - na první pokus málokdy uspějete. Nakonec to mnohokrát končí mávnutím ruky řidiče, a vy můžete vesele nastoupit, aniž by veděl jestli na OpenCard něco nahraného je, nebo není.

Dnes mě ovšem dorazila kontrola revizorem v metru. Naštěstí jsem měl cestu dlouhou a kontrola probíhala za jízdy, takže mi nevadil jeho desetiminutový boj s tímto zázrakem techniky. Aspoň měli případní černí pasažéři dost času se přesunout z jeho dosahu :-). Ale pěkně po pořádku - po té co mu dávám kartu, loví z brašny čtečku, přikládá kartu a v zápětí cosi zamumlá. Z tašky vytáhne jakousi svojí kartu a přikládá jí ke čtečce. Pak mnohokrát karty prohazuje a zjevně se pořád nemůže přiblížit ke kýženému výsledku. Nakonec se mě zeptá co tam mám nahráno za kupón, po odpovědi že mám měsíční prohlásil, že je to v pořádku a vrací mi kartu. S omluvou, že to ještě nefunguje úplně dokonale odešel a slečny sedící naproti mě už neudržely záchvat smíchu...

Gammu test version 1.21.93

After few weeks of debugging build system, new Gammu version is out. This time most fixes are in build system area, especially now it is possible to compile Gammu using Borland C++ 5.5. Also my hacks for crosscompilation to Windows on Linux have been dropped in favour of crosscompilation features in CMake 2.6.

Full list of changes:

  • Drop own crosscompilation support, rely on CMake one.
  • Also standard CMake parameters used when possible (eg. BUILD_SHARED_LIBS).
  • Search does not create thread for non existing devices.
  • Fixed possible crash when backing up ringtones.
  • Fix possible race condition in searching.
  • Fixed invoking of CMake with output to custom directory.
  • Compile on platforms where ssize_t does not exist.
  • Fix detection of towlower on some compilers.
  • Make Bluetooth compile using BCC.
  • Fix compilation if strtoull does not exist.
  • Compile on platforms where intptr_t does not exist.
  • Fixed compilation in BCC (see changes above).
  • Check whether compiler supports __FUNCTION__.

You can download from usual place: http://cihar.com/gammu/,

Debian users will find packages in experimental soon.

So simple patch...

Today again somebody commented on probably simplest patch I ever attempted contribute to some free software. And it memorized me the funny fact that this simple change lies for five years in bugtracker without single comment from developers. Only occasionally some random hacker founds it and ask why such simple issue has not yet been solved. Latest change in bug adds flag, that this is still broken in all recent Python versions including 3.0 :-).