Перезагрузка Модема.

  • Автор темы Автор темы Voldemar
  • Дата начала Дата начала
Все юсб свистки работают через АТ команды.
Не занимайтесь извратом с интерфейсами, процессами и прочим...
Вся работа c USB модемами только через АТ команды и ком порт !!!
Актуально!

Через C# снипет пробую отправить АТ команду в порт, команда уходит, но такое ощущение, что поток не завершился, поэтому порт не дает ответ.
При повторной посылке команды, она добавляется к предыдущей строчке и опять тишина. Такое ощущение, что порту не хватает какого-то ПИНКА, чтобы НАЧАТЬ обработку АТ команды.
Каждая АТ команда завершается "\r\n".
Потоки на COM-порт перехватываю прогой Free Device Monitoring Studio.

При этом, если запустить родную "управляющую" программу для модема, то все AT команды уходят в порт как надо, доходят до модема и приходит ответ.

Что делать и как все починить?

Тестируемый код:
Код:
Развернуть Свернуть Копировать
// Инициализируем COM порт по-умолчанию ----
SerialPort serial_port = new SerialPort();

serial_port.BaudRate =9600;
serial_port.DataBits = 8;
serial_port.StopBits = StopBits.One;
serial_port.Parity = Parity.None;
serial_port.Handshake = Handshake.None;
serial_port.RtsEnable = true;
serial_port.ReadTimeout = 500;
serial_port.WriteTimeout = 500;
// ----

string response = String.Empty;

serial_port.PortName = "COM14"; //назначаем конкретный COM порт
if (!serial_port.IsOpen) { //если порт НЕ открыт, то...
    try {
        serial_port.Open(); //... пробуем его открыть
    }
    catch (Exception e) {return "упс!";}
      
    if (serial_port.IsOpen) { //если всё окейно, то работаем
        System.Threading.Thread.Sleep(1000); //па-ааауза
        serial_port.Write("AT\r\n"); //отправляем простейшую AT команду
        System.Threading.Thread.Sleep(1000);
        try {
            response = serial_port.ReadExisting(); //пробуем читать ответ порта
        }
        catch (Exception e) {return "упс №2"; }
          
        if (response != String.Empty) {
            project.Variables["response"].Value = response; //если ответ не нулевой, то передаем его в проект
        }
        serial_port.Close(); //закрываем порт
    }
}
 
  • Спасибо
Реакции: ZHAG
Даа.. ребят, что-то вы дико заморачиваетесь))
 
интересная тема :dw:
кто как решил проблему?
 
Надо перепрошить модем в хайлинк и прошить вебинтерфейс, вся инфа на 4pda есть, я оттуда брал. Потом пишется скрипт с обращением к telnet и все работает. Если что пишите подскажу.
 
Парни, кто с фейсбуком по этой схеме работает, сколько акков держите на одном свистке?
 
Надо перепрошить модем в хайлинк и прошить вебинтерфейс, вся инфа на 4pda есть, я оттуда брал. Потом пишется скрипт с обращением к telnet и все работает. Если что пишите подскажу.
brendmaster1, поделись опытом плиз.
 
Помогите очень нужно перегружать автоматически подключения через адаптер.
Скиньте скрипт плиз ??????)
 
вот точно загоняетесь...
Всё элементарно - каждый свисток устанавливается как сервис (служба).
Ищете имя службы, и создаете 1 батник
Код:
Развернуть Свернуть Копировать
net stop /имя службы/
timeout 100500
net start /имя службы/
где имя службы - это имя службы :-)
100500 - время ожидания в секундах, необходимое для того, чтобы служба спокойно остановилась (во избежание ошибок при запуске службы)
 
  • Спасибо
Реакции: Kaliostro666 и Mikhail B.
вот точно загоняетесь...
Всё элементарно - каждый свисток устанавливается как сервис (служба).
Ищете имя службы, и создаете 1 батник
Код:
Развернуть Свернуть Копировать
net stop /имя службы/
timeout 100500
net start /имя службы/
где имя службы - это имя службы :-)
100500 - время ожидания в секундах, необходимое для того, чтобы служба спокойно остановилась (во избежание ошибок при запуске службы)
А как узнать имя службы? По названиям службы, похожей службы не нашел. В процессе диспетчера задач висит OGO!Mobile.exe
 
