Основа робота на D-Link DCS-930

Обсуждаем рождающиеся мысли и результаты экспериментов.

Основа робота на D-Link DCS-930

Сообщение rx9abc » 25 окт 2011, 20:32

Мне не дает покоя мне такая мысль: У меня есть Wi-Fi камера.
Изображение

Из другого города я могу к её контролировать (у меня к сожалению без поворота, но есть камеры на поворачивающейся основе). Т.е. могу видеть что она снимает и менять её настройки.

Вот что у нее внутри
Процессором выступает микросхема Ralink RT3050F производства компании Ralink Technology Corporation. Это достаточно мощный для такого класса устройств MIPS-процессор, работающий с тактовой частотой 384 МГц. Процессор имеет встроенные модули Ethernet 10/100 Мбит, Wi-Fi 802.11n и USB-контроллер.
на фотке 3052F, у меня 3050F
DataSheet на неё здесь

Изображение

Рядом с процессором под металлическим кожухом расположен SDRAM-модуль памяти ESMT M12L2561616A от компании Elite Semiconductor Memory Technology Inc объёмом 16 Мб.
На фотке две, у меня одна
Изображение

Для хранения прошивки на обратной стороне платы установлен модуль flash-памяти MX 29LV320DBTI-70G
корпус такой же, только у меня не MXIC, а просто MX. Цифры индекса почти совпадают
Изображение

Кстати, в ZyXEL Keenetic Lite стоит такой процессор и много где ещё!

Под впечатлением от статьи WiFi робот руками чайника, очень хочется сделать всё тоже самое, но на этой базе. Видимое преимущество в том, что камера уже есть и работает + роутер!
Можно ли эту базу использовать для построения робота, которым можно управлять через Интернет? Может уже есть такие проекты?

Есть USB и UART не распаянные.
Изображение
Изображение
Последний раз редактировалось rx9abc 25 окт 2011, 22:16, всего редактировалось 1 раз.
rx9abc
 
Сообщения: 16
Зарегистрирован: 24 окт 2011, 17:19
Откуда: Челябинск
прог. языки: Delphi

Re: Основа робота на D-Link DCS-930

Сообщение boez » 25 окт 2011, 21:53

Можно. По сути это однопортовый wi-fi роутер с камерой. Вопрос только в прошивке - под роутеры прошивки народ курочит массово, а вот под камеру с этим могут быть проблемы. Хотя если есть знание линукса - взять за основу ядро от sfstudio (Wive-RTNL), оно у него хорошее, а уже юзерспейс допиливать самому, особенно в части видео.

Если знания линукса нету - найти того, у кого есть, и заинтересовать. Готового под камеру боюсь маловато будет. Ну а из заготовок - я уже сказал, wive-rtnl, еще мне кажется openwrt обещали поддержку rt3050, может она уже есть. Третий вариант - раскурочить родную прошивку, без перекомпиляции, просто добавить туда тот же наш suart - он даст проброс командного канала через сеть, а видео сама камера даст.

По железу, мне кажется оптимальный вариант - вешать на uart AVR, а на него уже железо.

В общем, погляди тему "робот на базе DIR-320", а там по аналогии можно и из камеры что-то соорудить.
boez
 
Сообщения: 1981
Зарегистрирован: 27 авг 2008, 10:45
Откуда: Харьков
прог. языки: С/С++

Re: Основа робота на D-Link DCS-930

Сообщение rx9abc » 26 окт 2011, 22:12

К слову моя веб камера оказалась почти один-в-один с модулем
http://www.sparklan.com/product.php?fun ... rod_id=161
Изображение

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

Вот на OpenWRT есть
https://dev.openwrt.org/browser/trunk/t ... nux/ramips
Правда я пока слабо представляю, что с этим делать.

И вообще с какой стороны подступиться к камере?
Открыты 3 порта:
21 (ftp) обозначен в настройках
88 (kerberos) - я сам его обозначил в настройках, к нему обращаюсь, чтобы что-то сделать с камерой.
443 (https)
8648
Последний раз редактировалось rx9abc 28 окт 2011, 20:01, всего редактировалось 1 раз.
rx9abc
 
Сообщения: 16
Зарегистрирован: 24 окт 2011, 17:19
Откуда: Челябинск
прог. языки: Delphi

Re: Основа робота на D-Link DCS-930

Сообщение rx9abc » 27 окт 2011, 22:01

