Gboard Pro (описание, нюансы подключения, советы)

sadko2000
sadko2000 аватар
Offline
Зарегистрирован: 05.03.2014

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

http://imall.iteadstudio.com/media/catalog/product/cache/1/image/9df78eab33525d08d6e5fb8d27136e95/i/m/im130514001_8.jpg

Построена на ATMEGA2560, на плате есть GSM/GPRS на SIM900 с 3,5-разъемами микрофона и наушников, интерфейс NRF24, разъем XBee, слот для MicroSD карт, разъем для подключения стандартных TFT LCD с тачем, питание 7-23В. GSM-антенна подключается либо напрямую к разъему на плате, либо через удлинитель, что весьма удобно. Даташит, схема. USB нет, программируется через USB-UART.

Кому нужны одновременно и GSM/GPRS, и интерфейсы радио-модуля, SD-карты и TFT-экранчика с тач-скрином – must have, как говорится. Я приобретал для своего "слегка умного дома", в котором десяток радиодатчиков разбросаны по дому и территории и меряют температуру, влажность, напряжение питания своей же батарейки, напряжение/ток по 3-м фазам, температуру воды, влажность почвы, уровень освещения и передают по радиоканалу на базу. А база (на GBoard Pro) собирает эти данные, сохраняет на SD-карте для дальнейшего возможного анализа мной на ПК, информирует через СМС при выходе параметров за разрешенный диапазон/при пропадании напряжений на входе, по входящим СМС управляет нагрузками (электрокотел, бойлер, конвекторы, насос), отправляет некоторые данные на Народный мониторинг и т.п. И удобно работать с TFT-экранчиком с тачем - просмотр/управление параметрами сразу с экрана мне удобнее, чем кнопками.

Еще не все сделал, но больше половины уже работает.

Итак, по самой плате. Технологические огрехи есть: NRF24 на отдельный штырьковый разъем не выведен, надо подпаиваться самому (что скажет магазин о гарантии в этом случае?). Расположен не грамотно – радиомодуль залезает на соседний разъем, а при использовании TFT-экрана - так вообще не помещается. И программно его решили не к аппаратной SPI-шине прицепить, а к произвольным пинам, чтобы творческому человеку было куда время потратить :) А ножку прерывания напрямую на мегу2560 (PE7) подали.

Итак, решения по NRF24: библиотеку берите здесь. Инициализация проста:

iBoardRF24 radio(12, 11, 8, 7, 9, PE7);

Если обрабатываете прерывание, то, например, так:

attachInterrupt(7, checkRadio, FALLING);

 

TFT с тачем работают почти сразу – инициализацию тача подправьте:

UTouch myTouch(6, 5, 48, 3, 2);

 

SD-карту читает, пишет. Но:

chipSelect = 4, pinMode(53, OUTPUT).

 

GSM – в библиотеке поменяйте в GSM_shield.h пины для софт-старта и ресета:

// pins definition

#define GSM_ON              46 // connect GSM Module turn ON to pin 77

#define GSM_RESET           47 // connect GSM Module RESET to pin 35

В остальном -  звонит, СМСит, отвечает. GPRS пока только осваиваю.

 

Да, еще. Прицепил RTC (DS1307), чтобы односекундные импульсы давало + часы. Но от 3.3В не хотела работать, подцепил к 4.2В на плате (поищите по схеме, куда удобнее подпаяться, если нужно). Кому мало цифровых пинов – используйте аналоговые (но без PWM). Либо без дисплейчика обходитесь (или дисплей с последовательным интерфейсом берите) и разъем TFT Ваш.

http://uaimage.com/t/3788416_0e779925.jpg

Tomasina
Tomasina аватар
Offline
Зарегистрирован: 09.03.2013

сколько сводобных входов/выходов?

Если не использовать дисплей, эти пины можно полноценно использовать, или они завязаны на какой-то контроллер?

С SD картой проблем нет?

sadko2000
sadko2000 аватар
Offline
Зарегистрирован: 05.03.2014

По SD-карте: пока бегло проверил только инициализацию карты и вывод инфо о карте и списка файлов. Запись на карту проверю позже.

Да, все пины дисплейного интерфейса можно использовать по своему усмотрению. Смотрим на распиновку в даташите и подключаем. Свободных, которые на отдельный разьем выведены, не так много (гляньте даташит, пожалуйста).

Игрался с GSM/GPRS вчера, удалось все запустить, но тоже с тюнингом библиотек. Опишу, когда закончу.

sadko2000
sadko2000 аватар
Offline
Зарегистрирован: 05.03.2014

Tomasina пишет:

С SD картой проблем нет?

Прогнал тестовый скетч CardInfo на SDHC-карте 16 Гб. Результат не понравился: формат (SDHC) распознан правильно, а вот емкость - нет. Выдало:

Initializing SD card...Wiring is correct and a card is present.
Card type: SDHC
Volume type is FAT32
Volume size (bytes): 3018850304
Volume size (Kbytes): 2948096
Volume size (Mbytes): 2879

 

Взял библиотеку SDfatlib - все работает корректно (const uint8_t SdChipSelect = 4;), в т.ч. с чтением/записью.

Card successfully initialized.
Card size: 15912 MB (MB = 1,000,000 bytes)
Volume is FAT32, Cluster size (bytes): 32768

 

sadko2000
sadko2000 аватар
Offline
Зарегистрирован: 05.03.2014

Результаты опытов с GSM/GPRS.

Берем библиотеку GSM-GPRS-GPS-Shield-GSMSHIELD (например, отсюда)

Вносим мелкие правки.

в GSM.h поменять:

  • #define GSM_ON   46
  • #define GSM_RESET   47
  • #define MEGA раскомментировать,
  • //#define UNO закомментировать

в HWSerial.cpp:

  • заменить все Serial1 на Serial2
  • раскомментировать #define MEGA

Почему-то любит стартовать именно с gsm.begin(9600) (а не 2400, как часто указывается в примерах скетчей)

sadko2000
sadko2000 аватар
Offline
Зарегистрирован: 05.03.2014

Порадовало, что в моем sim900 стоит прошивка:
Revision:1137B01SIM900M64_ST_ENHANCE

т.е. не стандартная, а "All-in-one", это порадовало (подробнее)

Cpilot
Offline
Зарегистрирован: 31.10.2015

Уважаемый sadko2000! Как бы с вами пообщаться на предмет консультации по Gboard Pro:-)?

И в любом случае интересно, на какой стадии ваш проект на этой плате.

sadko2000
sadko2000 аватар
Offline
Зарегистрирован: 05.03.2014

Первая мысль была - так напишите в личку. А она тут есть? :)

Проект в режиме затяжной паузы оказался...

Cpilot
Offline
Зарегистрирован: 31.10.2015

Уважаемый sadko2000!

Не закончилась ли пауза в вашем проекте? Тоже купил эту плату для управления домом.. Вы не пробовали на ней web-сервер запустить? Поделитесь опытом, если он есть, пожалуйста:)!

sadko2000
sadko2000 аватар
Offline
Зарегистрирован: 05.03.2014

Не, пока занят другим, сорри.

Cpilot
Offline
Зарегистрирован: 31.10.2015

Простите новичка, но подскажите, что нужно писать в скетче, чтобы на выводах EB платы Gboard Pro что-то изменилось? Blink  с 13-м "выводом" работает, диод мигает, а когда вместо номера 13 пишу любой другой - то на выходах никого. И еще, а как назначить ыводы 40-пинового разъема как просто цифровые входы-выходы?

Спасибо!