DHCP nightmares at Kamelija hotel

It’s your first hours after arriving at a (questionable) quality 2* hotel. You look around a bit scared, but at least there’s hope in you: there’s (some) free wireless Internet access in (some) designated areas around the bar.

You see happy people using it and also your friend’s phone (HTC Desire S) is doing more than fine. You think: now it’s the right time to go and complain (or brag, depending on your state) that I’m finally on vacation!

Alas…

When you try to connect with your Samsung Galaxy Tab 7, you see that it finds correctly your wireless network, authenticates without any problem, but hangs on “Acquiring IP address…” state. And it never finishes connecting.

You think “well, it’s because the wireless router is quite busy, I’ll wait”. You keep waiting for some time, and retry. And you get the same. Then you restart your tablet, hoping that it’ll fix the issue. It doesn’t.

Shit!

You now think “Yes, but I have my top-notch Samsung Galaxy S II phone, which will save the day! You try the same with you phone and… you get the same result. The phone “performs” (if that can be named “performance”) the same like the tablet, hanging at “Acquiring IP address…” message, and giving up after some time. You even discover (and that’s for another anti-Samsung rant!) that your phone after restarts allows itself to auto-enable your roaming data access, so it can check for its shitty Samsung updates. Bad, bad, BAD! It’s good I captured that on time and completely disabled mobile data access (they made it sane enough not to auto-enable that as well)!

And then you start getting desperate. Internet abstinence starts building up and you no longer enjoy your time here!

Luckily, you have also your notebook. You pull it out, and it works like a charm. Since the beginning. All great and smooth!

You think “well, at least my PC is OK”, but you’re not one of the people, who get comfortable with such compromise. After all, your Foursquare mayorship on this hotel depends on the ability of your Android devices to get some bits from this damn wireless router (otherwise, your overpriced roaming internet fees will enslave you for ages). Plus, you use you mobile devices more often than your notebook and they (logically) have more battery juice for you!

So you start looking for solutions. 

Firstly, you scream to all your Facebook and Twitter friends, hoping that someone will help.

Secondly (until you wait for the help), you go to XDA Developers. You build up your best search query and dig. Then you dig more. Then you dig even more, until you find this forum post archive. Inside there you read that:

  • It’s an existing issue with the DHCP client of (some) devices. Obviously, Samsung’s devices you have are part of the problem;
  • And also that if you delete “/data/misc/dhcp/dhcp_list” from your device, you might get it working.

However, both your devices are not rooted and obviously the forum post is too old, because even if they were, you cannot find such file, residing at this place. Not to speak that this is “too much of a Linux way of solving things”.

Although you’ve no problem resolving things “like in Linux”, you prefer to make it in a saner way. That’s why you kept reading, until you discover WiFi Static: the soluiton of Android DHCP issues. This great application allows you to specify static IP addresses for given wireless networks, already in your wireless network list.

Why this works?

The problem, as it manifests itself, is with the fact that your device (or your router, since it could be a router issue too, and I think that’s what is in this case) cannot get (or give) an IP address correctly. Your authentication and MAC-address-level communication works, but you can’t get to TCP/IP, since you can’t get the precious address (sorry, my TCP/IP guru friends, that’s how a developer explains TCP/IP Smile). By default you’ve no way to specify “fixed IP address” in Android, and you’re screwed!

This app fixes that deadly case. Once you add the setting for the given Access Point, after you connect to this access point, the “Acquiring IP address…” is skipped or cancelled and the parameters, which you specify, are set instead. This simply means that if you set the parameters correctly, it works. If, however, you specify the parameters incorrectly, you can get screwed even worse Smile. But we all hope that once you decide to mangle with such things, you know what you’re doing. Not “Linux way” of resolving things, but still requires some advanced user magic there.

The router at the hotel had standard “192.168.1.xx” setup, which means:

  • IP Address is any address you luckily guess (I user 192.168.1.111-192.168.1.114, since I saw that the router gives 192.168.1.50 and above for the “legal” devices that can get it)
  • Gateway is, of course, your router at 192.168.1.1
  • Network mask is the default 255.255.255.0
  • DNS1 is your gateway 192.168.1.1, and for DNS 2 I set the Google DNS server at 8.8.8.8