Вот оригинальная заводская прошивка
http://ftp.dlink.ru/pub/Multimedia/DCS-930/

при обращении к порту 8648 выдает такой результат

Код: Выделить всё
<root>

<specVersion>
<major>1</major>
<minor>0</minor>
</specVersion>
<URLBase>http://192.168.1.35:8648</URLBase>

<device>
<deviceType>urn:schemas-upnp-org:device:Basic:1.0</deviceType>
<friendlyName>DCS-930(192.168.1.35:88)</friendlyName>
<manufacturer>D-Link</manufacturer>
<manufacturerURL>http://www.dlink.com</manufacturerURL>
<modelDescription>Wireless Internet Camera</modelDescription>
<modelName>DCS-930</modelName>
<modelNumber>DCS-930</modelNumber>
<modelURL>http://www.dlink.com</modelURL>
<UDN>uuid:f039f354-3d73-4807-bd1a-f07d680542af</UDN>
<UPC/>

<serviceList>

<service>
<serviceType>urn:cellvision:service:Null:1</serviceType>
<serviceId>urn:cellvision:serviceId:RootNull</serviceId>
<SCPDURL>/rootService.xml</SCPDURL>
<controlURL>/rootControl</controlURL>
<eventSubURL>/rootEvent</eventSubURL>
</service>
</serviceList>
<presentationURL>http://192.168.1.35:88</presentationURL>
</device>
</root>
Последний раз редактировалось rx9abc 28 окт 2011, 20:04, всего редактировалось 1 раз.
rx9abc
 
Сообщения: 16
Зарегистрирован: 24 окт 2011, 17:19
Откуда: Челябинск
прог. языки: Delphi

Re: Основа робота на D-Link DCS-930

Сообщение RootAdmin » 27 окт 2011, 22:19

1. Разобрать(распаковать) прошивку.
2. Научиться упаковывать.
Я где-то тут выкладывал инструменты.
Дым, идущий из всех устройств в помещении предвещает появление электрика.
RootAdmin
 
Сообщения: 1725
Зарегистрирован: 07 авг 2010, 21:29
Откуда: КМВ
прог. языки: C
ФИО: Андрей

Re: Основа робота на D-Link DCS-930

Сообщение rx9abc » 28 окт 2011, 17:27

а носом ткнуть можно?! :)
rx9abc
 
Сообщения: 16
Зарегистрирован: 24 окт 2011, 17:19
Откуда: Челябинск
прог. языки: Delphi

Re: Основа робота на D-Link DCS-930

Сообщение RootAdmin » 28 окт 2011, 22:10

Буду за компьютером - поищу. Я разбирал прошивку фоскам для такой же задачи. Только некогда..
Дым, идущий из всех устройств в помещении предвещает появление электрика.
RootAdmin
 
Сообщения: 1725
Зарегистрирован: 07 авг 2010, 21:29
Откуда: КМВ
прог. языки: C
ФИО: Андрей

Re: Основа робота на D-Link DCS-930

Сообщение rx9abc » 28 окт 2011, 22:25

Вот наверное как то так надо распаковывать прошивку
http://www.foxnetwork.ru/index.php/comp ... ml?lang=ru

Мрак!


Хотя вот есть прошивка в img формате, правда для совместимого устройства WCR-150GN (одинаковый набор микросхем у камеры и этого WCR)
http://sparklan.com/downloadSupport.php?support_id=257
Последний раз редактировалось rx9abc 29 окт 2011, 20:12, всего редактировалось 1 раз.
rx9abc
 
Сообщения: 16
Зарегистрирован: 24 окт 2011, 17:19
Откуда: Челябинск
прог. языки: Delphi

Re: Основа робота на D-Link DCS-930

Сообщение RootAdmin » 29 окт 2011, 12:52

Вот как делал я: forum68/topic9932-15.html#p205254
И ничего сложного... Редактируем что надо, запускаем скрипт и через 20-30 секунд готовый файл.
Дым, идущий из всех устройств в помещении предвещает появление электрика.
RootAdmin
 
Сообщения: 1725
Зарегистрирован: 07 авг 2010, 21:29
Откуда: КМВ
прог. языки: C
ФИО: Андрей

Re: Основа робота на D-Link DCS-930

Сообщение rx9abc » 29 окт 2011, 20:28

подскажите, как быть в случае с Wive-RTNL?

вот тут скачать?
http://gitorious.org/wive-rtnl-ralink-r ... s-firmware

