Arduino
AUnit
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Arduino
-
How to connect my coffee machine
/** * The MySensors Arduino library handles the wireless radio link and protocol * between your home built sensors/actuators and HA controller of choice. * The sensors forms a self healing radio network with optional repeaters. Each * repeater and gateway builds a routing tables in EEPROM which keeps track of the * network topology allowing messages to be routed to nodes. * * Created by Henrik Ekblad * Copyright (C) 2013-2015 Sensnology AB * Full contributor list: https://github.com/mysensors/Arduino/graphs/contributors * * Documentation: http://www.mysensors.org * Support Forum: http://forum.mysensors.org * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License * version 2 as published by the Free Software Foundation. * ******************************* * * DESCRIPTION * * Simple binary switch example * Connect button or door/window reed switch between * digitial I/O pin 3 (BUTTON_PIN below) and GND. * http://www.mysensors.org/build/binary */ // Enable debug prints to serial monitor #define MY_DEBUG // Enable and select radio type attached #define MY_RADIO_RF24 //#define MY_RADIO_RFM69 #include #include #define CHILD_ID 3 #define BUTTON_PIN 3 // Arduino Digital I/O pin for button/reed switch Bounce debouncer = Bounce(); int oldValue=-1; // Change to V_LIGHT if you use S_LIGHT in presentation below MyMessage msg(CHILD_ID,V_TRIPPED); void setup() { // Setup the button pinMode(BUTTON_PIN,OUTPUT); // Activate internal pull-up digitalWrite(BUTTON_PIN,LOW); // After setting up the button, setup debouncer debouncer.attach(BUTTON_PIN); debouncer.interval(5); } void presentation() { // Register binary input sensor to gw (they will be created as child devices) // You can use S_DOOR, S_MOTION or S_LIGHT here depending on your usage. // If S_LIGHT is used, remember to update variable type you send in. See "msg" above. present(CHILD_ID, S_DOOR); } // Check if digital input has changed and send in new value void loop() { debouncer.update(); // Get the update value int value = debouncer.read(); if (value != oldValue) { // Send in the new value send(msg.set(value==LOW ? 1 : 0)); oldValue = value; } }
AUnit
-
How can I unit test my firmware?
To give some context, ESPecial is an Arduino based firmware that gives you the possibility to control your esp32 via a web interface or telegram bot, and add dynamically all kind of automations. It’s a bit like ESP-Home, but without the compilation step (and far from having all its features!). It has nice features like web socket, Camera, Matt and more. The thing is that the whole code is not tested, I’m a web developer and never done C++ so when I started that project I just wanted something working for my prototypes. Now that I want the thing to be more robust, I’d like to implement unit/functional tests. I found this: https://github.com/bxparks/AUnit and of course the Expressif IDF page on the subject: https://docs.espressif.com/projects/esp-idf/en/latest/esp32/api-guides/unit-tests.html But I’m curious about what you guys could suggest, what would be the best option for this project? Thanks for your help!
-
Testing Frameworks for C++, ESP32
I‘ve used https://github.com/bxparks/AUnit in combination with the arduino framework. Worked very well.
What are some alternatives?
balboa_GL_ML_spa_control - Control protocol between GL2000 controller and ML series compatibile top panel
Unity Test API - Simple Unit Testing for C
WhyzaGC - Feather Huzzah ESP2866/ESP32 + Featherwing 128x64 OLED Arduino addon to Mightohm Gieger
Arduino-AppleMIDI-Library - Send and receive MIDI messages over Ethernet (rtpMIDI or AppleMIDI)
smart-home-automation-rtos - A complete home automation system developed on ESP32 microcontroller using freeRTOS. The system is controlled wirelessly via Bluetooth with an android app developed using MIT App Inventor.
ESPecial - ESP32 automation with web interface and telegram bot
dimmable-light - Arduino library to manage dimmers compatible with AVR, ESP8266, ESP32, SAMD, and RP2040 platforms.
dRehmFlight - Teensy/Arduino flight controller and stabilization for small-scale VTOL vehicles
Prang-Pro - A port of Prang to the Teensy
Catch - A modern, C++-native, test framework for unit-tests, TDD and BDD - using C++14, C++17 and later (C++11 support is in v2.x branch, and C++03 on the Catch1.x branch)
dscKeybusInterface - An Arduino/esp8266/esp32 library to directly interface with DSC security systems.
Somfy_Remote_Lib - Emulate a Somfy remote using a 433.42 MHz transmitter.