Showing posts with label technology. Show all posts
Showing posts with label technology. Show all posts

Tuesday, May 01, 2007

Call 811! Call 811! (before you Dig)

There's a new number in town (811 to call before you dig), and it's reachable starting today. If you go to the www.call811.com website, you can see how many times it has already been called. This new nationwide (US) number can be used to have the appropriate utilities and other agencies come out and mark the area where you are going to dig. The need for this should be obvious to most people, but every year some 10000 still insist on digging their way through gas lines, electric lines, and other underground lines which will flat kill you. This included people who are simply trying to install posts for a fence.

The release of this number rounds out the N-11 numbers in the U.S. So if you were planning to lobby your local government to provide a dog-watering emergency service, you'll just have to use a longer number.

The Common Ground Alliance is a non-profit organization which attempts to educate the public about these risks. In addition to public safety, they also protect the infrastructure and the environment. There are many advantages to having all those unsightly cables and pipes underground, so please, people, call before you dig.

If you need 811 logo items for you business, you can find them here.

Friday, March 30, 2007

How to find your gas cap without getting out of the car


When you pull in to a gas station, especially in an unfamiliar car, you are often stuck with making a decision about which side of the car needs to be adjacent to the pump, before you get out of the car. It's a fifty-fifty shot, but if you get it wrong, you have to start the car back up and make an awkward maneuver to get to the other side of the pump, disturbing all the other people who are trying to get gas for their cars. If it's especially busy, you might miss it altogether.

Since I like to blog about how-to things, this is going to be in that category, I suppose. My boss just got a new Lexus LS 460 with all the bells and whistles such as bluetooth to link to your cell phone, built-in navigation and calendar which presumably syncs with your phone calendar, and more (it can literally parallel-park itself), but she was wondering which side the gas fill was on, so I pointed out something that I've know for a while, but not everyone knows. I think they should teach it in driver's ed. Anyway, on your fuel gague inside the car, there is an icon of a gas pump. That icon serves a dual purpose. First, it tells you that the meter you are looking at is indeed the fuel indicator, but it also tells you which side of the car the fuel filler is. There will usually be an arrow, such as this:


but also it might just be on a certain side of the gague, which is still an indication:

In both of these cases, obviously, you want the gas pump on the left side as you pull in, because the cap is on the left side of the car. This has been a part of most cars since at least the early nineties, so you can guess that it is probably true of your car too. I haven't looked back at older cars to see if it is true for them too, so tell me in the comments what is the oldest car for which this works, and the newest car for which it does not work.

Thursday, March 15, 2007

Google really is working on a cellphone

According to this article on Noticas.com (I provide the translation below):


Isabel Aguilera, Director General of Google in Spain and Portugal, has confirmed to Noticias.com that the company is working, “among other things”, on the development of a mobile telephone. “Part of the time of our engineers has been dedicated to the investigation of a mobile telephone which can access information”, Aguilera said to this portal.

The speculations on the possible entrance of Google into the area of design and sale of mobile telephones arose after the company recently published an ad in which it looked for engineers and analysts specializing in telecommunications. In that same ad, Google specified that it is in the experimentatal phase with diverse systems of wireless communications.

At a conference on the integration of Internet into business strategy, organized by the Association for the Progress of the Direction of the Mediterranean Zone, Isabel Aguilera has explained to Noticias.com that although 70% of the engineers' time is dedicated “to develop our nucleus of business, that is to say, search and advertising”, and 20% to develop “products that they have something to do with this nucleus”, is clear that 10% of that time is centered on product development “that at some time could have to do with our business”.

Within this last scope, Aigulera has indicated that “it has been investigating” a mobile telephone which can “access information”, in “a manner which extends the information society to devloping countries”. In this sense, the Director General of Google in Spain and Portugal has said that while “the products can seem strange, all comprise of our process of innovation”.

At the moment, the search engine has 36 products and “18 others that are in laboratory” and, therefore, in the experimental phase, including the above mentioned mobile telephone.


This confirms weeks of speculation. I apologize for any errors in translation; they are my own. Please post a comment if you see any such errors. Thanks. p.s., I told you so (update 4/12/2018)

Wednesday, February 21, 2007

Debranding w300i walkthrough


Why debrand?
First I want to talk about the pros/cons of debranding. If you have already decided to do it, skip this section; however if you don't know the cons I recommend you read this. I debranded from Cingular; your pros/cons may vary somewhat. I have a Sony Ericsson w300i phone that I got new for Christmas. I immediately began developing software for it. By debranding it, I was able to overcome a major weakness in development, namely I can now test my Bluetooth applications on my phone without getting them signed by Cingular. So, the biggest pro is that you can set permissions on even unsigned Java apps to fairly reasonable defaults if you debrand. Second pro is that some carrier-added limitations are removed. You have to research this to find out what they are. For my phone, Cingular disabled Flash themes. To me, this is not a big deal, because I don't care much about ringtones/themes/etc. Some carriers disable mp3 ringtones; a much bigger deal as far as I'm concerned. On the con side, debranding caused my phone to lose mobiTV, mobiRadio, and mobile e-mail applications that Cingular had installed. It is not currently possible to put these things back on, because they are signed by a Cingular certificate that is stored in the Cingular-branded phones only. Generic debranded phone will not have this certificate. Menus and such moved around, and a few buttons that used to do one thing now do another, but these are minor points. More problematic is that you will void your warranty on the phone, and you might break the phone to the point that you need a service cable to fix it. Finally, as a con, the debranding process will destroy anything you had in your phone, including ringtones and Java games you have purchased, themes, contacts, music, etc. Even if you move your Java games to the memory stick, they will not be there after you debrand. Finally, if you do anything that ruins your phone, I am not responsible. Don't use this as your only source of information. Read up on things first if you don't know what you are doing.

Debranding services
Some cell phone service centers will debrand your phone for you. You can find them with a simple Google search. They charge about $60 for this service, and you generally have to get the phone to them physically, perhaps waiting overnight. If you are not highly technically inclined, go this route. If you might make a typo or you might not understand all of the following instructions, have someone else do it, by all means. Better yet don't do it at all, because you have no real reason to.

Quick and easy debrand
For this phone, it is my belief that if you do a Master Reset from the General Settings menu, you will debrand your phone. The default configuration is to go back to a generic Sony Ericsson file system with only Sony Certificates, etc. This will have the same effect as debranding. You lose the ability to back anything up this way, however, and you also lose all your carrier-provided features, such as ringtones, e-mail programs, etc.

Debranding Servers
There are two companies that I know of that will sell you some software and credits to debrand your phone. These are Wotanserver and Davinci Team. I started to use Wotan Server, which is fairly straightforward, but in the end I opted to do it myself, as described in the rest of this post. To debrand through Wotan Server, you just sign up on the server, pay a little money for a credit, download their client, and you're ready to go. To actually do the debranding, you start the software and follow the instructions. What you have to do is remove the battery from your phone, take out the SIM card and memory card, put the battery back in, and you are ready to connect. To connect, you start the software and wait for it to ask you, then you hold down the "c" button on your phone as you plug the USB cable into it with your other hand. The software will then proceed to flash your phone. As noted earlier, this wipes the phone clean as if you had just bought it. No contacts, etc. You have to go through the setup wizard all over again. If you don't like some of the new settings, you can't really change them unless they are already configurable on the phone. This disadvantage is somewhat mitigated by doing it yourself, because you can go back and hack back into the phone to fix things.

Do-it-yourself
I only recommend this method to programmers and such. With this procedure, you can get into the guts of the phone and look around, and make changes. You can also do all kinds of things that may not even be legal, so be careful. In this instance you are breaking in to the phone. The best-case scenario of doing this, right now, is that you downgrade your main firmware to a more generic version that is not quite compatible with Cingular's file system. Fully charge your phone before you begin.

Requirements
You will need the following software to get started:
Phone XS++V1.2 or later. At this link are links to the program; it is a free community-created tool for do-it-yourselfers. It comes in a RAR file, so you will need WinRar. You can also get Far manager 1.70 from the same place. Finally, you will need some drivers that some with the Sony Ericsson Update Service. The drivers that come with this will work for your purposes. XS++ installs to the folder you unrar it to; FAR manager and the rest install like normal windows programs and are run from the start menu. Each of these programs may have its own requirements, like Macromedia Flash player, .NET framework, Windows XP, and so on.

Once you have all these programs installed, you will need to add a plug-in to FAR manager. First get SEFP v010044 and unzip it to your computer. This will unzip to a folder called SEFP010044, which contains another folder called SEFP. Click on the SEFP folder can copy it. Then go to C:\Program Files\Far\Plugins, and paste SEFP at that level. Next get SEFP v010051 and unrar it and do the same copy/paste trick with SEFP. You do need both SEFP's because the second is an update to the first. This time Windows will warn you that you will
overwrite files, etc., just click yes. Finally, get the final file for your CID49 phone, and unrar it. This is called .zip, but it is actually rar'ed. This, too, has an SEFP folder under it, which again gets pasted into C:\Program Files\Far\Plugins, and again overwrites several files in that folder. Once you are done, go to the folder called C:\Program Files\Far\Plugins\SEFP, and you will see a program called sefp0.10.0.51patch.exe. Click on this program to run it, and it will ask you to apply a patch. Click do it. Nothing much seems to happen, but it is done. Close the window. If you miss any of these steps, you will get various error messages. Note that you are also required to have a regular COM port set up on your computer, even though you won't use it.

