Archives de catégorie : APRS

LoRa_APRS_Tracker 1W DIY firmware

Une description d’un tracker APRS, basé sur le firmware « DIY 1W » de richonguzman , firmware dispo depuis https://github.com/richonguzman/LoRa_APRS_Tracker

La cœur est un ESP32 DEVKIT Wroom, relié a un module radio LoRa E22-400M30S, de chez Ebyte, sortant 30dbm. L’écran LCD, pas indispensable est un OLED I2C 0,96, le bouton poussoir, d’accès au menu que l’on retrouve sur les carte TBeam TTGO, est quand à lui relié à la Pin 15.

Coté GPS, un NEO6 ou 8M peut fonctionner sans soucis (attention au respect du baudrate).

Une LED bicolore permet d’avoir à la fois l’état du lock GPS, et le signalement des émissions des trames LoRa.

L’alimentation est confié à un LDO TPS73801, c’est un ajustable qu’il faudra finement tuné sur 5,2v pour obtenir le plein potentiel du montage…

Le tout logé dans un boitier de 70×90 mm

  • J’ai du passé un coup de Dremel sur le PCB, pour que le, connecteur SMA puisse se logé dans le boitier.
  • La pin 35 relié au bouton poussoir est restée à la masse durant la conception, un coup de scalpel a résolu le souci.
  • Le GPS étant déporté, un petit fil relie la sortie du « lock » vers l’une des pattes de la LED.
  • Reste à faire une découpe pour l’afficheur OLED … voir ci dessous.

Le Pinout de la board

// LoRa Radio
#define HAS_SX1268
#define HAS_1W_LORA
#define RADIO_SCLK_PIN 18
#define RADIO_MISO_PIN 19
#define RADIO_MOSI_PIN 23
#define RADIO_CS_PIN 5
#define RADIO_RST_PIN 27
#define RADIO_DIO1_PIN 12
#define RADIO_BUSY_PIN 14
#define RADIO_RXEN 32
#define RADIO_TXEN 25

// Display
#undef OLED_SDA
#undef OLED_SCL
#undef OLED_RST

#define OLED_SDA 21
#define OLED_SCL 22
#define OLED_RST -1

// GPS
#define GPS_RX 17
#define GPS_TX 16

// OTHER
#define BUTTON_PIN 15
#define BATTERY_PIN 35

LoRa & l’APRS

Ayant vue passer des trucs intéressant sur Tweeter à propos de L0Ra et d’une utilisation amateur, j’ai donc commandé via Aliexpress une carte TTGo LoRa32 V2.1 433Mhz ESP32 et une carte T-Beam 433MHZ ESP32 avec GPS, le tout pour 45€ env, l’une devant servir d’iGate pour la réception, et l’autre de tracker, les Chinois ayant fait l’erreur de m’envoyer deux cartes TTGo LoRa32 V2.1 433Mhz ESP32,  j’ai donc utilisé la deuxième en tracker en y rajoutant un module GPS NEO6 qui trainai au fond d’un tiroir. Ces modules relativement compact sont également équipés d’un contrôleur Wifi/Bluetooth, d’un chargeur de batterie Lipo, d’un écran OLED. Il existe des version 868 et 915Mhz. Compter 20dbm de puissance max de sortie.

HARDWARE

Commençons par remplacer les antennes ridicules fournis, par quelques chose d’un peu plus performant, un fouet taillé pour 433.775

SOFTWARE

Le code original viens de oe3cjb https://github.com/oe3cjb/TTGO-T-Beam-LoRa-APRS j’y est supprimer la partie émission WX, capteur température/ humidité.

RECEPTION

Coté réception, sur une Comet GP1, pas vraiment bien dégagé et sur le coté d’un bâtiment, premier essai concluant à une portée d’environ 1km en ville, des essais supplémentaire sont a faire avec une Nagoya UT106UV en mobile.

Pour la programmation de l’iGate voir le site de F4WAT ou le github, qui propose le stockage des données RSSI et SNR pour analyse de couverture.

https://github.com/jdenoy/LoRa_APRS_iGate/

AMELIORATION/RESTE A FAIRE:

  • Mettre une led pour signalé le TX.
  • Rajouter une interface ETH/LAN en PoE sur le récepteur pour monter sur un pylône.
  • Faire des essais avec un ampli de quelques watts.

UPDATE: 7/4/2021

Version Ethernet disponible! merci a OE5BPA pour la carte d’adaptation permettant d’accueillir le LCD et le module L0Ra. Il faut maintenant mettre en boite etanche et trouvé un point haut …

UPDATE: 24/5/2021

Mise en boite étanche faite, un connecteur USB permet de reprogrammé sans ouvrir la boite, manque plus qu’une bonne antenne.

Ressources:

http://f5kmy.fr/spip.php?article510
https://www.f4wat.xyz/2020/12/28/lora-aprs-i-gate-tracker
https://wiki.fr-emcom.com/lora (un Wiki avec des idées et infos intéressantes)
https://www.lora-aprs.info/docs/LoRa_APRS_iGate/quick-start-guide/ (Guide de démarrage en Allemand)

APRS Tracker, with DRA818V

Currently testing and prototyping, based on DRA818V with Atmega328P and GPS EM406, RF out up to 8W with a RA08H1317M from Mitsubishi. It’s around the same design of this, but with some modifications on the Trackuino code, something like called « SmartBeaconing™« , in this case i try to send APRS frames only when the tracker move above or under certain conditions, like speed or movement.

I’m currently working on the final testing of the prototype.

Update 4/6/2018

Finally, the board is running fine, compared to the original version, the ADXL sensor, has been removed, RA07M1317M is replaced by RA08H1317M, better to managed, (and with more output power) assumed to be installed into the car, the GPS is powered directly by the positive 5v regulator.

Power section: To avoid maximum of parasitic on the power line, L1, a 10uH choke, and 1000uf tantale cap.
DRA818v RF chip, GPS, MCU are powered through 7805 regulator (DPak 1.5A).

MCU: ATMega 328P from Arduino, classic 16Mhz crystal oscillator with 2x 22pf cap, modulation come out from MCU on pin 11, level can be adjusted with 20k adj resistor, 100nf in // on the filter is finally removed.

RF section: RA08H1317M give 9W of output power (@13.8v), this PA need only 20mw at input, so a attenuator is placed in front with a low pass filter from Minicircuit, LFCN160. The PA is powered directly from Vcc 13.8v, the Ptt line drive also the gate pin via a LP2981-3.3 regulator.

The DRA818V is programmed at startup on 144.800 mhz QRG, the power level is around 400mw. Resistor divider are insert on the dataline (3.3k/1.8k) since the MCU is 5v level serial. PTT is drive by a 2n7002k , PD line is a nightmare to drive, so for the moment this pin is tied to Vcc, so the module is always awake. This module need 4.5v max on Vcc, we use a 1n4007 (d2) diode to decrease value to 4.4v.

GPS: Old EM406 in my case, any kind of gps can be use, like the last Neo7, or 8…

Your APRS tracker will work only when you will be in your car, and no powered all the time, basically to manage the GPS power, i have put a 2n7002 in case to power off the unit, it was not a good idea, so i have tied directly GPS Vcc to +5v regulator.

Other components: Small buzzer is plug on pin 7, little melodies is hear when the board is powered, traffic LED is on MCU pin 8, power LED before 7805, LM60 temperature sensor on pin A0, VCC level is measured on pin A2, with 3.3k/10k resistor divider.

Components no needed on the prototype:

  • 10k pulldown on LP2981-3.3
  • Serial resistor on the lp2981 Enable pin => replaced by a strap
  • 2N7002 on the power line of GPS => Read above, tied GPS Vcc to +5v
  • 100nf on R/C filter => Remove it, better modulation quality

Sketch: Sketch for Arduino is based on https://github.com/trackuino/trackuino code, i have removed useless files, like buzzer, _pic32 file related ect …

You need to edit config.h to set some parameters like your callsign, and tx’ing delay,

#define APRS_PERIOD_HIGH 30 // define aprs send interval when your vehicle run
#define APRS_PERIOD_LOW 60 //1minute

In the loop your can see, the read of speed variable, « gps_speed », this trick can do the txing depending of the speed.

 

 

 

 

Harmonic: LFCN160 from Mini-circuit do the job, a little peak still present 289.600 mhz (harmonic type 2) @ -50db

Measures:

Vcc (I)A P output P consumption
13,8 1.730 ~9w 24w
12 1.630 ~7.8w 19.5w
9 1.30 ~4.5w 11.7w
5 0.6 ~730mw 3w
Tracking mode: 160ma
With GPS locked: 150ma
Tx @ 13,8v: 1,7A

 Improvements:

  • GPS DATALogger: ADXL sensor was removed to replaced by a SDCard socket, this function is not implemented yet.
  • Work on DRA818V PD line to improve power consumption.
  • Do a TRUE SmartBeaconing™ , right now APRS broadcast is only depending of speed, if speed is above 3km/h, APRS packet is send every 30sec, else, every 60sec.
  • Other idea ?

Download Schematic, PCB, Arduino sketch

Resources:

LP2981-3.3 Regulator
VHF RF DRA818V
MC7805CD2TR4G Regulator
RA08H1317M – Mitsubishi Electric
EM406 GPS
LM60 Temperature sensor

09/2018

One unit builded by John, KC2SFW (USA)

I have some extra pcb available, contact me

Weekend project, do APRS with your KT8900 transceiver

 

This little cheap Chinese transceiver can be found on Ebay, or Aliexpress for 60$, supporting VHF/UHF, can Tx up to 25W. A complete description and testing page is available on G7EOB website

You plan to drive for a long way? broadcast your position on APRS Network, with some components you can build a small tracker. Arduino sketch is based from Trackuino, EA5HAV Javi

Trackuino is more intended to be used on ballon flights, but can work for APRS general purpose.

With some minor modifications, the tracker can send position depending of speed of the vehicle. Reading var gps_speed parser and set the APRS_PERIOD do the job.

Just bellow, is the schematic, D3 is used to generate the modulation, through the trimmer you can adjust the modulation level, D12 is used to saturate the transistor and do the PTT, GPS1 is GPS shield, but for my test i have used a old EM406. A0 is used to monitor the battery voltage with a resistor divider. 10k/3.3k, a temperature sensor LM60, is connected A1. All parameters, like callsign, Gps baudrate, pin assignation …. can be set into the config.h file

Shematic

You need:

  • Arduino Nano , or Mini, i prefer Nano because it’s powered @5v, so no need external level shifter for the GPS connection.
  • GPS head, like EM406, or a GPS Board (Neo 7M) …
  • A temperature sensor LM60 (option)
  • Two resistors to monitor the battery voltage (option)
  • 7805 voltage regulator with two tantalum capacitor
  • A 2n2222 transistor to drive the PTT
  • A 10K trimmer with a 1uf cap
  • A short network RJ45 cable
  • Wire, pin header, veroboard

Yes, i need a little nice box

27.05.2018

It’s more clean with a true pcb and a nice box.

Download file (pcb ARES file, Arduino sketch, shematic …)