BERadio C++ library research¶
Foundation¶
avr-stl¶
The Standard Template Library (STL) for AVR with C++ streamsVersion 1.1.1 (most recent as of 2015-11-01)
Convenient C++ programming with Arduino¶
About¶
The ATmega328 has 32 KB ISP flash memory and 2 KB SRAM.
Tech¶
Main readings¶
Variable-Length Argument Lists¶
https://stackoverflow.com/questions/1657883/variable-number-of-arguments-in-c
https://stackoverflow.com/questions/16337459/undefined-number-of-arguments
http://www.varesano.net/blog/fabio/functions-variable-lenght-arguments-arduino
initializer_list¶
Modern C++¶
http://www.murrayc.com/permalink/2015/12/05/modern-c-variadic-template-parameters-and-tuples/
Standard Template Library¶
Our pick¶
- The Standard Template Library (STL) for AVR with C++ streamsVersion 1.1.1 (most recent as of 2015-11-01)
Other choices¶
https://andybrown.me.uk/2011/01/15/the-standard-template-library-stl-for-avr-with-c-streams/
https://arduino.stackexchange.com/questions/9835/problem-with-declaring-2d-vector-in-arduino
- EASTL – Electronic Arts Standard Template Library
Using the “Vector” container object¶
https://github.com/maniacbug/StandardCplusplus/blob/master/vector
https://github.com/maniacbug/StandardCplusplus/blob/master/vector.cpp
- Topic: container for Objects like c++ vector?
- LinkedList for Arduino
Memory profiling¶
Object initialization¶
Float to String¶
Misc¶
Simulation¶
Operating Systems¶
- AVR RTOS - Atomthreads: Open Source RTOS
MQTT interfaces¶
https://github.com/adafruit/Adafruit_MQTT_Library/blob/master/Adafruit_MQTT.cpp
https://github.com/adafruit/Adafruit_MQTT_Library/blob/master/Adafruit_MQTT_Client.cpp
http://knolleary.net/2009/01/29/updated-client-for-mqtt-library/
https://github.com/knolleary/pubsubclient/blob/master/src/PubSubClient.cpp
https://github.com/andreareginato/pubsubclient/commit/cdec8bf33742883057120e6a27fc3e3591991e6e