The final requirement is to get the firmwares that you are intending to use on your phone. These can be obtained, for example, from TopSony.com. Note that this is primarily a Spanish site, which can present some challenges to registration, etc., which is required. You may also have to pay a couple of Euros to get access to the download area. On there, you can get R9A036 main and R9A036 file system, which are the ones you want for the w300i phone only. If you have some other phone, you are responsible for gettting the right firmware files. These won't work, and will kill your phone. You also want the customization files. Unzip/unrar all these and put them in the same folder with PhoneXS++V1.2, which is called that. Then go to your db2010cid49_4_alpha folder, and also get w300_p3k_dcu.49R.ssw and put it in the same folder with the rest. Note that there should be a couple of subfolders called files_to_upload and own_custpack which came from the customization files. Leave this folder structure intact.

Getting started
The first step is to remove your battery so you can take out your SIM card and memory card. Put the battery back in. Then run XS++ by double-clicking on its executable. This will bring up a small screen on which you can press the Start button. Once you do that, you will need to connect the phone, which you do by leaving it off, but holding down the "c" button while you attach it to the USB cable. If it recognizes your phone it will tell you so in the status window and switch to a view where you can put a MAIN file, an FS file, and customize. You may have to unplug the phone, take out the battery, and try again the first time, after it finds the device and so on. You don't ever want to customize with XS++1.2, because it doesn't work right on the w300i. Also, unless you are debranding your phone you don't want to update your file system. Even if you are debranding, you don't want to flash the file system just yet, because you want to back up your old one. It may some day be possible to restore branding when the R4EA031 firmware is found.

Flashing the phone
Now we reach the point of no return. Once you flash the first break-in file, you will be forced to at least update your main firmware (which will probably actually downgrade it to R9A036, unless you can get the right firmware). Click on the ... button on the right of the Main Firmware box in XS++. Then browse to whereever PhoneXS++V1.2 is located, which is where your w300_p3k_dcu.49R.ssw file should be. Choose that file for Main firmware, and make sure you have only checked Flash Main firmware. Click on the Flash button at the bottom, and it will begin. It will only flash 5 blocks this time, and it will probably hang at the end. This should only take about 20 seconds. Once it says 5/5, finishing flash, it will hang, and you can click Stop button, and ignore the warnings. It will say error and it failed, but it didn't. At this point your phone will not turn on, so don't turn it on. Unplug it from the USB cable, and pop the battery out and back in.

Far manager
Now run FAR manager from the start menu. Once it comes up, hit F11, which isn't even onscreen. This will give you access to the Plugins menu. From here, choose SEFP. This can be done by hitting the S key, which in the future you will want to do to not upset your settings. Here are some troubleshooting tips from se-nse.net:

  1. If you get the error: "Unknown exception", Exception address: 0x7C812A5B...... The plugin will be Unloaded!
    This is a bug. It's because you don't have any COM-ports, so create a fake COM-port connection. I did it with my BT Dongle.
  2. if you get the error: " can be used with Service Cable ONLY".... browse to the SEFP folder and patch sefp.dll with sefp0.10.0.51patch.exe.
Choose DCU-60 cable, 115200, and w300_w810_z550_ in the three menus. Note that you make your choices simply by browsing over these choices without even clicking. This is easy to mess up. When you have your choices solid, approach the Enter The Matrix button from the bottom so you don't browse over your choices.
  1. If you get the error: "Script error code 0"
    This is because you didn't put in the SEFPv010044 before you put in the SEFPv010051. You have to do both, because the second one is just an update to the first. Then after that you have to do the sefp0.10.0.51patch.exe as described above.
This will ask you to connect your phone, which you do by holding down the C button and plugging it in. Soon a menu will come up on the left side with the words FLASH and FS. The flash feature doesn't work for FAR manager, so choose FS by double-clicking. This will then download some more things to your phone, and eventually after a nervous pause, your phone's file system will appear on the left side of the screen. Since you didn't yet flash your file system, you can make a backup of the one on the phone. That is accopmlished by choosing each of ifs, tpa, etc., and choosing the copy option from the bottom of the screen. This will coply the folder and all its contents to the location on the right side of the screen (C:\Program Files\Far by deafult). Once you have backed up your file system, click the .. on the left side. It will ask you if you want to close the CSFS loader, just say yes.

