?

Log in

pavelmachek's Journal

Recent Entries

You are viewing the most recent 25 entries.

16th August 2016

11:42pm: Vala -- seems ideal so far
I was searching for a language to write the phone GUI with... python3+gtk3 is way too slow; 9 seconds for trivial application is a bit too much (on N900). python2+gtk2 is a lot better at 2 seconds. Lua should be even faster.

But while searching for good language, Vala caught my mind. Designed to be integrated with gtk/dbus, compiled language. I was woried about error messages and errors from vala->c->binary compilation, but seems good so far.

Oh and it seems that emacs org mode is right thing to use for calendar. It looks like a bit too complex at first, but it seems the complexity is well justified... and I was doing similar things manually. Still have to search for a component to notify using popup / audio when an event is upcoming.

5th August 2016

1:50pm: Continents move... fun for openstreetmap
Openstreetmap has a problem... and a rather fundamental one. Saving all data in WGS-84 is nice and simple... but continents actually move. And that's why different countries use different coordinate systems. Australia moves a lot... cnet.com/.../australia-has-moved-1-5m Good thing is that we could map ships with that support. I guess there are other fundamental issues: world is 3D, and that is actually problem for multi-floor buildings. Plus, attributes for attributes would be useful. As in source:surface=survey...
1:46pm: Keyboard mapping and UCW czech
So I configured scroll-lock & pause to select volume up/down. Works well so far. I also remapped workplace switching to F1-F12 (without alt). Works well so far, as I switch workplaces a lot, and nothing really uses F1-F10.

Ouch, and for czech readers... UCW keyboard lives. Mate (== gnome2), in layouts add Czech Czech (UCW layout...), a v optionech "switching to another layout" capslock (while pressed)".

3rd August 2016

12:56am: 4 extra keys on desktop, 2 on notebook
Ok, so they are 4 keys on my keyboard I know absolutely no use of: "wakeup" key -- when any key wakes machine up, "power" key, which just duplicates "sleep" key, "scroll lock" and "pause". The first two are slightly non-standard, but surely there should be some use for scroll lock and pause in X (those are present even on notebook)? But it seems there is none. Scroll lock LED is also unused. Ideas?
12:55am: Tor browser a bit too unique?
Ok, this is scary: tor browser on https://browserprint.info/test -- "Your browser fingerprint appears to be unique among the 8,440 tested so far. Currently, we estimate that your browser has a fingerprint that conveys 13.04 bits of identifying information."

21st July 2016

10:54pm: Something usable for N9/N950?
I have both N9 and N950 here. Unfortunately, both are useless, as developer mode can not be enabled (because Nokia servers are down?).
     
There's tutorial -- how to install Sailfish. I'd love that. Neccessary images for N9 are no longer available. N950 images are still there, but... tutorial needs developer mode, and that's no longer possible.
Is there any way out of this for me?
Would it be possible to download image of working N9/N950 from some device, so that I could flash it?

19th July 2016

9:32am: Google play store playing with GPS?
Microsoft broke my father's computer: it made him update to Windows 10, when Windows 10 can not use two of 3 USB ports. Ouch.
Now it seems Google is trying to break my LG E720 cellphone. I did the right steps: it is running Cyanogen. One method is "we have great update for google Talk". Unfortunatelly, update is 20MB or more, basically filling internal flash and making phone unusable. And you can't disable update completely, you can only avoid clicking on it.
Now, Google seems to have invented new method of breaking my phone: Google Play Store started activating GPS. It does it on background. I tried downgrading to factory version of the play store, and not accepting its terms and conditions, but somehow I think it will come back.
Google Play Store definitely behaves like malware now. Unfortunately, on Android, it is hard to tell if malware-like behaviour is intentional by Google or if I have some third-party malware on the phone, too.

16th July 2016

8:42am: Updating userland on phone is... fun.
So I updated debian on my N900, because having different version on phone and PC sucks.
It booted, after I added "rw" to kernel command line, which is small miracle.
But X are without usable mouse, without panel, and without reasonable keymap. In particular, I don't have numbers, or any symbols besides ',.<>'. But I have root shell. Now I need to enable remote access somehow... which will be fun because sshd disappeared.
emacs to the rescue. By editing existing script, I can get access to characters such as '/', and launch telnetd. Installing sshd was easy with nmtui. Good.
Now, it seems something changed in the X land, and "xinput --set-prop --type=int 8 249 0 1" no longer works, which means touchscreen is
"upside down". If you know the replacement commands, let me know...

