Skip to content

Releases: TheRealKasumi/NikoLight

Version 1.1.1

09 Jun 18:01
Compare
Choose a tag to compare

NikoLight Version 1.1.1

This is the first release after to renaming to NikoLight. A lot of new features have been introduced.

User Profiles

NikoLight now supports profiles which can save your LED and system settings in a comfortable way. Profiles can be created, named, cloned, modified and deleted. Currently the limit is 50 profiles including the default profile. Switching between different setups is now being done within seconds. This feature also allows to use different settings for different drivers easily.

Audio Unit Support

NikoLight can now be connected to an additional audio board. With this hardware extension the audio signal from the car speakers can be captured and analyzed. As alternative it can be connected to basically any audio source via a 3.5mm headphone plug. The board then captures a stereo audio signal with a sample rate of 42.2kHz. The audio data is then processed on the extension board in real time and the analysis data is transferred to the NikoLight MCU. Based on the audio data new advanced effects can be rendered. To receive one of the new Audio Units please join our discord server and enter the waiting list.

grafik

New Sparkle, Pulse and EQ Effect

Now there are 3 advanced and audio based effects available. These will react in real time depending on the played music. Example videos can be found on our discord server.

Dark and Light Mode

The UI now comes with two different themes/styles. The preferred appearance can be configured in the settings.

grafik

Multi Language Support

The UI now supports English and German as a language. The preferred language can be set in the settings.

Manual Fan Control

The fan can now be controlled manually. This allows to set a fixed fan speed and enforce either better cooling or quieter operation.

New I2S-Based LED Driver

Since the previously used library for driving WS28XX LED cause many problems and instabilities, we decided to write our own I2S based LED driver. This new driver offers a very low memory consumption and extremely high performance at the same time. Theoretically NikoLight could now drive 16 channels in parallel. Allowing a frame rate of at least 60FPS while controlling 4000 LEDs individually. However, since only 8 channels are available the limit currently is 2000 LEDs with at least 60FPS. This is an increase by 400 LED and at the same time 30 additional FPS.

New Footwell Lights

NikoLight now comes with replacement PCB for the footwell lights of the Tesla Model 3 and Model Y. They contain 10 WS2812B LEDs in the 3535 form factor. This allows to connect the footwell lights to the NikoLight board and create colorful effects.

grafik

Many More

There are a lot more smaller improvements that will not be listed in detail here. Overall, the user experience should be a lot smoother now. Also, the hardware handling improved a lot. Most hardware components are now automatically detected or can be removed without adjusting the configuration.

Version 1.1.0 Preview

15 Mar 17:06
28fd0bd
Compare
Choose a tag to compare
Version 1.1.0 Preview Pre-release
Pre-release

NikoLight Version 1.1.0 Preview

This is a preview for the NikoLight version 1.1.x release. There is still some work that needs to be done. But at this point it should be fairly usable and comes with a lot of new features and improvements compared to version 1.0.0.

User Profiles

NikoLight now supports profiles which can save your LED and system settings in a comfortable way. Profiles can be created, named, cloned, modified and deleted. Currently the limit is 50 profiles including the default profile. Switching between different setups is now being done within seconds. This feature also allows to use different settings for different drivers easily.

Audio Unit Support

NikoLight can now be connected to an additional audio board. With this hardware extension the audio signal from the car speakers can be captured and analyzed. As alternative it can be connected to basically any audio source via a 3.5mm headphone plug. The board then captures a stereo audio signal with a sample rate of 42.2kHz. The audio data is then processed on the extension board in real time and the analysis data is transferred to the NikoLight MCU. Based on the audio data new advanced effects can be rendered. To receive one of the new Audio Units please join our discord server and enter the waiting list.

grafik

New Sparkle, Pulse and EQ Effect

Now there are 3 advanced and audio based effects available. These will react in real time depending on the played music. Example videos can be found on our discord server.

Dark and Light Mode

The UI now comes with two different themes/styles. The preferred appearance can be configured in the settings.

grafik

Multi Language Support

The UI now supports English and German as a language. The preferred language can be set in the settings.

grafik

Manual Fan Control

The fan can now be controlled manually. This allows to set a fixed fan speed and enforce either better cooling or quieter operation.

New I2S-Based LED Driver

