Перейти к содержанию
    

Wi-fi модуль SPB800 hd-wireless

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

Имеется wi-fi модуль spb800. по uart соединен с stm32f103 . применяю wlp_api

в документации на инициализацию написано, что на переданный хостом символ 'w', модуль должен им же ответить.

но модуль молчит. т.е. при включении выдает положенные пять точек, но на инициализацию не реагирует.

может кто встречался с этим устройством?

ps uart в порядке замыкаю tx на rx и вижу свою посылку, скорость 57600

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Здравствуйте ! А не подскажите, где можно купить такой модуль, хочу тоже его попробовать ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

Имеется wi-fi модуль spb800. по uart соединен с stm32f103 . применяю wlp_api

в документации на инициализацию написано, что на переданный хостом символ 'w', модуль должен им же ответить.

но модуль молчит. т.е. при включении выдает положенные пять точек, но на инициализацию не реагирует.

может кто встречался с этим устройством?

ps uart в порядке замыкаю tx на rx и вижу свою посылку, скорость 57600

А где Вы такое прочитали ? Я подключил его к компу и через uart управляю им… Настройки всякие и обмен по Telnet прекрасно работает… Я так понял что для дальнейший работы м ним нужно откомпилировать проект owl_pico под avr или linux и далее смотреть. Вам удалось это сделать или вы катко другим путём идете…

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Доброго времени дня,

Подскажите на какое расстояние мжет передавать wi-fi модуль spb800?

Спасибо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

(Это я, mpr)

algidim> у модуля 2 варианта команд

1 - аналог AT -то что вы видете через терминал

2 - их библиотечные битовые команды, то чем будет он управлятся при компиляции проекта owlpico

 

мой вопрос я решил - нужно его перешить.

в результате я добился работы модуля, поднял на нем http сервер (очень простой) на хосте Cortex-m

библиотека очень сырая, косяков много. Удалось откомпилировать только IAR (вначале пытался на avr собрать).

а так штука не плохая.

будут вопросы - пишите.

gkpavl - дальность работы по стандарту (до 300м на прямой видимости с внешней антенной).

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

(Это я, mpr)

algidim> у модуля 2 варианта команд

1 - аналог AT -то что вы видете через терминал

2 - их библиотечные битовые команды, то чем будет он управлятся при компиляции проекта owlpico

 

мой вопрос я решил - нужно его перешить.

в результате я добился работы модуля, поднял на нем http сервер (очень простой) на хосте Cortex-m

библиотека очень сырая, косяков много. Удалось откомпилировать только IAR (вначале пытался на avr собрать).

а так штука не плохая.

будут вопросы - пишите.

gkpavl - дальность работы по стандарту (до 300м на прямой видимости с внешней антенной).

 

Могли бы подсказать? приобрел и только начал разбиратся =)

можно ли настроить SPB800 c прошивкой spb800-serial_to_wifi_rxxx.hlf что бы слушать всю служебную информацию в момент подключения к сети по порту UDP ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

можно ли настроить SPB800 c прошивкой spb800-serial_to_wifi_rxxx.hlf что бы слушать всю служебную информацию в момент подключения к сети по порту UDP ?

не работал в режиме serial-to-wifi, и вашей задачи себе не ставил

смотрите, здесь есть немного про UDP

http://linux.hd-wireless.se/bin/view/Pico/Commands

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

будут вопросы - пишите.

 

Уже третий день борюсь с модулем и службой тех поддержки H&D, может вы поможете, раз уже есть положительный опыт?

Суть вопроса в следующем.

Дествительно пришлось пару раз перепрощить модуль одной и тойже прошивкой чтобы он начал реагировать на символ 'w'

Но на этом всё и закончилось - больше ни на какую команду из стека PICO API щт не отвечает.

Т.е. вызываю функцию wlp_init - она отрабатывает - под отладчиком вижу что она получает в ответ 'w'

Далее вызываю любую другую функцию ( wlp_set_mode(WL_MODE_AP), wlp_reset(), wlp_set_ipaddr, wlp_linkup) - никакой реакции. Данные в модуль уходят (осцилом проверял), а обратно тишина.

