Маршрутизатор на ардуино

Arduino UNO + внешний ESP8266 как WiFi точка доступа

Эта пошаговая инструкция поможет вам запустить графический интерфейс RemoteXY на контроллере Arduino UNO используя модуль ESP8266, подключенный к аппаратному последовательному порту. ESP8266 будет сконфигурирован как точка доступа. Инструкция так же может быть использована для контроллеров Arduino Nano, Arduino Mini и совместимых с подключенным внешним модулем ESP8266.

Шаг 1. Создайте графический интерфейс

Войдите в редактор RemoteXY. Найдите на левой панели инструментов элемент Кнопка, и переместите его в поле телефона. Выделите кнопку в поле телефона, что бы вокруг нее отобразилась рамка. Когда кнопка выделена, в правой панели свойств разверните вкладку Элемент. В свойстве элемента Привязать к выводу установите значение 13(LED).

Примечание. Редактор позволяет указать вывод контроллера для некоторых элементов, которые могут однозначно определить состояние вывода, например Включен или Отключен. Однако лучшим решением будет написание собственного кода управления выводами контроллера.

Шаг 2. Настройте конфигурацию

Разверните вкладку Конфигурация на правой панели свойств. Кликните в любой элемент списка, откроется окно выбора конфигурации. Настройка конфигурации позволяет указать параметры вашей схемы. Выберите следующие параметры и нажмите кнопку Применить:

  • Соединение: WiFi access point
  • Контроллер: Arduino UNO
  • Модуль: ESP8266 WiFi module
  • Среда: Arduino IDE

Вкладка Конфигурация должна выглядеть как на рисунке:

Разверните вкладку Подключение модуля и установите следующие значения настроек:

  • Интерфейс подключения: Hardware Serial
  • Порт Serial: Serial, pins 0(RX) and 1(TX)
  • Скорость обмена: 115200
  • Имя (SSID): RemoteXY
  • Пароль: 12345678
  • Порт: 6377

Настройки указывают, что ESP8266 подключается к Arduino через аппаратный Serial (контакты 0 и 1) на скорости 115200. В настройках так же указано имя точки доступа SSID и пароль точки доступа которую необходимо создать.

Примечание. Модуль ESP8266 по умолчанию настроен на скорость подключения 115200. Именно по этой причине для связи необходимо использовать аппаратный Serial. Программный Serial не может работать на такой скорости.

Шаг 3. Сформируйте скетч для Arduino

Нажмите кнопку Получить исходный код.

На открывшейся странице кликните ссылку Загрузить код и загрузите архив скетча. Распакуйте архив. В архиве размещен файл project.ino , откройте его в Arduino IDE.

Для компиляции скетча в среду Arduino IDE необходимо добавить библиотеку RemoteXY. Пройдите по ссылке загрузки библиотеки и следуйте инструкциям по ее установке.

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

Шаг 4. Подключите ESP8266 к Arduino Uno

Подключите ESP8266 к Arduino Uno по схеме приведенной ниже. Обратите внимание, что контакт 0 платы Arduino выбранный как RX соединяется с контактом TX модуля ESP8266 , а контакт 1 платы Arduino выбранный как TX с контактом RX модуля ESP8266 .

Так как уровни сигналов модуля ESP8266 составляют 3.3В а плата Arduino работает на 5В, необходимо использовать резистивный делитель напряжения для преобразования уровня выходного сигнала TX.

Примечание. Некоторые модули ESP8266 толерантны к уровню сигнала TX и вы можете не использовать конвертер напряжения если ваш модуль оказался таким.

Шаг 5. Загрузите скетч в Arduino.

Так как модуль ESP8266 подключен к основному последовательному порту платы Arduino, это будет мешать загрузке скетча. Перед загрузкой скетча необходимо отсоединить ESP8266 от контактов 0 и 1 платы Arduino. После отсоединения ESP8266 загрузите скетч в контроллер обычным способом. Подсоедините контроллер Arduino UNO к компьютеру, выберите COM порт к которому подключилась плата и нажмите кнопку загрузки. После загрузки скетча снова подсоедините контакты ESP8266.