Flashing and customizing
Note that this section is unnecessary if you just wanted to hack in to your phone and not debrand it. You can still do all kinds of things with FAR manager without debranding, but you will need to do the next section steps to get your phone to run again. For now you will pop the battery out and put it back in, and start XS++ back up. Choose the start button, connect the phone as usual with "c" button held down, and select Flash File System. Now go choose the W300i_R9A036_FS_AMERICA_1_RED49.fbn file that you downloaded earlier, and start the flash. This will erase everything in your phone and start fresh. This task should complete normally without hanging. When it is finished, you are still not done. Disconnect, pop the battery out and in, and go back to FAR manager. Choose F11, S, keep the settings and Enter The Matrix, then FS. This time, you will want to find the folder where you put your customization files, called own_custpack. Open that folder on the right panel, and you should see the tpa folder on the right. There will also be a tpa folder on the left. Select the lone tpa folder on the right, and choose copy. This puts the folder from the disk onto the phone to customize it. Now the phone is debranded. Click the .. again on the left, until it asks you to exit CSFS loader, say yes. Finally you are done and ready to restore the main firmware. Remove and replace the battery.

Restoring the main firmware
This is the step that is necessary whether you debrand your phone or not. Start XS++ again. Check the Flash Main firmware checkbox only. Select the W300i_R9A036_MAIN_NAM_1_RED49.mbn file, and then choose the Flash button. This will start the process of copying about 336 blocks to the phone. When this completes, which should finish normally, your phone is ready. Disconnect it, take the battery out and put the SIM card and memory card back in, and turn it on. This should be the first time you actually turn on your phone since you started. It won't work anywhere in between. It will go through the original setup if you debranded it, otherwise it will just start as your normal phone; however some things will no longer work because of the step backward in firmware. In particular, a Cingular branded phone will have the Cingular Music menu item show up as Missing, but it will still work. Other things may not work so well.

Saturday, January 20, 2007

The Game that Changed My Life

Just this week, I bought a couple of video games. Yes, bought and not pirated. I make software for a living, so I don't pirate. No, they weren't the kind of fancy schmancy games that my son rents for the latest leading video game console on our big-screen TV. In fact, it was because my son had just rented a game for the XBOX 360 that I was talking to him about a game I had once played called Prince of Persia for the PC. This was the original side-scroller, with simple but elegant graphics and a great storyline, including a few genuine moments of emotional fulfillment. For some reason, I was feeling nostalgic, so I reached into the past for this game (through e-bay, where all our techno-kitsch lives), for the Sega Genesis, which is hooked up to my daughter's 13-inch TV. The other game I bought was, in a sense, made for the cuttingest-edge of technologies, but it is called Doom RPG. And this post will meander from the very beginnings of computers all the way to this cutting edge. Therefore, let me start at the beginning, because this is one of those long-chain causal relationships, as all life-changing events are.

When I was a kid, my dad was a computer programmer. At that time, to be a computer programmer, you pretty much worked at a bank, or a defense contractor. He worked for the latter. One day, which I still remember quite distinctly, he took us up to show us what it was all about, or at least the non-classified parts of it. This was circa 1969, so suffice it to say the computer filled a room. Connected to that computer was a small terminal, which had input (a keyboard) and output (a printer). There was no screen. My dad thought he could teach us something about the art of programming and what computers did in general by relating to us how a computer might be programmed to play a simple game like tic-tac-toe. He was a mathematician by training, so he broke down for us how the playing board could conceptually be rotated and flipped to the point that there are really only three first moves: corner, side, and center. At 7, this was my first introduction to abstract thinking. I liked it. If you don't understand it, don't worry, you can still get a job at Starbucks. But no, tic-tac-toe didn't change my life. In fact, after that point, I became so good at math that I always thought I would do that for a living. Here's a modern tic-tac-toe game for the computer. And here's one written by a nerd.

The other day, I was talking to my dad, and I asked him what was new. Now that he's into his seventies, there isn't much new. Just the same-old, same-old, working late into the night and long weekends to finish the latest overpromised, overengineered defense programming project! And here I was, hoping that someday I'd be too old to work like that anymore.

When I got to the ripe old age of ninth grade, I had gotten so good at math that they let me play on the timeshare computer after school. This was another room-sized computer somewhere, but it was connected to a small terminal in our school via modem. By small, I mean the terminal was only the size of a large desk. It had a keyboard, a modem, a printer (roll paper), a paper-tape reader, and of course a rotary-dial telephone next to it to dial-up the actual computer. As far as I knew, it only ran BASIC. The programs were stored locally on paper-tape, which is a roll of paper with holes in it about the size of pencil-holes, each representing one bit, arranged side-by-side in single bytes, about the width of masking tape. If your program was more than a couple of hundred bytes long, it was going to take a roll of paper the size and approximate weight of a roll of masking tape to store it. One one such roll was a program called TREK.BAS.

