-
Notifications
You must be signed in to change notification settings - Fork 165
MacOS
This page documents the steps to install Arduino IDE on macOS, set up your Dev environment, and prepare to upload the CDP on your electronics. This page will go through:
- Part One: Install Arduino IDE on MacOS
- Part Two: Install Libraries and Dependencies
- Part Three: Upload CDP to electronics.
Some helpful links:
** macOS Big Sur Fix** If your IDE does not compile because of an ESPtool.py problem run the following commands in order and then restart Arduino IDE:
mkdir -p ~/Documents/Arduino/hardware/espressif && \
cd ~/Documents/Arduino/hardware/espressif && \
git clone https://github.com/espressif/arduino-esp32.git esp32 --depth 1 && \
cd esp32 && \
git submodule update --init --recursive --depth 1 && \
cd tools && \
python get.py
-
Download and install the Arduino IDE and make sure to select MacOS
-
Install the Silicon Labs USB to UART Bridge VCP Driver From Downloads Page. Note: Make sure Silicon Labs has the necessary security preferences (go to System Preferences -> Security and Privacy -> General and allow Silicon Labs).
-
Install the ESP32 core Library by opening the Arduino IDE menu and go to [File] > [Preferences]. In [Additional Boards Manager URLs] add the following string:
https://dl.espressif.com/dl/package_esp32_index.json,https://adafruit.github.io/arduino-board-index/package_adafruit_index.json
- if there is already a URL here, add a comma at the end and then add this URL. -
Next, you will need to load the ESP32 Boards to your Arduino IDE. From Arduino IDE menu, select [Tools] > [Board] > [Boards Manager], Search for "esp32". You should see the "esp32" by Espressif Systems" library. Install this library.
In the fall of 2022, we changed our codebase to not depend on an included libraries folder anymore but to be able to install all the needed libraries through your IDE (Arduino IDE or PlatformIO).
After successfully installing the Arduino IDE you can add the ClusterDuck Protocol and the necessary libraries inside the Arduino IDE.
-
Go to the Arduino IDE menu and go to [Tools] > [Manage Libraries].
-
Inside the Libraries manager search and install the following libraries.
- adafruit/Adafruit-BMP085-Library: A powerful but easy to use BMP085/BMP180 Library
- adafruit/Adafruit_BMP280_Library: Arduino Library for BMP280 sensors
- https://arduinojson.org/v6/doc/installation/
- me-no-dev/AsyncTCP: Async TCP Library for ESP32
- adafruit/DHT-sensor-library: Arduino library for DHT11, DHT22, etc Temperature & Humidity Sensors
- https://github.com/ThingPulse/esp8266-oled-ssd1306
- https://github.com/me-no-dev/ESPAsyncWebServer
- https://github.com/FastLED/FastLED
- https://github.com/sandeepmistry/arduino-LoRa
- https://github.com/swatish17/MQ7-Library
- https://github.com/knolleary/pubsubclient
- https://github.com/olikraus/u8g2 Need to install through Library manager!
- https://github.com/mkarawacki/wavesharesharpdustsensor
- adafruit/Adafruit_Sensor: Common sensor library
- Arduino-timer
- espressif/arduino-esp32: Arduino core for the ESP32
- ESPAscyncWebServer
- https://github.com/bakercp/CRC32
Note: EspAsyncwebserver and Crypto libraries have to be added manual, see method C
- Open up a terminal or a git command prompt
- Clone the ClusterDuck Protocol repository with:
git clone --recursive https://github.com/Call-for-Code/ClusterDuck-Protocol.git
- Navigate into the CDP repo
cd ClusterDuck-Protocol
- Update the submodules
git submodule update --init --recursive
- Copy the
ClusterDuck-Protocol
folder into your local Arduino Libraries folder_/Users/USER/Documents/Arduino/libraries_
- Navigate into the
ClusterDuck-Protocol
folder and open theLibraries
folder - Copy all the libraries form the ClusterDuck-Protocol
Libraries
folder and paste it into your local Arduino IDE Libraries folder_/Users/USER/Documents/Arduino/libraries_
. - Open Arduino IDE
- You should now be able to see the examples by going to File -> Examples -> ClusterDuck Protocol
You should be able to pull new commits directly to this folder in your Arduino library.
Go to the following websites and download the Libraries:
- adafruit/Adafruit-BMP085-Library: A powerful but easy to use BMP085/BMP180 Library
- adafruit/Adafruit_BMP280_Library: Arduino Library for BMP280 sensors
- https://arduinojson.org/v6/doc/installation/
- me-no-dev/AsyncTCP: Async TCP Library for ESP32
- adafruit/DHT-sensor-library: Arduino library for DHT11, DHT22, etc Temperature & Humidity Sensors
- https://github.com/ThingPulse/esp8266-oled-ssd1306
- https://github.com/me-no-dev/ESPAsyncWebServer
- https://github.com/FastLED/FastLED
- https://github.com/sandeepmistry/arduino-LoRa
- https://github.com/swatish17/MQ7-Library
- https://github.com/knolleary/pubsubclient
- https://github.com/olikraus/u8g2
- https://github.com/mkarawacki/wavesharesharpdustsensor
- adafruit/Adafruit_Sensor: Common sensor library
- Arduino-timer
- espressif/arduino-esp32: Arduino core for the ESP32
- ESPAscyncWebServer
To add Libraries by zip files. Go to Sketch > include Library > add .zip Libraryβ¦
This automated script will provide you the core libraries needed to run a basic ClusterDuck Network (no sensors)
Once ClusterDuck Protocol repository is installed:
-
Open terminal and navigate to the ClusterDuck Protocol repo.
-
Install a Python package called "requests"
pip install requests
-
Run the automation script
python install-dependencies.py
Once the program is completed, the necessary libraries will be installed in the Arduino libraries folder.
Now follow these steps to get started inside the Arduino IDE
ClusterDuck Protocol 2020-2024 https://www.clusterduckprotocol.org