[Решение] Не включается Siemens C60 (EXIT: 7EBE 08 006C)

Мой первый мобильный телефон, Siemens C60, купленный в 2003 году, перестал работать. При включении устройства загорался экрана, и через секунды две из динамика звучал короткий пик, после чего телефон выключался. При попытке подключить его к зарядке ситуация повторялась. Проблема была либо в программной, либо в аппаратной части.

В сети я нашел ряд аналогичных проблем и, к счастью, ее было легко решить. Суть заключается в «слете» файловой системы (FFS — flex file system), и судя по всему, эта частая проблема телефонов Siemens.

Для исправления проблемы нужно иметь на руках дата-кабель от телефона. Такой у меня был, ибо о его приобретение я позаботился в тот же год, когда был куплен Siemens C60. Кабель подключался к компьютеру через USB-порт, но Windows 7 так и не нашла подходящий драйвер. Тем не менее, я смог найти подходящий драйвер (Prolific USB-to-Serial Comm Port), и после его установки подключенный телефон прописался на порту COM13.

После этого нужно скачать и запустить утилиту Joker, в ней выбрать модель телефона (C60) и порт (COM13), после чего на вкладке «Service» нажать на кнопку «Service Mode«, а на самом телефоне зажать на короткое время красную кнопку (ВКЛ/ВКЛ).

В результате лог будет выведена следующая информация:

Start...
Loading ServiceBoot...
Sending ServiceBoot Ok.
HWID: 40 (C60)
C60 lg91 Sw27 08.07.04 08:58:55
IMEI: 351943005513235
DisplayID: 34, Sharp Hynix HM17CM4101
Code(05): OTP closed
Code(08): BootKEY is unknown
Code(0D): Keys are registered in BCORE
Code(10): Minimal access to BFB
Code(15): Complete condition
Code(19): Monitoring is switched on
Code(1D): Blocks 5121,5122,5123 are present
Battery Voltage 3946 mV.
SecurityMode: Customer

Далее в Joker нажимаем кнопку «Del Instances» (очистка телефона), а затем «Ok».

В логе отобразится:

Instance Format...
Delete Instance "Voice Memo" - None.
Delete Instance "Voice Dialing" - None.
Delete Instance "Browser Cache" - None.
Delete Instance "File System" - Ok.
Delete Instance "Tegic" - None.
Delete Instance "Address Book" - Ok.
ReStart Phone!

Теперь в Joker нажимаем кнопку «Phone Off«. После того, как телефон выключиться, нажимаем на нем красную кнопку и ждем загорания экрана. Далее моет пройти несколько минут, пока телефон полностью не загрузиться.

На этом все, Siemens C60 был успешно реанимирован!

Миграция с GitHub на GitLab

На днях пришлось полностью переносить все проекты с GitHub на GitLab. Большую часть проектов компании мы перенесли на локально развернутый GitLab, который доступен только внутри корпоративной сети, что для вне офиса не так уж и удобно (а VPN для Mac’ов у нас так толком и не настроили). Кстати, большой плюс у GitLab заключается в том, что он позволяет легко импортировать проекты с GitHub, для этого достаточно лишь указать ссылку для выкачивания. А вот оставшуюся небольшую часть проектов я развернул уже на GitLab.com, потому что доступ к ним нам нужен постоянно из любых мест.

Вот небольшие действия, которые мне пришлось совершить для миграция проектов с GitHub на GitLab:

1. Через веб-интерфейс GitLab импортировать существующий проект с GitHub

2. Склонировать репозиторий к себе на компьютер (уже с GitLab):

git clone https://gitlab.com/phereo/project_name.git

3. Создать локальную ветку и закрепить ее за удаленной (чтобы можно было делать pull / push):

git checkout --track -b branch_name origin/branch_name

Вот, собственно, и все 🙂

Tor Browser и Adobe Flash Player

Так уж случилось, что в версии Tor Browser под Mac OS нет плагина Flash Player. Соответственно, посмотреть контент, который использует флеш, не представляется возможным. Тем не менее, данная проблема решаема.

Если у вас Mac OS 10.9 и есть установленный в системе Adobe Flash Player, то необходимо зайти в директорию:

/Library/Internet Plug-Ins

Найти там два файла:

Flash Player.plugin
flashplayer.xpt

И скопировать их в директорию Tor Browser:

/Applications/TorBrowser.app/Data/Browser/profile.default/extensions

Затем в настройках Tor Browser в разделе Add-ons нужно включить Shockwave Flash, указав желаемый способ его запуска (всегда или с вопросом).

[Skype] Просмотр устройств, использующих учетную запись

/showplaces — команда отображает список устройств, которые в текущий момент используют учетную запись Skype.

Пример:

You have 2 online endpoints:
{39324b61-3465-5b2f-368d-901d231c764a}) PC Windows Skype
{7f184561-ead8-407a-5k46-eb490697ba53}) localhost Android Skype

Чтобы отвязать все соединения и оставить лишь текущее, то делаем:

/remotelogout

iMac + Bootcamp + Windows 8.1

На этих выходных решил поставить Windows 8.1 на свой горячо обожаемый iMac. Связано это по двум причинам: первая, как обычно, ради эксперимента (пощупать, что такое Boot Camp, и как все это делается), второе — Windows в качестве отдельной ОС нужна для того, чтобы запускать прожорливые игры, которые через Parallels работают неохотно.

На практике Bootcamp оказался действительно удобной утилитой, инструкций по работе с которой в сети пруд пруди. Я лишь останавливаюсь на некоторых моментах.

Во-первых, в наличии нужно иметь флешку с объемом 8 ГБ и более. У меня под рукой была как раз только на 8 ГБ, но на нее с успехом поместилась и Windows 8.1, и драйвера от iMac, и еще даже 2 ГБ остались свободными.

Во-вторых, после установки Windows 8.1 и драйверов, система быстро нашла беспроводную клавиатуру и мышь от Apple, но для «спаривания» потребовала ввести для мышки пин-код (!). Хм, оказалось, что нужно просто ввести четыре нуля (0000). С клавиатурой я тоже немного повозился: было предложено с клавиатуры набрать проверочный код, который показывала ОС, но сколько я не вводил код, он не принимался. Оказалось, что после ввода всех цифр нужно еще нажать на «Enter», но ведь в подсказках об этом ни слова!

Вот и все — Windows 8.1 установлена на iMac, все работает прекрасно. +10 XP в освоении чего-то новенького 🙂

iMac + Bootcamp + Windows 8.1

Абсолютно легальный Photoshop!

На днях закончился триальный период подписки Adobe Creative Cloud, и оплатив на год тарифный план для фотолюбителей, я стал легальным обладателем Photoshop и Lightroom на этот срок.

Времена меняются, меняемся и мы. Зачем, к примеру, использовать ломанное ПО, если порой есть абсолютно демократические предложения, как в данном случае с Adobe. Мне абсолютно не жалко было потратить 3588 рублей за годовую подписку, потому что я частенько пользуюсь этими продуктами и они помогают мне в работе. Признаюсь, раньше я бы никогда не купил Photoshop за 35 тыс. (или сколько он там стоит раньше?), но новая политика Adobe, которая перенесла свои продукты на оплачиваемые подписки, дала мне возможность легально пользоваться ими. Да, я бы мог продолжать пользоваться нелегальным Photoshop Gimp, но совесть уже не позволяет.

Удаление Jenkins в Mac OS

Чтобы в Mac OS удалить установленный ранее Jenkins, нужно запустить специальный скрипт:

sudo /Library/Application Support/Jenkins/Uninstall.command

Отобразится:

Jenkins uninstallation script

The following commands are executed using sudo, so you need to be logged
in as an administrator. Please provide your password when prompted.