Conclusion!

  1. My friends at Facebook did not fail me. They pointed to the same solution, just at the same time when I was reading about it in XDA Developers. Which made me feel great, because first my friends care for my pain and second, because it proved that Facebook can be of some help sometimes Smile.
    Thank you all!
  2. The same problem manifests itself on the following devices:
    1. My friend’s Windows 7 notebook. She could not connect unless I set her up with static IP configuration (and reminded her to tell me to remove that setting at the end of our holiday).
    2. My both Android devices (fixed with WiFi Static already).
    3. My wife’s HTC 7 Trophy Windows Phone 7 phone. Unfortunately, this is the only device which I could not fix and I doubt someone would. Microsoft decided to cut our arms in this direction, wisely knowing that no one can configure a router that stupidly, so their mighty OS would not work with it. Wrong!

My final conclusion is that the router at this hotel sucks! Like most of the things here, it’s not configured correctly (or it just sucks as a device) and its DHCP server works quite selectively. I do not know how many other people have the same problem, but my egoistic nature pushes my hopes high. The more people have the issue, more bandwidth will be free for my holiday needs Smile.

Photo (cc) ETC@USC

Windows Phone 7 @ HTC Trophy

HTC Trophy Windows 7 Phone

HTC Trophy Windows 7 Phone

Когато си купих таблета, обещах да пиша и за Windows Phone 7. До сега нямах време да го сторя, а и честно казано обмислях какво да пиша. Защото съм силно раздвоен. Между качеството, което се откроява в платформата Windows Phone 7 и умишлените “американски тип” ограничения, наложени от Майкрософт, за да пазят потребителите и доброто име на устройствата, работещи под тази платформа. А аз съм хакер, обичам да чепкам, и такива ограничения не ми харесват.

Малко предистория

Телефонът ми HTC Trophy беше един от първите в офиса на Майкрософт България. Понеже е персонална награда за мен (завоювана още юни’2010, но изпратен едва октомври-ноември, защото не бяха налични), няколко седмици в офиса само аз можех да се пъча с Windows Phone 7 телефон. След това дойдоха и фирмените Samsung Omnia, и така постепенно колегите се обзаведоха с тези устройства.

Опитът ми с телефона

От ноември до януари използвах Трофито като основен телефон. Устройството има перфектна интеграция с контактите ми в Exchange (естествено!), Windows Live (естествено), Facebook, както и Google. Да, перфектна интеграция с Гугъл, за разлика от Galaxy Tab-а, който няма никаква читава интеграция с Windows Live календара и контактите. В това отношение Windows Phone 7 е безупречен. А Google има какво още да помислят и да направят. Че иначе голямата им слава на много отворени към всички нещо ръждясва.

Иронията в цялата история беше, че поради вината на Гугъл, непредоставяйки ми възможността да си ползвам Windows Live контактите, се наложи да мигрирам всички мои контакти от Windows Live към Google Mail. Изключително досадна, трудоемка и нервна работа. Нервна най-вече заради това, че ми се налага да я върша! А можеше да я избегна, ако “отворените” Гугъл се бяха погрижили за интеграция с най-голямата социална мрежа (и сега Windows Live има повече от 600 млн. регистрирани потребителя, 150 млн. от които използват ежедневно системата). Facebook скоро ще ги надмине, но… освен нелоялно отношение към конкурента и клиентите, не знам другояче как да определя липсата на Windows Live поддръжка от самото устройство. Дотук с “We’re not evil”, Google… То и без това отдавна е ясно, че сте обикновена корпорация, подобна на Майкрософт, IBM и ябълчните. Просто на хората ще им отнеме време да го разберат.

Докато траеше миграцията на контактите ми, на Трофито имах дублирани такива. Добре, че устройството се справя перфектно с идентификацията и свързването на дублирани и приличащи си контакти. От близо 1400 уникални контакта, пръснати частично из Фейсбук, Гугъл и Лайв телефонът идентифицира около 95% (т.е. обърка или не позна всеки двайсети). Там, където той не успя, аз му помогнах. Якото е, че докато му помагаш, той сам “поумнява” и се справя все по-добре с идентификацията на множеството контакти. Тъпото е, че ако ти се наложи да минеш на друг телефон, тази информация не се пренася, т.е. и там имаш същите главоболия. Да се надяваме, че в следващи версии тази информация ще може да мигрира от едно устройство в друго.

Като изключим контактите, останалото е перфектно. Нормално е някак Windows Phone да има идеална интеграция с Exchange. Очаквано е да има такава и с останалите календари (Live, Google). Пак голяма забележка към гугуляците заради липсата на поддръжка на Live календара. Същата простотия като с контактите.

Приложенията