Еще можно код сохраняем с расширением .cmd
start e:\System\LAN\TechniquesForSimp\CNic.exe "LAN" -d
TIMEOUT /T 10 /NOBREAK
start e:\System\LAN\TechniquesForSimp\CNic.exe "LAN" -c

Предварительно нужно скачать CNic.exe.

P.S. Самое простое решение, запуск программы в зенке а в самой программе активировать галочку чтобы автоматически подключалось к интернету. Ну и бат файлик отключения процесса.
Вот так решил проблему)
 
А как узнать имя службы?
Панель управления --> Администрирование --> Службы
Находите ту, что связана с вашим "свистком", правой кнопкой на ней, в контекстном меню --> Свойства
В появившемся окне самая верхняя надпись и есть имя службы
 
  • Спасибо
Реакции: Kaliostro666 и Mikhail B.
  • Спасибо
Реакции: Kaliostro666
Панель управления --> Администрирование --> Службы
Находите ту, что связана с вашим "свистком", правой кнопкой на ней, в контекстном меню --> Свойства
В появившемся окне самая верхняя надпись и есть имя службы
Я не совсем понял что за свисток, нет никаких программ в которых можно найти по поиску? Там столько служб что фиг разберешься(
 
Подскажи по каким параметрам искать я вообще ничего не могу найти
 
Все настроил спс
 
Я крутой ))) Вон как объяснять умею ))) Молча )))
МДА......................
Вот сцыль самый простой способ http://zennolab.com/discussion/thre...-modem-v-zennoposter.10630/page-2#post-240308

Ручками bat файл запускаю, всё работает быстро и нормально. Если через зенку экшином запускать, выполнение командной строки долго + ко всему вечное подключение по сети.
Помоги разобраться, по твоему методу мне в службах что искать надо? Софт модема или подключение какое то? Не знаю что уже в службах искать(
 
Может параметры нужно прописать какие то надо прописать?
 
вот откопал свой старый шаб ))
расширение .txt заменить на .bat (с таким расширением запрещают вложения делать)
 

Вложения

  • Спасибо
Реакции: Kaliostro666
не работает,ip не меняется
 
Все юсб свистки работают через АТ команды.
Нужно на ком порт просто послать нужную команду.
В зависимости от модели/производителя есть свои команды, но такие стандартные как перезагрузка свистка или реконнект они в большинстве случаев одинаковые.

Через Putty подключитеcь на ком порт и тестите АТ команды для вашего девайса.


На 99% готовый снипет тут https://msdn.microsoft.com/ru-ru/library/system.io.ports.serialport.datareceived(v=vs.110).aspx

google=>
c# serial port write
c# serial port write at command

https://3ginfo.ru/page53.html


п.с. Не занимайтесь извратом с интерфейсами, процессами и прочим...
Вся работа c USB модемами только через АТ команды и ком порт !!!

Приветствую, подскажите пожалуйста как правильно сделать С# код для Com5 и отправки команды модему "AT^RESET" ?
 
Друзья и я туда же,
upload_2017-7-9_17-53-50.png
Что происходит,почему не видит "rasdial"
Разобрался!
Теперь проблема в другом, после того как выполню команду
Код:
Развернуть Свернуть Копировать
netsh interface set interface name="Моё подключение" Disable
netsh interface set interface name="Моё подключение" Enable
Модем первый раз автоматом коннектиться, а вот после второго сброса уходит в аут.
диод на модеме моргает с интервалом в 2-3 секунды и пока руками не подключишь его он не подключается, хотя в настройках стоит повторное соединение при потери связи.
Хелп...
 
Последнее редактирование:
Всем привет! Написал статью о том как я поднимаю мобильные прокси. Если кому интересно можете почитать. Статью ещё дописываю, так сказать шлифую. Ловите линк
 
  • Спасибо
Реакции: Koqpe
а веб панели нету для вашего модема? там наверняка есть перезагрузка
 
перезагрузка то есть по веб морде. но тут я говорю не о перезагрузке просто модема. а о моб проксях. скрипт не только перезагружает модем, но и подхватывает новый ip и поднимает на нём прокси
 
Хз поставь ардуино и щелкай реле - питание свистка :D
 

Кто просматривает тему: (Всего: 0, Пользователи: 0, Гости: 0)