13th July 2016

10:17am: Ad blocking: yes, its war now
idnes.cz: they put moving advertisment on that their web, making browsers unusable -- they eat 100% CPU and pages lag when scrolling. They put video ads inside text that appear when you scroll. They have video ads including audio...  (Advertisment for olympic games is particulary nasty, Core Duo, it also raises power consumption by like 30W). Then they are surpised of adblock and complain with popup when they detect one. I guess I am either looking for better news source, or for the next step in adblock war...
...hmm. Perhaps time to disable javascript for such pages? No. Javascript is needed for video play back. But this seems to do the trick:

@@||1gr.cz/js/ad$domain=idnes.cz
@@||1gr.cz/js/ad$domain=mobil.idnes.cz
@@||1gr.cz/js/ad$domain=technet.idnes.cz
@@||1gr.cz/js/ad$domain=auto.idnes.cz
g.cz##.advert-fallback.show-fallback

Ok, seems Richard Stallman was right once again, and non-free javascript is a problem. News websites now commonly serve javascript that goes against interests of users.
Now, disabling javascript completely solves the problem, but it also breaks video playback. Is there time to create whitelist of reasonable javascript code?

12th July 2016

10:24pm: Facebook spyware push and unexpected N900 advantages
Dear Facebook. I'm aware that your Facebook lite is only 1MB. It is also dangerous spyware. You try to push it to me every time I attempt to use m.facebook.com. Would not it be nice if you avoided pushing your spyware to phones that can not handle it? Yes, that's right, your spyware requires too new android, so my phone is actually immune from it.
At least N900 seems tu be immune from this problem, you don't even try to push your crap there. Good.
10:14pm: Fun with the camera (on N900)
Ivaylo Dimitrov got camera to work on N900. Great. Unfortunately... there's works and works.
Working /dev/video* devices does not mean you get useful photos easily. I managed to get flash and autofocus hardware to work... But that still does not mean useful photos.
It seems that http://fcam.garage.maemo.org/fcamera.html is the best way to get the photos. Now... having phone act as a ssh server on local network, with gcc and development tools installed is very convenient... but sometimes you forget that this is not a powerful machine you normally work at.
Oh and BTW... is someone maintaining fcam-dev? Last update in svn is in 2011... I guess I'm maintaining it now...

Auto exposure is quite tricky to do right, and fcam-dev relied on some kernel patches to provide adequate performance. (If someone has pointer to the patch, that would be nice, BTW.) But... people were taking photos before auto exposure was available. And n900 has light sensor, so we can actually use it to bootstrap the auto exposure, making it slightly faster. Seems to work now. I had auto focus working with extremely ugly hacks... but I guess it will be easier to just let user focus manually. The camera is small enough that it should be feasible.

I played with the camera cover, and if you open it in the dark, it starts the flashlight (because that's what you probably want). If you open it with enough light, it will start camera for you. I feel proud.

N900 is a "little" loud in headphones. And it still plays PCM when mixer is set to 0. Weird. But probably topic for another investigation.

Charging (etc) on N900 is still funny. If you poweroff while charging, it will keep charging. That's probably a Linux bug. Charge counter (battery percent) are "kept" even if you replace the battery. Ouch. (So you replace empty battery with full one and still get empty reading. I guess normal people don't have 3 batteries for their phones?) That may be a hardware bug.
You can set charge voltage to more than 4.2V. That will make battery catch fire. I wonder what it is useful for, I guess when you want to have fun on the airplane? /sys/class/power_supply/bq24150a-0/registers is not exactly one value per file. Not sure about mode. model_name is definitely not one value per file.

dx.com 406496 : USB power meter. Seems to work quite well (I compared amper meter with other one, and they agreed +- 10%, so numbers do not look completely useless), and is very useful for debugging power issues. But it seems that USB power supplies often provide about half of their rated current...