Приложения засега няма много. Въпреки, че откакто започнах да пиша този материал до публикуването му се създадоха повече от 10К приложения, те пак не достигат. И читавите са платени. И тук вече започва мрънкане срещу недалновидния майкрософтски product management, решил че ще се прави само и единствено майкрософтско заплащане на продуктите. Което от своя страна довежда до липсата на поддръжка в много географии, включително и нашата. Явно Майкрософт не успя да е по-иновативен ябълчните – корпорация като всички останали. Няма пазар – не ѝ пука. Колко типично…
Гугъл тук печелят – всеки потребител на Андроид устройство може да избере дали иска корпорацията да го пази, или е готов да жертва този “комфорт” срещу удобството да си купува приложения и от не-толкова-официалните пазари. Което дава възможност за платени приложения. И за повече удобство за потребителя.
Безплатните приложения за WP7 не блестят кой-знае колко: малко са, повечето са от услуги, които разчитат на съдържанието и потребителите (като FourSquare например), затова и поддържат сравнително от началото и за Windows Phone.

Неща като Evernote, Dropbox и т.н. въобще нямат интеграция с телефона, което е много, много дразнещо. Да видим какво ще стане за в бъдеще. Предвид обаче моделът, който сега се налага от Майкрософт, ще е доста трудно да се постигне толкова добра интеграция, както е с един гугълфон например. Dropbox акаунта ми синхронизира всички компютри, таблета и телефона ми (разбира се, при малките у-ва иска допълнително ОК за файловете, но може да го прави!). Evernote странно защо няма все още версия за Windows Phone 7. При тях не би следвало да е проблем почти пълна поддръжка на услугата. Но нямат – факт! И други важни облачни услуги също куцат. Перфектна е поддръжката на Windows Live документите – и толкова.

Фейсбук, естествено, също има повече от задоволителна поддръжка. Поради факта, че контактите са отлично интегрирани, Фейсбук контактите също се появяват в адресната книга. Което е яко (снимки, статуси, телефони – ако имат въведени и т.н.). За всички останали контакти си имате стандартната, пълна интеграция между съответния облак (Google, Live, Exchange) и телефона.

Ако сте разработчик, за Windows Phone 7 се пише лесно. Сваляте безплатните инструменти, инсталирате ги, и действате. Silverlight или XNA – ваш избор.

Обобщение

Кирилицата е важна за мен. Толкова важна, че завършвам всяка моя лична е-поща с


Ако не отговарям на писмата Ви – погледнете тук: http://6lyokavitza.org/mail

И в повечето случаи го спазвам.

Поради това не искам да съм с телефон, който няма кирилица в клавиатурата си. Освен ако компанията не го изисква, разбира се (а тя вече не го изисква). За добро или лошо, кирилицата е важна част от нашата култура (е, поне от моята). Това беше основната причина за следващ служебен телефон да си поръчам Google Nexus S. Не знам как ще бъде като телефон, но ако прилича на Samsung Galaxy S, ще съм повече от доволен. Trophy-то вече е при Веси, за която кирилицата не е толкова важна. То замени нейния HTC Touch Diamond като основен нейн телефон. Диаманта пък замени издъхващия ѝ глобулски телефон, който ама наистина имаше голяма нужда от пенсиониране.

Веси е влюбена в Трофито. И дума не дава да стане да си го даде обратно. Цъка редовно на него, кефи му се, въобще смята че е открила своето устройство. Трябва да се свържа с Кирчо, за да му друснем една пиратска кирилица (дано да стане), но дори и без кирилица, Веси е ОК. Когато имах временни проблеми с батерията на новия ми Nexus S, тя боязливо ме запита “нали не смяташ да ми вземаш телефона” :)… Радвам се, че най-накрая и нея я уредихме с “умен” телефон, макар да не му използва до край възможностите.

Аз лично ще остана да наблюдавам Windows Phone 7 платформата и да чакам момента, в който ще мога да ѝ се доверя отново. Дано този момент дойде скоро, и то не чрез xda-developers, а чрез официално поддържано устройство от производителя. Защото кракването на телефона също няма да ми е от особено любимите неща за правене!

Photo (cc) John.Karakatsanis

Windows Phone 7 Development за Абсолютно Начинаещи

 

Оригиналната публикация е на блога на DPE екипа на Майкрософт България

От днес на Channel 9 са налични за безплатно гледане и сваляне комплект уроци, предназначени за абсолютно начинащи в разработката за Windows Phone 7.

Ако имате интерес към тази чисто нова платформа, на горната връзка ще намерите кратко 5 минутно видео, представящо ви серията от уроци, както и връзка към самите уроци. Няколко часа тренинг, показващ ви от къде да свалите безплатните инструменти, как да напишете първата си програма, най-важните концепции и хватки при създаването на приложенията и много други.

clip_image002

Приятно гледане!

Ако желаете да коментирате новината, моля посетете оригиналната публикация