Giter Site home page Giter Site logo

Nico Korn's Projects

24x12-pixelscreen icon 24x12-pixelscreen

Firmware code for a 24x12 Pixelsecreen. Driven by a STM32f407 MCU and WS2812b RGB leds. This was my first project with WS2812b leds.

alarmclock icon alarmclock

Firmware code for an alarmclock. The alarmclock works with a custom made STM32f103 microcontroller board and WS2812b RGB leds. Features are cool time changing effects, various led colors, 17x7 big pixel screen resolution, ambient light sensor to control display brightness, touch sensitive top surface for shutting up the alarm, on/off switch for the alarm and 3 push buttons for easy clock setup.

current-cross-section-calculator icon current-cross-section-calculator

A tool to caluclate maximum allowed currents or cross sections applied to cables from a specific product portfolio. A small database in the tool is implemented to hold the cables portfolio.

curve-analyzer icon curve-analyzer

The cure analyzer or approximizer is able to find a curve on a cartesian coordination system. With the found curve the application can interpolate a function using La-Granges interpolation method with a user defined function grade.

denon-avr-remote icon denon-avr-remote

A java application to control the Denons AVR-X7200W homecinema receiver. The application searches automatically for Denon receivers in the connected network. After connection the Application can control input sources and set the volume. The application is a small proof of concept for future projects.

led-bluetooth-control icon led-bluetooth-control

This java application is used with the led matrix project to control it over bluetooth connectivity. The application searches the device and connects to it. The application controls several led effects and the digital clock and it also can convert pictures and send it to the led matrix device.

nrf52840_ws2812b icon nrf52840_ws2812b

Example code for using Nico's ws2812b library for the nrf52840 Microcontroller. This example code works out of the box with the IAR workbench, J-Link debugger/programmer and the Adafruit Featherboard nrf52840 with the integrated ws2812b led. Amount of leds and the pins on which they are connected to can be set in the ws2812b library. The ws2812b leds are controlled by the pwm peripheral. Depending on the dutycycle the ws2812b leds interprets a 1 or 0 bit and holds a 24 bit shiftregister. The 24 bits are splittet into red (8b), green (8) and blue (8b). Bits are being shiftet through all leds connected in serial. After finishing the shifting, the line needs to be set low for at least 50 us, so the leds accept their shift registers thus emitting their colours. The library is heavily ram consuming because the pwm sequence arrays are defined as 16bit uints and 1 ws2812b bit is used as array entity. A future version will solve this issue.

oven-monitor icon oven-monitor

A java application used with a agilent (today keysight) datalogger to log temperatures from 40 pt100 sensors. The application is connected through ethernet to the datalogger. Every sensor can be monitored and limits can be set to send alarm emails. Also logged temperature data in a chosen time range can be exported as .csv files.

pixelframeapp icon pixelframeapp

This is the application code for the FrameController App for Android programmed with the xamarin framework. The app is used to control the PixelFrame which is in a seperate repo: https://github.com/nicokorn/PixelFrameFW. The app searches for Pixel Frames and lets connect to it. Connected to the frame it is possible to send pictures from the mobile phone to the Pixel Frame and it is possible to manipulate the send picture in realitme.

pixelframefw icon pixelframefw

Firmware code for a pixel frame. The firmware runs on a Nordic nRF52840 and uses the pwm peripheral to control ws2812b leds. The fds module is used to store and load peristent data from the internal flash. To control the pixel frame I also developed an Android App which is held in a seperate repo: https://github.com/nicokorn/PixelFrameApp . The housing I have drawn in Autocad in several pieces and then 3D printed with pla filament.

power-calculator-psq icon power-calculator-psq

A java application to calculate the different types of power "P, S, Q", with different inputs (inductive, capacitive) and outputs (polar, cartesian).

qt_mysql_driver icon qt_mysql_driver

Typical symptom: QMYSQL driver not loaded -> get pre-built Qt SQL driver plug-in required to connect QSqlDatabase to MySQL / MariaDB with QSqlDatabase::addDatabase("QMYSQL"). Download qsqlmysql.dll binaries built from official Qt source code