2nd July 2016

9:34pm: You know your build machine is too small when...
...you don't have enough memory to run cc1plus and emacs at the same time. Ouch. Development directly on target (N900) is nice, but it has some unexpected pitfalls.

OTOH, I was able to modify fcam-dev to work with new kernel, and I'm slowly moving towards some real photograhs.

15th April 2016

1:17pm: Python is a nice... trap
Python is a nice... language
Easy to program in. No need to recompile, you can hack in as you would in shell. Fun.
Lets see if I can predict the weather. Oh yes, lets hack something in python. Hey, it works. But it is slow on a PC and so slow on a phone that future is already past when you predict is.
Then you try to improve the speed. That's very very bad idea. You can't optimize Python, but you can spend hours trying. You make a mental note to never ever use Python for computation again.
But Python should be fine for simple Gtk project, communicating over Dbus, right?
For bigger projects, Python has some support. Modules / object orientation really helps there. Lack of compilation really hurts there, but this is fun language, right? Allowing you to write nice and clean code.
Refactoring is hard, because variables are not declared.
Python is a nice... trap
But then your project grows larger, and you realize it takes 30 seconds to start up. Because many module need gtk, and importing gtk takes time. Heck... compiling _and_ running C based hello world is still faster then running Python based one.
Ok, C++ was tempting. Gtk Hello world takes 55 seconds to compile. My g++ does not support "auto", so the application starts with Glib::RefPtr<Gtk::Application> app = Gtk::Application::create(argc, argv, "org.gtkmm.example"). I think I'll stick with C.

Oh, and I already used my main SIM in N900/Debian... and I really used N900/Debian. I needed to tether a network, but not provide wifi hotspot. Done.

11th April 2016

11:51am: pypy: suprisingly good
Using python for weather forecasting was a mistake... but it came with some surprises. It looks like pypy is as fast as gcc -O0 on simple correlation computation: https://gitlab.com/tui/tui/blob/master/nowcast/pypybench.py (and pypybench.c). gcc -O3 is twice as fast, and plain python2 is 20x slower (or 2000% slower). Python3 is 28x. slower. That's better than I expected for the JIT technology.
11:45am: Finally... power management on Nokia N900
After long long fight, it seems power management on Nokia N900 works for me for the first time. N900 is very picky about its configuration (you select lockdep, you lose video; you select something else 50mA power consumption... not good). That was the last major piece... I hope. I should have usable phone soon.

10th March 2016

10:01am: liferea .. allows tracking. Too much tracking for my taste.
I noticed that every time I click a header in liferea, on http://servis.idnes.cz/rss.aspx?c=zpravodaj feed, network shows usage. But there's nothing displayed...
I turned off network, and three broken images... So it turns out liferea is downloading three invisible images to assist idnes in tracking.
Can I somehow tell liferea not to download anything just because I clicked the headline?

4th March 2016

11:53pm: blinking cursor of death
Yesterday, my / filesystem on Debian on Nokia N900 went full. Ok. So I removed some cached dpkgs. I believe phone still worked today morning.
Now, at the point where it should start X, screen goes dark, and then blinking cursor reapears. Normally, I'd hit ctrl-alt-f1, and debug
stuff from there, but N900 has no alt, and no f1. I'll image filesystem now. I can take a look at logs and fix stuff on filesystem,
but can't do other experiments easily. Debian 7.9. If you have some ideas what log to look at, let me know.

Window manager warning: CurrentTime used to choose focus window; focus window may not be correct.
Window manager warning: Got a request to focus the no_focus_window with a timestamp of 0.  This shoul\
dn't happen!
[1456818626,000,xklavier.c:xkl_engine_start_listen/]    The backend does not require manual layout ma\
nagement - but it is provided by the application
** Message: applet now removed from the notification area
polkit-mate-authentication-agent-1: Fatal IO error 11 (Resource temporarily unavailable) on X server \
:0.
g_dbus_connection_real_closed: Remote peer vanished with error: Underlying GIOStream returned 0 bytes\
on an async read (g-io-error-quark, 0). Exiting.
The application 'mate-panel' lost its connection to the display :0;
most likely the X server was shut down or you killed/destroyed
the application.
(nm-applet:3386): Gdk-WARNING **: nm-applet: Fatal IO error 0 (Success) on X server :0.

