Недавно я написал о том, как подключить rgb-светодиод к Arduino nano. Теперь же, немного с ним поигравшись, я решил поделиться алгоритмом управления светодиодом.
В предыдущей статье я привел пример кода со статическими цветами из палитры RGB, в этой хочу показать, как управлять светодиодом, чтоб цвета динамически плавно переливались и при этом не менялась яркость свечения.
Как и раньше мы будем использовать аппаратный ШИМ, да и схема подключения не поменялась.
Итак, у нас есть три основных монохромных цвета: красный, зеленый, синий. Их комбинации в различный пропорциях дают остальные цвета и оттенки. Для упрощения алгоритма одновременно будем использовать только два цвета.
Давайте глянем на пример кода.
Это скрин Arduino IDE с готовым скетчем. Как видите, есть три цикла по 255 итераций каждый. Каждая итерация разделена задержкой в 50 миллисекунд. Дайте подробно разберем один цикл.
for (int i0 = 0; i0 <= 255; i0++){
analogWrite(red1, 255);
analogWrite(green1, 0+i0);
analogWrite(blue1, 255-i0);
delay(50);
}
Поскольку наш светодиод с общим анодом, то для того, чтоб он светился, нужно подать минус на катод, тоесть шиму передаем значение 0. Красный у нас полностью выключен, так как ШИМ на него 255. Так же выключен синий, ибо шим туда тоже 255. Зеленый с параметром шима 0 светится на максимальной мощности.
При следующей итерации переменная i0 принимает значение 1, это значение добавляется к параметру шима для зеленого и он принимает значение 1, тоесть светит чуть тусклее. При этом в следующей строке эта же переменная отнимается от параметра шима синего светодиода, он начинает светится. При каждом прохождении цикла переменная i0 увеличивается на единицу, тоесть зеленый светится всё тусклее, а синий всё ярче. И так пока i0 не достигнет значения 255 - тогда зеленый будет полностью выключен, а синий будет гореть в полную мощность.
Поскольку частота микроконтроллера 16 мегагерц, то прохождение цикла будет очень быстрым. Дабы его замедлить в конце каждой итерации добавлена задержка на 50 миллисекунд в виде стандартного ардуиновского delay.
Из цикла мы выходим с выключенными красным и зеленым светодиодами и включенным синим.
В следующем цикле учтено состояние выхода из предыдущего цикла, тоесть красный и зеленый потушены, горит синий. Только теперь мы будем зажигать вместе с синим красный, а зеленый оставим в покое. Я сделал переменную i для каждого цикла отдельной, хоть она и локальная.
В следующем цикле мы тушим красный и зажигаем зеленый. За счет того, что красный и зеленый при равных пропорциях дают желтый - его мы и будем наблюдать в средине цикла.
После прохождения третьего цикла возвращаемся к первому циклу, в который войдем с горящим зеленым.
Этот код для RGB-светодиода не учитывает всю палитру цветов, ибо используются одновременно только два из них. Зато в нем реализована постоянная яркость светодиода за счет одинаковой суммы всех напряжений на светодиоде. Например, чтобы зажечь белый с той же яркостью, что и в этом коде, параметр шима для трех цветов должен быть 85, дабы в сумме получилось 255.
Для комнаты этого алгоритма вполне достаточно и с его помощью можно управлять не только одним светодиодом, но и использовать RGB-ленту, например. В дальнейшем я покажу, как можно управлять rgb светодиодом с помощью других микроконтроллеров, у которых есть ШИМ.
понедельник, 27 мая 2019 г.
среда, 15 мая 2019 г.
Arduino nano и RGB-светодиод с общим анодом
Пришли с Китая RGB-светодиоды, я ожидал партию с общим катодом, но пришли с общим анодом. Заказывал для самодельного ночника, так что особой разницы что там у них общего нет никакой. Итак, давайте разберемся для начала, что такое ргб-светодиод, как устроен и как работает.
На фото выше представлены два светодиода, один обычный, второй rgb. Как видим, у ргб 4 ноги, это обусловлено тем, что, по сути, RGB-светодиод - это три светодиода в одном корпусе: красный, зеленый и синий (Red, Gren, Blue). Общий анод и по одному катоду на три цвета. Давайте подключим наш светодиод к ардуино нано и для начала мигнем по очереди тремя цветами. Посмотрим как подключить RGB светодиод с общим анодом к ардуино.
На схеме я изобразил наш RGB-светодиод в виде трех отдельных светодиодов, соединенных вместе анодами. Этот совместный анод подсоединяем на плюс питания, через катоды будем управлять свечением, их подключаем к выводам ардуино.
На схеме я не указал резисторы, их можно подключить как на каждый анод отдельно, так и один резистор на катод. Я подключил три резистора по 240 Ом между каждым катодом и выводом ардуины. Собрал все на макетной плате, получилось как-то вот так.
Электрическая часть схемы закончилась, переходим к программной. Вся суть нашей электрической части в общем аноде - на катоды нам нужно подавать минус. То есть, конфигурируем вывод ардуины в качестве выхода, устанавливаем на нем низкое состояние (логический ноль) - светодиод светится. При высоком состоянии (логическая единица) светодиод не светится. Поскольку мы управляем яркостью свечения с помощью ШИМа, то все расчеты для высчитывания яркости придется оборачивать обратно пропорционально. ШИМ может принять одно из 256 значений - от 0 до 255 (потому как регистр восьмибитный). Для того, чтоб зажечь светодиод - нужен 0. Для того, чтоб потушить - 255. Напишем скетч для поочередного мигания тремя цветами нашего RGB-светодиода.
Заливаем скетч, наслаждаемся миганием. Для того, чтоб светодиод светил каким-то уникальным цветом, достаточно смешать три основных цвета в определенных пропорциях. Например, для получения желтого цвета смешиваем зеленый и красный, при этом синий выключен. Если смешать все три - получится белый.
Итак, у нас теперь есть схема подключения RGB-светодиода к Arduino nano, понимание как это всё устроено и как работает. Аналогичным образом можно управлять и RGB лентой. В дальнейшем рассмотрим алгоритм переливания всеми цветами радуги.
На фото выше представлены два светодиода, один обычный, второй rgb. Как видим, у ргб 4 ноги, это обусловлено тем, что, по сути, RGB-светодиод - это три светодиода в одном корпусе: красный, зеленый и синий (Red, Gren, Blue). Общий анод и по одному катоду на три цвета. Давайте подключим наш светодиод к ардуино нано и для начала мигнем по очереди тремя цветами. Посмотрим как подключить RGB светодиод с общим анодом к ардуино.
На схеме я изобразил наш RGB-светодиод в виде трех отдельных светодиодов, соединенных вместе анодами. Этот совместный анод подсоединяем на плюс питания, через катоды будем управлять свечением, их подключаем к выводам ардуино.
На схеме я не указал резисторы, их можно подключить как на каждый анод отдельно, так и один резистор на катод. Я подключил три резистора по 240 Ом между каждым катодом и выводом ардуины. Собрал все на макетной плате, получилось как-то вот так.
Электрическая часть схемы закончилась, переходим к программной. Вся суть нашей электрической части в общем аноде - на катоды нам нужно подавать минус. То есть, конфигурируем вывод ардуины в качестве выхода, устанавливаем на нем низкое состояние (логический ноль) - светодиод светится. При высоком состоянии (логическая единица) светодиод не светится. Поскольку мы управляем яркостью свечения с помощью ШИМа, то все расчеты для высчитывания яркости придется оборачивать обратно пропорционально. ШИМ может принять одно из 256 значений - от 0 до 255 (потому как регистр восьмибитный). Для того, чтоб зажечь светодиод - нужен 0. Для того, чтоб потушить - 255. Напишем скетч для поочередного мигания тремя цветами нашего RGB-светодиода.
Заливаем скетч, наслаждаемся миганием. Для того, чтоб светодиод светил каким-то уникальным цветом, достаточно смешать три основных цвета в определенных пропорциях. Например, для получения желтого цвета смешиваем зеленый и красный, при этом синий выключен. Если смешать все три - получится белый.
Итак, у нас теперь есть схема подключения RGB-светодиода к Arduino nano, понимание как это всё устроено и как работает. Аналогичным образом можно управлять и RGB лентой. В дальнейшем рассмотрим алгоритм переливания всеми цветами радуги.
пятница, 19 апреля 2019 г.
Прошивка Cisco AIR-lAP1131AG-E-K9
Поговорим о том, как прошить точку доступа cisco AIR-lAP1131AG-E-K9 в режим Stand-alone.
Итак, имеем WiFi точку с прошивкой для работы с контроллером. Задача - перепрошить для работы без контроллера. Прошивку буду использовать c1130-k9w7-tar.124-25d.JA1, скачанную с официального сайта.
Нам понадобиться пк с com-портом и консольный цисковский кабель. Точки доступа пришли без блоков питания, так что буду использовать PoE инжектор. Из программного обеспечения Putty и tftpd32.
Открываем крышку нашей циски, подключаем консольный кабель.
Запускаем Putty, скорость ком-порта стандартная, 9600. При подаче питания если используете PoE инжектор - кабель со второго порта инжектора вытаскиваем. Если блок питания - Ethernet-кабель в циску не вставляем, иначе в режим загрузчика не попадете.
Внимание! Все последующие действия стоит выполнять используя источник бесперебойного питания. Есть риск окирпичить циску если пропадет электропитание во время прошивки и вырубиться комп и/или циска.
Зажимаем кнопку reset и подаем питание на циску. В консоли видим следующее:
Xmodem file system is available.
flashfs[0]: 47 files, 15 directories
flashfs[0]: 0 orphaned files, 0 orphaned directories
flashfs[0]: Total bytes: 15998976
flashfs[0]: Bytes used: 12185600
flashfs[0]: Bytes available: 3813376
flashfs[0]: flashfs fsck took 42 seconds.
Base ethernet MAC Address: XX:XX:XX:XX:XX:XX
Initializing ethernet port 0...
Reset ethernet port 0...
Reset done!
link auto-negotiating....
auto-negotiation takes 10000 milli-seconds to complete
ERROR: timeout waiting for auto-negotiation to complete
ERROR: fail to bring ethernet link up
The system has been encountered an error initializing
ethernet port. You may need to check hardware
The system is ignoring the error and continuing boot.
If you interrupt the system boot process, the following
commands will reinitialize ethernet, tftp, and finish
loading the operating system software:
ether_init
tftp_init
boot
button is pressed, wait for button to be released...
Отпускаем кнопку, точка продолжит загрузку, ждем появления букв ap и двоеточия.
button pressed for 46 seconds
process_config_recovery: set IP address and config to default 10.0.0.1
process_config_recovery: image recovery
ap:
Теперь назначим нашей точке IP, маску и шлюз, после чего инициализируем tftp-клиент. Я сконфигурировал на своем ПК на сетевом интерфейс статический адрес 192.168.0.10 c 24-той маской, на циске с этой же маской будет 192.168.0.11. А поскольку подключение будет напрямую к ПК, то шлюзом на циске будет адрес ПК. Делается все это следующими командами (для удобства то, что пишет в консоль циска, я помечу зеленым цветом, то, что пишем в консоль мы, то есть команды, красным).
ap: set IP_ADDR 192.168.0.11
ap: set NETMASK 255.255.255.0
ap: set DEFAULT_ROUTER 192.168.0.10
ap: tftp_init
tftp_init success: You can now use tftp file system!
Соединяем наш PoE инжектор и ПК патчкордом, если шьете с использованием цисковского блока питания - то соединяйте патчкордом циску и ПК. Инициализация интерфейса выполняется следующей командой
ap: ether_init
Initializing ethernet port 0...
Reset ethernet port 0...
Reset done!
ethernet link up, 100 mbps, full-duplex
Ethernet port 0 initialized: link is up
Точка готова к перепрошивке. Давайте подготовим саму прошивку и tftp-сервер.
Для удобства я создал на диске D папку с коротким цифровым названием и положил туда файл c1130-k9w7-tar.124-25d.JA1. Запускаем tftpd32.exe, отключаем в нем dhcp, если таковой включен. Указываем папку в которой лежит прошивка и прикрепляем наш tftp сервер к интерфейсу. После чего на самой циске даем команду на скачивание прошивки
ap: tar -xtract tftp://192.168.0.10/c1130-k9w7-tar.124-25d.JA1.tar flash:
extracting info (286 bytes)
c1130-k9w7-mx.124-25d.JA1/ (directory) 0 (bytes)
c1130-k9w7-mx.124-25d.JA1/html/ (directory) 0 (bytes)
c1130-k9w7-mx.124-25d.JA1/html/level/ (directory) 0 (bytes)
c1130-k9w7-mx.124-25d.JA1/html/level/1/ (directory) 0 (bytes)
Пока наша прошивка загружается и распаковывается, cisco будет писать нам в консоль лог выполнения этого процесса. Так же лог скачивания мы можем смотреть и на стороне нашего сервера. Если все будет хорошо, то в конце будет следующее
extracting c1130-k9w7-mx.124-25d.JA1/6701.img (131328 bytes)............................
extracting c1130-k9w7-mx.124-25d.JA1/info (286 bytes)
extracting info.ver (286 bytes)
ap:
У меня с первого раза прошить не получилось, банально не хватило места для новой прошивки. В таком случае циска может выдать что-то наподобие этого
extracting c1130-k9w7-mx.124-25d.JA1/html/level/15/ap_contextmgr_scm_summary.shtml.gz (5559 bytes).
extracting c1130-k9w7-mx.124-25d.JA1/c1130-k9w7-mx.124-25d.JA1 (4758352 bytes)Error writing flash:/c1130-k9w7-mx.124-25d.JA1/c1130-k9w7-mx.124-25d.JA1 (Not enough space on device)
ap:
Если видим ошибку записи Not enough space on device - просто удаляем ненужные файлы с флеш-памяти циски. Как это делать я опишу в конце статьи. После удаления просто заново запускаем команду на скачивание и распаковку прошивки.
После того, как наша точка скачает и распакует прошивку, нам нужно с этой прошивки загрузиться. Для этого есть команда boot, параметром параметром в которой будет файл, с которого мы хотим грузится.
ap: boot flash:c1130-k9w7-mx.124-25d.JA1/c1130-k9w7-mx.124-25d.JA1
Loading "flash:c1130-k9w7-mx.124-25d.JA1/c1130-k9w7-mx.124-25d.JA1"...################
File "flash:c1130-k9w7-mx.124-25d.JA1/c1130-k9w7-mx.124-25d.JA1" uncompressed and installed, entry point: 0x3000
executing...
Дальше пойдет стандартная загрузка. По окончанию увидим следующее
Product/Model Number : AIR-LAP1131AG-E-K9
Press RETURN to get started!
CESS: RADIO crypto FIPS self test passed on interface Dot11Radio 1
*Mar 1 00:00:12.939: %LINK-3-UPDOWN: Interface FastEthernet0, changed state to up
*Mar 1 00:00:13.162: %LINK-5-CHANGED: Interface Dot11Radio0, changed state to administratively down
*Mar 1 00:00:13.162: %LINK-5-CHANGED: Interface Dot11Radio1, changed state to administratively down
*Mar 1 00:00:13.231: %SYS-5-CONFIG_I: Configured from memory by console
*Mar 1 00:00:13.235: %SYS-5-RESTART: System restarted --
Cisco IOS Software, C1130 Software (C1130-K9W7-M), Version 12.4(25d)JA1, RELEASE SOFTWARE (fc1)
Technical Support: http://www.cisco.com/techsupport
Copyright (c) 1986-2011 by Cisco Systems, Inc.
Compiled Thu 11-Aug-11 02:44 by prod_rel_team
*Mar 1 00:00:13.235: %SNMP-5-COLDSTART: SNMP agent on host ap is undergoing a cold start
*Mar 1 00:02:07.689: %LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0, changed state to up
*Mar 1 00:02:07.912: %LINEPROTO-5-UPDOWN: Line protocol on Interface Dot11Radio0, changed state to down
*Mar 1 00:02:07.912: %LINEPROTO-5-UPDOWN: Line protocol on Interface Dot11Radio1, changed state to down
*Mar 1 00:02:07.917: %LINEPROTO-5-UPDOWN: Line protocol on Interface BVI1, changed state to up
ap>
Вот мы и загрузились в режиме standalone. Осталось только закрепить успех, то есть указать нашей циске, что теперь ей следует всегда грузиться именно с этой прошивкой. Для этого заходим в режим enable (пароль Cisco с большой буквы), дальше в режим конфигурации и говорим ей с какого файла ей начинать загрузку.
ap>enable
Password:
ap#conf t
ap(config)#boot system flash:c1130-k9w7-mx.124-25d.JA1/c1130-k9w7-mx.124-25d.JA1
ap(config)#exit
ap#write
Building configuration...
[OK]
ap#
Ну вот мы и прошили нашу Cisco Aironet 1130AG Series Access Point для самостоятельной работы без контроллера. Теперь можно присвоить ей адрес (на bridge, vlan или на физический интерфейс) и зайти на web интерфейс
Настройку я уже рассматривать не буду, тут на ваше усмотрение. Инструкция подойдет от любой циски, если работали с ними - то сложного ничего нет.
Давайте теперь вернемся к той ситуации, когда шиться циска не хочет из-за недостатка свободного места на флешке. В таком случае она пишет ошибку Not enough space on device. Для начала нужно посмотреть, что же занимает место и удалить лишнее.
Как посмотреть память на Cisco.
Для просмотра дисков и файловой системы в cisco есть команда dir. Пример
ap: dir
List of filesystems currently registered:
flash[0]: (read-write)
xmodem[1]: (read-only)
null[2]: (read-write)
tftp[5]: (read-only)
Тут мы видим все файловые системы, но нам нужна только flash. Для того чтоб посмотреть flash указываем после dir нашу флешку.
ap: dir flash:
Directory of flash:/
2 -rwx 286 <date> info
9 drwx 320 <date> c1130-k9w8-mx.124-23c.JA6
4 drwx 128 <date> c1130-rcvk9w8-mx
3 -rwx 5144 <date> private-multiple-fs
7 -rwx 201 <date> env_vars
8 -rwx 92018 <date> event.log
16 drwx 320 <date> c1130-k9w8-mx.124-25e.JAL
63 drwx 0 <date> configs
64 drwx 64 <date> c1130-k9w7-mx.124-25d.JA1
3137536 bytes available (12861440 bytes used)
Как видим, у нас тут присутствуют папки с другими прошивками. Одна из них наша, которую мы только что пытались загрузить, еще одна - рабочая, с которой циска работала и третья лишняя.
Как посмотреть файлы в папке на cisco.
Чтоб посмотреть файлы в каталоге, нужно после dir добавить в команду файловую систему и ту папку, которая нас интересует. Например
ap: dir flash:c1130k9w8-mx.124-25e.JAL
Как удалить файл на Cisco.
Для удаления файлов есть команда del, ее нужно написать с полным путем к файлу, который хотим удалить. Пример
ap: del flash:c1130-k9w8-mx.124-25e.JAL/c1130-k9w8-mx.124-25e.JAL
Are you sure you want to delete "flash:c1130-k9w8-mx.124-25e.JAL/c1130-k9w8-mx.124-25e.JAL" (y/n)?y
File "flash:c1130-k9w8-mx.124-25e.JAL/c1130-k9w8-mx.124-25e.JAL" deleted
Как удалить каталог (папку) на cisco.
Для удаления папок на циско есть команда rmdir. Почему-то она не захотела удалять полные папки с ключом recursive, поэтому для удаления каталога сначала удаляем из него все файлы командой del, после чего удаляем пустую папку.
Итак, в статье я рассказал как прошить Cisco Aironet 1130AG Series Access Point, показал на примере модели AIR-lAP1131AG-E-K9. Так же рассказал как смотреть и удалять файлы из файловой системы. В дальнейшем может хватит времени на написание статьи про настройки данных точек доступа, в чем я очень сильно сомневаюсь, ибо времени, простите за тавтологию, последнее время катастрофически не хватает.
Итак, имеем WiFi точку с прошивкой для работы с контроллером. Задача - перепрошить для работы без контроллера. Прошивку буду использовать c1130-k9w7-tar.124-25d.JA1, скачанную с официального сайта.
Нам понадобиться пк с com-портом и консольный цисковский кабель. Точки доступа пришли без блоков питания, так что буду использовать PoE инжектор. Из программного обеспечения Putty и tftpd32.
Открываем крышку нашей циски, подключаем консольный кабель.
Запускаем Putty, скорость ком-порта стандартная, 9600. При подаче питания если используете PoE инжектор - кабель со второго порта инжектора вытаскиваем. Если блок питания - Ethernet-кабель в циску не вставляем, иначе в режим загрузчика не попадете.
Внимание! Все последующие действия стоит выполнять используя источник бесперебойного питания. Есть риск окирпичить циску если пропадет электропитание во время прошивки и вырубиться комп и/или циска.
Зажимаем кнопку reset и подаем питание на циску. В консоли видим следующее:
Xmodem file system is available.
flashfs[0]: 47 files, 15 directories
flashfs[0]: 0 orphaned files, 0 orphaned directories
flashfs[0]: Total bytes: 15998976
flashfs[0]: Bytes used: 12185600
flashfs[0]: Bytes available: 3813376
flashfs[0]: flashfs fsck took 42 seconds.
Base ethernet MAC Address: XX:XX:XX:XX:XX:XX
Initializing ethernet port 0...
Reset ethernet port 0...
Reset done!
link auto-negotiating....
auto-negotiation takes 10000 milli-seconds to complete
ERROR: timeout waiting for auto-negotiation to complete
ERROR: fail to bring ethernet link up
The system has been encountered an error initializing
ethernet port. You may need to check hardware
The system is ignoring the error and continuing boot.
If you interrupt the system boot process, the following
commands will reinitialize ethernet, tftp, and finish
loading the operating system software:
ether_init
tftp_init
boot
button is pressed, wait for button to be released...
Отпускаем кнопку, точка продолжит загрузку, ждем появления букв ap и двоеточия.
button pressed for 46 seconds
process_config_recovery: set IP address and config to default 10.0.0.1
process_config_recovery: image recovery
ap:
Теперь назначим нашей точке IP, маску и шлюз, после чего инициализируем tftp-клиент. Я сконфигурировал на своем ПК на сетевом интерфейс статический адрес 192.168.0.10 c 24-той маской, на циске с этой же маской будет 192.168.0.11. А поскольку подключение будет напрямую к ПК, то шлюзом на циске будет адрес ПК. Делается все это следующими командами (для удобства то, что пишет в консоль циска, я помечу зеленым цветом, то, что пишем в консоль мы, то есть команды, красным).
ap: set IP_ADDR 192.168.0.11
ap: set NETMASK 255.255.255.0
ap: set DEFAULT_ROUTER 192.168.0.10
ap: tftp_init
tftp_init success: You can now use tftp file system!
Соединяем наш PoE инжектор и ПК патчкордом, если шьете с использованием цисковского блока питания - то соединяйте патчкордом циску и ПК. Инициализация интерфейса выполняется следующей командой
ap: ether_init
Initializing ethernet port 0...
Reset ethernet port 0...
Reset done!
ethernet link up, 100 mbps, full-duplex
Ethernet port 0 initialized: link is up
Точка готова к перепрошивке. Давайте подготовим саму прошивку и tftp-сервер.
Для удобства я создал на диске D папку с коротким цифровым названием и положил туда файл c1130-k9w7-tar.124-25d.JA1. Запускаем tftpd32.exe, отключаем в нем dhcp, если таковой включен. Указываем папку в которой лежит прошивка и прикрепляем наш tftp сервер к интерфейсу. После чего на самой циске даем команду на скачивание прошивки
ap: tar -xtract tftp://192.168.0.10/c1130-k9w7-tar.124-25d.JA1.tar flash:
extracting info (286 bytes)
c1130-k9w7-mx.124-25d.JA1/ (directory) 0 (bytes)
c1130-k9w7-mx.124-25d.JA1/html/ (directory) 0 (bytes)
c1130-k9w7-mx.124-25d.JA1/html/level/ (directory) 0 (bytes)
c1130-k9w7-mx.124-25d.JA1/html/level/1/ (directory) 0 (bytes)
Пока наша прошивка загружается и распаковывается, cisco будет писать нам в консоль лог выполнения этого процесса. Так же лог скачивания мы можем смотреть и на стороне нашего сервера. Если все будет хорошо, то в конце будет следующее
extracting c1130-k9w7-mx.124-25d.JA1/6701.img (131328 bytes)............................
extracting c1130-k9w7-mx.124-25d.JA1/info (286 bytes)
extracting info.ver (286 bytes)
ap:
У меня с первого раза прошить не получилось, банально не хватило места для новой прошивки. В таком случае циска может выдать что-то наподобие этого
extracting c1130-k9w7-mx.124-25d.JA1/html/level/15/ap_contextmgr_scm_summary.shtml.gz (5559 bytes).
extracting c1130-k9w7-mx.124-25d.JA1/c1130-k9w7-mx.124-25d.JA1 (4758352 bytes)Error writing flash:/c1130-k9w7-mx.124-25d.JA1/c1130-k9w7-mx.124-25d.JA1 (Not enough space on device)
ap:
Если видим ошибку записи Not enough space on device - просто удаляем ненужные файлы с флеш-памяти циски. Как это делать я опишу в конце статьи. После удаления просто заново запускаем команду на скачивание и распаковку прошивки.
После того, как наша точка скачает и распакует прошивку, нам нужно с этой прошивки загрузиться. Для этого есть команда boot, параметром параметром в которой будет файл, с которого мы хотим грузится.
ap: boot flash:c1130-k9w7-mx.124-25d.JA1/c1130-k9w7-mx.124-25d.JA1
Loading "flash:c1130-k9w7-mx.124-25d.JA1/c1130-k9w7-mx.124-25d.JA1"...################
File "flash:c1130-k9w7-mx.124-25d.JA1/c1130-k9w7-mx.124-25d.JA1" uncompressed and installed, entry point: 0x3000
executing...
Дальше пойдет стандартная загрузка. По окончанию увидим следующее
Product/Model Number : AIR-LAP1131AG-E-K9
Press RETURN to get started!
CESS: RADIO crypto FIPS self test passed on interface Dot11Radio 1
*Mar 1 00:00:12.939: %LINK-3-UPDOWN: Interface FastEthernet0, changed state to up
*Mar 1 00:00:13.162: %LINK-5-CHANGED: Interface Dot11Radio0, changed state to administratively down
*Mar 1 00:00:13.162: %LINK-5-CHANGED: Interface Dot11Radio1, changed state to administratively down
*Mar 1 00:00:13.231: %SYS-5-CONFIG_I: Configured from memory by console
*Mar 1 00:00:13.235: %SYS-5-RESTART: System restarted --
Cisco IOS Software, C1130 Software (C1130-K9W7-M), Version 12.4(25d)JA1, RELEASE SOFTWARE (fc1)
Technical Support: http://www.cisco.com/techsupport
Copyright (c) 1986-2011 by Cisco Systems, Inc.
Compiled Thu 11-Aug-11 02:44 by prod_rel_team
*Mar 1 00:00:13.235: %SNMP-5-COLDSTART: SNMP agent on host ap is undergoing a cold start
*Mar 1 00:02:07.689: %LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0, changed state to up
*Mar 1 00:02:07.912: %LINEPROTO-5-UPDOWN: Line protocol on Interface Dot11Radio0, changed state to down
*Mar 1 00:02:07.912: %LINEPROTO-5-UPDOWN: Line protocol on Interface Dot11Radio1, changed state to down
*Mar 1 00:02:07.917: %LINEPROTO-5-UPDOWN: Line protocol on Interface BVI1, changed state to up
ap>
Вот мы и загрузились в режиме standalone. Осталось только закрепить успех, то есть указать нашей циске, что теперь ей следует всегда грузиться именно с этой прошивкой. Для этого заходим в режим enable (пароль Cisco с большой буквы), дальше в режим конфигурации и говорим ей с какого файла ей начинать загрузку.
ap>enable
Password:
ap#conf t
ap(config)#boot system flash:c1130-k9w7-mx.124-25d.JA1/c1130-k9w7-mx.124-25d.JA1
ap(config)#exit
ap#write
Building configuration...
[OK]
ap#
Ну вот мы и прошили нашу Cisco Aironet 1130AG Series Access Point для самостоятельной работы без контроллера. Теперь можно присвоить ей адрес (на bridge, vlan или на физический интерфейс) и зайти на web интерфейс
Настройку я уже рассматривать не буду, тут на ваше усмотрение. Инструкция подойдет от любой циски, если работали с ними - то сложного ничего нет.
Давайте теперь вернемся к той ситуации, когда шиться циска не хочет из-за недостатка свободного места на флешке. В таком случае она пишет ошибку Not enough space on device. Для начала нужно посмотреть, что же занимает место и удалить лишнее.
Как посмотреть память на Cisco.
Для просмотра дисков и файловой системы в cisco есть команда dir. Пример
ap: dir
List of filesystems currently registered:
flash[0]: (read-write)
xmodem[1]: (read-only)
null[2]: (read-write)
tftp[5]: (read-only)
Тут мы видим все файловые системы, но нам нужна только flash. Для того чтоб посмотреть flash указываем после dir нашу флешку.
ap: dir flash:
Directory of flash:/
2 -rwx 286 <date> info
9 drwx 320 <date> c1130-k9w8-mx.124-23c.JA6
4 drwx 128 <date> c1130-rcvk9w8-mx
3 -rwx 5144 <date> private-multiple-fs
7 -rwx 201 <date> env_vars
8 -rwx 92018 <date> event.log
16 drwx 320 <date> c1130-k9w8-mx.124-25e.JAL
63 drwx 0 <date> configs
64 drwx 64 <date> c1130-k9w7-mx.124-25d.JA1
3137536 bytes available (12861440 bytes used)
Как видим, у нас тут присутствуют папки с другими прошивками. Одна из них наша, которую мы только что пытались загрузить, еще одна - рабочая, с которой циска работала и третья лишняя.
Как посмотреть файлы в папке на cisco.
Чтоб посмотреть файлы в каталоге, нужно после dir добавить в команду файловую систему и ту папку, которая нас интересует. Например
ap: dir flash:c1130k9w8-mx.124-25e.JAL
Как удалить файл на Cisco.
Для удаления файлов есть команда del, ее нужно написать с полным путем к файлу, который хотим удалить. Пример
ap: del flash:c1130-k9w8-mx.124-25e.JAL/c1130-k9w8-mx.124-25e.JAL
Are you sure you want to delete "flash:c1130-k9w8-mx.124-25e.JAL/c1130-k9w8-mx.124-25e.JAL" (y/n)?y
File "flash:c1130-k9w8-mx.124-25e.JAL/c1130-k9w8-mx.124-25e.JAL" deleted
Как удалить каталог (папку) на cisco.
Для удаления папок на циско есть команда rmdir. Почему-то она не захотела удалять полные папки с ключом recursive, поэтому для удаления каталога сначала удаляем из него все файлы командой del, после чего удаляем пустую папку.
Итак, в статье я рассказал как прошить Cisco Aironet 1130AG Series Access Point, показал на примере модели AIR-lAP1131AG-E-K9. Так же рассказал как смотреть и удалять файлы из файловой системы. В дальнейшем может хватит времени на написание статьи про настройки данных точек доступа, в чем я очень сильно сомневаюсь, ибо времени, простите за тавтологию, последнее время катастрофически не хватает.
Подписаться на:
Сообщения (Atom)








