GPIO in Telemetry Packets

Using the location beacon development kit, configuring both GPIO0 and GPIO1 to be pullup inputs, when I receive the telemetry packet via the android sdk (code below), only GPIO1 shows the correct data. GPIO0 always shows high. Even stranger, the result from this (when the GPIO1 is pulled low) yields : true true false false, and when both are not grounded, true true true true, leading me to believe that the tlm.GPIO[2] and tlm.GPIO[3] are both linked to GPIO1? Can anyone shed some light on this topic? How do I get the value of GPIO0?

        beaconManager.setTelemetryListener(new BeaconManager.TelemetryListener() {
            @Override
            public void onTelemetriesFound(List<EstimoteTelemetry> telemetries) {
                for (EstimoteTelemetry tlm : telemetries) {
                    //if(tlm.deviceId.equals("4fced3be9e1406b134d5f2a953c76d1f"))
                    Log.d("TELEMETRY", "beaconID: " + tlm.deviceId +
                            ", temperature: " + tlm.temperature + " °C" +
                            ", GPIO: " + GPIOtoString(tlm.GPIO) + ".");

                }
            }
        });
        beaconManager.connect((new BeaconManager.ServiceReadyCallback() {
            @Override
            public void onServiceReady() {
                scanId = beaconManager.startTelemetryDiscovery();
            }
        }));```