Studying at a (technical) university has both positive and negative sides. On the one hand we can be part of the development of cutting-edge technology. On the other hand, we barely get to touch this state-of-the-art technology as most of our work and research is theoretical. That is why many Electrical Engineerings crave a bit of tinkering. To facilitate this tinkering Scintilla’s SHOCK organised a tinkering contest.
Some brave enthousiasts joined the contests and their projects share some common themes. A general shortcoming of most electronics projects is that they are never finished or never get finished. This does not mean that the projects are bad in any way, on the contrary! From experience many will know that the hardest part of a project is finishing it, that is why the contest was a great motivator to make that final rush. Regardless of the current status, the authors of the projects were happy to explain what they have been working on. The list start off with a project by Wouter who tries to scale things down to the millimetre.
Mini Addressable RGB LED project - Wouter Nijenhuis
While browsing the internet looking for individual addressable LEDs I came across a video that showed that new WS2812 LEDs were being produced with a much smaller footprint than before, 2x2mm! :O
They were used in a little wearable project called a ‘Halopixel’, a round PCB with a diameter of 3cm with 18 little LEDs in a circle.
I thought: I want that too!
But for my taste it dit not have enough LEDs and the microcontroller that was used could be a lot smaller.
To make it even more wearable I began to design a PCB that is just a little bit bigger than a CR2032 battery. So, 2.5 cm in diameter which theoretically gives enough room for 24 LEDs and some resistors.
Of course this is all theoretical because I have not finished the PCB as of writing this article, for the contest I could only present my idea. Because I thought the microcontroller was too big I had to choose another.
I started this project to test my PCB design skills and learn more microcontroller programming.
For the programming I was torn between using an ARM or AVR chip.
While small ARM chips usually have more instructions, RAM and flash, they can be very different in support for their programming.
So after some consideration I opted for AVR and specifically the ATtiny20.
This little chip is even available in a WLSCP-12 package which is 1.5 by 1.4 mm.
This means it could be in place of one of the LEDs on the front of the PCB and than there are still 23 LEDs left.
On the back of the PCB the idea is to have a clip for the CR2032 battery, some small pins/pads for programming and the power delivery for the rest of the board.
This is still very much in development because the LEDs want 5V power and the chip 3.3V while
the battery gives 3.0V. I have not yet found small enough buck/boost chips to put on the back, so if you have any reccommendations please let me know!
I hope to still finish this project this academic year now that the contest is over, but I think we all know that these are always little lies we can tell ourselfs.
Where Wouter’s project has some serious size restrictions, Yoran’s project is more free, as long as you wear size M. What they have in common is the usage of LEDs. Where Wouter’s project is still in the conceptual phase and still requires some engineering, Yoran can already focus on functionality by projecting many different patterns with his project.
LED matrix T-shirt - Yoran Staal
When I heard of the SHOCK Hobby contest, I gave my project to-do list a quick look to decide which project I wanted to realize: a LED matrix T-shirt.
The LED matrix T-shirt has a 16x9 panel that is made of a simple WS2812B digital LED strip, which is cheap and bright. They are held in place by thin double sided tape that goes around the strips. The matrix is held inside the shirt using Velcro, so the shirt can be washed with the matrix taken out. An ESP32 is the brain of the project, since I wanted Bluetooth to control the shirt with an app. The project is powered by a powerbank that you can keep in your pocket.
This was the first 2D LED project, so I needed some time to find the library’s that could do everything that I wanted: why spend multiple days of programming when someone already did it for you. I found the LEDMatrix library (https://github.com/AaronLiddiment) , which used the FastLED library. Aaron also has additional libraries for scrolling text and animated sprites.
Using my limited Java/Android skills, I created a simple app to select the mode of the shirt: Effect, Text, Icon, Animation, Game. The text can be set in the app as well. BLE took some time to setup but it works pretty well now.
For now, the shirt works pretty well. It can get a bit warm on your chest when you set the brightness full, but this is not a good idea anyways, since you will absolutely blind everyone. I will be writing more software to get additional effects, a drawing option, games and additional text control.
After Yoran’s great LED shirt project we move on to yet more LEDs, this time by yours truely. Where Yoran’s goal was to create the most beautiful patterns, my main goal was to have the LEDs be as informative as possible. You can read how below.
Physical Eetlijst - Matthijs van Minnen
Most student houses record who will join for dinner using Eetlijst. As an Electrical Engineer, approaching other (non Electrical Engineering) people, such as house mates, can be wairy so a digital application is usually a safer alternative. However, being stuck behind a screen all year I craved a different solution. Using an ESP32 and some LEDs I created a physical Eetlijst interface to display who joins for dinner tonight.
In all honesty it was more of a tinkering project than anything else and did not serve any real goal besides me learning how to work with the ESP. As Eetlijst does not provide anything like an API, all I’m doing is scraping the data I require from the beautifully crafted page filled with HTML tables. I’m requesting the webpage on a 1-minute interval and have to follow the POST-request redirect. This required some adjustment of the ESP ‘HTTPClient’ library, which contrary to the name, is able to provide a secured connection for passing the login credentials. To extract one of 4 statuses, I observe the icons: ’eet.gif’, ‘kook.gif’, ’nop.gif’ or ’leeg.gif’. As I’m analysing the raw HTML, I just do some string compares to deduce what icon is in a specific row of the table. After that it is as simple as converting this status to the LED lights.
Thanks to the contest, this basic functionality is now completely working! However, as you might notice the housing leaves a bit to be desired, much to the dismay of my house mates. Perhaps it will see a revision in the future. Likely one of their other future request to randomly select a house mate (not me!) to do the cooking after the press of a big red button sees implementation first.
After many LED-related projects it is finally time for some variation with this final project. While Matthijs’ project has to be working under pressure, Matthijs himself has taken it a bit slower. His description will take you through some of his design decisions.
Dive computer - Matthijs Aanen
So I’m a scuba diver, and I really wanted my own diving computer. The price of a dive computer starts around €150, but a nice one can cost you €1000. To save some money, and have a nice project, I have decided to design and build my own dive computer. It is still a work-in-progress, but I will tell you a bit about what I’ve come up with so far.
Generally, a dive computer sits on your wrist like a really large watch. They monitor, log and display the water temperature and the depth during a dive. Using this information and a model, it calculates the amount of nitrogen that is absorbed in the divers body due to the increased pressure, and helps avoiding decompression sickness by showing the maximum depth and bottom time before and during the dive.
The sensors and electronics must be protected from water and pressure at a depth of 40 meters, which is the limit for recreational diving. At this depth, the pressure is five times as large as at the surface. I have created a proof-of-concept 3D printed enclosure out of 3D printed ABS plastic, that I smoothened and sealed using acetone as a solvent. It has an acrylic window that is made water-tight with a rubber gasket. I have tested this casing in the dive-tower in Enschede, and it held up great! The final enclosure will also have three push buttons and a screw cap for charging and data transfer.
Most of the electronics will be implemented on a small PCB. Measurements are made by a sensor that is mounted in a hole in the enclosure, and sent to the microcontroller via serial. I will use a low-power STM32 microcontroller (with an internal real-time clock) to run an open-source decompression model (VPM) and log the data to some FLASH (or another non-volatile memory) chip. For the screen, I have chosen a nice 2.4” 128x64 monochrome OLED display. The whole system should last for several dives on a rechargeable 1Ah Li-ion battery.
With this final story we have seen four different projects, which despite common themes are widely different. Hopefully reading these pieces has sparked some enthousiasm for completing your own projects. Hopefully you will be able to finish it! If you would like to have it featured by the Vonk, don’t hesitate to contact us . We would be happy to share more engineering work, right here on this platform.