Внимание. Отключение и подключение ESP8266 производите только при отсутствии питания на контроллере.

Если вы все сделали правильно, вы увидите мерцание голубого светодиода на модуле ESP8266 в течении около половины секунды сразу после старта Arduino . Если это произошло, то скорее всего обмен данными между Arduino и ESP8266 установлен. В течении этого времени RemoteXY производит настройку ESP8266 при помощи AT-команд для работы модуля в качестве точки доступа, и при обмене данными светодиод мерцает.

Шаг 6. Подключитесь с мобильного приложения.

Запустите приложение и нажмите кнопку + (Плюс) на верхней панели справа. В открывшемся окне выберите подключение WiFi Point.

Внимание. В соответствии с приватной политикой безопасности, приложение попросит у вас разрешение на определение местоположения. Для поиска WiFi устройств и подключения к ним приложению требуется разрешение на местоположение.

В приложении для Android

В приложении для Android нажмите кнопку поиска устройств в правом углу панели инструментов. У вас отобразятся все доступные точки WiFi. Найдите точку с именем RemoteXY и выберите ее. В открывшемся окне ввода пароля введите пароль 12345678, который мы указали на шаге 2. Если вы все сделали правильно, то далее должен открыться графический интерфейс.

В приложении для iOS

В приложении для iOS перед подключением необходимо вручную подключить смартфон к точке доступа, используя системные настройки операционной системы. Зайдите в системные настройки и подключитесь к точке доступа RemoteXY с паролем 12345678, который мы указали на шаге 2. Затем вернитесь в приложение RemoteXY, вы должны увидеть имя подключенной точки доступа. Далее нажмите кнопку Connect. Если вы все сделали правильно, то далее должен открыться графический интерфейс.

Если не подключается.

Если подключение не удалось, проверьте себя по списку ниже. Это поможет вам найти ошибку.

Модуль ESP8266 управляется при помощи AT команд, которые посылает ему Arduino под управлением библиотеки RemoteXY. Вы можете увидеть посылаемые команды открыв Serial Monitor в среде разработки Arduino IDE. Это возможно потому, что ESP8266 и Serial Monitor подключены к одному порту. Вы сможете увидеть только отправляемые AT команды, однако ответы от ESP8266 вы не сможете видеть. Но и этого достаточно что бы провести диагностику системы.

Запустите Serial Monitor, установите скорость 115200. Если необходимо нажмите кнопку сброса на контроллере.

Serial Monitor ничего не показывает

Если Serial Monitor не выводит никаких сообщений, это скорее всего означает, что Arduino не выполнят вашу программу или вы не верно настроили способ связи на шаге 2. Даже если у вас не подключен ESP8266, правильно сконфигурированная библиотека RemoteXY все равно отправляет запросы к модулю, пытаясь его обнаружить, и вы бы увидели это в Serial Monitor. Если Serial Monitor не выводит никаких сообщений, то возможны следующие неисправности:

  • Не верно сконфигурирована схема подключения и способ связи на шаге 2.
  • Внесены недопустимые изменения в код, например откорректирована структура RemoteXY или массив RemoteXY_CONF, удалены вызовы функций RemoteXY_Init() или RemoteXY_Handler(). Для проверки используйте только автоматически сформированный код, без каких либо изменений.
  • Serial Monitor не подключился к Arduino. Возможно вы не выбрали скорость 115200 после того как запустили Serial Monitor.
  • Нужный скетч не был загружен в Arduino.
  • Ваша Arduino не включена или неисправна.

Serial Monitor выводит запросы AT команд

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

ESP8266 не отвечает

Если вы видите только команды AT и больше ничего:

Это означает, что модуль ESP8266 не отвечает на команды. Проблема может быть или в неверном подключении модуля или в нем самом. Возможны следующие причины:

  • Контакты RX и TX подключены не верно, перепутаны контакты, или подключены не к тем контактам, или не подключены совсем. Проверьте по схеме на шаге 4.
  • Скорость передачи данных не совпадает, ESP8266 по умолчанию использует скорость 115200. Возможно ESP8266 был вручную сконфигурирован для работы на другой скорости.
  • Нет питания на ESP8266, при подаче питания на ESP8266 должен светиться красный светодиод.
  • Не хватает мощности источника питания 3.3 В для ESP8266. На разных платах совместимых с Arduino могут быть установлены разные 3.3 В DC-DC преобразователи с разным максимальным выходным током.
  • Модуль ESP8266 имеет прошивку в которой нет поддержки AT команд.
  • Модуль ESP8266 неисправен.
Не все AT команды обрабатываются

Если после команды AT следует последовательность команд, то модуль ESP8266 на связи с Arduino. Ниже приведена правильная последовательность команд.

Но на какой то команде связь может обрываться. Это поможет найти ошибку.

Если нет последней строчки с командой AT+CIPSERVER=1,6377 , это может говорить о том, что модуль ESP8266 имеет устаревшую прошивку.

Если последняя команда которую вы видите есть AT+RST , это означает что модуль ESP8266 не запускается после сброса, после его загрузки нет ответа ready .

Если обрыв происходит на любой другой строчке, скорее всего не хватает мощности источника питания 3.3 В для ESP8266.

Все AT команды обрабатываются но не подключается

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

  • Не хватает мощности источника питания 3.3 В для ESP8266.
  • ESP8266 имеет устаревшую прошивку.
  • Размер памяти ESP8266 составляет 4 Mbit и меньше, и актуальная прошивка не может быть прошита.

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

Источник

Шаблон интерфейса для «умного дома» на Ардуино

Здравствуйте. Целью написания данной статьи является желание поделиться с общественностью накопленной информацией и, конечно же, узнать что-то новое. Я опишу, как подключить ардуину к роутеру и как сделать шаблон веб-интерфейса для управления ардуиной, а точнее, для дискретного «дёрганья ножками».

Как это выглядит «вживую», можно посмотреть здесь.

Повествование будет вестись на основе популярного нынче роутера TL-MR3020 и Arduino Nano.

Подключаться ардуина будет к USB, вариант с UARTом хоть и проще, но всё же трудней. Такая вот суперпозиция )

Я предполагаю что у заинтересованных лиц уже есть роутер прошитый OpenWrt и установлен сервер (Lighttpd), поддерживающий PHP. Ну, или просто компьютер

Если то — истина, тогда follow my way

Будем отправлять в ардуину запрос состоящий из дескриптора (Y+=Z) и управляющего символа (например, ‘А‘- вкл d13). Дескриптор позволит отфильтровать возможный мусор и исключит случайные срабатывания.

Ардуина обрабатывает управляющий символ внутри функции switch (например, включает светодиод) и рапортует о выполнении.

Подключаем ардуину к роутерувключаем в розеткуустанавливаем необходимые пакеты.

Поскольку придётся использовать хаб, то необходимо помнить, что некоторые из них работают некорректно.

Драйвера для всех существующих ардуин, утилиту для настройки порта stty и ser2net (о нём ниже):
Тот, кто разбирается, сам выберет необходимый драйвер.

Если действия производятся на «большом компьютере», то достаточно:

Проверим, как подцепилось устройство: Может быть, придётся перегрузить.

Настроим порт утилитой stty:

Открываем вторую консоль и пишем в неё:

В первой консоли испытываем:

Если при посылке пакета ардуина перегружается (диоды моргают, но D13 не горит), тогда нужно поставить электролитический конденсатор 5-10мкФ между Reset и GND.

Не забудьте отключать его, когда заливаете скетч.

Существуют трудности у ардуин с мостом ch341


Если всё работает, то идём дальше.

Редактируем файл конфигурации ser2net:

Закомментируйте всё строчки в конце и сохраните.

