Jump to content
    

Wi-Fi-микросхема Atmel WINC1500

Все эти регистры не документированы и о них знать не положено. Все должно работать с предоставленным API.

Ну я думал, может вы знаете эти регистры. Было бы не плохо помимо индикации, что пока нет места, еще иметь индикацию - вот скоро место закончится. Нам бы такая индикация может и помогла.

 

Размеры посылок я пробовал всякие, и 1400, и 500, и 220 байт. Результат один и тот же.

 

Спасибо вам за ответы, проект горит.

 

Share this post


Link to post
Share on other sites

Я смотрю на этот пример и офигеваю. Пр смыслу sock_bind_state будет снова 1 после приема ответа от прилагаемого питоновского скрипта.

 

Вот только прем начинается после

printf("socket_cb: sendto success!\r\n");
и у меня они никогда не выполняется, так что в логе только
-- SAMD21_XPLAINED_PRO --

-- Compiled: Jun 1 2015 13:27:52 --

(APP)(INFO)Chip ID 1502b1

(APP)(INFO)Firmware ver : 18.1.1

(APP)(INFO)Min driver ver : 18.1.1

(APP)(INFO)Curr driver ver: 18.1.1

wifi_cb: M2M_WIFI_RESP_CON_STATE_CHANGED: CONNECTED

wifi_cb: M2M_WIFI_REQ_DHCP_CONF : IP is 192.168.0.109

socket_cb: bind success!

main: message sent

 

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

 

Я продолжаю ковыряться.

Edited by ataradov

Share this post


Link to post
Share on other sites

И так, несколько наблюдений:

1. В приложении WINC1500_SIMPLE_UDP_EXAMPLE логика ожидает, что событие SOCKET_MSG_SENDTO произойдет, и в то же время индикация отключается во время открытия сокета:

setsockopt(tx_socket, SOL_SOCKET, SO_SET_UDP_SEND_CALLBACK, &u32EnableCallbacks, 0);
Эту строку нужно убрать.

2. Можно попробовать извлечь побольше информации изменив M2M_LOG_LEVEL на M2M_LOG_DBG в src\ASF\common\components\wifi\winc1500\common\include\nm_common.h

3. Я не могу воспроизвести проблему, поэтому для синхронизации, я прилагаю проект с более простой логикой. Этот просто шлет броадкасты сразу после подключения и ничего не принимает. Для начала, изменяйте только параметры сети в main.h и ничего больше.

WINC1500_SIMPLE_UDP_CLIENT_EXAMPLE1.zip

Share this post


Link to post
Share on other sites

Здравствуйте.

Запустил ваш проект, изменил только SSID и пароль. Законнектился к телефону Филипс Андроид 4.0 (без симкарты).

 

У меня виснет.

Вот лог:

-- WINC1500 UDP client example --
-- SAMD21_XPLAINED_PRO --
-- Compiled: Jun  2 2015 22:12:38 --
(APP)(INFO)Chip ID 1502b1(APP)(INFO)Firmware ver   : 18.1.1

(APP)(INFO)Min driver ver : 18.1.1

(APP)(INFO)Curr driver ver: 18.1.1wifi_cb: M2M_WIFI_RESP_CON_STATE_CHANGED: CONNECTED
wifi_cb: M2M_WIFI_REQ_DHCP_CONF : IP is 192.168.43.241
main: message sent
socket_cb: sendto success!
main: message sent
socket_cb: sendto success!
main: message sent
socket_cb: sendto success!
...
        вроде все норм, пакеты шлются (секунды 2)
....
main: message sent
socket_cb: sendto success!
ent
socket_cb: sendto success!
main: failed to send status report error! -14
...
      начинают пролетать ошибки (секунды 2)
...
main: message sent
socket_cb: sendto success!
main: message sent
socket_cb: sendto success!
main: message sent
socket_cb: sendto success!
main: failed to send status report error! -14

...

d status report error! -14
main: failed to send status report error! -14
main: failed to send status report error! -14
main: failed to send status report error! -14
main: failed to send status report error! -14
main: failed to send status report error! -14
main: failed to send status report error! -14
main: failed to send status report error! -14
main: failed to send status report error! -14
main: failed to send status report error! -14
main: failed to send status report error! -14
main: failed to send status report error! -14
to send status report error! -14
main: failed to send status report error! -14
main: failed to send status report error! -14
main: failed to send status report error! -14
main: failed to send status report error! -14
main: failed to send status report error! -14
main: failed to send status report error! -14
main: failed to send status report error! -14
main: failed to send status report error! -14
main: failed to send status report error! -14
...
      все - зациклился, постоянно выдает эту ошибку

 

 

