Hello everyone, 
I am new to Arduino programming, but I would consider myself an intermediate programmer. At this moment, I am just trying to learn how to control a servo.
I followed this guide to make sure I hooked it up correctly with the alligator-to-male clips.
I haven't written any code for it yet because apparently the Servo.h library does not support SAMB boards, which is what the Circuit Playground Express has.
I guess my biggest question here is that I need help finding thorough documentation on how to communicate with each part of the Circuit Playground Express, like the different input and output pins, using the Arduino IDE. I have found a lot of guides of particular projects but not a lot of general and thorough documentation of the libraries and their usages. Perhaps I haven't searched enough.
I found a neat graphic that breaks down what the pins, etc are, but I would like to find more on the code aspect of it.
Adafruit's guides on servos tend to use CircuitPython, which I might consider using but I was really hoping to use C-based programming for this.
I am going to keep reading into the Adafruit_SoftServo.h library to see if I can use it for the Circuit Playground Express. It just also becomes problematic when I don't know how to refer to the pins.
Thanks in advance, everyone. Any guidance is appreciated it.
Update, I got the servo moving accidentally by uploading the demo while having the servo hooked up. It corresponds with the beeping sound. Still have no clue how to do it myself though lol
I don't have a Circuit playground board myself.
If this board follows the common pattern of how to program all these various boards
you choose the board in the Arduino-IDE.
Choosing the board configures the Arduino-IDE to use that kind of libraries that fit to the chosen board.
And then you can use the printed shortnames like A0, A1, A2 etc. the green numbers in your picture.
The onboard-sensors have violet numbers so I guess these are the IO-Pin-numbers.
Adafruit has a lot of demo-material. I would be astonished if there is nothing that introduces in general to this board.
Is there are user-forum at adafruit itself? Does adafruit has a support you could ask about this information?
You should ask teh adafruit-support if there is a "additional boards-manager-URL for the Circuit playground board
If you want to use the Arduino-IDE with C++ this tutorial will give you a good introduction. I guess most of the information given in this tutorial applies the same way to the Circuit playground board.
Take a look into this tutorial:
Arduino Programming Course
It is easy to understand and has a good mixture between explaining important concepts and example-codes to get you going. So give it a try and report your opinion about this tutorial.
I'm a somehow advanced programmer and this has the effect of beeing partially blind about beginners difficulties. But I would like to become an "expert" about beginners difficulties and therefore I appreciate feedback about that and to receive questions what is still hard to understand.
In case there would be no support of the Arduino-IDE for the Circuit playground board I recommend an ESP32 nodeMCU-board instead of Arduino-UNO. You can do almost everything with the ESP32-NodeMCU-Board you can do with an Arduino
Programming with the Arduino-IDE and Wifi and Bluetooth are onboard. Price half of an original Arduino-board
best regards Stefan
Update! I fixed the problem by getting the most recent version of the Arduino Servo library from Github (which offers support for SAMD boards) : GitHub - arduino-libraries/Servo: Servo Library for Arduino
I am using an older version of the Arduino IDE, so I had to manually download the zip and upload it to the IDE. If you already are using an updated version, your Servo library installation should be more up to date and support SAMD boards like the Circuit Playground.
StefanL38:
I don't have a Circuit playground board myself.
If this board follows the common pattern of how to program all these various boards
you choose the board in the Arduino-IDE.
Choosing the board configures the Arduino-IDE to use that kind of libraries that fit to the chosen board.
And then you can use the printed shortnames like A0, A1, A2 etc. the green numbers in your picture.
The onboard-sensors have violet numbers so I guess these are the IO-Pin-numbers.
Adafruit has a lot of demo-material. I would be astonished if there is nothing that introduces in general to this board.
Is there are user-forum at adafruit itself? Does adafruit has a support you could ask about this information?
You should ask teh adafruit-support if there is a "additional boards-manager-URL for the Circuit playground board
If you want to use the Arduino-IDE with C++ this tutorial will give you a good introduction. I guess most of the information given in this tutorial applies the same way to the Circuit playground board.
Take a look into this tutorial:
Arduino Programming Course
It is easy to understand and has a good mixture between explaining important concepts and example-codes to get you going. So give it a try and report your opinion about this tutorial.
I'm a somehow advanced programmer and this has the effect of beeing partially blind about beginners difficulties. But I would like to become an "expert" about beginners difficulties and therefore I appreciate feedback about that and to receive questions what is still hard to understand.
In case there would be no support of the Arduino-IDE for the Circuit playground board I recommend an ESP32 nodeMCU-board instead of Arduino-UNO. You can do almost everything with the ESP32-NodeMCU-Board you can do with an Arduino
Programming with the Arduino-IDE and Wifi and Bluetooth are onboard. Price half of an original Arduino-board
best regards Stefan
I appreciate the response, but I already understand C++ basics. I meant more in-depth documentation on the Arduino and Circuit Playground libraries. I was able to figure it out, I just needed to update the Servo library and because my installation of the Arduino IDE is an older version, I had to manually install the library by downloading the zipfile from Github.