nsec-badge
chrzwatch-firmware
nsec-badge | chrzwatch-firmware | |
---|---|---|
2 | 1 | |
42 | 12 | |
- | - | |
7.2 | 1.8 | |
8 months ago | almost 2 years ago | |
C | C++ | |
GNU General Public License v3.0 or later | GNU General Public License v3.0 only |
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.
nsec-badge
-
Made the badge for Northsec 2023
All the source files are open and available on Northsec's Github: https://github.com/nsec/nsec-badge/tree/master/hw/2023/hardware
-
Creating something like a P.O. 33 K.O:
Step zero is to decide how is your board going to be assembled. Do you feel confident enough to solder and assemble everything yourself or would you defer some of that job to a manifacturer. If you go with a manufacturer, check how they get their parts supply, that will limit which parts you can select. For example, jlcpcb offers a manufacturing service for board assembly, but the parts have to come from lscs. Then the first step is selecting the parts required. This one is currently quite tedious because there's a big part shortage. The bigger costier chips first as everything else will fall around that. In this case, we're looking for the microcontroller and the codec chip, then the power supply chips. I'd choose the microcontroller first as it's an easy but laborious step. You want a chip that has at least all the peripherals you need and make sure that they're not conflicting: some peripherals might block another from being used in certain places. It's a bit of a puzzle to solve. In this specific case, we'd want at least some i2s peripheral and an sdio too, i2c or spi for the screen, with some left over pins and some decent amount of flash that can also be user configured. Next the codec which will require some interface compatible with the microcontroller. For the power supply, i copied the design from a board i already worked on i was board tested and known to work: the 2019 nsec badge
chrzwatch-firmware
-
smartwatch screen pinout
After some googleing it looks like the CPU is a Hs6620d, further delving brings up this Custom firmware on github
What are some alternatives?
hwlib - C++ OO micro-controller library for close-to-the-hardware programming
ESP32_BLE_OTA_Arduino - OTA update on ESP32 via BLE
EmbeddedProto - Embedded Proto is a C++ Protocol Buffers implementation specifically suitable for microcontrollers. It is small, reliable and easy to use.
phyphox-arduino - The phyphox BLE library to connect Arduino projects with the phyphox app to display data on the phone or use the phone's sensors on the Arduino
dji-firmware-tools - Tools for handling firmwares of DJI products, with focus on quadcopters.
blynk-library - Blynk library for IoT boards. Works with Arduino, ESP32, ESP8266, Raspberry Pi, Particle, ARM Mbed, etc.
SmartSpin2k - Transform your spin bike into a Smart Trainer!
dRehmFlight - Teensy/Arduino flight controller and stabilization for small-scale VTOL vehicles
ZSWatch - ZSWatch - the Open Source Zephyrâ„¢ based Smartwatch, including both HW and FW.
MDNS_Generic - mDNS Library for nRF52, SAMD21, SAMD51, SAM DUE, STM32F/L/H/G/WB/MP1, AVR Mega, RP2040-based boards, etc. using Ethernet W5x00. Supports mDNS (Registering Services) and DNS-SD (Service Discovery). Ethernet_Generic library is used as default for W5x00