diff --git a/libraries/APM_RC/APM_RC_APM1.cpp b/libraries/APM_RC/APM_RC_APM1.cpp index cd242cd312..fa4995f8c8 100644 --- a/libraries/APM_RC/APM_RC_APM1.cpp +++ b/libraries/APM_RC/APM_RC_APM1.cpp @@ -21,7 +21,11 @@ #include "APM_RC_APM1.h" #include -#include "WProgram.h" +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WProgram.h" +#endif #if !defined(__AVR_ATmega1280__) && !defined(__AVR_ATmega2560__) # error Please check the Tools/Board menu to ensure you have selected Arduino Mega as your target. diff --git a/libraries/APM_RC/APM_RC_APM2.cpp b/libraries/APM_RC/APM_RC_APM2.cpp index f9e55fcac5..2253294990 100644 --- a/libraries/APM_RC/APM_RC_APM2.cpp +++ b/libraries/APM_RC/APM_RC_APM2.cpp @@ -20,7 +20,11 @@ */ #include "APM_RC_APM2.h" -#include "WProgram.h" +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WProgram.h" +#endif #if !defined(__AVR_ATmega1280__) && !defined(__AVR_ATmega2560__) # error Please check the Tools/Board menu to ensure you have selected Arduino Mega as your target. diff --git a/libraries/AP_ADC/AP_ADC_ADS7844.cpp b/libraries/AP_ADC/AP_ADC_ADS7844.cpp index 5eea6eb370..c3cf71cda2 100644 --- a/libraries/AP_ADC/AP_ADC_ADS7844.cpp +++ b/libraries/AP_ADC/AP_ADC_ADS7844.cpp @@ -44,15 +44,19 @@ Channel 7 : Differential pressure sensor port */ +#include "AP_ADC_ADS7844.h" + extern "C" { // AVR LibC Includes #include #include #include - #include "WConstants.h" } - -#include "AP_ADC_ADS7844.h" +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WConstants.h" +#endif // Commands for reading ADC channels on ADS7844 static const unsigned char adc_cmd[9] = { 0x87, 0xC7, 0x97, 0xD7, 0xA7, 0xE7, 0xB7, 0xF7, 0x00 }; diff --git a/libraries/AP_ADC/AP_ADC_HIL.cpp b/libraries/AP_ADC/AP_ADC_HIL.cpp index 5a0cb92583..80488682ab 100644 --- a/libraries/AP_ADC/AP_ADC_HIL.cpp +++ b/libraries/AP_ADC/AP_ADC_HIL.cpp @@ -1,5 +1,9 @@ #include "AP_ADC_HIL.h" -#include "WProgram.h" +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WProgram.h" +#endif /* AP_ADC_HIL.cpp diff --git a/libraries/AP_AnalogSource/AP_AnalogSource_Arduino.cpp b/libraries/AP_AnalogSource/AP_AnalogSource_Arduino.cpp index 3406a59a22..ff9189e79a 100644 --- a/libraries/AP_AnalogSource/AP_AnalogSource_Arduino.cpp +++ b/libraries/AP_AnalogSource/AP_AnalogSource_Arduino.cpp @@ -1,6 +1,10 @@ /// -*- tab-width: 4; Mode: C++; c-basic-offset: 4; indent-tabs-mode: nil -*- -#include "wiring.h" +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "wiring.h" +#endif #include "AP_AnalogSource_Arduino.h" float AP_AnalogSource_Arduino::read(void) diff --git a/libraries/AP_Baro/AP_Baro_BMP085.cpp b/libraries/AP_Baro/AP_Baro_BMP085.cpp index eefd9c5dad..cf2b1bd527 100644 --- a/libraries/AP_Baro/AP_Baro_BMP085.cpp +++ b/libraries/AP_Baro/AP_Baro_BMP085.cpp @@ -39,8 +39,12 @@ extern "C" { // AVR LibC Includes #include #include - #include "WConstants.h" } +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WConstants.h" +#endif #include #include // ArduPilot Mega Vector/Matrix math Library diff --git a/libraries/AP_Baro/AP_Baro_BMP085_hil.cpp b/libraries/AP_Baro/AP_Baro_BMP085_hil.cpp index 795326cb4f..71577b8d4a 100644 --- a/libraries/AP_Baro/AP_Baro_BMP085_hil.cpp +++ b/libraries/AP_Baro/AP_Baro_BMP085_hil.cpp @@ -4,8 +4,12 @@ extern "C" { // AVR LibC Includes #include #include - #include "WConstants.h" } +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WConstants.h" +#endif #include "AP_Baro_BMP085_hil.h" diff --git a/libraries/AP_Common/AP_Common.h b/libraries/AP_Common/AP_Common.h index 0ffe4aea36..64ff287f15 100644 --- a/libraries/AP_Common/AP_Common.h +++ b/libraries/AP_Common/AP_Common.h @@ -16,7 +16,11 @@ #define _AP_COMMON_H // Get the common arduino functions -#include "wiring.h" +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "wiring.h" +#endif // ... and remove some of their stupid macros #undef round #undef abs diff --git a/libraries/AP_Common/AP_Vector.h b/libraries/AP_Common/AP_Vector.h index a82018c388..bcd081a4d3 100644 --- a/libraries/AP_Common/AP_Vector.h +++ b/libraries/AP_Common/AP_Vector.h @@ -22,7 +22,11 @@ #include "../FastSerial/BetterStream.h" #include #include -#include +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include +#endif #ifdef ASSERT const static char vectorSource[] ="Vector.hpp"; diff --git a/libraries/AP_Common/c++.cpp b/libraries/AP_Common/c++.cpp index a11b97ff9b..8ea4bc4f41 100644 --- a/libraries/AP_Common/c++.cpp +++ b/libraries/AP_Common/c++.cpp @@ -9,7 +9,11 @@ #include #include "c++.h" -#include "WProgram.h" +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WProgram.h" +#endif void * operator new(size_t size) { diff --git a/libraries/AP_Compass/AP_Compass_HMC5843.cpp b/libraries/AP_Compass/AP_Compass_HMC5843.cpp index 2f6b9e72cc..6a160230bd 100644 --- a/libraries/AP_Compass/AP_Compass_HMC5843.cpp +++ b/libraries/AP_Compass/AP_Compass_HMC5843.cpp @@ -15,8 +15,12 @@ // AVR LibC Includes #include -#include "WConstants.h" #include +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WConstants.h" +#endif #include #include "AP_Compass_HMC5843.h" diff --git a/libraries/AP_DCM/AP_DCM.h b/libraries/AP_DCM/AP_DCM.h index e3a6a89950..bf1a539479 100644 --- a/libraries/AP_DCM/AP_DCM.h +++ b/libraries/AP_DCM/AP_DCM.h @@ -10,12 +10,15 @@ #include "../FastSerial/FastSerial.h" #include "../AP_Math/AP_Math.h" #include -#include "WProgram.h" #include "../AP_Compass/AP_Compass.h" #include "../AP_ADC/AP_ADC.h" #include "../AP_GPS/AP_GPS.h" #include "../AP_IMU/AP_IMU.h" - +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WProgram.h" +#endif class AP_DCM { diff --git a/libraries/AP_DCM/AP_DCM_HIL.h b/libraries/AP_DCM/AP_DCM_HIL.h index a8266fcb09..ad59081f61 100644 --- a/libraries/AP_DCM/AP_DCM_HIL.h +++ b/libraries/AP_DCM/AP_DCM_HIL.h @@ -4,11 +4,15 @@ #include "../FastSerial/FastSerial.h" #include "../AP_Math/AP_Math.h" #include -#include "WProgram.h" #include "../AP_Compass/AP_Compass.h" #include "../AP_ADC/AP_ADC.h" #include "../AP_GPS/AP_GPS.h" #include "../AP_IMU/AP_IMU.h" +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WProgram.h" +#endif class AP_DCM_HIL diff --git a/libraries/AP_EEPROMB/AP_EEPROMB.h b/libraries/AP_EEPROMB/AP_EEPROMB.h index 38b4d5019f..f9378bc802 100644 --- a/libraries/AP_EEPROMB/AP_EEPROMB.h +++ b/libraries/AP_EEPROMB/AP_EEPROMB.h @@ -6,8 +6,11 @@ #ifndef AP_EEPROMB_h #define AP_EEPROMB_h -//#include -#include "WProgram.h" +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WProgram.h" +#endif /// @class AP_EEPROMB /// @brief Object for reading and writing to the EEPROM diff --git a/libraries/AP_GPS/AP_GPS_406.cpp b/libraries/AP_GPS/AP_GPS_406.cpp index 30ca72a62c..2dbc6139bb 100644 --- a/libraries/AP_GPS/AP_GPS_406.cpp +++ b/libraries/AP_GPS/AP_GPS_406.cpp @@ -11,7 +11,11 @@ #include "../FastSerial/FastSerial.h" // because we need to change baud rates... ugh. #include "AP_GPS_406.h" -#include "WProgram.h" +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WProgram.h" +#endif static const char init_str[] = "$PSRF100,0,57600,8,1,0*37"; diff --git a/libraries/AP_GPS/AP_GPS_HIL.cpp b/libraries/AP_GPS/AP_GPS_HIL.cpp index 38db02ba05..31fa562155 100644 --- a/libraries/AP_GPS/AP_GPS_HIL.cpp +++ b/libraries/AP_GPS/AP_GPS_HIL.cpp @@ -12,7 +12,11 @@ // #include "AP_GPS_HIL.h" -#include "WProgram.h" +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WProgram.h" +#endif // Constructors //////////////////////////////////////////////////////////////// AP_GPS_HIL::AP_GPS_HIL(Stream *s) : GPS(s) diff --git a/libraries/AP_GPS/AP_GPS_IMU.cpp b/libraries/AP_GPS/AP_GPS_IMU.cpp index 8e5da67ae9..9695fd6aae 100644 --- a/libraries/AP_GPS/AP_GPS_IMU.cpp +++ b/libraries/AP_GPS/AP_GPS_IMU.cpp @@ -28,7 +28,11 @@ */ #include "AP_GPS_IMU.h" -#include "WProgram.h" +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WProgram.h" +#endif // Constructors //////////////////////////////////////////////////////////////// diff --git a/libraries/AP_GPS/AP_GPS_MTK16.cpp b/libraries/AP_GPS/AP_GPS_MTK16.cpp index 9b4f9a95b8..7531917d0b 100644 --- a/libraries/AP_GPS/AP_GPS_MTK16.cpp +++ b/libraries/AP_GPS/AP_GPS_MTK16.cpp @@ -13,7 +13,11 @@ #include "AP_GPS_MTK16.h" #include -#include +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include +#endif // Constructors //////////////////////////////////////////////////////////////// AP_GPS_MTK16::AP_GPS_MTK16(Stream *s) : GPS(s) diff --git a/libraries/AP_GPS/GPS.cpp b/libraries/AP_GPS/GPS.cpp index db5ef00d6d..87c4c8f2e3 100644 --- a/libraries/AP_GPS/GPS.cpp +++ b/libraries/AP_GPS/GPS.cpp @@ -1,7 +1,11 @@ // -*- tab-width: 4; Mode: C++; c-basic-offset: 4; indent-tabs-mode: t -*- #include "GPS.h" -#include "WProgram.h" +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WProgram.h" +#endif void GPS::update(void) diff --git a/libraries/AP_InertialSensor/AP_InertialSensor_MPU6000.cpp b/libraries/AP_InertialSensor/AP_InertialSensor_MPU6000.cpp index ccd6a67c41..3cfd3aefeb 100644 --- a/libraries/AP_InertialSensor/AP_InertialSensor_MPU6000.cpp +++ b/libraries/AP_InertialSensor/AP_InertialSensor_MPU6000.cpp @@ -3,8 +3,12 @@ #include "AP_InertialSensor_MPU6000.h" -#include #include +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include +#endif // MPU 6000 registers #define MPUREG_WHOAMI 0x75 // diff --git a/libraries/AP_Navigation/Navigation.h b/libraries/AP_Navigation/Navigation.h index 4fce19da63..b0919854b8 100644 --- a/libraries/AP_Navigation/Navigation.h +++ b/libraries/AP_Navigation/Navigation.h @@ -6,7 +6,11 @@ #define XTRACK_ENTRY_ANGLE 3000 // Max angle used to correct for track following degrees*100 #include // ArduPilot GPS Library #include "Waypoints.h" // ArduPilot Waypoints Library -#include "WProgram.h" +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WProgram.h" +#endif #define T7 10000000 diff --git a/libraries/AP_OpticalFlow/AP_OpticalFlow_ADNS3080.cpp b/libraries/AP_OpticalFlow/AP_OpticalFlow_ADNS3080.cpp index 85c6251b08..dc24db1392 100644 --- a/libraries/AP_OpticalFlow/AP_OpticalFlow_ADNS3080.cpp +++ b/libraries/AP_OpticalFlow/AP_OpticalFlow_ADNS3080.cpp @@ -24,8 +24,12 @@ */ #include "AP_OpticalFlow_ADNS3080.h" -#include "WProgram.h" #include "SPI.h" +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WProgram.h" +#endif #define AP_SPI_TIMEOUT 1000 diff --git a/libraries/AP_PeriodicProcess/AP_TimerProcess.cpp b/libraries/AP_PeriodicProcess/AP_TimerProcess.cpp index 5ba103de2f..767efacfb1 100644 --- a/libraries/AP_PeriodicProcess/AP_TimerProcess.cpp +++ b/libraries/AP_PeriodicProcess/AP_TimerProcess.cpp @@ -5,9 +5,13 @@ extern "C" { #include #include -#include "WConstants.h" #include } +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WConstants.h" +#endif uint8_t AP_TimerProcess::_period; ap_procedure AP_TimerProcess::_proc[AP_TIMERPROCESS_MAX_PROCS]; diff --git a/libraries/AP_RC/AP_RC.cpp b/libraries/AP_RC/AP_RC.cpp index 8c2db835cf..ee20c5f1e0 100644 --- a/libraries/AP_RC/AP_RC.cpp +++ b/libraries/AP_RC/AP_RC.cpp @@ -10,8 +10,12 @@ */ #include "AP_RC.h" -#include "WProgram.h" #include +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WProgram.h" +#endif // Variable definition for interrupt volatile uint16_t timer1count = 0; diff --git a/libraries/AP_RC_Channel/AP_RC_Channel.cpp b/libraries/AP_RC_Channel/AP_RC_Channel.cpp index 9c8c8a6ca4..eea2e91b33 100644 --- a/libraries/AP_RC_Channel/AP_RC_Channel.cpp +++ b/libraries/AP_RC_Channel/AP_RC_Channel.cpp @@ -11,7 +11,11 @@ #include #include -#include "WProgram.h" +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WProgram.h" +#endif #include "AP_RC_Channel.h" #define ANGLE 0 diff --git a/libraries/AP_RangeFinder/AP_RangeFinder_MaxsonarXL.cpp b/libraries/AP_RangeFinder/AP_RangeFinder_MaxsonarXL.cpp index 3e8b6019f1..20915092d6 100644 --- a/libraries/AP_RangeFinder/AP_RangeFinder_MaxsonarXL.cpp +++ b/libraries/AP_RangeFinder/AP_RangeFinder_MaxsonarXL.cpp @@ -26,7 +26,11 @@ */ // AVR LibC Includes -#include "WConstants.h" +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WConstants.h" +#endif #include "AP_RangeFinder_MaxsonarXL.h" // Constructor ////////////////////////////////////////////////////////////// diff --git a/libraries/AP_RangeFinder/AP_RangeFinder_SharpGP2Y.cpp b/libraries/AP_RangeFinder/AP_RangeFinder_SharpGP2Y.cpp index bb8a20c896..3f08bb7dc7 100644 --- a/libraries/AP_RangeFinder/AP_RangeFinder_SharpGP2Y.cpp +++ b/libraries/AP_RangeFinder/AP_RangeFinder_SharpGP2Y.cpp @@ -26,7 +26,11 @@ */ // AVR LibC Includes -#include "WConstants.h" +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WConstants.h" +#endif #include "AP_RangeFinder_SharpGP2Y.h" // Constructor ////////////////////////////////////////////////////////////// diff --git a/libraries/AP_RangeFinder/RangeFinder.cpp b/libraries/AP_RangeFinder/RangeFinder.cpp index 582e072d60..63945e5ab7 100644 --- a/libraries/AP_RangeFinder/RangeFinder.cpp +++ b/libraries/AP_RangeFinder/RangeFinder.cpp @@ -13,7 +13,11 @@ */ // AVR LibC Includes -#include "WConstants.h" +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WConstants.h" +#endif #include "RangeFinder.h" diff --git a/libraries/AP_Relay/AP_Relay.cpp b/libraries/AP_Relay/AP_Relay.cpp index 0c62abb449..800e35ea71 100644 --- a/libraries/AP_Relay/AP_Relay.cpp +++ b/libraries/AP_Relay/AP_Relay.cpp @@ -8,7 +8,11 @@ */ #include -#include "wiring.h" +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "wiring.h" +#endif #include "AP_Relay.h" diff --git a/libraries/DataFlash/DataFlash_APM2.cpp b/libraries/DataFlash/DataFlash_APM2.cpp index 72e336e2ee..a1a2897fc3 100644 --- a/libraries/DataFlash/DataFlash_APM2.cpp +++ b/libraries/DataFlash/DataFlash_APM2.cpp @@ -36,8 +36,12 @@ extern "C" { // AVR LibC Includes #include #include - #include "WConstants.h" } +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WConstants.h" +#endif #include "DataFlash_APM2.h" diff --git a/libraries/FastSerial/FastSerial.cpp b/libraries/FastSerial/FastSerial.cpp index 75c8e850f0..efc8c896e6 100644 --- a/libraries/FastSerial/FastSerial.cpp +++ b/libraries/FastSerial/FastSerial.cpp @@ -31,7 +31,12 @@ //#include "../AP_Common/AP_Common.h" #include "FastSerial.h" -#include "WProgram.h" + +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WProgram.h" +#endif #if defined(UDR3) # define FS_MAX_PORTS 4 @@ -197,6 +202,30 @@ void FastSerial::flush(void) _txBuffer->tail = _txBuffer->head; } +#if defined(ARDUINO) && ARDUINO >= 100 +size_t FastSerial::write(uint8_t c) +{ + uint16_t i; + + if (!_open) // drop bytes if not open + return 0; + + // wait for room in the tx buffer + i = (_txBuffer->head + 1) & _txBuffer->mask; + while (i == _txBuffer->tail) + ; + + // add byte to the buffer + _txBuffer->bytes[_txBuffer->head] = c; + _txBuffer->head = i; + + // enable the data-ready interrupt, as it may be off if the buffer is empty + *_ucsrb |= _portTxBits; + + // return number of bytes written (always 1) + return 1; +} +#else void FastSerial::write(uint8_t c) { uint16_t i; @@ -216,6 +245,7 @@ void FastSerial::write(uint8_t c) // enable the data-ready interrupt, as it may be off if the buffer is empty *_ucsrb |= _portTxBits; } +#endif // Buffer management /////////////////////////////////////////////////////////// diff --git a/libraries/FastSerial/FastSerial.h b/libraries/FastSerial/FastSerial.h index bc0417a7c0..5fcaa95c75 100644 --- a/libraries/FastSerial/FastSerial.h +++ b/libraries/FastSerial/FastSerial.h @@ -116,7 +116,11 @@ public: virtual int read(void); virtual int peek(void); virtual void flush(void); +#if defined(ARDUINO) && ARDUINO >= 100 + virtual size_t write(uint8_t c); +#else virtual void write(uint8_t c); +#endif using BetterStream::write; //@} diff --git a/libraries/I2C/I2C.cpp b/libraries/I2C/I2C.cpp index 52fb607f87..2b699b8cc8 100644 --- a/libraries/I2C/I2C.cpp +++ b/libraries/I2C/I2C.cpp @@ -31,9 +31,13 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ -#include "WProgram.h" #include #include "I2C.h" +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WProgram.h" +#endif diff --git a/libraries/I2C/I2C.h b/libraries/I2C/I2C.h index 32737173da..ca957312ad 100644 --- a/libraries/I2C/I2C.h +++ b/libraries/I2C/I2C.h @@ -31,8 +31,12 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ -#include "WProgram.h" #include +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WProgram.h" +#endif #ifndef I2C_h #define I2C_h diff --git a/libraries/ModeFilter/ModeFilter.cpp b/libraries/ModeFilter/ModeFilter.cpp index b7f4d3c768..cf282d56f0 100644 --- a/libraries/ModeFilter/ModeFilter.cpp +++ b/libraries/ModeFilter/ModeFilter.cpp @@ -14,7 +14,11 @@ #include "ModeFilter.h" #include -#include "WProgram.h" +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WProgram.h" +#endif // Constructors //////////////////////////////////////////////////////////////// diff --git a/libraries/RC_Channel/RC_Channel.cpp b/libraries/RC_Channel/RC_Channel.cpp index 37f90e0cdc..bd94992ab1 100644 --- a/libraries/RC_Channel/RC_Channel.cpp +++ b/libraries/RC_Channel/RC_Channel.cpp @@ -11,7 +11,11 @@ #include #include -#include "WProgram.h" +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WProgram.h" +#endif #include "RC_Channel.h" #define RC_CHANNEL_ANGLE 0 diff --git a/libraries/Waypoints/Waypoints.h b/libraries/Waypoints/Waypoints.h index ddf03378a4..2830da3bec 100644 --- a/libraries/Waypoints/Waypoints.h +++ b/libraries/Waypoints/Waypoints.h @@ -2,8 +2,12 @@ #define Waypoints_h #include -#include "WProgram.h" #include +#if defined(ARDUINO) && ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WProgram.h" +#endif class Waypoints {