Since the previously used library for driving WS28XX LED cause many problems and instabilities, we decided to write our own I2S based LED driver. This new driver offers a very low memory consumption and extremely high performance at the same time. Theoretically NikoLight could now drive 16 channels in parallel. Allowing a frame rate of at least 60FPS while controlling 4000 LEDs individually. However, since only 8 channels are available the limit currently is 2000 LEDs with at least 60FPS. This is an increase by 400 LED and at the same time 30 additional FPS.

Many More

There are a lot more smaller improvements that will not be listed in detail here. Overall, the user experience should be a lot smoother now. Also, the hardware handling improved a lot. Most hardware components are now automatically detected or can be removed without adjusting the configuration.

Version 1.0.0 Release

24 Dec 15:06
c923682
Compare
Choose a tag to compare

NikoLight Version 1.0.0

This is our first non-beta release of the NikoLight project. The project is now considered to be ready to be built and used. Together with the community, we have been working hard to finally make this possible. Thanks to everyone who supported the project.

New NikoLight UI

NikoLight now comes with a completely redesigned UI, providing a more appealing look and feel. The design was inspired by the Tesla mobile app. Compared to the previous version there have been great stability and loading time improvements. Offering a better overall experience.

Json Based REST API

While introducing the new UI, the API was also completely reworked. Instead of directly exchanging binary data with the mcu, the API is now json base. This makes it significantly easier to use and more clean. The API is now fully documented in an OpenApi document which can be found in the documentation. To support the development, NikoLight now serves the well known SwaggerUI under /ui/swagger.html. This allows for testing of the API without the need of any tools.

FSEQ 1.0 Animation

NikoLight is now able to play FSEQ v1.0 animations. These animations can be created with xLights and then played in your car. This way you can create fully customized animation and music based light shows. The animations can be uploaded, managed and played via the new UI. There is no need to connect the controller to your computer to transfer the files. Keep in mind that a fast MicroSD card is required to smoothly play animations.

More Channels and LEDs

The number of channels/zones has been increased to 8. Each zone can now also support up to 200 LEDs in series instead of 150 like previously.

Extended Light Sensor Support

The mcu does now support light sensors of type BH1750 to automatically adjust the LED brightness or turn them on/off. They can be connected to the controller via the I²C bus and freely positioned in the car. As a new alternative the motion sensor is now also available to turn on/off the LEDs as soon as any movement of the car is detected. All related settings can be adjusted in the UI.

Power Limits

We know that the WS2812 type LEDs can be quite power hungry. So a power limiter was introduced to protect your hardware. The limits are fully configurable in the new UI.

Temperature Control and Cooling Fan

After introducing the power limiter, we now also support up to 4 temperature sensors that can be attached to the voltage regulators and inductors. This is an additional safety feature and can also help to increase the lifetime of the components. In combination with the temperature sensors, there is also the option to add a 30x30mm fan to keep things cool. The fan is temperature controlled and configurable via the UI. If a high temperature is reached (for example, due to hardware faults, bad connections, overload), the brightness can be reduced and the LEDs can be turned off.

Stability and Performance

Stability and performance have greatly increased since the last beta release. Many bugs were fixed and some problems with random crashes were resolved. Also a task wdt is now used. This allows to reset the controller automatically in case something goes wrong. The code for rendering the pixels and sending the data out to the LEDs was separated. This way the frame rate of the LEDs can be adjusted dynamically while keeping a constant rendering speed. This makes animations feel smoother and is less distracting during a drive.

New Case

The new case improves the usability of the controller by removing previously required screws. The cooling properties have been greatly increased by allowing to install a 30x30mm cooling fan in the case.

For information on how to build this project, please refer to the documentation. A good starting point is the ReadMe.

Version 0.9.9 Beta

20 Oct 11:19
6e2a280
Compare
Choose a tag to compare

This is the first beta release of the project. Most of the functions that were planned for version 1.0.0 are now implemented. Many bugs of the very early versions have been fixed. This version should be very usable to build and test the project. The web server should be stable now, the new UI is ready to be used, many optimizations to the code have been done and most parts of the project are documented.

Starting from here it will also be possible to update the NikoLight controller via OTA updates. This includes the firmware of the MCU as well as the content on the MicrosSD card. This should allow to install the controller in a car and being able to update it later without physical access to it. Note that the attached update files will only be usable starting from this version. Earlier version do not implement any OTA functionality.

To build this project, please refer to the ReadMe and the linked documentation.