     if (radio.available()) {
         Serial.println("Data available");
         byte recvByte = receiveByte();
+
         if (recvByte == heightInitialVal)
         {
-            //receiveData(&lastAltitude, sizeof(float));
-            Serial.println("Got altitude");
+            // TODO: Figure out why the first byte isn't already gone
+            byte buffer[sizeof(float) + 1];
+            receiveData(&buffer, sizeof(buffer));
+
+            lastAltitude = *(float*)(&(buffer[1]));
+            Serial.println("Got altitude " + String(lastAltitude));
         }
         else
         {

#if ROLE == ROLE_GROUND
    radio.openWritingPipe(addresses[0]);
    radio.openReadingPipe(primaryPipeIndex, addresses[1]);
    radio.openReadingPipe(altitudePipeIndex, addresses[2]);
#else
    radio.openWritingPipe(addresses[1]);
    radio.openReadingPipe(primaryPipeIndex, addresses[0]);

#define ROLE_SKY 1

// SET THE TARGET ROLE HERE -------------------------------
#define ROLE ROLE_GROUND
#define DISABLE_DISPLAY

RF24 radio(7, 8);

#if !defined(DISABLE_DISPLAY) && ROLE == ROLE_GROUND
LiquidCrystal display(10, 9, 5, 4, 3, 2);
#endif
byte addresses[][6] = { *(byte*)"1Node", *(byte*)"2Node" };
byte primaryPipeIndex = 1;

// TODO: Choose numbers that make sense
const byte triggerVal = 0b11111111;