а как залить в камеру?
Дистрибутив Wive-RTNL весит 355 МБ! Как мне его закачать в камеру?
rx9abc
 
Сообщения: 16
Зарегистрирован: 24 окт 2011, 17:19
Откуда: Челябинск
прог. языки: Delphi

Re: Основа робота на D-Link DCS-930

Сообщение boez » 29 окт 2011, 20:46

rx9abc писал(а):Дистрибутив Wive-RTNL весит 355 МБ! Как мне его закачать в камеру?

Так то ж исходники! Их еще собирать надо :)

Кстати для меня было неожиданным открытием в мире линукса (давно, когда я еще только начинал разбираться), что исходники пакета весят больше, чем исполняемые файлы. До этого я писал мелкие программульки на Делфи и там было как-то наоборот :)
boez
 
Сообщения: 1981
Зарегистрирован: 27 авг 2008, 10:45
Откуда: Харьков
прог. языки: С/С++

Re: Основа робота на D-Link DCS-930

Сообщение RootAdmin » 30 окт 2011, 21:49

Надо курить кросскомпилвцию.
Дым, идущий из всех устройств в помещении предвещает появление электрика.
RootAdmin
 
Сообщения: 1725
Зарегистрирован: 07 авг 2010, 21:29
Откуда: КМВ
прог. языки: C
ФИО: Андрей

Re: Основа робота на D-Link DCS-930

Сообщение rx9abc » 31 окт 2011, 18:55

Правильно ли я понял, что сначала собирается и заливается ядро, а потом уже добавляются необходимые пакеты?
Подойдет ли мне вот это для сборки ядра и всего остального?
https://dev.openwrt.org/browser/trunk/t ... ink/rt305x
rx9abc
 
Сообщения: 16
Зарегистрирован: 24 окт 2011, 17:19
Откуда: Челябинск
прог. языки: Delphi

Re: Основа робота на D-Link DCS-930

Сообщение Alex Gritsenko » 01 ноя 2011, 00:25

rx9abc писал(а):Правильно ли я понял, что сначала собирается и заливается ядро, а потом уже добавляются необходимые пакеты?

Не совсем =)

Как правило софтварная часть таких устройств состоит из загрузчика (bootloader/bootstrap), ядра (kernel) и корневой файловой системы (rootfs).
Загрузчик инициализирует необходимый минимум железа, делает проверки и передает управление ядру.
Ядро запускается и пытается примонтировать корневую файловую систему.
Корневая файловая система - именно и есть набор программ и скриптов, который представляется пользователю и с помощью которого пользователь взаимодействует с системой.

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

Именно rootfs поддается модификации (если это разрешено). Таким образом вам необходима цельная рабочая система в любом случае =)

rx9abc писал(а):Подойдет ли мне вот это для сборки ядра и всего остального?

Да, если удовлетворены требования по ограничению на размер оперативной и флеш-памяти.
Аватара пользователя
Alex Gritsenko
 
Сообщения: 150
Зарегистрирован: 12 июл 2005, 16:10
Откуда: Харьков
прог. языки: Lua, C, JS

Re: Основа робота на D-Link DCS-930

Сообщение rx9abc » 03 ноя 2011, 23:52

Установил Scientific Linux, скачал Wive-RTNL, запустил-сконфигурировал в соответствии с инструкцией
http://maxidrom.net/archives/581

, но в итоге ничего не компилируется:

Код: Выделить всё
/opt/Wive-RTNL/toolchain/libexec/gcc/mipsel-linux-uclibc/4.5.3/cc1: error while loading shared libraries: libmpc.so.2: cannot open shared object file: No such file or directory
make[2]: *** [arch/mips/kernel/asm-offsets.s] Ошибка 1
make[1]: *** [prepare0] Ошибка 2
make[1]: Leaving directory `/opt/Wive-RTNL/linux-2.6.21.x'
make: *** [linux] Ошибка 1
-----------------------------------PACK----------------------------------
mv: невозможно выполнить stat для «images/*.bin»: Нет такого файла или каталога
   zip warning: name not matched: images/*.bin

zip error: Nothing to do! (try: zip -r images/Acorp_WR-300N-2T2R.1.12.6.RU.05112011.bin.zip . -i images/*.bin)
---------------------------------END BUILD-------------------------------
rx9abc
 
Сообщения: 16
Зарегистрирован: 24 окт 2011, 17:19
Откуда: Челябинск
прог. языки: Delphi

След.

Вернуться в Идеи

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 30

cron