- Question: Q: E3372 dongle on High Sierra
- Helpful answers
- Declaration of VAR
- Huawei E3372 modem on Mac OS
- About the modem
- What’s wrong with the Megafon software
- How to use the modem natively
- Driver for Mac OS
- Switching to dial-up mode
- Connecting to the internet on Mac OS
- Question: Q: Huawei dongle e3372 support on mac os catalina
- Helpful answers
- E3372 драйвер mac os
Question: Q: E3372 dongle on High Sierra
Am at my wits end. Struggled already to get the dongle to work on my previous iMac when I updated OS to Sierra. My new computer has High Sierra, and it seems impossible to get it to work. Already tried Mobile Partner and updating the driver (installation failed) and the workaround over at Miapple (https://miapple.me/installing-huawei-e3372-macos-10-12-sierra/) that failed because the driver installation failed because of unlisted errors.
Also tried to update the dongle in Windows as was suggested somewhere, but to no avail.
Anyone made it work?!
iMac, MacOS High Sierra
Posted on Aug 7, 2018 3:13 AM
Helpful answers
I downloaded and installed the Software for Sierra, but it works on High Sierra, too: LINK
I recommend using the MacOS built-in modem connection functionality over the software Mobile Partner (which is energy consuming).
Open System Preferences > Network
Configure adapter HuaweiMobile- 2
Telephone Number: *99#
In the Advanced pane:
Model: GPRS (GSM/3G)
Apply the settings and hit connect. You might find it convenient to tick the box «Show modem status in menu bar», because you can establish a connection without opening the System Preferences.
Sep 4, 2018 9:19 AM
There’s more to the conversation
Loading page content
Page content loaded
I downloaded and installed the Software for Sierra, but it works on High Sierra, too: LINK
I recommend using the MacOS built-in modem connection functionality over the software Mobile Partner (which is energy consuming).
Open System Preferences > Network
Configure adapter HuaweiMobile- 2
Telephone Number: *99#
In the Advanced pane:
Model: GPRS (GSM/3G)
Apply the settings and hit connect. You might find it convenient to tick the box «Show modem status in menu bar», because you can establish a connection without opening the System Preferences.
Sep 4, 2018 9:19 AM
Thanks a lot for answering. Actually the problem is I cannot get the dongle to show in Network (System preferences). In Sierra (on my old computer) I solved things by setting the connection manually, but now I cannot even get to that stage, iin spite of having the drivers installed. Thanks anyway!
Sep 5, 2018 1:36 AM
Hi, first of all download and install the software linked in my last post. After that, the adapter should show in the Network pane.
Sep 5, 2018 2:29 AM
Thanks again, but like I said, I tried all the drivers. I also installed, uninstalled and reinstalled this one a number of times (as well as mobile partner). I can’t even list all the things I did because I don’t even remember (including things like deleting plist files, as instructed somewhere), but this page and the comment section were my starting points: https://miapple.me/installing-huawei-e3372-macos-10-12-sierra/
(a few of the others:
And the problem persists: the modem is read and HiLink appears on my desktop, but isn’t displayed in Networks on System preferences. I’m now starting to think it has something to do with HS being the native OS on my new computer, most suggested solutions I’ve found on the net seem to be about problems encountered when upgrading the OS. This is just a wild guess though.
Thanks anyway for taking the time to advice me, really appreciate it ^_^
(Edit: oh and the installation that I mentioned having failed for some mysterious reason, eventually worked but to no avail 😟 )
Источник
Declaration of VAR
and some other stuff
Huawei E3372 modem on Mac OS
So I have this 4G+/LTE modem — Huawei E3372, also known as Megafon M150-2 — which is exactly the variation I got.
Eventually I got sick of its connection management software for Mac OS (the one that comes from Megafon), so I started looking for a way to be able to connect to the internet on Mac OS without it.
About the modem
The modem itself is rather a great piece of hardware.
Coming in a form-factor of a USB-stick, it is capable of maintaining quite a high-speed internet connection, and apparently it supports all the international LTE standards because I was using it in several countries without problems.
On top of that it has slots for external antennas and even a slot for microSD card (don’t know what to do with it):
Note that it requires full-sized SIM-cards.
I bought it several years ago in Moscow at some Megafon selling point. Back then it cost me just
700 RUB (10-20 USD?). The reason for such a low price is usually that modems are locked to a particular operator, but in my case surprisingly that wasn’t the case.
If memory serves me well, I did not perform any unlocking operations, and it just works fine with SIM-cards from other operators than Megafon. I must say, however, I never tried it with any other russian operators — the only SIM-cards I was using it with were the ones from norwegian operators (Telia and Phonero).
And it is available for purchase even today:
- from the very same Megafon, although it is likely to be a locked version (which can be unlocked);
- an unlocked version on Amazon.
What’s wrong with the Megafon software
But what is wrong with the Megafon software? Well, while it does its job, after some time it started to irritate me for the following reasons:
- It installs god knows what to your system, while the only thing you really need is just a modem driver;
- In addition to the main application it requires its service to run in the background, otherwise it won’t even start discovering the modem;
- It sends some data to different Megafon hosts. I would understand if it was for checking the updates, but why different hosts then? I don’t feel like having yet another spyware in my system;
- File Activity tool from Instruments shows some enormous files access by the application and/or service. What could be the purpose of such an activity, I wonder?
So I started looking for a way to avoid using the Megafon software.
How to use the modem natively
The first clue was the fact that the modem works just fine with routers:
There is no need to install any Megafon software on the router for it to be able to connect to the internet via the modem, is there? So why the need in such a software on Mac OS?
After some research I got the following steps (mostly from this great topic at 4PDA and also this SuperUser answer):
- Install the driver for Mac OS for the initial modem discovery;
- Put the modem into a mode in which it will be discovered by Mac OS as a dial-up modem;
- Add a new network service using the modem.
Driver for Mac OS
Maybe it’s just me, but I’ve spent quite a some time looking for a driver. Surely, I could use the one installed together with the Megafon software, but there is no way to install only the driver, and I wanted to have a “clean” set-up procedure.
Most of links I found on the internet were dead. Of course I tried looking at the official Huawei’s website, but didn’t succeed there either.
But then in a comment section at some blog I did find a link to the working driver. And it was hosted on the official Huawei’s website! I don’t know how does one find it on his own, but here’s the link.
You don’t have to install everything, the only thing you need from this package is the driver ( MobileConnectDriver.pkg ):
I will be hosting a copy just in case the official link dies like the rest at some point. Note that this is a driver for Mac OS Mojave, scroll to bottom for the Catalina version.
After the installation you should get the following thing installed:
Check if the modem is discovered in the system:
Switching to dial-up mode
I’m sure that it’s called something else and not the “dial-up mode”, but I haven’t found the correct name for it.
So, you’ve got your modem discovered by the system. Connect to it via screen :
And try to communicate with it using AT -commands. First I tried to collect some information about the device (first line in each group is the command, the following lines are the response):
From the Revision value we can see that is starts with 21 , which means that the modem has the STICK firmware. The HILINK revision numbers start with 22 . More details about firmware types are here (in russian).
Okay, and here’s the command to switch the modem into dial-up mode:
Connecting to the internet on Mac OS
The only thing left is to create a new network service in Mac OS.
Create a new service using HUAWEIMobile- interface:
Set the good old mobile dial number *99# :
And you’re connected to the internet without any additional software, using only the native Mac OS tools:
As it was pointed out in comments, the driver stopped working on Mac OS Catalina. Most likely this is because it was x32, and Catalina requires x64, so an x64 version of driver is required. That actually was one of the reasons why I haven’t upgraded to Catalina.
Fortunatelly, such version exists, and apparently has been available since at least 30.10.2019. An awesome chap shared a link on 4PDA forum. I’ll host a copy here too.
I’ve tested it on Catalina, and it works fine.
Mac OS Big Sur was released today. I installed it in the same virtual machine like the last time to test the modem, and no, it doesn’t work there.
The modem driver should have been still in the system after update, but even so, I’ve installed it again just in case (the one that worked on Catalina). Installation process went fine, didn’t even ask to allow it in Gatekeeper, but when I try to connect, it gives me this error:
And ls -l /dev/tty.HUA* shows that it’s not there.
So yeah, fuck you, Apple, I ain’t updating to Big Sur.
Источник
Question: Q: Huawei dongle e3372 support on mac os catalina
i’m not able to use huawei dongle e3372 on my mac after updating to catalina before it was working good in mojave. Please help me. Provide any software to run on catalina?
Posted on Oct 11, 2019 6:14 AM
Helpful answers
I found the solution for this issue. I’m able to use my Vodafone E3372 — 607 Datacard in Catalina.
- Follow steps installation steps from the HiLink Installation Guide from Download982.8KB.
- Download the HiLink application from Hilink products tool, support MAC 10.15.
Nov 2, 2019 1:21 PM
There’s more to the conversation
Loading page content
Page content loaded
Check with Huawei to see if your product is compatible with Catalina and it they have any updated software.
Oct 11, 2019 6:57 AM
it was working good in Mojave but when I updated my MacBook pro to Catalina, it has stop working. App does not support this type of error, I’m getting? Any software in 64-bit compatible in Huawei mobile partner?
Oct 11, 2019 7:05 AM
Ask Huawei if they have 64 bit support. You upgraded your OS to 64 bit only. Now you have to run 64 bit apps. Apple does not develop or provide third party software.
Oct 11, 2019 7:26 AM
Im having the exact same problem, O2 are my providers for the dongle and I just called them up and they said its down to Huawei to update the dongle but they have no idea when this will be, leaves me stuck into a contract with a dongle that isnt working.
Источник
E3372 драйвер mac os
Поддерживаемые диапазоны:
GSM/EDGE/EVDO/LTE/FDD/TDD/UMTS
Скорость приёма данных модемом до 150 Мбит/с,
Скорость передачи данных — до 50 Мбит/с
Поддерживаемые частоты
GSM / GPRS / EDGE 850 / 900 / 1800 / 1900
UMTS / DC-HSPA+ /WCDMA 900 / 2100
LTE 800/900/1800/2100/2600 MHz
Дополнительно
Поддержка карт MicroSD до 32 ГБ
Внешняя антенна
Тип разъема внешней антенны — CRC9, он же, по терминологии huawei — TS-5.
Модем имеет 2 антенных разъема (под MIMO-антенны), одиночная антенна подключается к разъему, ближайшему к USB
Операционные системы:
Поддержка OC Windows XP SP3, Windows Vista SP1/SP2, Windows 7, Windows 8, Mac OS X 10.5, 10.6, 10.7, 10.8, Linux
- Huawei DataCard Driver — самый основной драйвер
- Драйвер для Windows XP.
- Драйвер для портов HiLink
- Переключалка для HiLink (MobileBrServ)
- Альтернативная переключалка для HiLink — не рекомендуется к использованию
- Управление переключением во вторичную, рабочую USB-композицию в Windows
- Драйверы для ADB
- Драйверы + программа для управления под macOS
- Автоматический прошивальщик — Не рекомендуется к применению, убивает гаджеты с новыми прошивками.
- Программа-прошивальщик модемов HUAWEI под линукс
- Комплект для прошивания
- Комплект для прошивания через balong_flash
- balong_flash и balong_usbdload под macOS
- Веб-интерфейс 17.100.11.03.161 (Билайн)
- Веб-интерфейс 17.100.13.01.161 (Билайн) (в посте прошивка + морда, проша только для E3372h, морда ставится и на E3372s, и на E3372h)
- Веб-интерфейс 17.100.17.00.143 (МТС) для 829F (в посте прошивка + морда, проша только для E3372h, морда ставится и на E3372s, и на E3372h)
- Веб-интерфейс 17.100.05.06.965 (в посте прошивка + морда, проша только для E3372s, морда ставится и на E3372s, и на E3372h)
- Веб-интерфейс 17.100.14.02.577 (Beeline KZ)
- Веб-интерфейс 17.100.14.02.778 (Russia Open Market)
- Набор дашбордов
- Дашборд Mobile Partner
- Дашборд 23.015.05.11.143 (МТС) для 827F/829F (WIN10+MAC10.11) (в посте прошивка + дашборд, проша только для E3372h, дашборд ставится и на E3372s, и на E3372h)
- Аварийное восстановление прошивки модемов 3372S и E3372H
- Как замкнуть бутовую точку пина с корпусом модема без разборки модемаД
- О проблеме вечного Fastboot и борьбе с ней. Часть 1, Часть 2
- Восстановление модема методом стирания разделов флеши через fastboot
- Решение проблемы с портом аварийной загрузки модема в Windows 8.1
- Восстановление модемов E3272/E3276, E3372s и E3372h с HiLink-прошивкой
- Вывод модема из режима загрузки, не срабатывает на новых прошивках, в таком случае помогает «Прошивка» для вывода из режима загрузки.
- «Прошивка» для вывода из режима загрузки
- Скрипты для устранения проблемы с профилем для E3372s и E3372h
- Скрипты для открытия портов в HiLink
- Закрепление IMEI в устройствах на платформе V7R11 и V7R2
- Проверка фиксации TTL
- Проверка фиксации с проверкой текущего значения TTL ( одним скриптом — без применения командной строки )
- Автоматическая генерация IMEI при запуске модема
- Скрипты, помогающие обойти Yota от kolyanok, адаптированные под наш модем
Модем не программируют для совместимости с роутерами, наоборот, это делают производители роутеров. Поэтому ищите список совместимых моделей с вашим роутером. Если вы ищите роутер для работы с этим модемом, то создайте тему в Выбор и сравнение. Здесь все просьбы о помощи с выбором удаляются.
Далее, если вам нужна помощь для того, чтобы подружить модем с роутером, то вам нужно спрашивать помощи в теме роутера. Почему? Потому что роутеры очень разные, люди в этой теме понятия не имеют, что нужно сделать, чтобы модем с ним заработал. Модемы же, напротив, определяются все лишь несколькими разными способами, что-то нестандартное бывает редко. У этого модема есть несколько разных способа для определения: RAS, NDIS в Stick-прошивке и RNDIS, CDC в HiLink-прошивке (RNDIS для винды, CDC для линукса, включая роутеры. И NDIS — не RNDIS, это разные вещи). Иными словами, вам необходимо дружить роутер с модемом, а не модем с роутером, поскольку драйвера должны быть заложены в нем. А что можно сделать с модем? А ничего, нужно ковырять роутер, в него производитель не заложил драйвер.
В случае, если вас гонят из темы роутера сюда, не нужно писать об этом, исключений нет и пост все равно будет удален. Лучше скиньте ссылку на этот текст в тему роутера, чтобы они поняли, что они неправы. А если не помогло — ну что, значит не судьба.
PS: самая беспроблемная схема с роутером: прошивка HiLink на модеме с автопереключением в CDC + Zyxel Keenetic 4G III rev.A с прошивкой Padavan
Сообщение отредактировал Abbat1985 — 13.08.21, 16:18
Сообщение отредактировал Abbat1985 — 05.03.21, 18:33
после чего шеллом станет busybox и появится нормальный редактор командной строки.
VxWorks также имеет в своем составе 2 шелла — C-shell (установленный по умолчанию) и CMD (устанавливаемый командой cmd). Какой из них удобнее — дело вкуса. В обоих шеллах имеется команда help, а более подробную информацию о работе с командной строкой VxWorks можно получить вот из этого документа — http://read.pudn.com/d…ls_users_guide_6.2.pdf
Доступ к консолям ОС модема открывает широчайшие перспективы по глубокому исследованию кода модема и скрытых его возможностях. Для любителей ковыряться в коде это просто золотое дно. Всех других хочу предупредить — бездумный ввод команд в консолях может привести к негативным последствиям — от зависания модема до разрушения важных структур данных на флеше и полной потери работоспособности. Будьте осторожны!
Сообщение отредактировал Abbat1985 — 09.07.20, 20:51
Сообщение отредактировал ctich21 — 03.09.14, 11:13
Модифицированный веб-интерфейс для E3372 s на основе WebUI 16.100.05.00.03
Ориентирован на работу с прошивкой 22.286.03.00.00.
Работает также и с модифицированными прошивками 22.286.53.01.161_S_*.
Несовместим с оригинальной билайновской прошивкой 22.286.53.01.161 в части SMS.
После прошивки веб-интерфейса следует делать сброс настроек (Настройки->Система->Настр. по умолч.).
Сообщение отредактировал Abbat1985 — 09.07.20, 20:52
Предлагаю своё решение для ситуации, когда нужно перевести HiLink-модем в режим с портами, но http://192.168.8.1/html/switchProjectMode.html (switchDebugMode.html) не работает.
Для этих портов необходим драйвер FcSerial.
sw_mode_E3372_new.rar ( 240,13 КБ )
Сообщение отредактировал Abbat1985 — 09.07.20, 20:53
После некоторого периода тестирования выпускаю новый релиз калькулятора nlock-кодов для модемов Huawei. В прошлом
калькуляторе, calc201, обнаружилась ошибка в расчетной ветке 7, что иногда могло привести к неправильной генерации кодов.
Теперь калькулятор умеет вычилсять 4 варианта кода — flash-код, код алгоритмов версии 1 (old algo), 2 (new_algo) и 201 (201_algo).
Также, учитывая, что многие здешние обитатели вообще не понимают, что такое командная строка, я приделал графическую морду к калькулятору. Морда написана на кроссплатформенном Qt, и имеется и в linux, и в windows-версиях калькулятора. морда выглядит так:
Надеюсь, что тут все понятно. Единственное необходимое пояснение: кнопка reverse переворачивает IMEI задом наперед. Это нужно для вычисления кодов в команде at^spword модема 3372.
Linux-вресия калькулятора, кроме графической морды, имеет также режим командной строки. Если ее запустить без параметров — открывается графическая морда. Если указать парамтром IMEI — в консоль будут выданы все 4 кода. Можно также указывать ключи:
-r — перевернуть IMEI
-f — вычислить только flash-код
-1 — вычислить только код v1 (old algo)
-2 — вычислить только код v2 (new algo)
-3 вычислить только код v201 (201 algo)
Это может быть полезно при написании скриптов. Windows-версия калькулятора не имеет в себе такой функциональности — программировать под windows я не умею, да и не нужно это виндузятникам.
Во вложении 4 файла — раздельно версии под windows, linux 32 bit, linux 64 bit, и исходные тексты. Linux-версии требуют установленной в системе библиотеки Qt, windows-версия собрана статически и не требует никаких библиотек (зато имеет размер почти 4М).
В принципе, данный калькулятор процентов на 90 заменяет ветку под названием » Здесь можно получить коды разблокировки устройств БЕСПЛАТНО». И правильнее было бы повесить его в шапку этой темы. Но вряд ли барыги это допустят.
В заключении, хочу выразить благодарность пользователям rust3028 и Chujoi13 за неоценимую помощь в подготовке и тестировании этого релиза.
Сообщение отредактировал Abbat1985 — 09.07.20, 20:53
нет, нельзя. Мы же с тобой уже недавно обсуждали. Единственный способ попасть в debug снаружи — через запрос POST.
rust3028 написал скрипты для этого — Huawei E3372 (МТС 827F, Мегафон М150-2) — Обсуждение (Пост #35133017) , а ты их, насколько я помню, адаптировал под лиункс.
Еще можно сделать переключение внутри самого модема. Для этого надо написать простенькую программку:
#include
#include
#include
#include
void main() <
int nfd=open(«/dev/ndisapp»,2);
ioctl(nfd,1,0);
>
Собрать ее с помощью android ndk и запускать внутри модема. Именно таким способом производит переключение сам вебсервер.
Но тут есть подводный камень. В момент переключения SD-карта исчезает из USB-композиции и потом появляется заново. Если openwrt уже успел ее примонтировать — получишь ошибку. Поэтому использовать эту карту как extroot в openwrt сходу не получается.
Сейчас я как раз разбираю, как работает с картой AT-процессор — команду at^sd. Возможно, она поможет в этой ситуации.
Сообщение отредактировал forth32 — 30.11.14, 05:30
Кстати, у rust3028 уже имеется готовая программа переключения с произвольной задержкой, готовая для включения в autostart.
rust3028, может быть выложишь ее сюда, чтобы людям не мучаться с освоением ndk?
Автоматическое переключение модема в Debug Mode и Project Mode
Подходит для обоих модемов, на любой прошивке HiLink.
sw-mode.zip ( 306,85 КБ )
Сообщение отредактировал Abbat1985 — 09.07.20, 20:54
В качестве новогоднего подарка, пока есть свободное время, хочу опубликовать небольшой цикл из 2 статей, посвященный методам исследования одной из операционных систем модема — VxWorks. Меня давно об этом здесь просили, но как-то времени не было собраться. Информация предназначена для любителей поковыряться в потрохах модема, разобрать скрытые его возможности, понять, как он работает. Для тех кому модем нужен «воткнуть и забыть», эта информация бесполезна — просто проходите мимо, все равно ничего не поймете.
Итак, часть 1 — загрузка и разбор образа VxWorks в дизассемблере IDA.
VxWorks, как и все другие компоненты модема, хранится в одном из разделов флеш-памяти модема — разделе mtd11. Для начала нам надо получить образ этого раздела. Его можно получить обычной командой dd. Заходим в консоль линукса (телнетом, через adb, или через a-shell — все это описано в шапке). И вводим такую команду:
затем зайти по ftp на адрес 192.168.8.1 и забрать файл.
Полученный файл mtd11.bin содержит в себе упакованный образ vxworks, к которому добавлен заголовок раздела. Следующим этапом нам надо распаковать этот образ, отрезав предварительно заголовок. Это можно сделать так:
— Долго жмем ентер, пока таблица не закончится
— Закрываем лог в терминальной программе.
Полученный лог-файл содержит в себе таблицу символов. Каждая строка этой таблицы состоит из 3 полей: имени символа, его адреса, и типа (text — программный код, data — данные). Таблица имеет достаточно неприятный вид, кроме того, регулярно загажена строками «Type to continue, Q to stop: «. Наша цель — cделать из этой таблицы IDC-скрипт для импорта всех символов в базу IDA, Для этого я написал простенькую программу на С, прилагаемую к этому посту — vxsym.c. Вначале лог-файл следует открыть в текстовом редакторе, и отрезать от него в начале и в конце все строки, не относящиеся к таблице символов. Промежуточные строки «Type to continue. » уберет сама программа. Затем запускаем программу:
terminal.log в данном примере — это имя лог-файла, сохраненного из терминальной программы. В результате будет создан IDA-скрипт vxsym.idc, а на stdout будет выведена та же самая таблица символов, но приведенная к человеческому виду.
Теперь нам осталось загрузить в IDA полученный скрипт (нажать alt-f7 и выбрать файл vxsym.idc). При этом в IDA-базу будут внесены все имена из таблицы символов, а участки кода, отмеченные в таблице как TEXT, будут автоматически дизассемблированы.
На этом первый этап закончен — у нас есть готовая IDA-база, которую можно начинать разбирать и исследовать. Для тех, кто плохо знаком с ситемой команд ARM, прилагаю pdf-файл c описанием архитектуры и системы команд ARMv7.
Во второй части я расскажу о встроенном в VxWorks отладчике, жизненно необходимом для исследования кода. В качестве пример мы заставим сам модем посчитать nlock-код по алгоритму v201.
vxsym.c.gz ( 470 байт )
Сообщение отредактировал Abbat1985 — 09.07.20, 20:54
Часть 2 — пример исследования кода в отладчике VxWorks. Первая часть статьи здесь.
Исследовать код чисто умозрительно, разбирая последовательность инструкций в дизассемблере — конечно, можно, но достаточно тяжело. Регулярно возникает вопрос — а что в данный момент лежит в этом регистре? Перейдет ли управление по этой условной инструкции или нет? И так далее. Всегда хочется посмотреть регистры и память на живом модеме в интересующих нас точках. Фирма huawei сделала нам необычайно щедрый подарок — встроенный в VxWorks шелл с отладчиком. В качестве примера разберем такую задачу. Одной из подсистем VxWorks является процедура расчета кода разблокировки (знаменитый алгоритм v201). Когда пользователь вводит команду at^cardlock, модем рассчитывает nlock-код от своего IMEI, и сравнивает с введенным в команде. Если совпали — модем разблокируется. Не совпали — выводится сообщение ERROR. Анализом и обработкой AT-команд занимается Linux-часть модема. После приема команды через специальную подсистему обмена сообщениями (ICC) в VxWorks передается специальный запрос. По этому запросу VxWorks вычисляет и проверяет nlock-код, и возвращает в Linux через ICC ответ — совпало/не совпало. Мы попробуем заставить модем вычислить и показать нам 201-код от своего IMEI.
Команда ^cardlock — одноразовая. После того, как модем разблокировался, команда работать перестает. Но, к счастью, nlock-код требуется еще одной команде — at^datalock. Она используется для снятия блокировки с ряда служебных команд (типа ^nvrd/nvwr), и ее можно вводить сколько угодно раз. Вот с этой командой мы и будем работать.
Итак, у нас уже есть готовая IDA-база с образом VxWorks. Быстрый поиск по таблице символов дает нам процедуру с именем DRVAGENT_RcvDrvAgentDeviceDatalockSet. Именно эта процедура вызывается после приема сообщения от команды at^datalock. Но так ли это? Давайте проверим. Заходим в шелл VxWorks (C-shell) и вводим такую команду:
Break at 0x50d818c0: VerifySL Task: 0x53e964b8 (I0_TAF_FID)
NAME ENTRY TID PRI STATUS PC SP ERRNO DELAY
———- ———— ——— — ———- ——— ——— ——- ——
I0_TAF_FID vos_FidTask 53e964b8 144 STOP 50d818c0 5414ef38 0 0
task stack: base 0x5414f000 end 0x54147000 size 32768 high 896 margin 31872
exc. stack: base 0x54151ffc end 0x54151000 start 0x54152000
exc. stack: size 4092 high 624 margin 3468
proc id: 0x5245028c ((null))
options: 0x9005
VX_SUPERVISOR_MODE VX_DEALLOC_STACK VX_DEALLOC_TCB VX_DEALLOC_EXC_STACK
VxWorks Events
—————
Events Pended on : Not Pended
Received Events : 0x0
Options : N/A
r0 = 0x5372759c r1 = 0x5414ef3c r2 = 0x00000000
r3 = 0x00000000 r4 = 0x5414ef3c r5 = 0x5372759c
r6 = 0x53727580 r7 = 0x00000000 r8 = 0x5369fb60
r9 = 0x00000010 r10 = 0x0000000f r11/fp = 0x5414ef60
r12/ip = 0x32303634 r13/sp = 0x5414ef38 r14/lr = 0x51463690
pc = 0x50d818c0 cpsr = 0x600c0113 ttbase = 0x53f74000
value = 0 = 0x0
[C]->b 0x50D819C0
value = 0 = 0x0
[C]->c
Break at 0x50d819c0: VerifySL +0x100 Task: 0x53e964b8 (I0_TAF_FID)
NAME ENTRY TID PRI STATUS PC SP ERRNO DELAY
———- ———— ——— — ———- ——— ——— ——- ——
I0_TAF_FID vos_FidTask 53e964b8 144 STOP 50d819c0 5414ef0c 0 0
task stack: base 0x5414f000 end 0x54147000 size 32768 high 896 margin 31872
exc. stack: base 0x54151ffc end 0x54151000 start 0x54152000
exc. stack: size 4092 high 624 margin 3468
proc id: 0x5245028c ((null))
options: 0x9005
VX_SUPERVISOR_MODE VX_DEALLOC_STACK VX_DEALLOC_TCB VX_DEALLOC_EXC_STACK
VxWorks Events
—————
Events Pended on : Not Pended
Received Events : 0x0
Options : N/A
r0 = 0x537273ec r1 = 0x5414ef0c r2 = 0x00000006
r3 = 0x51bfe9c8 r4 = 0x5414ef0c r5 = 0x5414ef3c
r6 = 0x0000000f r7 = 0x537273ec r8 = 0x5369fb60
r9 = 0x00000010 r10 = 0x0000000f r11/fp = 0x5414ef34
r12/ip = 0x00000006 r13/sp = 0x5414ef0c r14/lr = 0x5414ef14
pc = 0x50d819c0 cpsr = 0x200c0113 ttbase = 0x53f74000
value = 0 = 0x0
[C]->d 0x5414ef0c,8,1
NOTE: memory values are displayed in hexadecimal.
0x5414ef00: 36 34 33 31 * 6341*
0x5414ef10: 35 30 38 39 *5084. *
value = 0 = 0x0
Вот так мы вычислили nlock-код c помощью модема. Этот код является абсолютно точным, образцовым. Можно при входе в процедуру VerifySL c помощью команды m вписать в память другой IMEI, и вычислить nlock-код от него. Я использовал эту возможность для отладки своего калькулятора кодов.
Возможности отладчика VxWorks очень обширны. Вот крайткий список полезных команд:
Предусмотрена там и справочная система — команда help и ее производные. Прилагаю к этому посту pdf с фирменным описанием шеллов VxWorks. Есть и другие доки от WindRiver, легко находящиеся на просторах интернета.
Надеюсь, моя статья подвигднет кого-нибдуь на изучение кода модема. Поверьте, это крайне увлекательное и полезное занятие!
vxworks_cli_tools_users_guide_6.2.pdf ( 642,59 КБ )
Сообщение отредактировал Abbat1985 — 09.07.20, 20:55
Источник