{"id":13419015,"url":"https://github.com/mikaelpatel/Cosa","last_synced_at":"2025-03-15T04:31:47.874Z","repository":{"id":5452154,"uuid":"6645958","full_name":"mikaelpatel/Cosa","owner":"mikaelpatel","description":"An Object-Oriented Platform for Arduino/AVR","archived":false,"fork":false,"pushed_at":"2020-03-14T18:11:58.000Z","size":46212,"stargazers_count":339,"open_issues_count":30,"forks_count":76,"subscribers_count":50,"default_branch":"master","last_synced_at":"2024-07-31T22:45:10.877Z","etag":null,"topics":["arduino","arduino-boards","arduino-firmware","arduino-platform","c-plus-plus","cosa","framework","lilypad-arduino"],"latest_commit_sha":null,"homepage":"https://mikaelpatel.github.io/Cosa/","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"lgpl-2.1","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mikaelpatel.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2012-11-11T23:22:32.000Z","updated_at":"2024-07-28T14:46:31.000Z","dependencies_parsed_at":"2022-08-26T01:50:32.543Z","dependency_job_id":null,"html_url":"https://github.com/mikaelpatel/Cosa","commit_stats":null,"previous_names":[],"tags_count":10,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mikaelpatel%2FCosa","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mikaelpatel%2FCosa/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mikaelpatel%2FCosa/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mikaelpatel%2FCosa/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mikaelpatel","download_url":"https://codeload.github.com/mikaelpatel/Cosa/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243685506,"owners_count":20330980,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["arduino","arduino-boards","arduino-firmware","arduino-platform","c-plus-plus","cosa","framework","lilypad-arduino"],"created_at":"2024-07-30T22:01:10.173Z","updated_at":"2025-03-15T04:31:47.269Z","avatar_url":"https://github.com/mikaelpatel.png","language":"C++","funding_links":[],"categories":["TODO scan for Android support in followings","Libraries"],"sub_categories":[],"readme":"Che Cosa?\n---------\n\nCosa is an object-oriented platform for Arduino. It replaces the Arduino\nand Wiring library with a large set of integrated classes that support\nthe full range of AVR/ATmega/ATtiny internal hardware modules; all pin\nmodes, Digital, and Analog Pins, External and Pin Change Interrupts,\nAnalog Comparator, PWM, Watchdog, Timer0/Timer2 (RTT), Timer1\n(Servo/Tone/VWI), Input Capture, UART, USI, SPI, TWI and EEPROM. Cosa\nsupports several programming paradigms including Multi-Tasking, Event\nDriven Programming and UML Capsules/Actors. Cosa contains over 200\nclasses and nearly as many example sketches to get started.\n\nPlease note that Cosa is not an Arduino core; Cosa does not implement\nthe Arduino API. Sketches written with Cosa may be built with the\nArduino IDE or with the command line based build support for Linux.\n\nCosa supports the Arduino Boards Manager install. Simply install by\nadding the Cosa Package URL to the Additional Boards Manager URLs in\nthe IDE Preferences; https://raw.githubusercontent.com/mikaelpatel/Cosa/master/package_cosa_index.json\n\n\nMore details are available:\n\n* [Che Cosa?](./doc/01-cosa.md)\n* [How to install Cosa](./doc/02-install.md)\n* [Built-in drivers](./doc/04-drivers.md)\n* [External Libraries, Tools and Applications](./doc/05-libraries.md)\n\nCosa API\n--------\n\nThe API documentation is available:\n\n* [online](https://mikaelpatel.github.io/Cosa/index.html)\n* Compressed for [download](https://github.com/mikaelpatel/Cosa/releases)\n\nThe documentation contains a full hyperlinked description of all functions\nin Cosa together with UML graphs of the class hierarchy, include dependencies,\nand much more.\n\nThe provided documentation is generated with doxygen and may also be\ngenerated for users source code if the Cosa documentation style is\nadapted. See the Doxyfile for configuration of doxygen.\n\nSupported Boards and MCUs\n-------------------------\n\nCosa has built-in support for a large number of boards and\nclones/vendors. It also supports breadboards and custom-design\nboards with AVR MCUs.\n\n* [AdaFruit ATmega32U4](https://github.com/mikaelpatel/Cosa-AdaFruit/blob/master/variants/adafruit/atmega32u4/Board.hh)\n* [Anarduino MiniWireless](https://github.com/mikaelpatel/Cosa-Anarduino/blob/master/variants/anarduino/miniwireless/Board.hh)\n* [Arduino Diecimila](./cores/cosa/Cosa/Board/Arduino/Diecimila.hh)\n* [Arduino Duemilanove](./cores/cosa/Cosa/Board/Arduino/Duemilanove.hh)\n* [Arduino Leonardo](./cores/cosa/Cosa/Board/Arduino/Leonardo.hh)\n* [Arduino Mega 1280](./cores/cosa/Cosa/Board/Arduino/Mega.hh)\n* [Arduino Mega 2560](./cores/cosa/Cosa/Board/Arduino/Mega.hh)\n* [Arduino Micro](./cores/cosa/Cosa/Board/Arduino/Micro.hh)\n* [Arduino Nano](./cores/cosa/Cosa/Board/Arduino/Nano.hh)\n* [Arduino Pro Micro](./cores/cosa/Cosa/Board/Arduino/Pro_Micro.hh)\n* [Arduino Pro Mini](./cores/cosa/Cosa/Board/Arduino/Pro_Mini.hh)\n* [Arduino Uno](./cores/cosa/Cosa/Board/Arduino/Uno.hh)\n* Breadboard ([ATtinyX4](./cores/cosa/Cosa/Board/Arduino/ATtinyX4.hh), [ATtinyX5](./cores/cosa/Cosa/Board/Arduino/ATtinyX5.hh), [ATtinyX61](./cores/cosa/Cosa/Board/Arduino/ATtinyX61.hh), [ATmega328](./cores/cosa/Cosa/Board/Arduino/ATmega328P.hh), [ATmega1284](./cores/cosa/Cosa/Board/Arduino/ATmega1284P.hh))\n* [ITEAD Studio IBoard](https://github.com/mikaelpatel/Cosa-ITEADStudio/blob/master/variants/iteadstudio/iboard/Board.hh)\n* [LilyPad Arduino](./cores/cosa/Cosa/Board/Arduino/LilyPad.hh)\n* [LilyPad Arduino USB](./cores/cosa/Cosa/Board/Arduino/LilyPad_USB.hh)\n* [LowPowerLab Moteino](https://github.com/mikaelpatel/Cosa-LowPowerLab/blob/master/variants/lowpowerlab/moteino/Board.hh)\n* [LowPowerLab Moteino Mega](https://github.com/mikaelpatel/Cosa-LowPowerLab/blob/master/variants/lowpowerlab/moteino-mega/Board.hh)\n* [Pinoccio Scout](https://github.com/mikaelpatel/Cosa-Pinoccio/blob/master/variants/pinoccio/scout/Board.hh)\n* [Microduino-Core](https://github.com/mikaelpatel/Cosa-Microduino/blob/master/variants/microduino/core/Board.hh)\n* [Microduino-Core32u4](https://github.com/mikaelpatel/Cosa-Microduino/blob/master/variants/microduino/core32u4/Board.hh)\n* [Microduino-Core+](https://github.com/mikaelpatel/Cosa-Microduino/blob/master/variants/microduino/core-plus/Board.hh)\n* [PJRC Teensy 2.0](https://github.com/mikaelpatel/Cosa-PJRC/blob/master/variants/pjrc/teensy-2.0/Board.hh)\n* [PJRC Teensy++ 2.0](https://github.com/mikaelpatel/Cosa-PJRC/blob/master/variants/pjrc/teensypp-2.0/Board.hh)\n* [Wicked Device WildFire V3](https://github.com/mikaelpatel/Cosa-WickedDevice/blob/master/variants/wickeddevice/wildfire/Board.hh)\n* [Custom Boards](https://github.com/mikaelpatel/Cosa-CustomBoard)\n\nReferences\n----------\n\n1. D.tools, http://hci.stanford.edu/research/dtools/\n2. Processing, http://processing.org/\n3. Wiring, http://wiring.org.co/\n4. Quantum Leaps, http://www.state-machine.com/\n5. Concurrency.cc, http://concurrency.cc/\n6. Arduino, http://www.arduino.cc/\n7. Firmata, http://www.firmata.org/wiki/Main_Page\n8. LilyPad, http://web.media.mit.edu/~leah/LilyPad/\n9. Adafruit, http://www.adafruit.com/\n10. Microduino, http://www.microduino.cc/\n11. Jeelabs, http://jeelabs.org/\n12. Teensy, https://www.pjrc.com/\n13. Pinoccio, https://pinocc.io/\n14. LowPowerLab, http://lowpowerlab.com/\n15. Anarduino, http://www.anarduino.com/\n16. Wicked Device, http://shop.wickeddevice.com/\n17. MQTT, http://mqtt.org/\n18. ThingSpeak, https://thingspeak.com/\n\nNaming\n------\n\n* \"Ciao\"; interjection hello!, goodbye!.\n* \"Che cosa\"; pronoun; what.\n* \"Cosa\"; noun thing, matter; pronoun; what?, what!.\n* \"Cosa fai\"; what do you do?\n* \"Nucleo\"; kernel.\n* \"Rifare\"; remake.\n* \"Rete\"; network.\n* \"Tutto\"; all.\n\nStay tuned\n----------\n\nPlease follow the development of this project on the blog\nhttp://cosa-arduino.blogspot.se and on the Arduino forum,\nhttp://arduino.cc/forum/index.php/topic,150299.0.html.\n\nSupporting this project\n-----------------------\n\nThere are many ways to support this project.\n\n1. Build and test.\n2. Fix bugs and take part in the development work.\n3. Write blog or instructions on how you have used Cosa in your\nproject(s).\n4. Donate hardware; Arduino boards and shields. This is especially\nwelcome as with the growning number of device drivers and supported\nmodules that require hardware setups which takes a lot of time if\nbreadboarded.\n5. Or donations through paypal (use email address).\n\nIf you are planning to use Cosa you are encouraged to support the\nproject to help keep the software at high quality and follow\nchanges in tooling, and above all open-source.\n\nPlease note that the issues list should be used mainly for bug reports\nand enhancement requests. Design and implementation support is only\nprovided to contributing projects.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmikaelpatel%2FCosa","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmikaelpatel%2FCosa","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmikaelpatel%2FCosa/lists"}