+ sudo launchctl unload /Library/LaunchDaemons/org.jenkins-ci.plist
+ sudo rm /Library/LaunchDaemons/org.jenkins-ci.plist
+ sudo rm -rf /Applications/Jenkins '/Library/Application Support/Jenkins' /Library/Documentation/Jenkins
+ sudo rm -rf /Users/Shared/Jenkins
+ sudo rm -rf /var/log/jenkins
+ sudo dscl . -delete /Users/jenkins
+ sudo dscl . -delete /Groups/jenkins
+ pkgutil --pkgs
+ grep 'org\.jenkins-ci\.'
+ xargs -n 1 sudo pkgutil --forget
Forgot package 'org.jenkins-ci.documentation.pkg' on '/'.
Forgot package 'org.jenkins-ci.jenkins.osx.pkg' on '/'.
Forgot package 'org.jenkins-ci.jenkins1531.postflight.pkg' on '/'.
Forgot package 'org.jenkins-ci.jenkins1549.postflight.pkg' on '/'.
Forgot package 'org.jenkins-ci.launchd-jenkins.pkg' on '/'.
Forgot package 'org.jenkins-ci.support.pkg' on '/'.
+ set +x

Jenkins has been uninstalled.

[Chrome] Проблемы со сглаживанием шрифтов

Для разрабатываемого нами приложения мы решили использовать шрифт с разным начертание по толщине (или как еще говорят, по насыщенности). Минимальная толщина шрифта, которую мы используем, это 300 (font-weight: 300). Шрифт подключаем через @font-face с указанием на хост, от куда его нужно брать и при этом используем два формата шрифтов — WOFF и TTF. Все это должно помочь нам достичь единства отображения шрифта на разных окружениях. И да, это, конечно же, работает, но тут, как всегда, возникла небольшая неприятность — в браузере Chrome для Windows шрифт при небольших размерах и толщиной 300 отображался «рвано», что делало его плохо читаемым.

В сети я нашел несколько топиков с обсуждением похожих проблем, где в качестве альтернативного решения предлагалось отказаться от использования шрифтов в формате WOFF, с которым по умолчанию работает Chrome, и использовать только TTF, но в данном случае мне это все равно не помогло.

А потом мне попалось обсуждение, где люди пишут, что проблема связана с багом в Chrome, и что она уже исправлена в версии Chrome 38. И действительно, в новых версиях браузера проблема со шрифтами уже не стоит так остро:

[Chrome] Проблемы со сглаживанием шрифтов

[Android] Перехват HTTPS-трафика с помощью прокси-сервера

Эта заметка является продолжением той, в которой я расписал, как можно проанализировать незащищенный трафик, исходящий от мобильного приложения к серверу. Теперь настало время поговорить о защищенном трафике. Далее будем считать, что сетевой обмен происходит по протоколу HTTPS.

Как и раньше, помочь нам в этом деле могут такие известные и популярные прокси-серверы, как Charles, Fiddler, Burp Suite. Fiddler работает только под ОС Windows (ибо написан на .Net), а Charles и Burp Suite являются кроссплатформенными инструментами, работающими как под Windows, так и под Mac.

Для того, чтобы эти прокси-серверы могли взаимодействовать с защищенным трафиком, необходимо в систему (в данном случае в Android) установить их доверенный сертификат. К слову, это еще не успех, т.к. часто бывает, что приложения все равно отвергают липовый сертификат (и правильно ведь делают!).

В моем случае я использовал Fiddler с его сертификатом, и трафик от части приложений был виден (Facebook, Fourquare…), но к сожалению не для тех приложений, которые мне действительно были нужны для анализа.

И тут на помощь пришел Burp Suite. Его сертификат был «скушен» недоверчивыми приложениями и таким образом я смог получить доступ к защищенному трафику и впоследствии проанализировать его. Возможно, сертификат от Charles тоже помог бы в этом, но, честно сказать, я еще не пробовал.

SSL-сертификат в Burp Suite

[macOS] Ограничение скорости Интернета

Есть несколько способов, чтобы ограничить скорость сетевого трафика в Mac OS (бывает полезно для тестирования ПО в условиях медленного Интернета). Наиболее интересным вариантом является графическая утилита Network Link Conditioner от самой Apple, которая имеет ряд уже встроенных профилей различных скоростей сетевого соединения (3G, DSL, Edge и пр.)

Скачать данную утилиту можно непосредственно на сайте разработчика в разделе «Downloads» (https://developer.apple.com/downloads/), которая входит в состав пакета «Hardware IO Tools for Xcode». После установки утилита будет доступна через оснастку  «System Preferences».

Network Link Conditioner