Skip to content

Gorgy70/parakeet-A

Repository files navigation

parakeet-A

Перевод проекта Parakeet с платформы Wixel на платофрму Arduino.
Данный проект основан на следующих проектах:

  1. Parakeet от Jamorham (https://jamorham.github.io, https://github.com/jamorham/wixel-xDrip)
  2. XDrip от Emma Black (http://stephenblackwasalreadytaken.github.io/xDrip, https://github.com/StephenBlackWasAlreadyTaken/xDrip)
  3. CC2500-Project от Don Browne (https://github.com/brownedon/CC2500-Project)


Сборка прибора:

Для сборки прибора необходимы следующие компоненты:
1. Контроллер Arduino Mini Pro ATmega328P 3.3V, 8MHz. Важно иметь именно такой контроллер. У котроллера на чипе ATmega168PA мало памяти, а контроллеры с напряжением 5V не будут работать.
2. Радиомодуль на базе чипа Texas Instruments CC2500, желательно с усилителем слабого сигнала.
Таких модулей не очень много в продаже, я их покупал на али у продавца e_goto Processors Store (https://www.aliexpress.com/store/1829717?spm=2114.13010608.0.0.rIN6UB).
Были куплены и испытаны два модуля:
https://www.aliexpress.com/item/Wireless-Module-CC2500-2-4G-Low-power-Consistency-Stability-Small-Size/32702148262.html?spm=2114.13010608.0.0.Y8KBPk
Данный модуль без усилителя слабого сигнала обладает слабой чувствительностью и принимает сигнал на расстояниее не более 5 метров при отстутсвии препятсвий. Модуль не принимает сигнал через стену.
https://www.aliexpress.com/item/CC2500-PA-LNA-2-4G-SPI-22dBm-Wireless-Data-Transceiver-Module/32606419424.html?spm=2114.13010608.0.0.X1eJmz
Это модуль имеет усилитель слабого сигнала и очень неплохую чувствительность и рекомендуется к покупке.
3. Модуль контроля заряда батареи.
4. Аккумулятор 3.7 В.
Я нашел аккумулятор под размер печатной платы:
https://www.aliexpress.com/item/754060-MP3-MP4-2500MAH-3-7V-Bluetooth-stereo-mobile-power-polymer-lithium-battery/32790808657.html?spm=2114.13010608.0.0.TSSHRb
но можно использовать любой подходящий.
5. Адаптер USB-Serial для заливки прошивки. Я покупал вот этот: http://robotdyn.ru/catalog/boards/usb_serial_adapter_ch340g_5v_3_3v/


Соединяем между собой модули:
VCC Радиомодуля - Контакт 3.3V Ардуино
SCLK Радиомодуля - Контакт 13 Ардуино
SI Радиомодуля - Контакт 11 Ардуино
SO Радиомодуля - Контакт 12 Ардуино
CSN Радиомодуля - Контакт 10 Ардуино
GDO Радиомодуля - Контакт 9 Ардуино (может быть любым цифровым контактом. Назначается строкой #define GDO0_PIN в прошивке)
GND Радиомодуля - Контакт GND Ардуино (земля)
LEN Радиомодуля - Соединяется или с VCC Радиомодуля или контактом А1 Ардуино. Соединяется через сопротивление 10КОм. В случае подключения на контакт А1, необходимо компилировать скетч с ключом CC2500_LEN_CONTROL
DTR GSM-Модема - Контакт 8 Ардуино (может быть любым цифровым контактом. Назначается строкой #define DTR_PIN в прошивке)
RX GSM-Модема - Контакт 7 Ардуино (может быть любым цифровым контактом. Назначается строкой #define TX_PIN в прошивке)
TX GSM-Модема - Контакт 6 Ардуино (может быть любым цифровым контактом. Назначается строкой #define RX_PIN в прошивке)
GND GSM-Модема - На минус платы зарядки
VCC GSM-Модема - На плюс платы зарядки
Минус платы зарядки - Контакт GND Ардуино (земля)
Контакт 5 Ардуино (может быть любым цифровым контактом. Назначается строкой #define YELLOW_LED_PIN в прошивке) - на желтый светодиод. Подключается последовательно с сопротивлением 100 Ом на землю.
Контакт 4 Ардуино (может быть любым цифровым контактом. Назначается строкой #define RED_LED_PIN в прошивке) - на красный светодиод. Подключается последовательно с сопротивлением 100 Ом на землю.

Для заливки прошивки в контроллер подключаем адаптер USB-Serial следующим образом:
RX адаптера USB-Serial - RX Ардуино
TX адаптера USB-Serial - TX Ардуино
GND адаптера USB-Serial - GND Ардуино
DTR адаптера USB-Serial - DTR Ардуино (можно подключить к контакту RST Ардуино через конденсатор в 1 мкФ
Данная схема подключения подходит для моего адаптера USB-Serial. Для других может потребоваться другое подключение:br> TX адаптера USB-Serial - RX Ардуино
RX адаптера USB-Serial - TX Ардуино
Правильная схема подключения адаптера выбирается экспериментально.

В файле parakeet-A.lay6 находится печатная плата прибора в формате Sprint-Layout 6 (выражаю огромную благодарность Олегу Романовскому за помощь в разработке)
К сожалению, в этой схеме не отражено подключение контакта LEN через сопротивление, а потому рекомендуется разорвать дорожку между контктами VCC и LEN радиомодуля и припаять сопротивление 10КОМ между контактом LEN радиомодуля и А1 Ардуины.
В файле parakeet-A-v3.lay6 находится печатная плата, в которой добавлена дорожка для управлением усилителем слабого сигнала.
В случае если вы строите прибор на основании этой платы вы должны переопределить контакт GDO0_PIN:
#define GDO0_PIN A2 // Цифровой канал, к которму подключен контакт GD0 платы CC2500

Заливка прошивки в прибор:

Для заливки прошивки необходимо установить Arduino IDE:
https://www.arduino.cc/en/Main/Software
Открыть проект Parakeet-A, выбрать плату "Arduino Pro or Pro Mini", выбрать процессор "ATmega 328 (3.3V, 8MHz)", выбрать порт, скомпилировать и загрузить проект.
В исходном тексте проекта можно вносить следующие изменения:
ИД трансмиттера в строке
char transmitter_id[] = "ABCDE";
Так же ИД трансмиттера можно изменить с помощью СМС с текстом TRANSMIT <ИД трансмиттера>
APN вашего провайдера мобильной связи в строке
#define my_gprs_apn "internet.mts.ru"
Этот параметр также можно изменить с помощью СМС с текстом APN
Цифровой код, который необходим для получения данных в программе xDrip. Цифровой код можно поменять в строке
#define my_password_code "12354"
или с помощью СМС с текстом PWD <цифровой код>. Цифровой код должен состоять из 5 цифр.
Адрес облачного сервиса. Адрес облачного сервиса, указанный в исходном коде прошивки является рабочим и абсолютно бесплатным, но вы можете указать свой собственный облачные сервис в строке
#define my_webservice_url "http://parakeet.esen.ru/receiver.cgi"
или с помощью СМС с текстом HTTP <адрес облачного сервиса>

About

Translate parakeet project to Arduino

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages