Hackster is hosting Hackster Holidays, Ep. 5: Livestream & Giveaway Drawing. Watch previous episodes or stream live on Friday!Stream Hackster Holidays, Ep. 5 on Friday!
Meghdoot07
Published © GPL3+

Smart Farm - The future of agriculture

An open-source framework to democratise farming and make it data-driven

AdvancedShowcase (no instructions)Over 1 day3,587
Smart Farm - The future of agriculture

Things used in this project

Hardware components

Hover Labs Generic Q450 drone frame
×1
Motor Driver/Controller, Three Phase BLDC/PMSM Gate Driver
Motor Driver/Controller, Three Phase BLDC/PMSM Gate Driver
×1
Pixhawk Mini
3DR Pixhawk Mini
×1
Camera Module
Raspberry Pi Camera Module
×1
Gravity: IR Positioning Camera For Arduino
DFRobot Gravity: IR Positioning Camera For Arduino
×1
Li-Ion Battery 1000mAh
Li-Ion Battery 1000mAh
×1

Software apps and online services

Node-RED
Node-RED
MIT App Inventor 2
MIT App Inventor 2
Arduberry Mission Planner
STM32CUBEPROG
STMicroelectronics STM32CUBEPROG
Arduino IDE
Arduino IDE
AWS IoT
Amazon Web Services AWS IoT

Hand tools and fabrication machines

Hot glue gun (generic)
Hot glue gun (generic)
Soldering iron (generic)
Soldering iron (generic)
Repair Kit, Phone / Tablet
Repair Kit, Phone / Tablet

Story

Read more

Code

Helium_Getting started

C/C++
This is a code sample to get started using the Helium Starter kit
#include "LoRaWAN.h"

const char *devEui = "FILL_ME_IN";
const char *appEui = "FILL_ME_IN";
const char *appKey = "FILL_ME_IN";

// Max Payload 53 Bytes for DR 1
const uint8_t payload[] = "Hello, World!";

void setup( void )
{
    Serial.begin(9600);
    
    while (!Serial) { }

    // US Region
    LoRaWAN.begin(US915);
    // Helium SubBand
    LoRaWAN.setSubBand(2);
    // Disable Adaptive Data Rate
    LoRaWAN.setADR(false);
    // Set Data Rate 1 - Max Payload 53 Bytes
    LoRaWAN.setDataRate(1);
    // Device IDs and Key
    LoRaWAN.joinOTAA(appEui, appKey, devEui);

    Serial.println("JOIN( )");
}

void loop( void )
{
    if (LoRaWAN.joined() && !LoRaWAN.busy())
    {
        Serial.print("TRANSMIT( ");
        Serial.print("TimeOnAir: ");
        Serial.print(LoRaWAN.getTimeOnAir());
        Serial.print(", NextTxTime: ");
        Serial.print(LoRaWAN.getNextTxTime());
        Serial.print(", MaxPayloadSize: ");
        Serial.print(LoRaWAN.getMaxPayloadSize());
        Serial.print(", DR: ");
        Serial.print(LoRaWAN.getDataRate());
        Serial.print(", TxPower: ");
        Serial.print(LoRaWAN.getTxPower(), 1);
        Serial.print("dbm, UpLinkCounter: ");
        Serial.print(LoRaWAN.getUpLinkCounter());
        Serial.print(", DownLinkCounter: ");
        Serial.print(LoRaWAN.getDownLinkCounter());
        Serial.println(" )");

        // Send Packet
        LoRaWAN.sendPacket(1, payload, sizeof(payload));
    }

    delay(20000); //20 Seconds
}

Credits

Meghdoot07

Meghdoot07

8 projects • 16 followers
IoT developer with interest in robotics, automation and electric vehicles and specialising in FPGA based vision applications at the edge

Comments