Showing posts with label opie. Show all posts
Showing posts with label opie. Show all posts

Sunday, March 20, 2011

Opie stuff

So Opie 1.2.5 was released in mid-December, which included the newly rewritten Datebook, working SQLite PIM backends, enhanced syncing protocol and scores of other minor feature additions and bugfixes. Check out the changelog for full details. You can build images including 1.2.5 in OpenEmbedded, and Ångström should have packages soon if it doesn't already.

Late last year, due to the apparent demise of handhelds.org the Opie website had to be moved. (One hopes that handhelds.org might return soon along with some of its content that I and others spent so much time working on; we'll see.) I looked around and SourceForge still appears to be the best choice if you want something actively maintained for free. Being hosted in the U.S. though I did have to jump through a few hoops with export controls - apparently even something that merely launches ssh or has the most basic of password encryption is considered to include potentially sensitive technology and requires that you register it with the U.S. Government; thankfully that process wasn't as onerous as it first appeared and nobody over there objected to Opie being re-exported from the US; amusing considering it was developed almost exclusively outside that country... anyway, I digress.

The new site at opie.sourceforge.net is functional although a few pieces are missing and I'm considering switching away from MoinMoin as a wiki platform (which I suspect has been the reason Google has always ignored the Opie website.) It has been time-consuming getting all the links from other websites updated - if I've missed any then please let me know.

People are always surprised/amused that I'm still keen to continue working on Opie given its age, but I still see it being useful on older PDAs and possibly phones that are far too underpowered to run a modern environment such as MeeGo or Android, and it's become a labour of love for me. Often it also serves well as a place to learn new technologies - earlier it was the transition to git that allowed me to become more familiar with that version control system (to the point where I now can't do without a distributed VCS); in recent releases it was updating Opie to make use of newer kernel interfaces e.g. SysFS; in future updates I will be improving Opie's Bluetooth support by connecting it to BlueZ over DBus. If I get time I may even look at integrating ConnMan for better networking setup (something Opie has always struggled with.)

If you're interested in a lightweight, well-integrated platform for older devices then Opie is your platform. At least I'm still taking feature requests and bug reports ;)

Thursday, November 13, 2008

Opie datebook2

In Opie news I have been working hard on the datebook/calendar rewrite (aka datebook2). This was a project started some years ago but never finished, but if we are to have SQLite backend support for Opie PIM then it is essential, and it gives me the opportunity to add some more requested features and make the code a lot neater at the same time. Everybody wins!

The skeleton for datebook2 was already in place, and all of the data access classes in the Opie PIM libraries were there and about 98% complete. I must congratulate former Opie team members Stefan Eilers and Holger Freyther for their excellent work there - so far I have only had to make minor modifications to the Opie PIM API code in libopie2, and the original design of the datebook2 skeleton has worked very well as a base to build upon.

My aim is to make the interface almost exactly the same as the original datebook and thus a lot of code has been reused from there, with a fair bit of tidying up. The only remaining pieces from datebook1 not yet implemented are searching, beaming, keyboard shortcuts, a few other minor bits and pieces, and of course testing (!). Additional features on top of what datebook1 provided now include snoozing for alarms, and editing of location & description drop-down lists. I plan to try to improve multiple timezone support, and I may have a go at enabling the linking events together (aka irregular recurrence).

If you want any specific improvements to the datebook feel free to submit requests via the opie bug tracker or mailing list.

Handhelds aplenty

I went a bit crazy on eBay recently and purchased a whole bunch of second-hand PDAs:

* iPAQ h1910
* iPAQ h4150
* Jornada 680e
* Jornada 720
* iPAQ h3850, h3870 and an h3660 all three of which I plan to give away to prospective kernel hackers.

All of these devices were chosen not only because they are now quite cheap, but also because there are already existing working Linux ports for them. They still need someone around to support them however, and in the case of the 4150 there is some minor bugfixing work to be done in Opie (eg. the record button not working, although this could be a keymapping issue). The 1910 works almost flawlessly, hats off to aquadran for a very complete port and thanks for choosing Opie as well :)

I really like the form factor of the Jornada devices - having a usable size keyboard is excellent; however the screen in comparison to screens on other devices is absolutely awful - blurry, dimly backlit, and the colour response is somewhat patchy. It does not help that the touchscreen on the 720 is a bit worn out also. Still, it's plenty good enough for testing. I was able to run the JLime distribution on the 720 which is available with IceWM or a slightly old version of Opie (1.2.2). On that machine, some features are missing (most notably suspend/resume and sound). I haven't gotten around to trying Linux on the 680e, but from what I can tell the port is a little more complete.