This is second time it happened, so it would be good to solve, OTOH just restoring from backup might be easier.

10th February 2016

3:16pm: Fire from the moonlight
http://what-if.xkcd.com/145/

Actually, I think you can make fire from the moonlight -- it just won't be easy. All you need is square inch (or so) of mirrors on moon. If there was not enough of mirros on moon hundred years ago, I'm pretty sure we put enough junk there in last 100 years.. probably including some mirrors for distance measurement.

9th February 2016

8:39am: University spammers
Yes, I did contribute to free software. Does it mean every person from university has to spam me, just because he's "researching" it? Jeffrey Carver <carver@cs.ua.edu> , I'm talking about you. And we are not talking one message, either.

1st February 2016

8:07am: The day Google went evil
Now, it will activelly prevent you from using it unless you enable cookies (with excuse of european data protection laws). So I disabled cookies for google.com. Now google works... for a day... so its now duckduckgo.com for me. Interesting how tricky it was to add into chromium, how well hidden cookie settings are in chromium, and how they change yourself if you are not careful.

http://gizmodo.com/5878987/its-official-google-is-evil-now

11th January 2016

1:24pm: X servers and dangerous aircraft
It is very easy to lose track of cursor on multiple monitors... Especially if cursor is on down or right edge, only few pixels remain. Should some kind of pointer remain on the monitor even when mouse is on other monitor -- providing kind of "look that way" pointer?

Oh and... when activating USB-to-VGA adapter, mouse disappears altogether. Ouch. Unfortunately, that means system is unusable.
Is there way to adjust DPI setting, preferably per application? Does gtk has some option like that? N900 has 800x480 display. When using stylus, you can put your phone close to your eyes and pretend its a PC, but when using fingers, many controls are just way too small.
Its official: Airbus killed them.
Airbus A320 has two sidesticks, with no force feedback, and no physical link. So you are trying to recover from stall, you are pushing the sidestick fully and your first officer pulls the stick fully -- result is you remain stalled. You don't even know your first officer fights with you... That's what happened to PK-AXC, report is here. (How did they get to stall? Computers spuriously adjusted their rudder trim when they lost power. No, you should not reset flight computers like that.)
This is second accident of this type. Similar effect happened to Air France 447. (And pretty much every Airbus incident involves "dual inputs"). Lets see how many crashes it takes before Airbus provides force feedback.

10th January 2016

12:30pm: 2016: Year of the GNU/Linux phone
Well, Linux is running significant fraction of cellphones these days... but usually very old and very patched kernel. But maybe we can run mainline kernel with free userland?

Today, I made first successfull call with Nokia N900 running 4.4-rc8
kernel and Debian userland. Latency was cca second, and I was told my voice was not recognizable, but we had no problems understanding each other.
Maybe voice format is not 4kHz, 16bit, stereo after all?

4th January 2016

8:58am: N900: Found a way to do rotation in X
...which is needed for control by single hand. Unfortunately, xrandr refuses to rotate on N900 for some reason, so I'm doing Xephyr and
then xrandr.

...and looking for better ssh.

Sitting at the train, ssh-ing from laptop to phone, with second phone providing hotspot (okay, I do feel a bit silly). Now... this does not work too well. First, I had to manually copy the IP address, and second, I did not really verify the ssh key. And as IP address changes, I'd have to do it each time. Better solution would be welcome.
I want to connect to my phone, no matter what IP address it has. If possible, I'd like the keys to be checked during connection, too.

2nd January 2016

2:31pm: N900 progress... and roadblock
Ok, developing directly on target is easy... and phone is now in much better shape. I added watchdogs, so I'm no longer afraid to let it run debian for extended periods of time. Voice calls work, but audio quality is awful/unusable.

Developing directly on target also has problems:'

remote: error: object c86cce9eda127cd891a7cf2d23e007deaddf4d34: badTimezone: invalid author/committer line - bad time zone
remote: fatal: Error in object