Добавьте stty и ser2net в автозагрузку:

Вот так нужно сделать:

Обратите внимание. Строки инициализации должны быть записаны одной строкой (без переноса).

Перегрузите и проверьте.

Роутер отправляет в ардуину запрос от клиента состоящий из дескриптора (Y+=Z) и управляющего символа (например ‘А‘- вкл d2).Ардуина обрабатывает управляющий символ и отправляет ответ роутеру, который в свою очередь отдаст его клиенту. Работа с клиентом описана ниже.

Скачайте архив и распакуйте его в рабочую папку сервера (по умолчанию это /var/www), вот так – /var/www/knopki (у вас может быть своя папка).

В браузере зайдите по адресу ваш_роутер/knopki/. Если связь установлена, то вы увидите это:

Нажмите на D13 — загорится светодиод на ардуине и кнопка подсветится.

Суть работы

index.html раз в три секунды (интервал можно изменить) запрашивает данные у ардуины (отправляя ей символ о) с помощью функции ajax (ajax позволяет не перегружать страницу).

Запрос передаётся php-файлу (box2.php) находящемуся на сервере, который в свою очередь обращается к ардуине через сокет ser2net.

ser2net — это крохотный прокси-серверок создающий соединение между сокетом и устройством (/dev/tty*).

Как показала практика, через сокет php-файл работает лучше, нежели обращаясь к устройству напрямую.

То есть, если пхп-файл открывает устройство вот так ( fopen(‘/dev/tty*’, . ) ), то через некоторое время (несколько часов) всё зависает, а если так ( fsockopen(«localhost», 3002, $errno, $errstr, 1); ), то никаких проблем.

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

Ардуина получает команду, обрабатывает её и отправляет ответ, который по той же цепочке возвращается html-страничке (index.html).

Html-страничка разбирает ответ и выводит на экран нужную кнопку.

Если открыть ещё одну страничку (или зайти с другого устройства) и нажать какую-то кнопку, то на первой страничке (в течении 3 сек.) эта кнопка тоже станет включённой. Для этого обновление и нужно.

Нажатие на кнопку:

Нажатие на кнопку работает так же, как и «обновление», в ардуину отсылается символ включения или отключения (в зависимости от состояния), ардуина выполняет действие и посылает в ответ строку с флагами состояния (единица или ноль).

Ответ разбирается в html-странице и в зависимости от флагов выводит на экран нужную кнопку.

Для лучшего понимания откройте файл index.html из архива и посмотрите комментарии.

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

Подождите минуту и пообновляйте страницу. Если связь не устанавливается, то проверьте настройки роутера.
Проверьте права на файлы, правильность путей и устройств.

Внешний вид

Названия кнопок меняются в конце файла index.html

Позиция и размер кнопок задаются в файле knopki.css

Цвет фона меняется в файле style.css

На этом, пожалуй, стоит закончить. Спасибо тем, кто потратил своё драгоценное. Если где-то допустил неточность, то прошу поправить меня.

«Дизаин» несколько мрачноват, но это пока всего лишь шаблон для демонстрации функций.

Источник

Маршрутизатор на arduino



Как создать точку доступа на ESP8266 за 5 минут. Управление по WI-FI

Сегодня мы научимся создавать точку доступа на ESP8266 и выводить на неё свою информацию. Это нам пригодится потом когда мы будем делать web интерфейс управления нашими умными и не очень устройствами.
Делать мы это будем не используя ваш домашний роутер. Создадим точку доступа на ESP и подключимся к ней. Затем выведем HTML страницу.
Сегодня будет 3 примера.

  • Первый это мы просто просканируем все сети, что окружают вас.
  • Второй – выведем две кнопки и по управляем встроенным в плату светодиодом.
  • И третий. Выведем номер RFID карты используя скетч из предыдущих уроков.

