Перезагрузка из за sim!?

Созрел я сегодня в 9 вечера добавить мобильную функциональность на WB4…
Вставил SIMку, загрузил WB, вроде всё OK…

wb-gsm on … OK
gammu networkinfo … Security error (PIN на SIMке остался)

Выключил WB, выбрал SIMку, вставил в телефон, вырубил запрос PIN, вернул SIMку в WB, включил его…

Грузился он грузился, да так и не загрузился. Рестартанул я его, но результат тот-же.
Взял UART переходник, подключил, ещё раз рестартанул.
Картина не очень красивая… :frowning:

[ ok ] Starting OpenBSD Secure Shell server: sshd.
[ ok ] Starting update local time using SIMCOM SIM900 integrated RTC: wb-gsm-rtc[....] Starting MQTT Driver for ADC: wb-homa-adc.
[ ok ] Starting MQTT Driver for GPIO-controlled switches: wb-homa-gpio.
[ ok ] Starting MQTT driver for WB HomA for RFM69 ISM radio: wb-homa-rcd.
[   56.260000] sc16is7x2 spi1.3:
[   56.260000] sc16is7x2_startup (0)
[   56.290000] sc16is7x2 spi1.3:  sc16is7x2_read_status ier=0x00 iir=0x10 msr=0x00 lsr=0x00
[   56.290000] sc16is7x2 spi1.3: sc16is7x2_set_termios (baud 9600)
[   56.300000] sc16is7x2 spi1.3:  sc16is7x2_read_status ier=0x05 iir=0xc1 msr=0x00 lsr=0x60
[   56.320000] sc16is7x2 spi1.3: sc16is7x2_set_termios (baud 9600)
[   56.340000] sc16is7x2 spi1.3:  sc16is7x2_read_status ier=0x05 iir=0xc1 msr=0x00 lsr=0x60
connection test error!
Restarting GSM modem...
Try to switch off SIM900R
Send power down command
physically switching off SIM900R using POWER FET
switching on SIM900R using POWER FET
toggle SIM900 state using PWRKEY
[   64.390000] sc16is7x2 spi1.3:
[   64.390000] sc16is7x2_startup (1)
[   64.400000] sc16is7x2 spi1.3:  sc16is7x2_read_status ier=0x00 iir=0x10 msr=0x00 lsr=0x00
[   64.410000] sc16is7x2 spi1.3: sc16is7x2_set_termios (baud 9600)
[   64.420000] sc16is7x2 spi1.3:  sc16is7x2_read_status ier=0x05 iir=0xc1 msr=0x00 lsr=0x60
[   64.430000] sc16is7x2 spi1.3: sc16is7x2_set_termios (baud 9600)
[   64.440000] sc16is7x2 spi1.3:  sc16is7x2_read_status ier=0x05 iir=0xc1 msr=0x00 lsr=0x60
Sat Dec 26 21:03:33 UTC 2015
. ok
[ ok ] Starting board-specific initscript: wb-init.
HTLCmxs_power_init(): mxs_power_init
mxs_power_set_auto_restart(): mxs_power_set_auto_restart
mxs_power_set_linreg(): mxs_power_set_linreg
mxs_power_configure_power_source(): mxs_power_configure_power_source
mxs_get_batt_volt(): mxs_get_batt_volt volt=800 mV
mxs_power_configure_power_source(): not batt_ready
mxs_is_batt_good(): mxs_is_batt_good
mxs_get_batt_volt(): mxs_get_batt_volt volt=800 mV

Выбрал SIMку - всё ОК.