pavel@n900:/my/tui$ git show c86cce9eda127cd891a7cf2d23e007deaddf4d34
error: object directory /data/l/clean-cg/.git/objects does not exist; check .git/objects/info/alternates.
commit c86cce9eda127cd891a7cf2d23e007deaddf4d34
Author: Pavel <pavel@ucw.cz>
Date:   Wed Dec 31 23:59:43 1969 +35150858

Fun. I wonder what happened there, if it is going to happen again, and if I can fix it somehow...

Happy New Year!

4th September 2015

12:04pm: Wifi fun and misc..
(And apology for the SSD entry some time back. Apparently yes, they can fail to retain data after less than a week... at the very end of their lifetime.)

In the last weeks, learned that transfering real-time data over WIFI is way more fun than I thought. And that it is possible to communicate from inside of (closed) microwave oven using 2.4GHz WIFI. I don't know about you, but it scares me a little.

N900 and not everything is a file

Pocket Computer. We had pocket computers before ... Sharp Zaurus lines was prominent example. They had keyboards and resistive
touchscreens... Resistive touchscreen with stylus is accurate enough to serve as mouse replacement. Unfortunately, such machines are slowly going extinct. Sure, we have Quad-core Full-HD smartphones these days... but they lack keyboards, making ssh from them impossible, they lack accurate pointing device, and they are really phones, not small computers. N900 can almost be used as a pocket computer...

New Mer is "broken beyond repair" for n900.. as it uses qt5.  qt4 works well (well... little slow) on n900, but qt5 needs stable egl
drivers. Ok, so that was another nice-looking trap. I'm starting to think that text-only user interface is right thing to do on n900 at
this point.
Baking n900 for 15minutes at 250C seems to have fixed the "no sim card" problem... for a week. It now seems a bit flakey, but definitely better than before baking. Thanks for everyone at Czech BrmLab!
To backup mmc card on N900, I'd like to rsync root@maemo:/dev/mmcblk1 mmcblk1.img ... but that does not work, as rsync is too clever and refuses to transfer content of special files. Is there trick I'm missing?

On the n900 front... it has 256MiB RAM and 800x480 screen. What web browser would you recommend for that? I tried links2, but its support is not good enough for properly working m.mobilecity.com pages... which I'd kind of like.

Linus, please reconsider -rc0

Hmm. There's big difference between 4.1 (expected to be pretty stable kernel) and 4.2-rc0 (which is probably going to be as unstable as it gets. Unfortunately, Linus does not change makefile before merging, so it is quite tricky to tell if
Linux amd 4.1.0 #25 SMP Wed Jul 1 11:20:22 CEST 2015 x86_64 GNU/Linux
is expected-to-be-stable 4.1, or expected-to-be-very-unstable 4.2-rc0...

Its tempting to name your branches simply "v4.1", "v3.11". Don't. When -rc's are done, Linus will create "v4.1" tag, and you'll have fun
figuring out what whent wrong in your git.

Google play bloatware

I got very cheap LG optimus chic.. and android did improve from G1 days. Its still Google's spying empire, but.. at least it is fluid and mostly works.
Not sure what "Google Play services" are good for, but taking 50MB of internal flash is not funny.. and when moved to SD card, the SD card tends to disconnect. "Google Play Store" still works without them. "My Tracks" need them, but 60MB of flash is not reasonable price to pay for GPX recording. "Pubtran" got removed, too. MHDdroid has strange interface, but perhaps it will not need that much storage.
Do you know a way to search czech public transport without Android and without desktop browser or Opera Mini? m.idos.cz leads to "full" version.

And ...dear Android, "force close" dialog is last thing I want to see after hearing ringtone. If you could at least add the number to call log...

Feeling cheated


Wed Jul  1 01:59:58 CEST 2015
Wed Jul  1 01:59:59 CEST 2015
Wed Jul  1 02:00:00 CEST 2015
Wed Jul  1 02:00:01 CEST 2015
Wed Jul  1 02:00:02 CEST 2015
Wed Jul  1 02:00:03 CEST 2015
Different power supply for X60

Thinkpad X60 is marked as 20V, 3.25A. I wonder if using 19V, 2.63A power supply is a good idea. The power brick is way smaller, and 65W seems to be a little high for a small notebook.
Powered by LiveJournal.com