Squeak firmware on GitHub

A project log for Squeak: GPS pet tracker

Squeak is a LoRaWAN GPS pet tracker with a very long battery life. It allows you to ask your pets to share their location

mihaicuciucmihai.cuciuc 01/13/2023 at 06:060 Comments

You can find the Squeak firmware for the PIC18LF46K22 running in the RN2483 on GitHub. To build it you need MPLABX v5.50 and the free version of the XC8 v1.45 compiler.

This should also work as a good starting point for simple applications running directly on the RN2483, as most of the fancy things that make up the RN2483 have been stripped out.

The serial port available on the PCB header is available if you comment out #define MCP9701 in eusart1.h. If you have that definition you can use the serial port header for the temperature measurement chip.

Microchip LoRaWAN stack

The only change I made to the stock LoRaWAN stack provided by Microchip is the addition of the LORAWAN_CanSend() to lorawan.c, which reports if the stack can send a packet or not. The stack may be unable to tx because of duty cycle restrictions, and without LORAWAN_CanSend() the only way to tell is to actually transmit a packet. For Squeak this could be a problem if you just spent a lot of battery on getting a GPS fix and then cannot inform the user of this fresh location.