As for the h3800/h3600 devices, well, they badly need bringing up-to-date (to the Linux 2.6 kernel). This needs the help of someone with kernel hacking skills - see my mailing list post for details.

Tuesday, September 30, 2008

Opie 1.2.4 is out

Whew. After over a year of hacking, Opie 1.2.4 is finally out. Thanks to everyone who helped! I hope we can get 1.2.5 out in less time, something like six months perhaps? Maybe if I get a few more patches / other assistance... (hint, hint)

In the mean time my next task is to get 1.2.4 recipes into OpenEmbedded. I will also be trying to get the OpenSync plugin into a more usable state after some fairly significant changes in the core recently. Here's hoping we can have a stable release of that soon as well.

Wednesday, September 24, 2008

Waking the dead

No, not the UK TV series - although I have to say I have enjoyed watching it since I've been here. No, what I'm referring to is resurrecting third party Zaurus/QPE/Opie applications. Now that Opie is in Angstrom the next task is to fix up third party applications and get them into the feeds. You can monitor this effort here (fortunately I'm not the only one working on it).

A lot of this is driven by user demand - several users have asked for specific applications to be available. One of the requested applications was qpenmapfe (a frontend for the nmap security testing tool) which is now unmaintained, and does not work very well on high resolution devices either. However, I found an alternative called qpe-nmap which although it was also unmaintained, it just needed a few tweaks to become fully usable on a wide range of devices. I contacted the author, Fabian Bieker, and he was very helpful, even agreeing to allow me to continue maintaining it (I don't envisage much maintenance will be required, but I'm prepared to do what is needed). The (mini-) project has a new website and a build recipe has just been committed to OpenEmbedded on its way into Angstrom.

Moving forward, I would be happy to take on maintainership of some more older third party applications that are compatible with Opie. If you are the owner of some generally useful Zaurus/QPE application project and you'd like to see your application maintained again, please get in touch with me and we'll see what we can work out :)

Tuesday, September 16, 2008

Opie now supported in Angstrom

Opie 1.2.3 is now supported in the Ångström Linux distribution. Check out the announcement.

Woot! :)

Sunday, September 07, 2008

IntelliSync testing

I had a go with IntelliSync (the SL version) connecting to Opie on my Zaurus this evening. I found that despite being a little hard to find, IntelliSync is in fact still available for download, which is good because the CDs that came with my Zaurus are in Japanese only. Thankfully the installer does not require any licence keys or device presence in order to install.

The next thing was to get the USB network connection working in Windows. I plugged in my Zaurus, Windows popped up the usual dialogs and I fed it the usual linux.inf file which it accepted. Unfortunately though after a delay the result was the error "This device cannot start. (Code 10)". There are numerous references to this error message on the web, but I couldn't find a satisfactory solution amongst any of them. (Of course USB networking between my Z and my laptop when running Linux works perfectly.)

I decided to simply press on and try to get IntelliSync to connect to my Z over WiFi. Despite only having USB and Serial options for the connection type and it insisting on not allowing the IP address of my Z (192.168.0.5) I was finally able to coerce it into connecting by specifying an address of the same length that it would allow (eg. 192.168.1.1), and then editing the file NetStat.dat with a hex editor to change the address. If you then go to the connection settings and click OK the change should be permanent.

This is not enough to actually get it synchronising however - it's obviously connecting, however all you get is a quick flash of the sync screen on the Opie side and then an error with the suggestion to "check the application version" from IntelliSync. Presumably this means that Opie is not sending the responses that IntelliSync expects. I suppose I will have to analyse the traffic in order to fix this.

Monday, September 01, 2008

Opie

I've been doing a lot of work on Opie lately. So far I have managed to achieve the following:


* Fixed Konqueror-Embedded (albeit the 20070316 version) to work with the nice new GUI. I have issues building it from OE .dev though and SSL doesn't seem to be working, so there is work to be done yet. Getting the 20080319 version working would be nice (currently segfaults on startup). A lot of people have asked for this one so it's nice to make some progress.


* Improvements to the new opie-cardapplet. It should now manage removeable cards with ease and won't let you do anything silly like ejecting the card your system is running from :)


* Fixed *a lot* of minor bugs for the 1.2.4 release, which is close at hand.