short-circuit-calculator icon short-circuit-calculator

The application is able to calculate the position of a short circuit on a 2 wire (or more) cable, using measured resitance values from it. There is also implemented a small databank, which can import and export data. Also the calculated short circuit spots can be printed out directly to a printer. I programmed the tool during my work in cable company to make my life more easy :-)

stm32f103_audiovisualizerbar icon stm32f103_audiovisualizerbar

A small DIY project for an audio visualizer bar. The 3d printed bar shows you the audio level with rgb leds. You can choose between different visualizer color patterns with a touch button on the back of the housing.

stm32f1xx_ultrasonic icon stm32f1xx_ultrasonic

Small fun project done on a booring afternoon. I had a Ultrasonic transceiver board, blue pill board and a touchbutton laying around, so I decided to do a ultrasonic meter. The source code is done in baremetal and is doing only the minimum of doing a distance mesaurement by touching the the touchbutton. Feel free to use the code for your projects.

stm32f1xx_ws2812b icon stm32f1xx_ws2812b

This is an example code of controlling an ws2812b led stripe, with 18 leds thus the used library is configured as 1 row with 18 cols. You can change row and col in the ws2812b header file. You can connect up to 16 led stripes. Data is written in parallel to the stripes from a GPIO Bank (GPIO A in this example) This is why up to 16 stripes can be controlled in parallel. A Timer is used in which 3 DMA transfer are triggered used to write data to the gpio's on which the stripes are connected to. These 3 DMA transfers are triggered as following: First trigger is on each period. It sets all gpios to high. Second trigger is on the first capture compare event on the 8th tick/pulse. The GPIOS are set accordingly if the bit for the ws2812b shall be a 1 or a 0 in the output buffer "WS2812_Buffer". The third trigger is the second capture compare event an sets all gpio's always to 0 through a dma transfer. It doesn't matter if the pins are already set to 0 by the first capture compare event. Please read the ws2812b datasheet to understand the communication protocol with the ws2812b led chips. This example is programmed in the IAR Embedded Workbench IDE for a stm32f103 and tested on the famous Blue-Pill. But you can use this library for any other IDE or stm32 microcontroller. Just be sure to set the correct DMA streams/channels, otherwise it won't work.

stm32f4xx_rndis_demo icon stm32f4xx_rndis_demo

To have platform independent network interfaces over usb which is working with Linux, Windows, Mac OS ect. called RNDIS. This project is a RNDIS demo, which addtionally implements a http server. It runs out of the box on a stm32f411 BlackPill board. My RNDIS library with an empty template for the second interface (which can ba UART, CAN, ETH or like in this demo a tcp/ip stack) can be found under following link: https://github.com/RDMsmartnetworks/STM32_HAL_RNDIS

stm32h7xx_ws2812b icon stm32h7xx_ws2812b

This is an example code of controlling a ws2812b led stripe with 10 leds thus the used driver is configured as 1 row with 10 cols. You can change row and col in the ws2812b header file. You can connect up to 16 led stripes. Data is written in parallel to the stripes from a GPIO Bank (GPIO A in this example) This is why up to 16 stripes can be controlled in parallel. A Timer is used in which 3 DMA transfer are triggered used to write data to the gpio's on which the stripes are connected to. This 3 DMA transfer are triggered as following: First trigger is on each timer update event. It sets all gpio pins to high. Second trigger is on the first capture compare event on the 9th tick/pulse. The GPIOS are set accordingly if the bit for the ws2812b shall be a 1 or a 0. The third trigger is the second capture compare event and sets all gpio pins always to 0 through a dma transfer. It doesn't matter if the pins are already set to 0 by the first capture compare event. Please read the ws2812b datasheet to understand the communication protocol with the ws2812b led chips. This example is programmed in the IAR Embedded Workbench IDE for a Nucleo STM32H743 Board. But you can use this library for any other IDE or stm32 microcontroller. Just be sure to set the correct DMA streams/channels, otherwise it won't work.

wordclock icon wordclock

Firmware code for a 12h wordclock. The clock works with a STM32f103 MCU and WS2812b RGB leds.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.