That's what Sony LiveView can do... and there are actually scripts to control LiveView from linux (good). (One version is in the tui cvs, I actually did partial LiveView emulator, too, but real watch came sooner.)
But... unix does not really have commands one would want to run on wrist... does it? Are there command-line tools to get weather? Public transport info? Navigation?
5:35pm: Mozilla wifi location
I played with Mozilla wifi positioning a bit; I was not patient enough for full test, but mozilla was able to identify position of 105 points out of 9322 points tested, or about 1%. That's significantly better than GSM situation.
Anyway, upload of points I collected is now finished, so situation near Prague should improve rapidly.
What is expected range of wifi? Normally, 300 meters is quoted, but I frequently see way bigger distances in my testing. Is it possible that there are multiple transmitters with same MAC address?
7:56pm: Mozilla Location service
I've been playing with location using GSM cells / WIFI accesspoints for almost a year now, so Mozilla Location service was interesting news to me. Unfortunately, I soon realized that while you can contribute data to Mozilla, and ask Mozilla to locate you, you can not download database from Mozilla... Which makes it less useful than opencellid.org and openwlanmap.org .
Yesterday, I got to play with Mozilla location service again, and decided to check their progress... (And learn how to deal with json over http in the process). Results are not exactly pretty: my GSM database had over 72000 measurements, with 2065 unique cells (mostly Czech republic). Of those, Mozilla knew location of 6 cells...
(I'm now uploading my measurements to mozilla, so results for center of Czech republic should get a bit better.)
11:32am: Reason to avoid Toyota cars How not to do embedded development is worth reading. The full testimony was worth reading, too before it disappeared from the web... And yes, I believe the fault is ultimately in laws; mass-produced cars should be certified in similar way to airplanes. No, certification does not catch everything, but hey, Toyota did not even have bug tracking system... and the list of bugs they made was pretty impressive.
There's another problem near: 1) anything on CAN is considered trusted (how could attacker get here?) and 2) car radios now have bluetooth/wifi/USB and CAN connection and are easy to hack (but how could hacked radio be a problem? And yes, from the automotive summit it is pretty clear this will get worse). I actually thought about buying bluetooth odb-2 adapter for the next car, then I realized how bad idea it is.
I'm quite happy that my car does not have power steering or CAN bus, and has mechanical clutch, brakes and ignition key. It _does_ have ABS, so bad computer could probably kill my brakes. [I could probably kill that computer by turning off ignition, but I don't think I would do it fast enough in emergency. There is still vacuum for two/three brake assists with engine off.]
Unfortunately, my horse is completely fly-by-wire. Unintended acceleration happens basically whenever there are other horses around...
12:11pm: Safe way to travel to UK, GPS track editing format
I researched UK border policy, and it would certainly make Stalin happy.... "However, Immigration Officers also have far broader powers under the Terrorism Act 2000 to examine, question, and search anyone in order to establish whether or not they appear to be or have been concerned in the commission, preparation or instigation of acts of terrorism. A person may be detained under Schedule 7 for up to 9 hours. The Immigration Officer need not have reasonable suspicion that the detainee has in fact been involved in terrorism. The detainee has a duty to provide the Immigration Officer with all information requested and a failure to do so constitutes an offence, punishable by 3 months imprisonment and a fine." (from wikipedia). In particular, traveling with your main computer seems to be very bad idea.
I'm thinking about extending gtracks project with some easy GPS tracks editing capabilities. I'd like something normal unix tools would work on, that is "one point per line". There are 1000 formats for GPS tracks, but GPX is not really suitable for this, and I'd like to be able to add fields without changing the format, so it probably should not be CSV based. (Ideally, I'd like something like lat=50 lon=15 distance_to_prev=4, with fields such as distance_to_prev being computed and added there by the tools). Since there's already 1000 of them, inventing the new one seems pretty bad, but I can't find suitable one...
10:14pm: Czech autor claims copyright on two words
"Metelesku blesku" is copyrighted according to Zdeňek Svěrák's lawyers. I think he just went crazy. (And if our copyright law indeed allows this kind of abuse, the law should be fixed.)
4:42pm: Not-so-safety matches
Low quality matches sometime have their heads fall off, on fire. Unpleasant. I had one that went even worse -- part of match head, still on fire, actually stuck to the matchbox. Ouch. Match box with "safety match" in big friendly letters, on fire...
Good news is that it seems I got the airplane tickets. Now I wonder if it is wise to travel with development board in carry-on luggage.
11:05am: Airline industry: treating people as cattle even before boarding
At October 2nd, I'll be presenting on workshop on Linux development on Altera Socfpga boards. And, well, that means I should get there, right? I wanted to fly there. I know I'll be treated like cattle on airports, and there's little I can do about it... (Well, Ruzyne is still better than Heathrow. Signs "insulting staff is a crime" are sure sign that you'll be treated in a way that will make you want to insult them.) But I expected that buying the ticket should be easy and painless process. After all, money is going their way, and they do a lot to explain they may not actually transport me for a wide variety of reasons (including improper clothing).
Seems like I was wrong. I guess you should never try to buy airline ticket on friday, and that studentagency.cz is not as solid as I thought they are. When I wanted to hit "pay" button (after having window with reservation open for a while), I got dropped back to "main" menu, with no way to get back to payment page. Not a problem, I had instructions for money transfer open... so I just asked mbank to transfer the money. Bad idea, it seems. I got call explaining that this way money will not make it till Monday, and that price may chance on Monday.
So now I have no money, and no guarantee of airline ticket. Thanks a lot, studentagency.
I wonder if it is good idea to try to reserve another ticket, so I have backup in case of it does not work out, or if it will only increase my chance of not getting the ticket....
3:05pm: Wherigo on Nokia n900 -- solved
There is gpsd.py in tui project -- it provides gpsd interface for applications such as rana. I added "-n" option, which outputs nmea instead of gpsd data... so all you have to do is run gpsd, run java -jar DesktopWIG.jar, tell desktopwig to connect on localhost port 2948. Now... looking forward to some nice wherigo cache.
1:53am: Wherigo on Nokia n900
I kind of assumed that getting wherigo cartridge to run on N900 would be hard. I was wrong. Desktopwig from openwig project actually works well. I assumed that installing java using apt in debian chroot on N900 would be very easy. I was wrong again. Apt-get writes too much data to the flash, resulting in watchdog reset and corrupted partition. (It is quite incredible that N900 in default config is so broken that writing 80MB of data causes this...) Using settings from obscure maemo thread solved that.
So now I'm running at running cartridge on n900 and have one more problem: how to connect gps. Desktopwig talks nmea, but n900 exposes gps on dbus. I do have fake gpsd for N900... but that is still not NMEA. There must be ssome tool that talks to gpsd and outputs NMEA data, but how to find it?
1:13am: Switch from notebook to desktop
Yesterday, I switch my "main" computer from notebook. Thinkpad X60 was getting too slow for regular use. Now, if only there was some nice and easy way to keep home directories synchronized... People were researching distributed filesystems for 30 or so years now... is there something usable?
1:49am: Live with spinning rust
So far we went along with hard drives pretty well -- I never lost significant amount of data.
And yes, that includes CF-size hard drive in zaurus, which fell to ground few times, includes disks with big red letters saying "BAD", includes disk that screamed "I'm bad" so loudly I get warning at every GUI start (and had bad sectors, but kept going) and includes 2.5" drive in notebook that played dead for a week or so... and then magically came back to life when notebook overheated. Drive was so hot you could not hold it in your hands, and magically started working. It even includes current .5T drive that has bad sectors and refuses to relocate.
My meetings with flash were not that happy. Basically, when I start using flashcard, it dies. Ok, sandisk 16GB seems to holding fine with ext3 on it... but I'm careful not to load it too much. 2GB card that came with HTC Dream also survived (and was lost somewhere in fields along with the phone). Most flashcards were not that lucky, one died within seconds of use when I did tar czvf /dev/sdX files. 2 other died when I partitioned them and formatted ext3. Basically they just don't keep data I put on them.
Now... .5T drive works fine, but has bad sectors and git on kernel trees is slow on it. I tried bcache on the hdd + usb stick, and it seemed to work, but... Today I got Seagate Laptop SSHD 1TB hybrid (FP660g5), and I wonder if it will be more of a harddrive or a flash. (It is 1TB drive with 8GB NAND). So far it seems to behave like flash. It is in external USB; SMART worked on first boot but does not seem to work now. Ouch. It started giving errors (leading up to system crash) immediately when I tried to do bulk copy there. It seems to work on second boot. (Ok, USB envelope has some problems with power, like not enough; but hdds usually just shut down when there's not enough power. And yes, I do have 2 USBs connected to the envelope).
So... I still hope SSHD will have reliability of spinning rust. But I'm afraid I'll lose some significant amount of data this time.
(Does anyone know if the SSHD will keep working when the NAND dies? Is there part that fits into 2.5" notebook slot and has HDD and SSD as separate devices? I can still return this one. I'm just not sure if I'll be able to erase it securely... another nasty issue with flash.)
Not even if crime(s) are commited by goverments. Yes, that means I wish best luck to Edward Snowden and Julian Assange.
Now, while playing with n900, I realized that automatic regression testing and maybe even automatic bisection should be possible. I wonder if someone did it before? Current experiments are at tui/auto. Maybe I'll even try to integrate trinity :-).
3:17pm: Fast cpu, flakey network
I got small desktop system with core2 duo to play with. First surprise was pleasant: performance is 2.6x performance of core duo in thinkpad x60, and even per-mhz performance is 1.7x that of x60. Good. And then the bad news: debian wanted firmware patch for networking, and even with firmware-realtek installed, networking fails every 10 minutes or so. I thought network card problems were things of the past...
I thought I could use usb networking card, but then I saw usb problems in dmesg, too. Better not try that.
Ouch, and it seems that for some very strange reason, pressing the power buttons make the network card work. Anyone seen that before?
I thought I would shame the system manufacturer, but he failed to leave his name:
# dmidecode 2.11
Vendor: Intel Corp.
Release Date: 12/23/2009
Ouch. Anyway, this makes network work well-enough for debugging:
Another surprises came from distcc: It actually speeds up compilation. Good. It needs same debian version on all machines. My x60 is running debian6. Bad. (There is gcc-4.4 for debian7, but I could not figure alternatives system to actually use it. Update-alternatives does not seem to know about gcc.)
Upgrade was a bit of fight (like aptitude trying to take hours of cpu time), but eventually I succeeded... Only to realize that system no longer boots into GUI and (worse) that gnome2 is gone. I'm not great fan of gnome3; definitely on X60, anyway. Its animations feel excessive even when system is unloaded, if there's some background load it quickly becomes unusable. I googled a bit, and it did not look like going back to gnome2 is not exactly easy.
So I went back from the backup. First, chromium refused to run because new version broke the config files. I restored those from backup. But next... strangely my self-compiled 3.9 kernel stopped working. Stock debian kernel kept running, but own kernel ran init then rsyslogd broke the boot.
3:01pm: What should computers learn
Ok, so I have small herd of computers -- Thinkpad X60, AMD desktop, ARM "tablet", Nokia N900, Nokia 6151, TI Chronos smartwatch. All but 6151 and chronos run Linux, all are programmable, and I have root access on all but Nokia 6151.
Yes, I should probbly get some light and cheap android as 6151 replacement. Light and cheap because it will go on horseback with me, and should have powerful at least 60mW led... because that's important in woods. I'm thinking about Alcatel v860 (old android) or Gigabyte Gsmart g1342 (unsure rooting)... suggestions welcome..
I somehow assumed that having machines under control and running Linux would make them well-behaved, solve world hunger, and make them behave as they do in movies... and yes, it is nice to be able to ssh around and to run same app on most machines.
But happy new world did not happen.
Phones have concept of "behaving themselves", like quiet profile, and I did program automatihc profile switching -- sl4a for android is nice, and that's part of reason I ported it to maemo. Unfortunately, desktops/notebooks do not even have that much... and tend to wake me, or worse (wake my girlfriend).
Another thing PCs should learn from phones is concept of loud speaker and headset. Using headset is pretty much requirement for VoIP telephony, but incoming rings should go to the loudspeakers... even if headset is plugged in. (Currently, I have USB speakers connected for loudspeakers. Yes, twinkle can select soundcards for ringtone and voice separately; but these should be system-level options, not app-level.)
What more would I like? It should be easy to do remote access between my machines; I should not have to search for cell phone to read incoming SMS, or do anything with the small keyboard when I'm near PC. Yes, ssh exists and I use it a lot, and vnc for n900 exists, too... but it has all to be configured separately. When I open web page on a PC and start reading, it should be easy to finish reading on other computer. I now use chromium, so maybe it is doable, but I'd really prefer to use my server, not google.
I'd like my machines to synchronize contact and calendar entries. At least this seems to be mostly working, thanks to owncloud. I'd like machines to automatically back each other up. I have some scripts for that, but they are a bit hacky and far away from automatic. And there's more that should be done...
Oh, and based on openmobility feedback, I created "fusion" script to determine position from multiple sources, assuming limit on speed user moves. In the progress, I did some measureemnts. 95% of all "current GSM cell" situations seem to be less than 4.8km from the cell. That was expected. But the same number for wifi is very high: 95% of all "wifi detected" situations fits within 2.8km... Either omnidirectional wifi has way longer range then I expected, or there's something wrong in the measurements. That was with n900.
2:49pm: TI Chronos surprise
I picked up TI Chronos after long time -- like half a year. (Yes, I'd like to know if Pebble smartwatch is lighter than this... because chronos are a bit too heavy for me.) And I was surprised: time on watch actually matched time on thermometer.
...which was very surpising, given that DST changed in the meanwhile, and given that chronos had trouble keeping good time.
Well... it turned out I was really lucky: chronos was day off. (And then I realized that I did not update thermometer to DST. I hate DST. Changing timezone twice a year is stupid.)
If someone is interested, slides are here. And yes, contributing GSM cells do the databases is as easy as walking around with Android phone and suitable application. Czech republic has ~50% cell coverage now, so GSM positions are already usable, and it will only get better...