[ ok ] Starting OpenBSD Secure Shell server: sshd.
[ ok ] Starting MQTT Driver for ADC: wb-homa-adc.
[....] Starting update local time using SIMCOM SIM900 integrated RTC: wb-gsm-rtc[....] Starting MQTT Driver for GPIO-controlled sw[ ok s: wb-homa-gpio.
[ ok ] Starting MQTT driver for WB HomA for RFM69 ISM radio: wb-homa-rcd.
connection test error!
Restarting GSM modem...
Try to switch off SIM900R
Send power down command
physically switching off SIM900R using POWER FET
switching on SIM900R using POWER FET
toggle SIM900 state using PWRKEY
Sat Dec 26 21:21:39 UTC 2015
. ok
[ ok ] Starting board-specific initscript: wb-init.
[   75.960000] sc16is7x2 spi1.3:
[   75.960000] sc16is7x2_startup (0)
[   75.960000] sc16is7x2 spi1.3:  sc16is7x2_read_status ier=0x00 iir=0x10 msr=0x00 lsr=0x00
[   76.020000] sc16is7x2 spi1.3: sc16is7x2_set_termios (baud 9600)
[   76.020000] sc16is7x2 spi1.3:  sc16is7x2_read_status ier=0x05 iir=0xc1 msr=0x00 lsr=0x60
[   76.030000] sc16is7x2 spi1.3: sc16is7x2_set_termios (baud 9600)
[   76.070000] sc16is7x2 spi1.3:  sc16is7x2_read_status ier=0x05 iir=0xc1 msr=0x00 lsr=0x60
[ ok ] Starting Firmware update monitor: wb-watch-update.
Starting httpd daemon: webfsdbind: Address already in use
.

Debian GNU/Linux 7 LVA-RIGA1-HOMA1-WB4 ttyAMA0

LVA-RIGA1-HOMA1-WB4 login: [   84.070000] sc16is7x2 spi1.3:
[   84.070000] sc16is7x2_startup (1)
[   84.080000] sc16is7x2 spi1.3:  sc16is7x2_read_status ier=0x00 iir=0x10 msr=0x00 lsr=0x00
[   84.110000] sc16is7x2 spi1.3: sc16is7x2_set_termios (baud 9600)
[   84.120000] sc16is7x2 spi1.3:  sc16is7x2_read_status ier=0x05 iir=0xc1 msr=0x00 lsr=0x60
[   84.130000] sc16is7x2 spi1.3: sc16is7x2_set_termios (baud 9600)
[   84.170000] sc16is7x2 spi1.3:  sc16is7x2_read_status ier=0x05 iir=0xc1 msr=0x00 lsr=0x60

Debian GNU/Linux 7 LVA-RIGA1-HOMA1-WB4 ttyAMA0

LVA-RIGA1-HOMA1-WB4 login:

Вставил другую SIMку - опять двадцать пять

Теперь ещё и каждый четвёртый раз при загрузке у системы паника: 0x8020a01d (на сколько понял, это глюк определения SD карты)
Вроде и можно было бы списать на corrupted SD, но без SIMки вроде грузит нормально…
Вот пытаюсь понять, что системе не нравится в SIMках…

Может кто сталкивался и знает как решить проблему…

П.С. Знаю, что это будет первый вопрос, поэтому припишу сразу, БП: Faradаy 12V, 12.2V на выходе с Faradаy, 11.9 на выходе с 12V клемм WB (тех что рядом с RS-485-ISO).

а какая антенна подключена к GSM? На разъём или выносная?

Та что шла в комплекте с WB4 (на разъём).

http://contactless.ru/store/#!/GSM-антенна-короткая-разъем-SMA/p/27919659/category=14225071

Есть подозрение, что дело в том, что у вас плохо ловит GSM. В таком случае, рекомендуется использовать выносную антенну. Есть возможность попробовать?

Из документации:

При слабом сигнале GSM рекомендуется использовать выносную антенну и располагать ее вдали от контроллера.

Это было бы странно…
Если бы WB сидел в коммутационном шкафу - вполне вероятно, но он у меня ещё на тестовом столе, для тестирования оборудования, которое к нему будет подключено.

Мобильник там ловит довольно хороший сигнал:

+ У меня нету другой антенны подтюниной под GSM. Попробую с антенной под 433MHz, но не думаю, что будут изменения.

Да и рестарт контроллера из за слабого сигнала - это critical bug. Представим, что у мобильного оператора плановые работы, и он отключил базовую станцию, контроллер пошёл в постоянный рестарт и не получил информацию об утечке газа или воды… Печалько!

Проблема тут не в слабом сигнале, как таковом, а в близости излучающей на полной мощности антенны к контроллеру.

В общем попробуйте пожалуйста отнести антенну, если не поможет - тогда будем дальше думать.

Хмм…
Сработало!

Никаких проблем при мануальном рестарте, сеть доступна сразу после загрузки.

Странно что контроллер и мелкая антенна так взаимодействуют, но oh well…
Пока что выглядит нормально…

Хотя даже когда эта антена находится рядом с контроллером, тоже нету проблем.

AT+CSQ
+CSQ: 31,0

Судя по результату всё прекрасно!
http://m2msupport.net/m2msupport/atcsq-signal-quality/

Интереса ради, провёл ещё пару тестов…

Без антенны:

AT+CSQ
+CSQ: 23,0

Value		RSSI dBm	Condition
23		-67		Excellent

Загрузка системы после ‘shutdown -h now’ и перезапуска питания: OK


Подсоединив мелкую антенну:

AT+CSQ
+CSQ: 30,0

Value		RSSI dBm	Condition
30		-53		Excellent

Загрузка системы после ‘shutdown -h now’ и перезапуска питания: Ошибка

При ошибке просто открутил антенну, подождал пока перегрузится - ОК


Вывод #1: сигнал можем ловить и святым духом. :slight_smile:
Вывод #2: мелкая антенна - зло!