А теперь веселая часть поста.

Вставляю в этот телефон сим-карту. Включаю на телефоне передачу данных - мобильный интернет.

Стартую этот же проект - и вуаля - все летает, все работает, пакеты шлются бес конца и края. Иногда пролетает main: failed to send status report error! -14, но изредка и не фатально.

 

На нашем проекте с плиской все тоже стало более менее работать с включенным мобильным интернетом.

Как он влияет на winc, понять не могу.

 

Share this post


Link to post
Share on other sites

Похоже воспроизвел с Nexus 7 2013. Тоже падает все через несколько минут/секунд работы. Проверить с подключением не могу на нем правда.

Share this post


Link to post
Share on other sites

Проблема похоже починена в v18.3.1. Она должна появиться в ASF на следующей неделе. Я спросил, но не думаю, что мне разрешат распространять эту прошивку раньше срока.

 

---

Отправил PM со ссылкой на прошивку. Проверьте, что она работает с вашими устройствами. Эта прошивка починила Nexus 7 и HTC Desire. Оба не работали с v17.

Edited by ataradov

Share this post


Link to post
Share on other sites

Большое СПАСИБО!

Вечером попробую обновиться.

Сейчас добавил в проект возможность включения точки доступа на winc. В этом режиме зависаний не происходит.

Итого у меня сейчас есть три варианта:

1. winc как АР - зависаний нет (телефон хоть с интернетом, хоть без него)

2. winc коннектится к АР-телефону, на телефоне включен мобильный интернет - зависаний нет

3. winc коннектится к АР-телефону, на телефоне выключен мобильный интернет - происходит зависание

Share this post


Link to post
Share on other sites

Если долго подождать и много погонять, то падают все три варианта.

 

Посмотрим, что будет после обновления прошивки.

Share this post


Link to post
Share on other sites

Посмотрим, что будет после обновления прошивки.
Я гоняю новую прошивку. Ее сейчас не так легко убить, но все-равно после 20-30 минут непрерывного траффика на максимальной скорости, модуль начинает возвращать -14. Но это уже скорее всего не связано с телефон/ не телефон.

 

Думаю у них проблемы с выделением памяти, скорее всего гонки где-нибудь. Я работаю с разработчиками над этим.

 

 

Share this post


Link to post
Share on other sites

Обновился до 18.3.1. Чуток по лучше, но все равно падает.

Самый стабильный режим - когда winc работает как АР, работал полчаса, ниразу дма аддр не было.

А в другом режиме через 5 минут упало.

 

Надо все таки ждать от разработчиков прошивку, стабильную во всех режимах.

 

Share this post


Link to post
Share on other sites

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

 

Мой совет - давите на поддержку, так как с если нет официальных запросов, то проблема как бы игнорируется. Я со своей стороны пытаюсь показать глупость этого подхода, пока не сильно успешно.

 

5 минут - это очень быстро. Это с моим приложением так?

Share this post


Link to post
Share on other sites

Я свой проект тестировал, на плис.

Подключался не только к мобильнику, коннектил Winc к домашнему роутеру, также падает.

Насчет саппорта вы правы, напишу еще в кейс.

Share this post


Link to post
Share on other sites

Подключался не только к мобильнику, коннектил Winc к домашнему роутеру, также падает.
Это странно. Какая нагрузка по траффику в этом случае?

 

Мне кажется, это придется воспроизводить с D21. Если есть реальная проблема с настоящими роутерами, то это значительно хуже и будет проще ускорить починку.

Share this post


Link to post
Share on other sites

Ребят, у меня вопрос.

Никогда раньше не имел дело с Wi-Fi и хотел спросить, насколько ценник $12,28 ATWINC1500 адекватен за его возможности?

Чем он лучше ESP8266 за $5?

Что лучше подошло бы для серийного изделия, которое просто должно уметь получать погоду по интернету и управляться с мобильного телефона?

Share this post


Link to post
Share on other sites

насколько ценник $12,28 ATWINC1500 адекватен за его возможности?
Это очень хорошая цена за модуль в единичных количествах, но учитывайте, что ПО частично сырое и в граничных условиях есть баги, но они фиксятся оперативно.

 

Чем он лучше ESP8266 за $5?
Наличием сертификаций и соответствием стандартам.

 

Что лучше подошло бы для серийного изделия, которое просто должно уметь получать погоду по интернету и управляться с мобильного телефона?

Однозначно WINC1500, если не хочется вкладывать еще несколько десятков тысяч долларов в сертификацию или несколько сотен тысяч в штрафы.

 

Про применимость той сертификации в России нужно смотреть отельно.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...