* Fixed a few package building issues in OE, mostly for packages outside the core set built for images (including third-party applications). I still haven't got Portabase or QPDF2 building though, and I haven't even looked at kopi/kapi yet.


* Tested and pushed for Opie 1.2.3 to be supported in Angstrom. We're almost there, the "machine mentors" just need to get into gear and accept the already built images.


I also bought a Sharp Zaurus SL-C3000 from Japan on eBay, which has given me not only a new burst of inspiration but also some extra items for my task list (mainly to do with improving Opie's high-resolution support), and given me another machine to test Opie with. It's really quite a nice device - great screen, usable keyboard, CF, SD, and USB host. Built-in bluetooth and wifi would be nice, but at least you can get those with an additional CF card.

Next thing is to get back into sorting out the syncing situation. Opensync has moved on a little bit lately and I need to catch up. I would also like to test the copy of Intellisync that I received with my Zaurus - OK, it's commercial software, but lots of Zaurus users will still have it and no doubt expect it to work. With any luck it should just work out of the box.

Sunday, January 13, 2008

Angstrom Opie 1.2.3 testing

Testing images of the Ångström distribution containing Opie 1.2.3 are now available for many devices, see this page for details. If your device is listed, we would welcome your testing and feedback.

This has been a long time coming, and I'd like to thank everyone who helped make it possible. Of course this is just a step towards Opie becoming supported in Angstrom - we'll allow at least a month for people to test and then we'll evaluate the situation, and possibly after further tweaking be able to release final images, populate feeds and finally declare Opie as supported.

Meanwhile, over the holidays I have been making quite a few fixes in Opie CVS to be included in 1.2.4 - many of them fix bugs that have annoyed me and no doubt others for a while now, which is very satisfying. Included were changes to make VMemo actually usable, many small improvements in AdvancedFM, better alarm sound playback in the Clock, and some others. Once Opie 1.2.3 becomes supported in at least one distribution we can start to think about doing the 1.2.4 release.

Thursday, November 15, 2007

Wake me up before you go-go

I was playing around with the Opie clock today and I discovered to my dismay that alarm wakeup is not working at all on my iPAQ h2200 running a self-built Angstrom + Opie image (2.6.21-hh17 kernel). It turns out that most of the pieces of the system are working fine up until the point when opiealarm (which gets run just before suspend) tells the kernel to set the rtc wakeup time. According to the rtc info in /sys it is being set to a date somewhere in 2035, which is not particularly useful especially if you really do want to be woken up early for that meeting tomorrow morning.

I have looked at the code in opiealarm and it looks OK to me, and hasn't been changed in a long time. It is using the old ioctl() based method of setting the alarm but that really ought to work properly. I suspect this is a bug in the kernel, but with the handhelds.org kernel discussion mailing list being down I'm not sure where to report it. Setting the wakeup time through /sys does work so at least that's something - if it comes to it I suppose I could modify opiealarm to use that method if it is available.

Sunday, October 28, 2007

CMake in OpenSync, Opie 1.2.5?

So I did some more work on OpenSync/Opie lately - fixed a few issues in Opie's sync authentication code, finally changed the todo list to show some reasonable icons, etc. The most interesting change for me though was to do with CMake - OpenSync has just moved over to it from scons (having previously moved from autotools to scons a couple of months ago). I was reasonably impressed with scons when I came to move the opie-sync plugin over to it, in that it removed a lot of the complexity of autotools, but CMake just blew me away. It's even simpler and requires even less files in my source tree, and switching over was a breeze. Build systems are often the bane of software developers, particularly in the free/open source software world, so kudos to Kitware for making a build system that doesn't make my head want to explode :) Thanks also to Daniel Gollub of SUSE/Novell for all his recent hard work on the OpenSync core, including the decision and the effort to move OpenSync over to CMake.

I've started some tentative plans for Opie 1.2.5. I know, I know, 1.2.4 isn't out yet and 1.2.3 isn't even available to a lot of people, but we're working on that too. I think it's important to be looking ahead. Take a look at the recently updated Opie roadmap for details.

Sunday, August 19, 2007

OpenSync hacking

I've spent quite a bit of time over the last week or so getting the Opie plugin for OpenSync ported to the latest 0.3x branch (ie, trunk in svn). 99% of the job is done, all that is needed now is testing and a few fixes here and there. If you're brave, and make backups, you can check out OpenSync from svn and give it a try :)

In the process of porting I've also fixed a few things:

