RoadTest: NXP S32K-ISELED LED Lighting Solution
Author: redcharly
Creation date:
Evaluation Type: Development Boards & Tools
Did you receive all parts the manufacturer stated would be included in the package?: True
What other parts do you consider comparable to this product?:
What were the biggest problems encountered?:
Detailed Review:
Webinar: NXP Solutions for Getting Started with ISELED Technology
The NXP S32K-ISELED LED Lighting Solution kit consists of several components:
• ISELED board
• S32K144-EVB-Q100
• Power adapter board
• Board connection cable
• Micro USB 2.0 cable
• Power supply
• Embedded Lighting stack software by Lucie Labs
• Lucie Creator: a PC tool for easy lighting design, 90 days license included
The components arrived in a very large package, in the shape of a briefcase and well protected by envelopes and quality packaging.
The Package |
---|
The kit allows you to test a simple system for the management of RGB LEDs.
The typical application is that of intelligent and adaptive lighting of the dashboard and other parts of motor vehicles or to create lighting systems to make environments more pleasant and comfortable. Light systems for any other use can also be made.
The video below illustrates some applications of ISOLED technology in the automotive sector.
The ISELED board contains 16 calibrated SmartRGB LEDs (D65 white point, 1000mcd) from Dominant Opto Technologies, two blocking capacitors (100nF, 1µF) at each device, a 7V to 5V low dropout regulator and two 8 position nanoMQS headers from Tyco Electronics.
The S32K144 evaluation board is Arduino UNO footprint-compatible and it contains the S32K144 microcontroller. It provides on-chip connectivity to CAN, LIN and UART/SCI buses and flexible power supply options (micro USB or external 12V).
The power adapter board contains a DC power jack to supply the LEDs and the NXP microcontroller. Besides, there are two DC/DC converters (12V to 7V and 7V to 5V) and an INLC100Q16 device. This power adapter board provides the INLC100Q16 LED driver chip in a 16 lead WETQFN package which converts the single ended communication signal between MCU and the device into a differential output signal.
The 20cm customized eight wire cable contains two twisted wires for the serial differential communication and each three wires for 7V and GND. The wire ends are crimped and connected to nanoMQS plugs from Tyco Electronics
The provided 12V power supply can drive 1A. If more than four ISELED boards are daisy-chained and operated at maximum brightness, the current consumption extends the limit and the power supply must be replaced by a stronger device.
The KIT |
---|
The configuration of the hardware components is described very completely in the ISELED ADK User Manual and takes only a few minutes.
A Smart LED consists of two parts a three-color (RGB) LED and a drive control chip.
The INLC100Q16 is an RGB LED driver and a controller chip. It is a mixed-signal device in a 16 lead WETQFN package.
LED chains can be built up by daisy-chaining several INLC100Q16 devices or other ISELED products via a differential bidirectional serial bus. For that purpose, the INLC100Q16 device can also act as a converter of single-ended to differential bus signals only. The device provides all features required to calibrate the defined brightness of each LED individually and to calibrate the dominant wavelength of the green and blue LED. This allows a one-step accurate calibration of a defined white point. The red, green, and blue LEDs can be individually controlled. The current, as well as the duty cycle, can be adjusted for each LED. In an LED chain, each device is individually addressable via the serial bus.
A proprietary bus protocol is used, optimized for this particular application. The following are the Smart LED features:
8-bit brightness resolution for red, green and blue LED
The kit consists of three parts as shown in the figure below.
The first part is the S32K144 EVB, which is responsible for initiating control commands. It connects to the second part of the Inova ISELED Adapter V1.4 driver board via FlexIO or LPSPI interface. The main function of the driver board is to provide the working power to the Smart LED and convert the serial signal sent by MCU into a differential signal. The INLC100Q16 chip on the driver board does not have an LED function, but only functions as a communication transceiver. The third part of the ISELED-APP-LED16-V2.1 is a light bar with 16 Smart LEDs.
The ISELED ADK can be controlled via Lucie Creator or using the ISELED Driver from NXP.
Lucie Creator Lucie Labs provides the software suite Lucie Creator for the creation of complex lighting effects leveraging the ISELED technology. The user-friendly interface enables to preview live the lighting content directly on the high density LED topology.
Lucie Creator is a software that allows you to test live light sequences with a few simple steps. In order to use it, you must first register on the site: and carefully follow the rocedure described in the document: https://support.lucielabs.com/LucieCreatorSetupGuide.pdf
There is also a video: http://www.lucielabs.com/wp-content/uploads/2018/04/Setup-tutorial-Lucie-Creator.mp4, explaining how to install Lucie Creator.
The phases listed in the video and in the document are performed in a slightly different order: the user will decide which of the two paths to follow, but it is important that all the required steps are carried out successfully. In particular, according to my experience on a Windows 10 PC, one must be careful with the installation of the Lucie Driver and pay the utmost attention to the correct execution of each step.
In particular, causes of failure of the procedure may be:
It is very important not to close the Lucie Creator Driver window.
In any case, in the presence of problems, you can call the support from Lucie Labs. I had problems with registering the software and the assistance received was cordial, fast and very competent.
Once the program is installed, the user can manage the 16 LEDs of the bar individually by setting both the color and the brightness.
The user interface is simple and powerful and allows you to easily create lighting effects of all kinds. The quality of the LED bar is very high and seeing the effects in action is an impressive experience, especially if you think that you can control more than 4000 LEDs individually. A simple manual is: https://support.lucielabs.com/LucieCreatorUserGuide.pdf
The Lucie Creator default firmware is loaded by default in the card and allows you to try some of the light effects that can be created from the kit.
However, if the card is programmed with programs created by the user, the demo is overwritten and, if you want to restore it, you should follow the procedure described in the manual. The default firmware can be downloaded at https://iseled.com/products/iseled-application-kit.html.
The free trial version is limited to 90 days and a maximum number of 16 LEDs. For this reason, although it is a lot of fun to see the animations created by the Lucie Creator demo, I decided to go deeper into the second solution, that of programming directly using the development environment.
To use the ISELED protocol, it is necessary to use the S32 Design Studio IDE (S32DS IDE) - NXP's automotive development environment for the S32K platform of MCUs. In the "S32K ISELED Driver Installation guide", is described how to download the S32DS IDE and how to get the required license.
It can be downloaded at: https://iseled.com/products/iseled-application-kit.html.
ISELED has its own protocol. NXP is an Automotive MCU and low-level SW supplier in the Open ISELED Alliance goal.
If you want to control ISELED, it is necessary to use S32K1xx MCU, ISELED SDK, and the S32 Design Studio IDE (S32DS IDE) NXP’s automotive development environment for the S32K1xx platform of MCUs. The S32K1xx SDK is the underlying software driver package for the MCU. The client can easily control various peripheral modules on the MCU, including timers, communication interface, and ADC. The ISELED SDK is a component of S32K1xx SDK. Customers only need to control each Smart LED device on the external light chain through the MCU’s FlexIO of SPI interface.
To use the ISELED protocol, you can use the S32 Design Studio IDE software (S32DS IDE) created by NXP's for the development of automotive solutions that use the S32K platform. The "S32K ISELED Driver Installation guide" explains how to download the S32DS IDE and how to acquire a license to use the software. S32DS IDE allows editing, compilation, and debugging of Arm MCU based projects.
The S32K SDK ISELED driver is not part of the classic installation of the S32K SDK and you need to have an activation code to be able to download it from the NXP website; it provides the user with all the tools necessary to initialize and drive the ISELED LEDs. After installing the S32K ISELED Driver, to start programming, just create a new project based on an example. The example is "iseled_freemaster" and there is a version for each processor; it is the template that can be used to create your own projects.
{gallery} example code |
---|
|
Once you have chosen the right file based on the processor used, in our case S32K144, moving on to Processor Expert mode and all the components of the board can be viewed in minute detail, from the configuration of the processor pins, to the management of the Clock, to the power management, to the DMA or the ISELED status. By default, the template considers only one LED Strip but the number can be increased without problems.
An important step not to forget is to click on the "Generate Processor Expert Code".
From the analysis of the code of the main.c file you can see all the modules necessary for the realization of a simple project that allows you to try the API commands relating to the ISELED strips. Once the code has been written, you must select "create flash image" and then, by clicking on "Build Project" you will get to the generation of the iseled_freemaster_s32k144.srec file. PE Micro Debug can be used to perform real-time debugging that allows you to see step by step what each API command does directly from the LEDs of the strip.
/*! * @brief Set a RGB value to the addressed LED * * This function sets the color of the addressed LED. Address = 0 is a broadcast address targeting all LEDs in parallel. * * @param Red 0-255: Sets the intensity of the red LED * @param Green 0-255: Sets the intensity of the green LED * @param Blue 0-255: Sets the intensity of the blue LED * @param Address 0-4079: Address of the target LED. 0 addresses all LEDs of the chain. * @param StripNr Number of the strip on which the commands will be sent * @return * - DIGLED_OK: Function returned successfully. * - DIGLED_ERROR: Error due to invalid parameters or * Interface not initialized or * Strip not initialized or * StripNr bigger than maximum supported number of strips. * - DIGLED_EVALUATION_OVER: The limit of commands in evaluation mode has been reached. * - DIGLED_BUSY: The previous command has not finished transmitting or receiving. Bus is busy. */ digLED_ReturnType digLED_Set_RGB(uint8_t Red, uint8_t Green, uint8_t Blue, uint16_t Address, uint8_t StripNr);
Another way to program the LED strips using the ISELED protocol is to use the "Freemaster" software, downloadable from the following link.
Once the steps seen in the previous procedure have been performed, simply open the "Iseled_Driver.pmp" project with Freemaster. The manual indicates which connection string to use and with which values the many parameters must be set.
When you start the file, in the main program window we will see a list of hardware parameters all set with an unknown value (a ?).
By clicking on the STOP button, a connection is made between the Freemaster and the microcontroller. If all goes well, where were there before "?", the values of the individual parameters will appear.
The user can vary the value of these parameters and, consequently, the behavior of the ISELED strip.
{gallery} Freemaster |
---|
Summarizing our experiences with this kit we can say that of the three proven methods for interacting with the LED strip, the first one, Lucie Creator, is immediate and very captivating from a graphic point of view. It allows you to use the kit in a few minutes, albeit after a rather tortuous registration and start-up phase.
The third method, the one that Freemaster uses, is obviously less immediate and simple than the first and presents some small difficulties in configuring the software parameters.
The second method is the least immediate of all but the one I prefer.
As for the kit, I must say that the quality of the electronic components is really very high and the care with which it was made is remarkable. Already the trial demo leaves you breathless for the beauty and precision of the effects: imagine 4000 LEDs of that quality managed individually in each parameter!
As a teacher, I like to understand how things work and always have control over every aspect of things. Objectively, the management of ISELED is complex and I haven't found no developed examples on the Internet which, as in the case of other platforms, can be used to "break the ice" and create original projects starting from simple examples.
Certainly, at the opening of the school, the ISELED project will be one of the proposals that I will make to my students for the in-depth work and I am sure that it will arouse a lot of interest especially in those students who enjoy making PC or car modding. In this video, for example, you can see my son's reaction the first time I tested the kit (mine was just a little different !! ).
To conclude, a wonderful experience that I will continue to carry on and I will keep you updated on future developments.
Top Comments
Good road test report.
DAB
Good road test report. It would have been interesting to see some comparisons to other similar lighting solutions to get a better idea of how this compares to the competition (which I am sure that there…