This repository contains the hardware design files, documentation, and support materials for the SIM7000 LTE Shield, an Arduino-compatible shield that adds LTE CAT-M1/NB-IoT connectivity and GNSS capabilities. The repository does not contain the actual software library (which resides in a separate Botletics-SIM7000 repo), but focuses on the hardware implementation, including PCB design files, schematics, AT command documentation, and firmware update tools. The hardware design features the SIM7000 series module from SIMCom, integrated with a uFL antenna connector for LTE, a separate uFL for GNSS (GPS/GLONASS/BDS/Galileo), a SIM card holder, USB interface for debugging/firmware updates, level shifting circuitry (TXB0104) for 3.3V/5V compatibility, status LEDs, and an MCP9808 I2C temperature sensor. The power supply design includes appropriate filtering and regulation for the cellular module. The PCB layout demonstrates attention to RF considerations with proper component placement and routing. Documentation includes comprehensive AT command logs showing how to configure the module for various network operations (registration, TCP/IP, SSL/TLS, MQTT), GNSS functionality, and sensor interfacing. These logs serve as practical examples for developers looking to implement cellular IoT applications. The repository also provides firmware update procedures using Qualcomm's QPST tool, though this is specific to the module manufacturer's update process. While the actual firmware/software for running applications on the shield is in a separate repository, this hardware repository provides a complete, validated reference design that enables developers to create IoT applications requiring cellular connectivity and location tracking. The design appears to be current, well-executed, and suitable for reuse as a starting point for similar LTE/GNSS shield projects.
This repository is a build system for producing precompiled static libraries from ESP-IDF components, intended for use with the Arduino core for ESP32 microcontrollers. It orchestrates the entire build pipeline: cloning and updating ESP-IDF and Arduino core repositories, configuring IDF with target-specific settings (flash modes, memory variants, debug levels), compiling libraries for multiple ESP32 chip variants (esp32, esp32s2, esp32s3, esp32c3, etc.), and packaging the resulting artifacts into archives and Arduino package index JSON files. The system is driven by shell scripts (build.sh, tools/copy-libs.sh, etc.) with a CMake-based project structure, and includes a Textual-based TUI (tools/config_editor/) for interactive configuration and compilation. CI/CD workflows (GitHub Actions) automate periodic builds and deployment to the esp32-arduino-libs release repository. The codebase is well-organized, with clear separation of build logic, configuration files (configs/), and tooling (tools/). It demonstrates strong DevOps practices for managing multi-target embedded library builds.
This repository is a comprehensive reverse-engineering project for PixMob LED wristbands, focusing on both infrared (IR) and radio frequency (RF) control protocols. The primary data assets are raw signal captures from live events (Coldplay, NBA games, Disney experiences) stored in Flipper Zero .ir and .sub formats, along with EEPROM dumps and hardware PCB photos. The research has produced a curated database of over 500 effect definitions (colors, fades, blinks) in Python and JavaScript, conversion utilities for translating raw captures to bit sequences and Arduino serial commands, and tools for brute-forcing unknown codes. While the repo includes functional application code (Arduino sketches, web interface, Python demos), its dominant character is data research: the code exists to document and exploit the protocol, not to serve as a standalone application. The project is well-organized with clear directory structure, pinned Python dependencies, and extensive documentation of the discovery process.
The LoRa_APRS_Tracker is an embedded firmware application for ESP32-based hardware designed to function as an APRS (Automatic Packet Reporting System) tracker and transceiver. It integrates GPS tracking, LoRa radio communication, Bluetooth (Classic and BLE) for smartphone TNC connectivity, WiFi for wireless configuration, and support for various environmental sensors to telemetry data. The application features a menu-driven interface via OLED/TFT display and physical controls (buttons, joystick, touch, or keyboard), allowing users to configure beacon settings, view received packets, and manage messages. The architecture follows a modular utility pattern where distinct hardware and software components (e.g., GPS, LoRa, display, power management) are encapsulated in separate namespaced modules, each with setup and loop functions called from the main firmware loop. Configuration is managed through a hierarchical JSON-based system stored in SPIFFS, enabling persistent storage of user settings such as beacon profiles, LoRa parameters, and WiFi credentials. A built-in web server serves a responsive configuration portal (using Bootstrap) for initial setup and advanced settings via WiFi AP. Key capabilities include APRS beaconing with MIC-E encoding, two-way messaging, Winlink email integration over radio, digipeating, weather telemetry encoding, and power-saving features like GPS and LoRa module shutdown. The firmware supports numerous hardware variants through conditional compilation and variant-specific pin definitions, allowing the same codebase to compile for different ESP32 boards with various LoRa modules and sensors.
This repository provides Arduino-based examples and setup instructions for the LilyGO T-Display S3 board (ESP32-S3 with ST7789 TFT display). It demonstrates core functionalities including TFT graphics rendering, button input handling, backlight control, and ESP-NOW wireless communication. The architecture consists of standalone Arduino sketches (.ino files) that share common configuration headers and resource files. Each example is self-contained and targets specific use cases: image display with progress bar (HotHead), backlight dimming (HotHead_DimmerNEW), simplified graphics (HotHead_2025), bidirectional button state sharing via ESP-NOW, and a basic serial test. The repository emphasizes hardware-specific configuration through header files that define display initialization, board settings, and embedded image resources.
The devoxx4kids/materials repository is a collection of educational resources designed for conducting workshops that teach children and teenagers about programming, robotics, electronics, and game development. It includes a wide variety of workshop materials such as slide presentations (in PowerPoint, PDF, and Key formats), lesson plans, code examples, and hands-on activity guides. The workshops cover topics ranging from basic programming with Scratch and Arduino to more advanced subjects like Minecraft modding, Android app development, and Internet of Things projects using platforms like Tinkerforge and Raspberry Pi. While the repository does not represent a single software application, it contains numerous runnable code examples that are used as teaching aids during the workshops. These include complete Android projects, Arduino sketches, Minecraft mods (using Forge), and Scratch projects. The materials are organized by workshop topic and often include translations in multiple languages (English, Dutch, French, German, etc.), reflecting the international nature of the Devoxx4Kids initiative. One notable reusable component is the Android project structure found in the workshops/Android directory, which demonstrates a well-organized Gradle-based build setup with proper source organization, resource management, and unit testing. This component can serve as a template for creating new Android applications. The repository also shows reuse of the Reveal.js HTML presentation framework across multiple workshops (such as Calliope and Flappybird), indicating a pattern for creating consistent, web-based slide decks. The repository appears to be actively maintained, with a recent commit (as of the provided data) and ongoing community interest (as evidenced by stars and forks). Technical dependencies appear to be up to date, and the materials are generally functional and suitable for their educational purpose, though they prioritize simplicity and clarity over advanced software engineering practices.
This repository provides the firmware and desktop tools for Petoi's quadruped robots (Bittle, Nybble, Chero). The core is an Arduino-based firmware (OpenCat.ino) running on ATmega328P (NyBoard) that handles servo control, gait generation, IMU integration, sensor processing (IR, ultrasonic, gesture, voice), and skill execution via pre-programmed motion sequences. A Python desktop application (pyUI) offers firmware upload, joint calibration, skill composition, and debugging. A Python serial API (serialMaster, OpenCatPythonAPI) enables scripting robot behaviors. The architecture is monolithic firmware with conditional compilation for multiple hardware variants and sensor options. While the project has a large user base and extensive documentation, the codebase shows signs of technical drift: it is explicitly legacy (development moved to OpenCatESP32), relies on outdated libraries, has duplicated code (e.g., three copies of IRremote), and uses global state and hardcoded paths. The skill system and serial protocol are well-defined patterns, but overall reusability is limited by tight coupling to specific hardware and board versions.
This repository contains a single Arduino sketch for an RTL8720dn-based WiFi deauther. It hosts a captive web interface on the board's own WiFi network, scans for nearby access points, and allows a user to initiate deauthentication attacks against selected networks by sending crafted deauth frames. The architecture is a monolithic embedded firmware with a simple event loop: it serves HTML pages, parses HTTP POST/GET requests, and uses a submodule for packet injection. The code is tightly coupled to the target hardware and lacks modularity, abstraction, or tests. It is a functional but unrefined hobbyist project with no reusable components.