<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://community.element14.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Holiday Special 2023</title><link>https://community.element14.com/challenges-projects/project14/holiday-special-2023/</link><description>Win Great Prizes and Shopping Cart Prizes for Your Holiday Project!</description><dc:language>en-US</dc:language><generator>Telligent Community 12</generator><item><title>Blog: blog</title><link>https://community.element14.com/challenges-projects/project14/holiday-special-2023/b/blog</link><pubDate>Mon, 15 Apr 2024 09:37:00 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:add35272-ce99-430a-9e1b-504a61eef34e</guid><dc:creator /><description /></item><item><title>File: 2450.VID_20231224_144208</title><link>https://community.element14.com/challenges-projects/project14/holiday-special-2023/m/managed-videos/148965</link><pubDate>Fri, 26 Jan 2024 15:13:00 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:8abf537f-57f0-45e6-b7ee-d5aebf5b0cb2</guid><dc:creator>huwjones</dc:creator><description /></item><item><title>File: 8358.water</title><link>https://community.element14.com/challenges-projects/project14/holiday-special-2023/m/managed-videos/148815</link><pubDate>Thu, 18 Jan 2024 10:11:00 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:b4cd2855-2106-4809-b986-d28815fdcca3</guid><dc:creator>balajivan1995</dc:creator><description /></item><item><title>File: 6886.Bicep</title><link>https://community.element14.com/challenges-projects/project14/holiday-special-2023/m/managed-videos/148814</link><pubDate>Thu, 18 Jan 2024 10:11:00 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:0a477562-1d88-45e2-9e4a-97a281f6b59e</guid><dc:creator>balajivan1995</dc:creator><description /></item><item><title>File: 6712.Dim Twist</title><link>https://community.element14.com/challenges-projects/project14/holiday-special-2023/m/managed-videos/148813</link><pubDate>Thu, 18 Jan 2024 10:11:00 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:31adca24-97d5-42b2-9d9f-fda9e05dc264</guid><dc:creator>balajivan1995</dc:creator><description /></item><item><title>File: Spinning Ornament Test 2</title><link>https://community.element14.com/challenges-projects/project14/holiday-special-2023/m/managed-videos/148771</link><pubDate>Tue, 16 Jan 2024 00:13:00 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:649f61ea-96a1-4a3c-8030-bf528f725e84</guid><dc:creator>milosrasic98</dc:creator><description /></item><item><title>File: Spinning Ornament Test 1</title><link>https://community.element14.com/challenges-projects/project14/holiday-special-2023/m/managed-videos/148770</link><pubDate>Tue, 16 Jan 2024 00:13:00 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:89bf9ad9-9a10-447d-b3aa-28583672ccc2</guid><dc:creator>milosrasic98</dc:creator><description /></item><item><title>File: Spinning Ornament Color Test</title><link>https://community.element14.com/challenges-projects/project14/holiday-special-2023/m/managed-videos/148769</link><pubDate>Tue, 16 Jan 2024 00:13:00 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:16560ea7-792c-48fa-a997-5014aae88f5d</guid><dc:creator>milosrasic98</dc:creator><description /></item><item><title>Spinning Christmas Ornament</title><link>https://community.element14.com/challenges-projects/project14/holiday-special-2023/a/holiday-projects/HP40/spinning-christmas-ornament</link><pubDate>Mon, 15 Jan 2024 22:06:00 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:61f6e309-9d1b-401a-9248-ee6ff6d24963</guid><dc:creator>milosrasic98</dc:creator><description>Every Christmas Tree has small LEDs and ornaments, so I thought, why not combine these 2 into one thing? In this project, I&amp;#39;ll show you how I made a spinning Christmas Tree ornament that lights up and changes colors! Spinning Christmas Tree Ornament 1. Introduction Hi, This will be my project for the Holiday Special 2023 Project14! In this blog, I will describe all aspects of my project, so I hope you enjoy it. When you look at a Christmas Tree chances are you will see 2 things, ornaments, and LED lights. Why not combine them into one? My idea for this project is to make a spinning Christmas Tree ornament as the title says, that would have LED-s on the outside, and when it spins up, it will give a cool effect. This can also be further improved by adding something like an IMU or an encoder to the ornament and making a spinning round display! Let&amp;#39;s begin by looking at the mechanical design of the Ornament. 2. Mechanical Design Now that you&amp;#39;ve gotten the idea for my project, let&amp;#39;s first make a list of requirements for our mechanical design. Requirement List First of all, we need something to spin up the whole ornament, and for that, I will be using a small brushed DC motor, since I have a lot of them around, plus they are really easy to control using a single MOSFET. To enable tracking the position of the spinning ornament, I will add a small optical encoder and encoder wheel. Besides that, we need a battery for the power supply since we can&amp;#39;t have any cable running to it, we need an RGB LED strip on the outer ring of the ornament and we need some electronics for controlling all of that. As the brain for the whole project, I will be using a Raspberry Pico W, since they are easy to use and quite a powerful little board with WiFi capabilities which will allow us to control the ornament wirelessly. Here is the list of the main things that we will need (you&amp;#39;ll be able to find the full BOM at the bottom of this blog). Brushed DC motor 9V Battery Raspberry Pico W Encoder and Encoder Wheel RGB LED strip (addressable or standard) 3D printed parts Small hardware like screws, a bearing, and a 5mm metal rod CAD Design To package all of this into an ornament, I will design all of the necessary parts using Autodesk Fusion360, and print them out of PLA. You can find all of the CAD files both STEP and STL linked at the bottom of this blog. Here is the picture of the final CAD model of the ornament. All of the purple parts in the picture are gonna be 3D printed, the gray cylinder in the middle of the ornament is the DC motor that spins the metal shaft with the wooden encoder disk glued onto it. They are connected using a small 3D-printed coupler. The red part in the picture is the 9V battery, since it&amp;#39;s individually the heaviest part of the whole ornament, I made sure for the center of mass of the battery to align with the axis of rotation to minimize any unwanted vibrations when the ornament spins up. The LED strip is supposed to be glued with double-sided sticky tape on the purple outer ring. In the next picture, you can see the other side of the assembly. On this side of the ornament, we can see the 2 green PCBs. The smaller one is the encoder module, while the bigger one is a piece of perfboard to which I will solder all of the necessary components. To save on space, all of these parts are put together using M3 screws (and a couple of M2.5), where I cut the threads using a tap. 3. Electronics Design The electronics for this build are pretty simple with just a couple of smaller circuits that I will show you. The whole electronics can be broken down into power electronics, motor electronics, and PicoW connections. Power Electronics As the main power source for this project, as mentioned before, I will use a 9V battery. While 9V is okay for driving the motor, we need to step that voltage down if we want to power the Raspberry Pico W and the LED-s. We need to drop the voltage down from 9V to 5V. Since the 5V won&amp;#39;t use that much power and I&amp;#39;m not aiming at any high efficiency, I will go with a linear regulator for this project, the 7805, that will drop the voltage down to 5V with just an addition of 2 capacitors to stabilize everything. Motor Electronics I want to leave the option of being able to control the speed of the motor, but for this purpose, we don&amp;#39;t care about the direction of the spin of the motor. With that in mind, the easiest way to control a motor is by using a single N channel MOSFET as a low-side switch. By changing the duty cycle of the PWM on the pin that is connected to the MOSFET we can change the speed of the motor. If you&amp;#39;re trying to replicate this, just make sure that the gate threshold voltage for the MOSFET you are using is under 3.3V. The MOSFET I will be using is the IRL540N. Besides the MOSFET I&amp;#39;ve added a 10k pulldown resistor as well as a 330R current limiting resistor. You can see the connections in the picture below. Full Schematic All of the other connections are just straight connections to the Raspberry Pico W. This includes 2 things that we need to connect, one is the encoder which just sends its signal to a single digital pin and the other connection is for the RGB LED. I&amp;#39;ve with an RGB LED strip that has addressable LEDs meaning that I can change the color and brightness of each of the LEDs completely through software which will enable me to program any sort of different effects besides solid colors. In the picture below you can see the full schematic. Soldered Electronics To solder everything I&amp;#39;ve taken a piece of perfboard and started adding components going by the schematics I&amp;#39;ve shown above. To easily disconnect everything, all of the connections with the perfboard go through crimp nylon connectors since they are easy to use and cheap. When printing a mount for a perfboard, make sure to make the distance between mounting holes to be a whole number multiplied by 2.54mm so you can just drill out a hole on the perfboard. In the picture below, you can see the finished soldered perfboard. 4. Final Assembly The assembly process is straightforward, the easiest way to go about it is to follow the CAD model as you put things together. I&amp;#39;ve left STEP files so you can customize the motor mount to fit the DC motor that you might want to use for this project. Besides that, everything goes together with M3 and M2.5 screws. You can try cutting the thread with the screws themselves, but since the parts are rather small and prone to cracking, I like the cut the threads beforehand using a small tap. Two things to watch out for here are the battery and the shaft assembly. To keep the battery in place I just used a piece of double-sided sticky tape, as for the shaft assembly, I&amp;#39;ve secured the metal shaft to the coupler by drilling and tapping a hole through the metal shaft, but you can just use a bit of super glue. You can see pictures of the completed assembly below. 5. Software Only one thing left before we can take the ornament for a spin (literally for a spin!) and that is the software. The software is split into 2 categories here, one is the software for the Raspberry Pico W, and the other is software for controlling the ornament wirelessly. To control the ornament wirelessly, I used NodeRed since I have a Raspberry Pi 3 set up as a server running Node-Red, so all controls go over MQTT. This was the fastest way for me to integrate wireless controls, you can also use things like Blynk and similar services which allow you to connect and control a device easily over WiFi. Let&amp;#39;s first take a look at the Raspberry Pico W software. Raspberry Pico W Code Here I&amp;#39;ll just summarize how the code on the Pico works. We first need to connect to the internet using the WiFi library and connect to the MQTT broker using the ArduinoMqttClient library. For controlling the addressable LEDs I used the FastLED library which is extremely easy to use and for the PWM I used the RP2040_PWM library. The Pico first connects to the internet over WiFi and then to the MQTT broker, and sets up all of the pins. After that in the loop, it just listens and waits for new messages on the MQTT topics. There are 5 different topics: picow/red - LED Red channel topic picow/green - LED Green channel topic picow/blue - LED Blue channel topic picow/motor - Motor ON/OFF topic picow/mode - Change mode topic Once it receives a message, it checks from which topic it is, and then based on the message it can adjust the RGB values for the LED strip or start/stop spinning the ornament, and so on. That would be how the whole code works, you can find the whole code below, just make sure to change the SSID, password, and MQTT parameters. Node-Red I realize this is a solution that not many people will try to follow when it comes to wirelessly controlling the Pico but it was the easiest for me to integrate since I already have the Raspberry Pi running nonstop on my network. In the picture below, you can see all of the nodes that I&amp;#39;ve used and how they&amp;#39;re all connected, it&amp;#39;s a rather simple interface with 3 sliders and 2 switches. Each of the dashboard controls is connected to send a message to a certain topic. In the 2 pictures below you can see how I&amp;#39;ve configured the nodes to work properly. The range for the sliders is from 0 to 255 while the switches just send 0/1 which on the Pico end is received as true/false. That would be the whole interface code. When we launch it, we can see the sliders and switches as shown below. One good thing about this approach is that besides having the controls on a computer, we also have controls on the phone. Here is what that looks like. 6. Testing And we finally reached the fun part of the project, the testing! It&amp;#39;s always an amazing feeling reaching this part of the project, let&amp;#39;s begin by looking at the color changes! Color Changing Each of the RGB channels can be adjusted between 0 and 255 so we can get any color that we want. Below is the video of going through the colors on the ornament. Spinning Test And in the end, we of course have the spinning test. I&amp;#39;ve discovered some problems here as you will see in the video itself, but the LED strip will only show the color red while it&amp;#39;s spinning, I suppose it&amp;#39;s a power issue since the motor is probably drawing a lot of current from the 9V battery, if you have any ideas why something like this would happen, please let me know! The effect is still pretty cool to look at! The colors show up as soon as the motor gets turned off and it looks awesome, here are a few pictures that I managed to capture of the ornament spinning (or stopping to spin to get the other colors to pop up). First the one while spinning. And here are a couple when the motor gets turned off and the colors come out! 7. Summary This was a really fun project to work on and I&amp;#39;ll have it in much better shape for Christmas next year. The main thing I need to figure out is why all of the colors go off when the motor starts spinning and then integrate the encoder properly into the whole project. I&amp;#39;ll also need to revisit the whole mechanical assembly, balance it out a bit, and maybe go with an even faster motor, my goal for this is to work like a low-resolution spinning display next time. Besides all of that, I&amp;#39;m still extremely happy with how it turned out and how it looks. You can find all of the CAD files on the link below: CAD files: https://www.printables.com/model/724048-spinning-christmas-ornament Thanks for reading the blog, if you have any questions or suggestions, please leave them down below! Hope you enjoyed this project and that it will inspire you to make something by yourself! Kind regards, Milos Rasic https://github.com/256dpi/arduino-mqtt https://www.printables.com/model/724048-spinning-christmas-ornamen t</description><category domain="https://community.element14.com/challenges-projects/project14/holiday-special-2023/tags/picow">picow</category><category domain="https://community.element14.com/challenges-projects/project14/holiday-special-2023/tags/3D%2bPrinting">3D Printing</category><category domain="https://community.element14.com/challenges-projects/project14/holiday-special-2023/tags/neopixel">neopixel</category><category domain="https://community.element14.com/challenges-projects/project14/holiday-special-2023/tags/raspberrypi">raspberrypi</category></item><item><title>Activity Tracker - With Santa as spotter</title><link>https://community.element14.com/challenges-projects/project14/holiday-special-2023/a/holiday-projects/HP39/activity-tracker---with-santa-as-spotter</link><pubDate>Sun, 14 Jan 2024 19:50:00 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:dac641f3-69b0-4bd5-902b-ecb8f8c6f738</guid><dc:creator>balajivan1995</dc:creator><description>A simple application to predict the activity based on sensor data will be done on edge and the inference result will be mapped into Santa&amp;#39;s actions and visualized with a help of a display. Introducing Our spotter As someone who works full time on a desk job, I need occasional reminders to move around and do some stretching exercises to keep the joints going. While I could set up an alarm, it is not a fun as creating an alert system myself. In addition to that, I wanted to incorporate some features that provides better self-care. Now that we have decided to monitor our activity and do some exercise, it still does not feel complete. Working out with a friend can make it more enjoyable, and if you lift weights, having a spotter makes it safer. For this project Santa will accompany us as we try to undo the weight we have gained during the holidays. i Materials Used XIAO ESP32C3 board MPU6050 Strap ESP32 Dev kit board Rechargeable battery Nextion 7&amp;quot; intelligent display The display is powered up by using a TTL module and the UART lines are connected to ESP32. The ESP32C3 is paired with MPU6050 using I2C lines, the circuit can be powered by using USB cable or by using battery. Now all we have to do is to strap ourselves and enjoy the ride. Implementation I have collected and trained 3 labels of data among which only one is an actual exercise. While there are several exercises that can be used for this project, I wanted to keep it simple and easily repeatable for anyone. The Edge Impulse repo is publicly available. The labels are as follows, Idle Wrist Twist Bicep curls For a detailed explanation on how to get the data, creating impulse using Edge impulse, creating and live testing the model, please follow the instructions in this blog . Display UI As the steps to design the display UI is out of this scope for this project, I will cover it later sometime in a different post. The final UI will look like this. Power save - Idle In smart watches, to conserve the battery power, low power mode will be enabled when there is no activity for a defined duration. The data was collected by placing hands on side and resting on table. Santa will start sleeping if there are no activity for 5s and the screen will dim. Power on - Twist to On This is another feature I copied from smart watches, when the display is in idle mode, user have to twist their wrist to turn it back on. Santa will wake up from his nap with much enthusiasm and will wait for further action. Below video covers both twists to turn on the screen and idle state Power up - Bicep curl Bicep curl is the easiest exercise that provided a consistent data for me and a slightly difficult data to work with when I tested it in live classification with someone else. The swinging movement slightly resembles the wrist twist and sometimes produce false value – Bicep curl as Twist to On or Twist to On as Bicep curl. On getting the correct action, Santa will also mimic doing Bicep curl with us. Additional feature - Water reminder On average, we need to consume 8 cups of water every day. For those who exercise frequently, it important to keep the body water level and electrolyte level at correct level to avoid dizziness. I have added a simple reminder in display that will pop up a text reminder to drink water. For video example, I set the reminder to happen 5s after the button is pressed. Additional feature - Music player Music not only provides a better ambience; it also helps in focusing on any task. So, one more feature added to this activity tracker is the option to play your favourite music with a play/stop button. Code explanation I used Edge Impulse to collect data, train the model and create deployment package. Edge impulse uses data formatted in CSV style printed over the serial lines as sample. The Edge Impulse CLI will receive the CSV data and transmit it to cloud using Edge Impulse CLI. I will post a detailed explanation of all the steps and configuration made to get the desired result later. XIAO ESP32C3 acts as our inference runner whereas ESP32 Dev kit acts as our display driver. The communication between ESP32C3 and ESP32 are done in local network using raw UDP protocol. The inference takes in [Number of data per entry]*[Samples per second] which happens to be 6 data points and 100 samples per second for our project. The data is collected every 10ms and at the end of 10ms, previous data points are shifted by 6 data points and newer data points are inserted at last. The integer array is then converted to float array and passed to inference result function. I tried “ memmove ” but it crashed the application, so I decided to use the good old for loop. The inference calculation usually takes 120ms which is good enough for now, the output is a confidence rate for each label. In case two labels might have 0.5 confidence rate which I discard by setting the confidence rate threshold as 0.6. Once a match is found, label number is transmitted over UDP and received by ESP32. As the IP address of the devices changes every time and I did not want to assign a static IP to each device, I made the data to be transmitted and received in a UDP multicast group. On receiving side, everytime UDP message is received ESP32 will parse the payload and send suitable String commands to display through UART. Touch events on display are also transmitted to ESP32, which will also be processed and suitable actions will be taken. Challenges faced To be honest, I wanted to do this project as a part of Rasynboard Road-test. Unfortunately, I am facing a slight issue with the board and decided to opt to use XIAO ESP32C3 for its small form factor. Another challenge I faced was using a suitable strap to attach the sensor kit to my arm. While testing with Rasynboard I used a smaller strap that is not quite suitable for the IO board’s size, so I decided to use a tourniquet strap that is nearly twice in length and provided a better grip. When twisting my arm, the angle of inclination resembles the initial rising stage of bicep curl of someone else. While it does not affect the project, it just highlights the need for diversity in data – collecting from multiple people and more data for testing/training for a label. The last one is using a suitable communication protocol. The inference processing usually takes around 120-130ms on ESP32C3 in addition to that, sending the inference result via BLE took few more milli seconds. Since I don’t have any control over the calculation time, I decided to cut back on wireless communication delay by deploying raw UDP. Improvements Initially I wanted to implement an alert service that will pop up when user makes a gasp or similar sound on getting injured using the mic in Rasynboard. The only other mics I have are PDM mic which are nowhere good enough for a keyword spotting application. Once Rasynboard is up and running, I will try ML on edge using sensor fusion . The project can be further improved by collecting data from people who maintain a good form while exercising, in that way we can actually get live feedback of our posture as well. Using this, we can create a preset exercise where we follow along Santa, if the form is good enough count will be incremented else posture correction info will be displayed. Credits One of my colleagues whose only crime is showing interest in my project and offering to fix the Rasynboard kit, later I used him to test the accuracy of inference result. Bing AI – Generating Santa images Bensound – Audio used in the display. Flaticon – Icons used in making the display UI. Files attached</description><category domain="https://community.element14.com/challenges-projects/project14/holiday-special-2023/tags/firmware">firmware</category><category domain="https://community.element14.com/challenges-projects/project14/holiday-special-2023/tags/holiday%2bprojects">holiday projects</category><category domain="https://community.element14.com/challenges-projects/project14/holiday-special-2023/tags/machine%2blearning">machine learning</category></item><item><title>File: 8231.VID_20201205_220009_1</title><link>https://community.element14.com/challenges-projects/project14/holiday-special-2023/m/managed-videos/148746</link><pubDate>Wed, 10 Jan 2024 12:05:00 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:1536f455-0d81-4921-9d38-f249f3f42b23</guid><dc:creator>MarioPJ98</dc:creator><description /></item><item><title>Forum Post: RE: Santa's Mailbox</title><link>https://community.element14.com/challenges-projects/project14/holiday-special-2023/f/forum/54056/santa-s-mailbox/218404</link><pubDate>Wed, 10 Jan 2024 11:19:00 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:534666ab-2417-4194-be84-8458e8d5d4c0</guid><dc:creator>Fred27</dc:creator><description>Stick it in a box labelled &amp;quot;open November 2024&amp;quot; and continue it then.</description></item><item><title>TipsyTunes Festive Light Show</title><link>https://community.element14.com/challenges-projects/project14/holiday-special-2023/a/holiday-projects/HP37/tipsytunes-festive-light-show</link><pubDate>Wed, 10 Jan 2024 10:40:00 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:e30849c3-066d-4246-996c-708eb575235d</guid><dc:creator>MarioPJ98</dc:creator><description>Introducing &amp;quot;TipsyTunes Festive Light Show&amp;quot;! Arduino magic meets holiday cheer with 25 LEDs in beer bottles and a buzzer belting out three Christmas tunes. Remote-controlled festive mayhem in every sip! Cheers to tipsy technology! Introducing the &amp;quot;TipsyTunes Festive Light Show&amp;quot; – where Arduino wizardry meets the world of inebriated innovation! Ever found yourself yearning for a symphony of merriment emanating from your beer bottles? Look no further! Our concoction of technology and holiday cheer will leave you questioning if your brew has been secretly moonlighting as a musical maestro. Picture this: 25 LEDs nestled snugly inside beer bottles, each gleaming with the potential to light up your world (and your spirits). But wait, there&amp;#39;s more! A buzzer, ready to serenade you with the dulcet tones of not one, not two, but three Christmas classics. We&amp;#39;re talking the kind of auditory bliss that will make your brewskies jealous. Using the remote control, you can now handpick the anthem for your evening shenanigans, because who needs a DJ when your beer can orchestrate a festive fiesta? From the subtle glow of Santa Claus is Coming to Town to the spirited sparkle of Jingle Bells, our device is here to elevate your beer-drinking escapades to a whole new octave. For this project, I have used an Arduino Mega 2560, a breadboard to connect all the grounds, and a lot (A LOT) of cables to connect all the LEDs and put them inside the bottles. I have provided the Arduino file as well as the pitches.h file. I inspired myself from a project I found online where they used only 5 LED lights and buttons to change songs. I added 20 more LEDs and added the function to use a remote controller. Plus there were some bugs in the original code that made all the LED lights to turn on at once. I can&amp;#39;t find anymore the original code. So, whether you&amp;#39;re dreaming of a white Christmas or simply dreaming after a few sips, the TipsyTunes Festive Light Show promises to be the life of the party. Just be warned – your beverages might start requesting encore performances! Cheers to a symphony of suds, lights, and a touch of tipsy technology!</description><category domain="https://community.element14.com/challenges-projects/project14/holiday-special-2023/tags/happy%2bholiday">happy holiday</category><category domain="https://community.element14.com/challenges-projects/project14/holiday-special-2023/tags/holiday%2bprojects">holiday projects</category><category domain="https://community.element14.com/challenges-projects/project14/holiday-special-2023/tags/diy">diy</category><category domain="https://community.element14.com/challenges-projects/project14/holiday-special-2023/tags/led">led</category><category domain="https://community.element14.com/challenges-projects/project14/holiday-special-2023/tags/interactive%2bornaments">interactive ornaments</category><category domain="https://community.element14.com/challenges-projects/project14/holiday-special-2023/tags/sound">sound</category><category domain="https://community.element14.com/challenges-projects/project14/holiday-special-2023/tags/microcontroller">microcontroller</category><category domain="https://community.element14.com/challenges-projects/project14/holiday-special-2023/tags/arduino">arduino</category><category domain="https://community.element14.com/challenges-projects/project14/holiday-special-2023/tags/song">song</category><category domain="https://community.element14.com/challenges-projects/project14/holiday-special-2023/tags/holidayspecial23CH">holidayspecial23CH</category><category domain="https://community.element14.com/challenges-projects/project14/holiday-special-2023/tags/fun">fun</category></item><item><title>Forum Post: RE: Santa's Mailbox</title><link>https://community.element14.com/challenges-projects/project14/holiday-special-2023/f/forum/54056/santa-s-mailbox/218400</link><pubDate>Wed, 10 Jan 2024 10:28:00 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:73e1f0cb-7501-4e1f-b712-404383617ffb</guid><dc:creator>cstanton</dc:creator><description>We&amp;#39;ll look forward to it</description></item><item><title>Forum Post: RE: Santa's Mailbox</title><link>https://community.element14.com/challenges-projects/project14/holiday-special-2023/f/forum/54056/santa-s-mailbox/218399</link><pubDate>Wed, 10 Jan 2024 10:03:00 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:e5455971-d126-4c74-a3ee-4ef06fdf5928</guid><dc:creator>iker46</dc:creator><description>Definitely I won&amp;#39;t have time to participate this year... I&amp;#39;ll come back with this project next year. Good luck to all.</description></item><item><title>Forum Post: RE: Santa's Mailbox</title><link>https://community.element14.com/challenges-projects/project14/holiday-special-2023/f/forum/54056/santa-s-mailbox/218267</link><pubDate>Fri, 05 Jan 2024 07:12:00 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:57509b2f-c2bc-4368-8c88-d3b0c85a22df</guid><dc:creator>iker46</dc:creator><description>As expected I have been very busy... I have been able to fix the painting of the mailbox and code the screen. I&amp;#39;ll try to finish and post it and I&amp;#39;ll keep updating in the future. It&amp;#39;s something my kids could be involved with when they grow up.</description></item><item><title>File: 4331.LED Christmas Tree</title><link>https://community.element14.com/challenges-projects/project14/holiday-special-2023/m/managed-videos/148716</link><pubDate>Thu, 04 Jan 2024 06:17:00 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:551df8ec-c7e4-481b-86d2-48da8a79a9d1</guid><dc:creator>taifur</dc:creator><description /></item><item><title>LED Christmas Tree Charlieplexing 206 LEDs</title><link>https://community.element14.com/challenges-projects/project14/holiday-special-2023/a/holiday-projects/HP36/led-christmas-tree-charlieplexing-206-leds</link><pubDate>Tue, 02 Jan 2024 08:21:00 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:fc0bc94e-9216-41c4-b6eb-9ddb86d18c5b</guid><dc:creator>taifur</dc:creator><description>This is an incredible LED Christmas Tree I made by Charlieplexing 206 LEDs. For driving the LEDs I used just an Arduino Nano. No driver IC, transistors, or resistors are used in the project. So, the circuit is very straightforward. For arranging the LEDs I laser cut an acrylic sheet and the tree is organized into 12 layers. All the layers are stacked with M3x15mm Male-to-Female Nylon hex spacers. I was inspired by the project 72LED Christmas tree made with Arduino from radio pliers. For making the Christmas tree I used 206 LEDs and a Arduino Nano. However, controlling that huge number of LEDs using a microcontroller is not an easy task. If you want to control each LED independently you will be required 206 pins microcontroller for direct connection. But there are other options and using those you can save microcontroller pins and control each LED individually. Connecting LEDs in matrix form or using shift registers are two of them. Using shift registers will increase the complexity and cost of your project. Charlieplexing is another easy and inexpensive method. I used this method for making the project. I only used 15 pins of the Arduino Nano for driving 206 LEDs. The connections are very easy and do not involve lots of wiring. The schematic diagram is as follows. The brightness of the LEDs can be adjusted programmatically or using a potentiometer connected to the A5 pin of the Nano and this option can be altered by the switch connected to the A4 pin of the Arduino. You don&amp;#39;t need any resistor with the LEDs as I used timer interrupt for ON/OFF the LEDs and no LED is on for a long time (40us only). For organizing the LEDs I used a 2 mm acrylic sheet. The spacing between two pins of a 5 mm LED is 2.54 mm. So 2 mm acrylic sheet is the right selection and it fits well with the LED. I distributed the LEDs into 12 layers. For arranging LEDs in layers I laser cut the acrylic sheet in gear form. The cut sheets are shown below. The design files are attached in a zip file at the last. At the center of the design, there is a hole that will be used for passing wires from one layer to another. Three M3 size drill holes are made in every layer for attaching one layer with the other using M3x15mm hex spacers. In layer 11 (the bottommost layer) there are 28 teeth and it gradually reduced by two towards the top. Topmost layer has 6 LEDs. At the top, a star is placed with 5 teeth. The LED distribution is as follows: 28 -&amp;gt; 26 -&amp;gt; 24 -&amp;gt; 22 -&amp;gt; 20 -&amp;gt; 18 -&amp;gt; 16 -&amp;gt; 14 -&amp;gt; 12 -&amp;gt; 10 -&amp;gt; 8 -&amp;gt; 6 (Total: 204 + 2 for start) The diameter of the bottom layer is 140mm and is gradually reduced by 10mm on every layer. LED placement of a layer is shown in the following image. Every adjacent LED has the opposite polarity. On one side all the LED pins are soldered together with a copper wire and it looks like a ring. On the other side, two adjacent LEDs are connected with opposite polarity. Every layer has an even number of teeth. All the layers are prepared before making the tree stacking layers one after another. I was curious about how it is going to look after attaching all the layers. So, I arranged one after another and it looks like below without any space. Now, it is time to attach the layers. I added two layers together using three 15mm male-to-female Nylon hex spacers. For connecting LEDs to the Arduino pins I used 24 AWG single strand insulating wire. For the bottom layer, three additional hex spacers with a bigger gap are attached that will work as a base of the tree. A closer look with the hex spacers attached. The final outlook of the completed Christmas tree looks like the image below. It looks great. I made the Arduino circuit with a switch and resistor in a perfboard. I used male pin headers for attaching the circuit board with the LED tree. For the programming, I used the Arduino platform and this program does not need any additional libraries. However, an understanding of timer and timer interrupt is required. Timer 2 was utilized in the sketch. For controlling every layer an uint32 value is used. The value for turning all the LEDs is as follows. Connections of the layer LEDs with the corresponding pins are illustrated in the following screenshot. It will help you to better understand the Arduino sketch. Let me explain a little more about the connection and control bit. If we consider layer 11, there are 28 LEDs for layer 11 and the common side of the layer is connected to the D2 pin of the Nano. On the common side, the anode of 14 LEDs and the cathode of the other 14 LEDs are connected all together with the copper ring. The minus sign (-) of the above screenshot represents the cathode and the plus sign (+) represents the anode of the LED. That means the anode of the rightmost LED is connected to the D3 pin and the cathode is connected to the D2 pin. Then for the next LED, the anode is connected to the D2 pin, and the cathode is connected to the D3 pin. So, if we want to connect right most LED then D2 should be low and D3 should be high. The Arduino sketch is given below with useful comments. The original program was written by radio pliers . I modified it as my connection and requirement. You are free to modify it and use the program. The demo video in action is added below. /cfs-file/__key/articles/7af4a50d1cca487dbb7c3f040f64520e-a-fc0bc94e921641c4b6eb9ddb86d18c5b/8032.Schematic.pdf /cfs-file/__key/articles/7af4a50d1cca487dbb7c3f040f64520e-a-fc0bc94e921641c4b6eb9ddb86d18c5b/8551.Arduino-sketch-and-schematic.zip The original project was published here and written in Japanese .</description><category domain="https://community.element14.com/challenges-projects/project14/holiday-special-2023/tags/happy%2bholiday">happy holiday</category><category domain="https://community.element14.com/challenges-projects/project14/holiday-special-2023/tags/holiday%2bprojects">holiday projects</category><category domain="https://community.element14.com/challenges-projects/project14/holiday-special-2023/tags/led">led</category><category domain="https://community.element14.com/challenges-projects/project14/holiday-special-2023/tags/christmas%2btree">christmas tree</category><category domain="https://community.element14.com/challenges-projects/project14/holiday-special-2023/tags/microcontroller">microcontroller</category><category domain="https://community.element14.com/challenges-projects/project14/holiday-special-2023/tags/holidayspecial23CH">holidayspecial23CH</category></item><item><title>Forum Post: RE: Christmass tree</title><link>https://community.element14.com/challenges-projects/project14/holiday-special-2023/f/forum/54146/christmass-tree/218018</link><pubDate>Fri, 29 Dec 2023 19:43:00 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:cc4e9e05-8434-49e7-a33e-97d41fa9693c</guid><dc:creator>satss</dc:creator><description>cool its god for work desk</description></item><item><title>Cute Hexapod</title><link>https://community.element14.com/challenges-projects/project14/holiday-special-2023/a/holiday-projects/HP35/cute-hexapod</link><pubDate>Fri, 29 Dec 2023 19:35:00 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:00a79030-7b92-4723-9c1f-2c4507d09299</guid><dc:creator>satss</dc:creator><description>I designed this hexapod robot to navigate challenging obstacles using its six legs. Smooth leg movements and balance are the primary goals of creating this hexapod during the winter holiday. I&amp;#39;am built with STM32 and Arduino IDE. The robot can move in all directions: forward, backward, right, left, diagonally, turn right, and turn left. In the next development phase, this robot can interact with its surrounding environment, allowing its movements to adapt to the surroundings. The hexapod robot is a legged robot inspired by living organisms. T his robot is often used in exploration missions to places that are difficult for humans to reach. The advantages of the hexapod robot include its ability to overcome various obstacles, flexibility, and balance in all terrains. In this holiday project, I created a hexapod robot using 3 servos for each leg, totaling 18 servos. I employed the STM32 Blackpill as the microcontroller for the robot. For power management, I utilized a 3-cell LiPo battery with a 12V output voltage. The battery&amp;#39;s output voltage is fed into a UBEC and a stepdown module. I set the UBEC to 6V for servo power and the stepdown to 5V for the microcontroller power. To ensure stable voltage during servo operation, I used an electrolytic capacitor (elco) as a voltage stabilizer. https://drive.google.com/file/d/1oquyRL8PbcHxG97_iWQOvWTytxOXDyZ2/view?usp=drive_link https://drive.google.com/file/d/1M5c8Ia6_jrcMjUG3eut-wm_SeBuWo5C3/view?usp=sharing In designing the 3D model, I utilized Onshape to estimate the size of the robot before its physical construction. Subsequently, I employed EasyEDA for creating the PCB (Printed Circuit Board) for the robot. In the programming phase, I began by formulating inverse kinematics trigonometric equations using the Arduino IDE. I then proceeded to integrate these equations for all the legs of the robot. The next step involved creating trajectories to move the robot to the desired 3D positions. I integrated these movements across all legs to enable the robot to move freely. In the subsequent stage, I programmed the robot for forward, backward, right, left, diagonal, and rotational movements. https://drive.google.com/file/d/1BdI98EMZJvUTma_8YPsWyl4RHljzHsXQ/view?usp=sharing https://drive.google.com/file/d/1i5PjCVWcIEo9lgN7Khbwgm9-gqXkebxX/view?usp=sharing In the next phase of robot development, I will implement body kinematics to enhance the smoothness of the robot&amp;#39;s movements. Additionally, I will attach pins to the tips of the robot&amp;#39;s legs to enable it to sense its surrounding environment. I also plan to incorporate gyroscope and compass sensors to ensure smoother and more controlled robot movements. This concludes the holiday project that I&amp;#39;ve undertaken, and I hope you find it entertaining and enjoyable during your break. Stay tuned for updates on my hexapod project! Here is my equation in this project, its inverse kinematic leg https://drive.google.com/file/d/1JfxENVaYqTLIhRSiFlK6c4IuboFJnV45/view?usp=sharing https://drive.google.com/file/d/1jo1mJJyGbKuM46F-zJTEsJb79NJb5m0L/view?usp=sharing https://oscarliang.com/arduino-hexapod-robot/</description><category domain="https://community.element14.com/challenges-projects/project14/holiday-special-2023/tags/holiday%2bprojects">holiday projects</category><category domain="https://community.element14.com/challenges-projects/project14/holiday-special-2023/tags/diy">diy</category><category domain="https://community.element14.com/challenges-projects/project14/holiday-special-2023/tags/arduino">arduino</category><category domain="https://community.element14.com/challenges-projects/project14/holiday-special-2023/tags/holidayspecial23CH">holidayspecial23CH</category><category domain="https://community.element14.com/challenges-projects/project14/holiday-special-2023/tags/fun">fun</category></item></channel></rss>