Думал уже что может он переключается на другую скорость после wlp_init, пробывал перейти на 57600 - не помогло.

Была тоже мысль что он начинает контролировать CTS/RTS сигналы, CTS замкнул на землю - тоже не помогает.

 

Прошивку залил последнюю с сайта (pserver-spb800-r5073.hfl)

 

Что делать?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

я работал на пошивке r2693,

во-первых, что возвращает wlp_init?

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

общение начинается на скорости 57600, после wlp_init переключаю на 115200

ну и код в студию...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

wlp_init возвращает 0 - если ее код смотреть она ничего другого и не возвращает

 

int wlp_init(int interface,

int (*readf)(void *ctx, void *data, int len),

int (*writef)(void *ctx, const void *data, int len),

void (*selectf)(void *ctx, int select),

void *ctx)

{

char c = 'w';

 

owl_dbg("interface:%d readf:%p writef:%p ctx:%p",

interface, readf, writef, ctx);

 

priv = &wlp_ctx;

owl_os_memset(priv, 0, sizeof(*priv));

 

priv->read = readf;

priv->write = writef;

priv->select = selectf;

priv->rw_ctx = ctx;

 

if (interface == WLP_INTERFACE_SPI) {

priv->flags |= WLP_FLAG_SPI;

owl_dbg("init complete");

return 0;

}

 

bus_claim();

bus_write(&c, 1);

do

{

bus_read(&c, 1);

if(c == '.') owl_dbg("ignore dot");

}

while(c!='w');

 

bus_release();

 

owl_dbg("init complete");

return 0;

}

 

новые прошивки все работают сразу на 115200

поэтому я скорость не меняю, да и вопросов к wlp_init у меня нету - она посылает 'w' и получив в ответ от модуля 'w' выходит.

 

Вопрос у меня к другим функциям: настройки IP адреса, режима работы, сброса в конце концов.

Они не отрабатывают. ТОчнее они отсылают что то модулю, но в ответ модуль ничего им не отсылает (проверено на осцилографе). Такое ощущение, что они либо что то не то ему шлют, либо не на той скорости какой надо, либо еще что...

 

я тут в main вставил кусочек по обмену с модулем вот отрывок:

 

//-----------------WLP-------------------------------------------------------

 

wlp_init(

WLP_INTERFACE_UART,

uart1_read_f, /* function that will read buffer from uart */

uart1_write_f, /* function that will write buffer to uart */

select,

NULL /* context passed to uart_read_f and uart_write_f */);

 

 

wlp_set_link_cb(link_f, /* function that will be called when the link status changes */

NULL /* context passed to link_f */);

 

wlp_set_ipaddr_cb(addr_f, /* function that will be called when the IP address changes */

NULL /* context passed to addr_f */);

 

wlp_set_mode(WL_MODE_AP); //<<<<<-----------------------------------тут код виснет, так как ждет 8 символов из UART, а от туда ничего не приходит

wlp_reset();

 

struct ip_addr ip, netmask, gateway, dnsserver;

IP4_ADDR(&ip, 192, 168, 2, 22);

IP4_ADDR(&netmask, 255, 255, 255, 0);

IP4_ADDR(&gateway, 192, 168, 2, 1);

IP4_ADDR(&dnsserver, 192, 168, 2, 1);

 

wlp_set_ipaddr(&ip, &netmask, &gateway, &dnsserver); /* configure SPB800 ip address */

wlp_set_dhcpd(1); /* start dhcp server */

 

struct wl_ssid_t ssid;

strcpy(ssid.ssid, "MY-FI"); /* specifiy the ssid */

ssid.len = strlen("MY-FI"); /* the number of valid bytes in the ssid */

 

 

unsigned char mode;

 

wlp_get_mode(&mode);

 

if (mode == WL_MODE_STA)

printf("operation mode: sta\n\r");

else if (mode == WL_MODE_AP)

printf("operation mode: ap\n\r");

 

wlp_linkup(&ssid, NULL, 1); /* start access point with SSID "spb800 access point", no encryption, channel 1 */

 

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

попробуйте поставить точку останова на wlp_set_link_cb

у мень задержка в 200 мс после init

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...