* scp support now actually uses scp/ssh instead of sftp, so that you don't have to install additional packages to have a secure connection (it works with dropbear that is included in most handheld distros by default). You will need to set up key-based authentication however - there's no mechanism to enter an ssh password at sync time.
* scp can now sync notes
* Improved error handling in a lot of places
* Lots of refactoring and code tidying

The 0.3x branch will eventually become the next stable version of OpenSync, 0.40, but there's still quite a bit of work to be done before then (see the TODO list). There are a few things I'd like to add to the Opie plugin, mostly along the lines of making it more robust, but also some minor features eg. supporting the Opie-Notes application. In the near future I'd like to also look at adding support for the SQLite backend in Opie, however at the moment the SQLite backend has no mechanism for retrieving data remotely for syncing purposes, so that will need to be added in Opie as well.

I've probably mentioned it before, but I have to say I'm pretty excited about OpenSync - it's a powerful syncing platform and one that has a huge amount of potential. We need to not only keep pushing the development forward, but we also make it more visible and accessible to people. KitchenSync with OpenSync as a backend is now in KDE 3.5.7, gnome-sync has just been released, and I think once KDE 4.x comes out with Akonadi and OpenSync support makes it into Conduit (which I understand is on the cards) we will have a bit more exposure.

Saturday, July 28, 2007

Opie 1.2.3 is out!

So finally we've released Opie 1.2.3. It's been a long road, but a lot of people helped out (some of whom are new to Opie) and that made all the difference. It's nice to have something to show that the project is still alive :)

Next on the agenda: 1.2.4, naturally. I hope we can improve synchronisation, and that includes not just working on the OpenSync plugin, but also fixing up PIM bugs on the Opie side and likely fixing problems syncing with Qtopia Desktop as well. In general I'd also like to get a few of the long-standing annoying bugs fixed too. If there's something annoying that prevents you from using Opie on a daily basis, please report it - or even better, try to help us fix it.

Sunday, July 22, 2007

KonqE & Opie 1.2.3 again

OK, so thanks to some work by Marek Vašut (Marex), Paul Sokolovsky (pfalcon) & polyonymous in fixing the OBEX regression, we are nearly ready to release Opie 1.2.3 - mid next week is the target. I hope the release will breathe some new life into Opie - certainly there has been quite a bit of activity over the past week or so.

Part of that activity was to do with getting the new version of Konqueror Embedded working (which is not actually part of Opie, although one might say it is the unofficial flagship browser of the platform). Thanks again to Marex it is now almost completely working:




















As you can see the window style needs to be fixed and a few other bits might need some work, but otherwise we've now got a working modern browser :) See the Opie wiki page for further details.

Thursday, March 15, 2007

Opie 1.2.3, Konqueror Embedded: The Resurrection

The Opie 1.2.3 release has been delayed - we are currently looking into some issues around recently added Bluetooth support, namely that it's somewhat broken. Hopefully these issues will be sorted out soon since there's a fair bit of useful stuff in the release.

The version of Konqueror Embedded for Opie in Familiar is from 2003, and since it has sat unmaintained for so long I had figured that was it. It turns out that a company called basysKom, who you may well have heard of since it is staffed by several KDE developers, has released an updated version just recently including most interestingly a version backported to Qt 2.x. It's not quite compatible with Opie out of the box since they are targeting Qtopia 2.0, but it's close. I have started trying to hack it to work with Opie, and if you are interested you can keep up with progress by monitoring the KonquerorEmbedded2007 page on the Opie wiki (you can even subscribe to the page so you get emails about changes if you want). Better still, grab the source and the patch and give me a hand :)

I've just signed up to be a mentor in the Google Summer of Code for Opie (under handhelds.org). If you're a student interested in working on Opie or something else handhelds-related under the handhelds.org banner, please have a look at this page and start thinking about what you might like to do. There are a bunch of suggestions up there but we'd love to hear any new ideas so please let us know if you have any.

Saturday, February 17, 2007

Perled tongues, the scientific method, and impending releases

This video is absolutely hilarious. Admittedly he is trying to do something that the Vista speech recognition wasn't designed for, but it still made me laugh so hard it started to hurt. It looks to me that under the right conditions and with the right training it would work well for writing letters and other documents, but I honestly still can't see speech recognition taking off in a huge way - a perfectly quiet environment is not something you usually find in the average office.

