Arduino Mega Server
Модератор: Alex
-
- Сообщения: 2575
- Зарегистрирован: Пт ноя 06, 2015 10:22 am
- Откуда: Кишинёв
- Благодарил (а): 303 раза
- Поблагодарили: 282 раза
Re: Arduino Mega Server
Сам шилд живой? Есть где проверить на другом проекте? У меня так Дуя пытается умереть - Стартует, доходит до надписи AMS work и всё - ни в сериал,ни в веб ничего не выводит.Хотя другой код работает вроде....
AMS : ESP32 + NRF24 + 1Wire-I2C мост DS2482 + счетчик DS2423 + сеть MySensors + редактирование страниц в браузере + Upload по воздуху + SPIFFS
Re: Arduino Mega Server
Форматирование не помогло. Шилд думаю живой, файлы же видятся. Проверить не на чем.serghei писал(а):Сам шилд живой? Есть где проверить на другом проекте? У меня так Дуя пытается умереть - Стартует, доходит до надписи AMS work и всё - ни в сериал,ни в веб ничего не выводит.Хотя другой код работает вроде....
-
- Сообщения: 2357
- Зарегистрирован: Пт апр 20, 2012 12:53 pm
- Благодарил (а): 42 раза
- Поблагодарили: 262 раза
Re: Arduino Mega Server
У вас какая-то нестандартная ситуация. Я первый раз вижу «Not find partition», тем более если он видит и находит файлы.Modul SD...
SD init... OK
index.htm... found
Check..............
Files: 144
Size: 1977975
started
Modul SD Info...
SD type: SD2
Not find partition
Not find partitio
Выход только один — сначала менять карты, если не поможет, то менять шилд.
---------------------------------
Для адептов и сочувствующих:
AMS code style
http://hi-lab.ru/arduino-mega-server/ma ... code-style
-
- Сообщения: 2575
- Зарегистрирован: Пт ноя 06, 2015 10:22 am
- Откуда: Кишинёв
- Благодарил (а): 303 раза
- Поблагодарили: 282 раза
Re: Arduino Mega Server
Вот такая же фишка «Not find partition» появлялась после форматирования NTFS и если карточки побывали в разных телефонах , хотя количество файлов и тип карты определяется правильно. Пока вижу два выхода - взять НОВУЮ карту или Вашу вставить в рабочий АМС. Можно еще попробовать форматировать на низком уровне какими нибудь утилитами. Реально форматировать , а не удалять заголовок .
ОффТоп. Как рассказали адекватные продавцы , новые 2 гиговые карты уже большая редкость. Дельцы накатывают новую надпись на непонятно какие карты.
ОффТоп. Как рассказали адекватные продавцы , новые 2 гиговые карты уже большая редкость. Дельцы накатывают новую надпись на непонятно какие карты.
AMS : ESP32 + NRF24 + 1Wire-I2C мост DS2482 + счетчик DS2423 + сеть MySensors + редактирование страниц в браузере + Upload по воздуху + SPIFFS
-
- Сообщения: 182
- Зарегистрирован: Чт ноя 24, 2016 10:47 am
- Благодарил (а): 5 раз
- Поблагодарили: 25 раз
Re: Arduino Mega Server
А чем форматировали?Avd67 писал(а):Форматирование не помогло. Шилд думаю живой, файлы же видятся. Проверить не на чем.
Re: Arduino Mega Server
Пока что приходят мысли попробовать пересоздать таблицу разделов. Пошёл гуглить...serghei писал(а):Вот такая же фишка «Not find partition» появлялась после форматирования NTFS и если карточки побывали в разных телефонах , хотя количество файлов и тип карты определяется правильно. Пока вижу два выхода - взять НОВУЮ карту или Вашу вставить в рабочий АМС. Можно еще попробовать форматировать на низком уровне какими нибудь утилитами. Реально форматировать , а не удалять заголовок .
ОффТоп. Как рассказали адекватные продавцы , новые 2 гиговые карты уже большая редкость. Дельцы накатывают новую надпись на непонятно какие карты.
В основном виндой. Но пару раз пробовал софтиной, которую тут 50 страниц назад кто то рекомендовал.eGorka писал(а):А чем форматировали?Avd67 писал(а):Форматирование не помогло. Шилд думаю живой, файлы же видятся. Проверить не на чем.
PS: Попробовал принудительное зануление всех секторов и создание нового раздела. Не помогло(
-
- Сообщения: 18
- Зарегистрирован: Вс фев 05, 2017 2:19 pm
- Благодарил (а): 2 раза
- Поблагодарили: 2 раза
- Контактная информация:
Re: Arduino Mega Server
У меня было нечто похожее, когда я пытался использовать карту на 32г. Попробуйте просто другую карту, как уже выше сказал Алекс. Мне это и помогло.
Arduino Mega 2560 + Ethernet 5100
Windows 10
IDE 1.6.5
Уровень знаний: Пещерный человек
Windows 10
IDE 1.6.5
Уровень знаний: Пещерный человек
Re: Arduino Mega Server
4 карты попробовал. 1х1гб, 2х2гб, 1х32гбAndroid2i2 писал(а):У меня было нечто похожее, когда я пытался использовать карту на 32г. Попробуйте просто другую карту, как уже выше сказал Алекс. Мне это и помогло.
осталось попробовать купить новую
-
- Сообщения: 18
- Зарегистрирован: Вс фев 05, 2017 2:19 pm
- Благодарил (а): 2 раза
- Поблагодарили: 2 раза
- Контактная информация:
Re: Arduino Mega Server
Ох... И снова я со своими проблемами. >.<
Повесил 2 реле на 11 и 12 пин.
Код был культурно слизан с данного форума, но чуть-чуть под себя переделан.
Ну и, как и со всеми другими железяками, для начала решил воткнуть свой модуль на уже готовую страницу управления.
По примеру leds добавил пару строк в Ajax.
В sample2 просто заменил два LED'a на свои REL.
Но...
Как понимаете, ничего с моим реле не происходит, как бы яростно я не тыкал по кнопкам.
Направьте на путь истинный.
Что я опять сделал не так?
Повесил 2 реле на 11 и 12 пин.
Код был культурно слизан с данного форума, но чуть-чуть под себя переделан.
СпойлерПоказать
Код: Выделить всё
#ifdef RELAYS_FEATURE
byte RPIN[2] ={11,12};
byte RCTRPIN[2]={11,12};
int current_val[2];
int old_val[2];
void relInit() {
for (byte i=0; i<=1; i++){
pinMode(RCTRPIN[i],LOW);
}
Serial.print("Relays module... ");
modulRel = MODUL_ENABLE;
Serial.print("started\n");
}
void rel_control() {
for (byte i=0; i<=1; i++) {
current_val[i]=digitalRead(RCTRPIN[i]);
if (old_val[i] != current_val[i]){
if (digitalRead(RCTRPIN[i])== HIGH) {
rel_sw(i, 1);
}else {
rel_sw(i, 0);
}
old_val[i] = current_val[i];
}
}}
void rel_sw(byte num, byte stat) {
if(stat==1) {
digitalWrite(RPIN[num], HIGH);
Serial.print("REL");
Serial.print(num+1);
Serial.print(": on\n");
REL_state[num] = 1;
} else {
digitalWrite(RPIN[num], LOW);
Serial.print("REL");
Serial.print(num+1);
Serial.print(": off\n");
REL_state[num] = 0;
}
}
#endif
По примеру leds добавил пару строк в Ajax.
СпойлерПоказать
Код: Выделить всё
else if (StrContains(HTTP_req, "request_generic")) {sendXmlAnswer(cl); SetREL(); responseGeneric(cl);}
.
.
.
// Generic
void SetREL() {
if (StrContains(HTTP_req, "REL1=1")) {
REL_state[0] = 1; // save LED state
digitalWrite(11, HIGH);
} else if (StrContains(HTTP_req, "REL1=0")) {
REL_state[0] = 0; // save LED state
digitalWrite(11, LOW);
}
// REL 2 (pin 12)
if (StrContains(HTTP_req, "REL2=1")) {
REL_state[1] = 1;
digitalWrite(12, HIGH);
} else if (StrContains(HTTP_req, "REL2=0")) {
REL_state[1] = 0;
digitalWrite(12, LOW);
}
}
СпойлерПоказать
Код: Выделить всё
var strREL1 = "";
var strLED3 = "";
var strLED4 = "";
var REL2_state = 0;
var LED4_state = 0;
...
// REL 1
if (this.responseXML.getElementsByTagName('REL')[0].childNodes[0].nodeValue === "checked") {
document.REL_form.REL1.checked = true;
document.getElementById("REL1").innerHTML = "ON";
} else {
document.REL_form.REL1.checked = false;
document.getElementById("REL1").innerHTML = "OFF";
}
// REL 2
if (this.responseXML.getElementsByTagName('REL')[2].childNodes[0].nodeValue === "on") {
document.getElementById("REL2").innerHTML = "REL 2 is ON (D12)";
document.getElementById("REL2").innerHTML = "ON";
LED3_state = 1;
} else {
document.getElementById("REL2").innerHTML = "REL2 is OFF (D5)";
document.getElementById("REL2").innerHTML = "OFF";
REL2_state = 0;
}
// LED 4
if (this.responseXML.getElementsByTagName('LED')[3].childNodes[0].nodeValue === "on") {
document.getElementById("LED4").innerHTML = "LED 4 is ON (D3)";
document.getElementById("ld3").innerHTML = "ON";
LED4_state = 1;
} else {
document.getElementById("LED4").innerHTML = "LED 4 is OFF (D3)";
document.getElementById("ld3").innerHTML = "OFF";
LED4_state = 0;
}
...
request.open("GET", "request_generic" + strREL1 + strREL2 + strLED3 + strLED4 + randomNoCache(), true);
request.send(null);
setTimeout('getArduinoIO()', 1000);
strREL1 = "";
strREL2 = "";
strLED3 = "";
strLED4 = "";
} // getArduinoIO()
...
unction GetCheck() {
if (REL_form.REL1.checked) {
strREL1 = "&REL1=1";
} else {
strREL1 = "&REL1=0";
}
}
/* -----------------------------------------
service LEDs when button checked/unchecked
-------------------------------------------- */
function GetButton1() {
if (REL2_state === 1) {
REL2_state = 0;
strREL2 = "&REL2=0";
} else {
REL2_state = 1;
strREL2 = "&REL2=1";
}
}
function GetButton2() {
if (LED4_state === 1) {
LED4_state = 0;
strLED4 = "&LED4=0";
} else {
LED4_state = 1;
strLED4 = "&LED4=1";
}
...
<h3>Светодиоды,<br>использующие чекбоксы</h3>
<form id="check_RELs" name="REL_form">
<input type="checkbox" name="REL1" value="0" onclick="GetCheck()" /> REL 1 (D11)<br /><br />
</form>
</div>
</div>
<div class="cell-4">
<div class="box">
<h3>Светодиоды,<br>использующие кнопки</h3>
<button type="button" id="REL2" onclick="GetButton1()">REL 2 is OFF (D12)</button><br /><br />
<button type="button" id="LED4" onclick="GetButton2()">LED 4 is OFF (D9)</button><br /><br />
</div>
</div>
Как понимаете, ничего с моим реле не происходит, как бы яростно я не тыкал по кнопкам.
Направьте на путь истинный.

Что я опять сделал не так?

Arduino Mega 2560 + Ethernet 5100
Windows 10
IDE 1.6.5
Уровень знаний: Пещерный человек
Windows 10
IDE 1.6.5
Уровень знаний: Пещерный человек
-
- Сообщения: 2575
- Зарегистрирован: Пт ноя 06, 2015 10:22 am
- Откуда: Кишинёв
- Благодарил (а): 303 раза
- Поблагодарили: 282 раза
Re: Arduino Mega Server
Сравни очень внимательно ID Реле и LED . Что то напутал.Android2i2 писал(а):Что я опять сделал не так?СпойлерПоказатьКод: Выделить всё
// REL 2 if (this.responseXML.getElementsByTagName('REL')[2].childNodes[0].nodeValue === "on") { document.getElementById("REL2").innerHTML = "REL 2 is ON (D12)"; document.getElementById("REL2").innerHTML = "ON"; // сравни с LED - ID должен быть другой LED3_state = 1; } else { document.getElementById("REL2").innerHTML = "REL2 is OFF (D5)"; // Наверное надо D(12) document.getElementById("REL2").innerHTML = "OFF"; REL2_state = 0; } // LED 4 if (this.responseXML.getElementsByTagName('LED')[3].childNodes[0].nodeValue === "on") { document.getElementById("LED4").innerHTML = "LED 4 is ON (D3)"; document.getElementById("ld3").innerHTML = "ON"; LED4_state = 1; } else { document.getElementById("LED4").innerHTML = "LED 4 is OFF (D3)"; document.getElementById("ld3").innerHTML = "OFF"; LED4_state = 0; } ...
AMS : ESP32 + NRF24 + 1Wire-I2C мост DS2482 + счетчик DS2423 + сеть MySensors + редактирование страниц в браузере + Upload по воздуху + SPIFFS