Давайте рассмотрим пример сканирования WIFI сетей.
Мы будем использовать библиотеку ESP8266WIFI.
Здесь ничего сложного. Запускается встроенная функция сканирования сетей и в цикле выводятся все найденные сети и уровень их сигнала. Затем ждём 5 секунд и снова сканируем.
У меня этот модуль нашёл сего 7 сетей. А вот ноутбук видит гораздо больше. Это говорит о том, что ESP встроенная в NodeMCU имеет гораздо меньшую чувствительность. А что можно было ожидать от антенны нарисованной на плате. Поэтому я в основном использую модули ESP-07 с керамической антенной и разъёмом для подключения внешней антенны. И к тому же ESP не видит сети с частотой 4 ГГц, а только 2,4 ГГЦ.

Теперь давайте рассмотрим второй пример.
Это создание своей точки доступа и вывод двух кнопок на страницу для управления светодиодом. Точно так же можно управлять не только светодиодами, но и различными нагрузками, например реле.
Для этого нам понадобится подключить несколько библиотек. Но они все входят в комплект ARDUINO ide и становятся доступными после того как вы выберете плату ESP.
Здесь мы пишем название своей новой сети. Я назвал её вот так, вы же можете называть как угодно.
И задаём пароль. Если вы не укажете пароль, то у вас будет открытая сеть и каждый сможет к ней подключиться. Оно вам надо?
Это html код который будет выводиться на странице. Это простой код который выведет две ссылки с надписями включить и выключить. А выше их будет отображаться статус указывающий текущее состояние светодиода. Включен или Выключен.
Дальше идут строчки кода которые в основном отвечают за вывод в ComPort. Я по возможности всё написал по русски, и думаю вам не составит труда разобраться что и за что отвечает.
Переходим на созданную сеть. У вас при первом подключении будет выведено окно для ввода пароля. Проверяем, чтобы не было ошибок с паролем, а иначе вы не сможете войти в эту сеть.
Дальше будет вопрос подключать ли общий доступ к устройствам. Можете выбрать что угодно. Я ответил ДА.
Вот мы и подключились к созданной нами сети.
Вводим IP адрес вашего устройства. И вы ничего не должны увидеть. У меня это просто загрузился кэш страницы. Нажимая на кнопки никакого результата на плате я не вижу.
Теперь нужно войти на локальный адрес самой ESP. Он вот такой 192.168.4.1
Вот теперь это уже реальная страница, что можно увидеть нажимая на кнопки. Как видите на плате включается и выключается светодиод. И как я уже говорил, это может быть реле и управлять большой нагрузкой.

Ну и наконец третий пример.
Выведем UID номер карты на экран компьютера. Для этого загрузим следующий скетч.
Здесь у нас ещё прибавилось библиотек. Одну из них вам придётся установить, так как она не входит в комплект. Если не знаете как, о посмотрите последние видео о RFID модуле. Там подробно всё рассказано.
Мы будем работать с той же сетью, что и в предыдущем примере.
В этом HTML коде мы будем выводить номер карты которую прикладывают с считывателю карт. Это код из предыдущего видео, поэтому здесь рассказывать нечего.
Если в двух словах, то когда вы прикладываете карту к считывателю, то скетч считывает номер карты и отправляет его для вывода на web страницу.

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

Источник

Маршрутизатор на arduino

На текущий момент статья устарела, сейчас есть не дорогие, миниатюрные, с более мощным процессором роутеры WT3020
Обсуждение в разделе CyberWrt.
Теперь благодаря CyberWrt роутер можно превратить в робота или любое другое устройство за 2 клика
И для этого не нужно иметь специальных знаний, все настройки производятся из браузера Вашего ПК

Автор статьи: natural.
Предлагается такой способ автоматизации домашнего хозяйства при помощи wl500gp. Покупается arduino или его клон, я взял arduino nano (джидаи могут спаять такой сами ) Он представляет из себя avr-микроконтроллер с распаенным usb, размером 45х18мм. У arduino 14 цифровых входа\выхода, 8 аналоговых, таймеры, ацп и много другого интересного. С помощью скриптового языка python организуется связь роутера и мк.
И так, для примера заливаем такой код в мк:

