May 162009
 

Read a lot about ARM and embedded system these days, and found that, I may have stepped into the wrong area.

I still have to read some more to make final decision, but so far seems the ideal way to me is programming for Windows CE or embedded Linux, but, let’s see what else I can get from the web.

May 152009
 

Here is the perfect explanation on how to setup a ARM linux emulator, there are only three things I change:

  • I installed binary qemu package instead of building from source
  • Those ARM kernels are now 2.6.18-6, guess version will be changed again later on
  • I didn’t install SSH – I’m using console for all the time (check below)

Pretty fun, and on my P4 2.8G Ubuntu it runs pretty smoothly- I guess it runs much more faster than most real ARM single board computers, but I don’t have anything to verify it.

Turning on console took me sometime, as I was lost on host and VM’s setting, actually it is pretty simple:

  • turn on ttyAMA0 in VM, I replaced tty2 with ttyAMA0 in /etc/inittab:
    2:23:respawn:/sbin/getty 38400 ttyAMA0
  • launch the VM without graphic (too much resource), and let VM use ttyAMA0 as console:
    qemu-system-arm -M versatilepb -kernel vmlinuz-2.6.18-6-versatile -initrd initrd.img-2.6.18-6-versatile -hda hda.img -append “console=ttyAMA0 root=/dev/sda1” -serial stdio -nographic

Now after reboot, I have my ARM box now:

$ uname -a
Linux ubuntu 2.6.28-11-generic #42-Ubuntu SMP Fri Apr 17 01:57:59 UTC 2009 i686 GNU/Linux

It does not have full Ubuntu packages, I’m trying to do cross compiling (using GNAT) as I want to use Ada for all its development.

Once everything works I will get a dev board ๐Ÿ™‚

May 132009
 

I’m copying couple of hundreds G of data around and it is slow, really slow.

I know I made something wrong – I was thinking concurrency is the bottleneck as single copy would not be able to maximize CPU and network, however, after I launch 30 copy at the same time, I found … the bottleneck is actually coming from disk.

SATA sucks, it is just an enhanced IDE as someone told me before. 30 copy running at the same time caused all processes are waiting for IO, and thinking of throughput is almost nothing, it seems to me it is waiting for disk seeking.

I still need to do some tests and then gather statistic information to see how much the SATA can do – I was running 20 copy on a SCSI (well, RAID’ed) and it was doing great.

 Posted by at 09:18
May 112009
 

Two major platforms for my PPCam project is Windows XP and Windows Vista, I believe I hit the problem on Vista.

I don’t think it is my code problem, but I just cannot, so far, get a workaround. The problem is WM_SYSCOMMAND of SC_MOVE with HTCLIENT does not work, it seems some coordination translation got problem.

I suspect it is Creative’s driver problem, since I’ve tested this webcam on Windows XP without any problem, and another Logictech webcam on Windows Vista is running just fine. I need to do some more research to figure out what’s the problem, and find out what’s the workaround.

 Posted by at 22:20
May 112009
 

I have to admit that I’m a multi-task animal, here are couple of things I’m currently learning – “learning” here means actively reading books, doing tests, etc:

  1. Ada
  2. COM and DirectShow, these are related to #1 but are totally different, as I’ve mentioned couple of times
  3. Embedded development, heavily research, haven’t located the direction yet
    P.S. Ada for ARM is not that ideal as seems most people are using Java/C/C++, but it is possible so I will give it a try any
    P.P.S. I don’t think I need a development board at this moment, I will start with an emulator first which could be free (QEMU based)
  4. Hardware stuffs, for robot, I don’t know how far I will go with this, though
  5. Piano, I believe I’m the one has talent on music, let’s see ๐Ÿ˜€

Pretty much I think.

There is not much to do while I’m in office, pity the new floor plan is too disturbing to read non-work related stuffs during working hours. I will try to make things to txt file and read it through vi, just as if I’m doing something :D.

 Posted by at 01:20
May 092009
 

I’m reading some books about building robot, I think I will start with some basic embedded programming (such as ARM), and once I know more I may try to build some robot.

I used not to be good at hardware stuffs, but I think I can still try now and also it is the time to build up hobbies for retirement although it is tens of years to go.

I will try to use Ada and if it is not available, I will try Java. I will try my best to avoid C/C++ as I need something new to refresh my brain.

 Posted by at 10:47
May 092009
 

Just found a eBook site and I’m downloading books crazily.

There are two Ada books that I’ve been looking for quite some time ;).

 Posted by at 07:11
May 072009
 

Copy some words from a friend’s blog, “Things will be better if you are more stubborn than the adversity”.

My understanding is, “be tough”. I think at this moment most people are in this or that kind of troubles, or actually people are always in big or small troubles. The key issue is, those who survived and will survive, are those who are tough. Be strong, be stubborn, be paranoid, this is the way to live longer :D.

 Posted by at 01:00