Renovotec · Node.js & device integration
PickByLight
Light the right shelf. Wait for the pick. Keep the demo moving.
- Problem
- Turn an API request into a physical pick-and-confirm sequence.
- My part
- Node.js integration, device-state handling and multi-pick demonstration.
- Outcome
- Working hardware demonstration shown to customers.

What I built
I developed a Node.js demonstration integrating SOLUM electronic shelf labels with a picking sequence. The application requests a light, waits for pick confirmation and advances through the products.
The work began with checking command and confirmation timing, then developed into a looping customer demo with multiple active picks and product-data updates.
Sent is not the same as done
An accepted request does not mean a physical label has lit up. And a lit label does not mean someone has pressed its button. I worked through those states instead of treating the API response as the end of the task.
The demo logs track processing, success and pick confirmation. That made it possible to see where the sequence was waiting, rather than guessing from a motionless console.
Under the hood: timing without wishful thinking
Early timing output showed impossible one- and two-hour delays. I questioned the results and investigated timestamp interpretation rather than presenting them as device latency.
Later iterations used multiple active picks. Variable flash delays and intermittent socket disconnections exposed further reliability work. Individual timing samples are not a guaranteed response time, and proposed recovery changes are not the same as a completed endurance test.
What you can see
The photograph shows the working hardware setup; the development record includes actual pick-confirmation logs. Renovotec has demonstrated the system to customers.
This is a practical example of my JavaScript work beyond websites: integrating an external API with physical devices, observing their state and turning that into a usable demonstration.