int ledPin = 9 ; // LED connected to digital pin 9
void setup ()
<
// start serial port at 9600 bps:
Serial . begin ( 9600 );
// initialize the digital pin as an output:
pinMode ( ledPin , OUTPUT );
>

void loop ()
<
// if we get a valid byte
if ( Serial . available () > 0 ) <
// get incoming byte:
byte inByte = Serial . read ();
switch ( inByte )
<
case ‘H’ :
digitalWrite ( ledPin , HIGH ); // set the LED on
Serial .print( «Led is ON» );
break;
case ‘L’ :
digitalWrite ( ledPin , LOW ); // set the LED oFF
Serial .print( «Led is OFF» );
break;
>
>
>

insmod ftdi_sio
mknod /dev/ttyUSB0 c 188 0
chmod 666 /dev/ttyUSB0
stty -crtscts -hupcl 9600 >> import serial
>>> ser = serial.Serial(‘/dev/ttyUSB0’, 9600, timeout=2)
>>> ser.write(b’H’)
>>> ser.read(9)
>>> ser.write(b’L’)
>>> ser.read(9)
>>> ser.close()

Продолжение про arduino+wl500gp. Проделана работа по подключению arduino к wl500gp и к lcd-экранчику от телефона motorola c350. Экранчик позволяет рисовать цветную графику.
Что из этого получилось см. на фото. Еще приатачен скрипт для python3. И проект к arduino.
LCD показывает температуру от датчика DS18B20. Роутер периодически отправляет в arduino строку с количеством свободного места на диске и загрузке процессора. Для этого на роутере крутится скрипт на python3 и отсылает команды в роутер используя формат Firmata.
Далее можете подключать к выводам arduino реле, лампочки, моторчики, датчики, RFM-радиомодули и т.п. и развлекаться с автоматизацией.
распиновка lcd

Вложения

c350.rar (10.1 Кб, 760 просмотров)
pyduino.rar (4.6 Кб, 691 просмотров)

Нашел интересную статью, выкладываю перевод

UberFridge является доморощенный регулятор температуры брожения пива, который я построил из моего старого холодильника. Он работает на Arduino Nano и маршрутизаторе Asus WL520GU. Он может контролировать температуру брожения пива с точностью 0,1°C . Температуру графиков и настроек можно просматривать в веб-интерфейс по WiFi.

До сих пор мое пиво бродило в ведре на кухне. Поскольку пиво обычно бродит около 20° С, это нормально когда не жарко. Но прошлым летом мне пришлось остановить пивоварение на несколько месяцев, так как температура в доме поднялась до 26° C. Для того, чтобы варить круглый год и иметь больше контроля над температурой брожения я начал UberFridge проект. Краткий обзор возможностей, можно посмотреть на видео:

Характеристики
2 датчика температуры: один в брожения пива и один в холодильнике.
ПИД-регулятор пива температуры точностю 0,1° C
Интеллектуальный датчик включения-выключения контроль за температурой холодильника, чтобы держать в диапазоне -0.5 до +0.5 ° C .
Режимы работы: постоянная температура пива, постоянная температура холодильника или профиль температуры пива
4 × 20 символов OLED-дисплей
Запись данных через USB в формате JSON и CSV
Веб-интерфейс по WiFi
Графики пива и история температуры холодильника
Изменение режима работы и установки температуры
Температурный профиль в течении долгого времени может быть установлен в таблицы Google
Arduino можно перепрограммировать через веб-интерфейс

Связь между подсистемами
Самая большая проблема в создании моей бродильни в том, что она работает на самых разных уровнях, все с разными языками программирования. Я новичок в программировании на Python, PHP и JavaScript, так что я многому научился при создании этого проекта.