On Friday at our usual work lunch at Nando's we were discussing the difference in taste between Coke, Coke Zero, and Diet Coke, and the perceived taste difference between soft drinks out of a can and out of a bottle. After much discussion it was resolved that some blind testing had to be done to resolve the issue. Five of us did a blind test using four identical glasses of Coke, Diet Coke, Coke Zero all out of glass bottles, and Coke out of a can. We found that (a) almost all of us had no trouble discerning "real" Coke (with sugar) and the others; (b) Diet Coke and Coke Zero have a very similar taste but that the slightly unpleasant aftertaste that you get with Diet Coke wasn't as noticeable in Coke Zero, so they aren't quite the same; and (c) there was absolutely no difference between the coke out of a can and out of a bottle, so it must be just the drinking experience that influences the taste perception. Case closed :)

The Opie code is "frozen" at the moment in preparation for the Opie 1.2.3 release which should happen very soon. There's been the suggestion of another minor Familiar release including it (among other things) in the near future as well, which I would definitely support (and try to help with). Actually I'm looking forward to when the freeze period ends so that I can have a look at committing a few bits of code I've been sitting on - such as by external keyboard (kbdd) control stuff.

Tuesday, January 23, 2007

Opie-ate of the masses

Thanks to Lorn Potter I now have Opie CVS write access, so I've committed almost all of my patches. Most notably, after sitting stagnant and buggy for some time, TinyKATE is finally usable - only minor changes were required such as providing access to the already written find/replace functions, and prompting the user to save changes (very important). OpieRecorder is now a lot easier to use as well, and I've fixed a number of minor bugs in various parts of Opie that have annoyed me for a while. There's lots more stuff to be done, I just need to keep finding the time and the motivation.

The OpenSync Opie plugin gained initial support for syncing of notes this week. Since Opie provides a text editor rather than a "memo" application like most other platforms, the plugin just looks for and writes .txt files in the user's home directory on the handheld. It seems to work fairly well in testing for me - try it and let me know how it goes.

In other news, the "new" Battlestar Galactica rocks! I hadn't seen it until last weekend and I was really impressed. All those people who told me it was good previously weren't kidding.

Some random cool stuff I discovered lately:

Monday, January 08, 2007

A PDA in the hand...

It's now the beginning of week 3 of my holidays. So far I've had a fairly quiet break - I've taken the opportunity to do lots of reorganisation at home and do a bit more of my own coding. I've been submitting patches for Opie itself, which I've done before, but this time I'm delving into lots of different applications and areas. Most of the fixes are fairly trivial, but the bug reports they address (some of which were submitted by me, some by others) have been around for several years (!) Hopefully now one of the developers can spare the time to review the patches.

Some people have been suggesting that Opie is dead. While it's true that many of the developers have moved on to other things, and Opie II is now on the horizon, I think Opie still has some life left in it. I imagine it'll be a while before Opie II reaches the level that Opie is at in terms of application availability and features, so there'll still be users around that are interested in using the original Opie for some time to come, and that justifies me spending time working on it. I'm hoping also that the recent development of a viable syncing solution (at least for Linux, anyway) might increase interest levels amongst users.

In related news, I've bought yet another second-hand PDA for Familiar testing and/or actual usage - this time it's an iPAQ h2200 (that's my fourth iPAQ now). It's slightly smaller than my other iPAQs, so it should fit in my pocket. Linux support for this model looks good, though I'm not sure about Opie. At least if I have any problems with the latter I'm a bit more confident I can help debug them now.

Thursday, December 07, 2006

OpenSync progress redux

More work on the Opie plugin for OpenSync. After testing synchronisation with KDE PIM it seems there are still a lot of bugs. I fixed quite a few obvious ones, but a major problem that still remains is UID mapping. If you create an entry on the non-Opie side it doesn't have a unique ID that Opie understands, so when that entry is synced across and subsequently modified by Opie it gets assigned a new one. At the next sync it appears to OpenSync as a new entry and so you get a duplicate item. This pretty much makes the plugin useless at the moment, but I think I know how to fix it.

It's nice to finally have a few users testing the plugin too - it gives me some motivation to keep working on it :)

Tuesday, September 05, 2006

OpenSync progress

It's surprising what can be acheived with a solid weekend's worth of hacking. The Opie plugin for OpenSync now syncs contacts, todos, and events. I still need to sort out categories, alarms for events, and a few other fields, plus improve robustness (improve error handling, etc.). Still, it's getting towards the point where it will actually be useful.