This program, if asked, would print out a set of instructions, and a screen using ASCII characters to display your ship, and what it could see from long-range sensors, short-range sensors, and when you fired photon torpedoes, it would print the galactic coordinates one after another, tracking the location of the missile as it travelled in the direction you told it. The short-range scan would take up about ten lines of paper, looking something like this:
.COMMAND:srscan
... 1 2 3 4 5 6 7 8 9 10
. 1 . . * . . * . . K .
. 2 . . . . . . . . . .
. 3 . . . . . . . . . .
. 4 . . . . . . . . . .
. 5 E * . . . . . . * .
. 6 . . . . . . . . . .
. 7 . . . . . . . . . .
. 8 . . . * . . . . . .
. 9 . . . . . . . . . .
.10 . . . . . . . . . .

You are the E, the Klingons are the K's, and the *'s are the stars. The program would print this screen whenever you wanted a short range scan, which was somewhat often for me. I closed down that closet many a late night when I really should have been doing something else. I don't know who paid for the paper for that thing, but I am personally responsible for President Nixon forming the Environmental Protection Agency in the seventies. It's funny, because I was never really much of a Trekkie. Yes, I know this is heresy among geeks, or at least it was, until that fateful day in 1977. I realized then that the thing I never liked about Star Trek, or for that matter most Sci-Fi until Star Wars, was the sanitized verson of the future that they had. In Star Wars, for the first time I saw it in a movie that made sense anyway, the computer broke down sometimes. Anyway, the game Star Trek dragged me from a love for mathematics to a love for computers. One of the most fun times I ever had with my dad was when I was writing a compiler for the Commodore 64 just for fun, and he was porting TREK.BAS to the HP150 microcomputer, just for fun, in the same room at the same time. My love for computers lasts to this day, as does his, I'm sure.

Which brings us back to today, and Doom RPG, and cell phones. The contract on my cell-phone was due to expire in November, which means I could get a new one practically for free, as long as I stay with Cingular AT&T, which I had planned to do anyway. Coincidentally, the battery life between charges on my two-year-old phone was down to about an hour anyway, so it was time for a change. For reasons similar to John Carmack's, I naturally started thinking about what kind of programming I could do with a new phone. I was also thinking about saving some money, both by writing programs I wanted on the phone, and by learning how to do ringtones for my daughter's phone and download them over USB cable. While doing research on this topic, I found Carmack's blog (above), and I also found the Motorola RAZR and all of its attendant hackage.

Because the phone has been heavily hacked (again, I wouldn't want to do any piracy, just personal programming), it was one of my prime candidates. However, it also was about eighty bucks even with the extended contract. At the same time, my daughter had discovered the w300i made by Sony Ericsson. This phone was on sale for $9.00 after rebate, so it fit my cheapo price-range, but it also has support for Java ME games with 3D support, FM Radio, Walkman (MP3), and Outlook calendar synchronization. As an added bonus, Carmack's afore-mentioned Doom RPG was available for this phone, and as that is the current gold-standard of cell-phone video games, I thought it was worth a look. The game I really want is Orcs and Elves, but I reasoned that by supporting Doom on that phone, I was encouraging a port of O&E to the same phone. The phone came with a data cable, and so far, I've gotten all the SDK's, signed up as a Cingular Developer, written some programs for it, downloaded others, and generally had a good old nostalgic time writing tiny programs in a heavily constrained environment for a very tiny screen, and it's all been a helluva lot of fun. I've even thought of porting this java game to the thing just for kicks.

Coincidentally, the game which my son rented from Blockbuster this weekend was called Star Trek:Legacy, with somewhat updated graphics from the aforementioned BASIC/Java game. He was playing it on our 100-odd-inch HDTV projector/screen on the XBOX 360 with 5.1 surround sound, and the graphics are nothing short of stunning. There isn't much to draw in space, so they make the most of it. It is quite impressive, with planets and nebulae and whatnot. It occurred to me that the screen he was playing the game on, rivals the main screen of the Star Trek Enterprise itself. (No, that's not my home theater in the picture. That guy is a REAL nerd). Anyway, I was walking down the hall tonight and I thought my son had gone out for a walk, because he wasn't in his room. He called out from his sister's room that to the contrary, he was in her room playing Shining Force on the old Sega Genesis. I guess some of my nostalgia rubbed off on him.