Arduino- алгоритм контроля температуры и интерфейс на холодильнике. (C ++)
Маршрутизатор- прошивка DD-WRT Linux с Optware с USB Flash 4GB . (Команды оболочки, в основном, выполняются на PHP)
Python скрипт, выполняет на маршрутизаторе переговоры с Arduino через USB-порт и общается с веб-сервером через AF_UNIX . Температура регистрируется в файлах формата JSON для веб-сервера и CSV файлов для архивирования. (Python с gviz_api и pyserial)
Маршрутизатор работает как веб-сервер Lighttpd для обеспечения веб-интерфейса, где можно рассматривать графики и настройки могут быть изменены. (PHP)
Интерфейс создан с JQuery UI и API визуализаций Google. Графики создаются на стороне клиента, путем объединения нескольких файлов JSON в одной графе. Температурный профиль может быть создан в таблицы Google и загружены в холодильник по нажатию кнопки. (JavaScript + AJAX запросы к PHP)

Зачем использовать Asus WL-500GU-маршрутизатор?
Чтобы раскрыть весь потенциал с открытым исходным кодом для маршрутизатора, вы можете установить DD-WRT и Optware. Это превращает роутер в WiFi + Линукс. Эта статья дает некоторые указания на действия, которые необходимо принять.
Зачем использовать Asus WL-500GU-маршрутизатор?
Asus WL-500GU маршрутизатор является одним из немногих DD-WRT подходящих маршрутизаторов, которые имеют порт USB. Это делает его отличным выбором для общения с Arduino. С концентратором USB подключенному к маршрутизатору можно подключить Arduino и USB Flash для хранения софта. Версия Asus WL-500GU имеет самую большую по обьему память, но Вы можете выбрать любой маршрутизатор Asus, и если вы хотите запустить памяти тяжелые скрипты Python то не забывайте про память.
Я купил свой маршрутизатор б/у за 15 евро, сравните эту стоимость с WiFi и MMC шилдом для Arduino за 50 долларов каждый.

Наличие маршрутизатора вместо шилда WiFi имеет много преимуществ:
-Маршрутизатор может работать как веб-сервер
-Много места для хранения (4 Гб), с файловой системой
-Доступ к файлам через SSH
-Маршрутизатор может быть WiFi клиентом в домашней сети или точкой доступа в отсутствие других сетей.

Установка DD-WRT на маршрутизаторе
Для установки DD-WRT на маршрутизаторе, чтобы раскрыть его потенциал, следуйте за этим руководством по DD-WRT вики . Я запускаю DD-WRT v24-sp2 (05/17/11) mini-USB, FTP ( SVN пересмотра 17084M NEWD Эко). Он упал в несколько раз, но пока стабильный. Я не знаю, является ли это лучшим выбором или нет?
Сначала я следовал этому руководству по TodBot начал с DD-WRT и Arduino, но только до момента установки драйверов. Я не использую JFFS, потому что я использую USB Flash, а не во внутренней памяти маршрутизатора. Я также не использоваю прокси ser2net чтобы напрямую общаться с Arduino, но я запрашиваю JavaScript PHP что бы спросить Python и чтобы поговорить с Arduino.
Мне потребовалось время, чтобы найти работающие драйверы, поэтому я их выкладываю здесь для вашего удобства.
Я не делал заметки во время установки DD-WRT, поэтому, пожалуйста, используйте инструкцию для помощи.

Установка Optware
Optware превращает ваш маршрутизатор в полнофункциональный Linux, и даже больше возможностей, чем в DD-WRT. Он поставляется со стандартным веб-сервер Lighttpd, автоматическая установка для хранения USB и многое другое.
Потому что она поставляется с менеджером пакетов очень проста в установке питона, pyserial, а все остальное мы узнаем позже. Просто для удовольствия я даже установил Irssi, клиента IRC, чтобы я мог общаться с моим холодильником. Работал очень хорошо на самом деле!
До сих пор самый простой способ установить Optware является Optware, правильный путь к Брату. Для этого мне потребовалось некоторое время, чтобы выяснить:

Источник

Adblock
detector