← Back to Categories

Hardware & PCBs

WRO 2026 Hat

WRO 2026 Hat

The buildup to this board has been quite substantial. I had the SD card under volt on the Raspberry Pi last year. To fix this, I dove into PCBA. The last board I made was a custom buck converter featuring the TI LM61460 that had an output of 5.15V and headroom for 6A. This was a stand alone module. The end goal always was to have an integrated and compact solution that would be scalable. For WRO 2025, I had a hat that sat on top of the Raspberry Pi and provided 5V to the Pi and 8V to the servo using off the shelf modules. I really liked that form factor so I decided to keep it. Everything else was engineered to be better, taking learning from the previous year. I had the following requirements for the hat: - Deliver 5.15V to the Raspberry Pi and have a continuous rating of at least 3-5A to power the LiDAR as well. - Deliver 8V to the servo motor at 2A. - Provide a better hardware interface between the IO pins of the Pi and the motors and sensors. - Integrate the power switch and start switch, along with indicator LEDs needed for the rules on to the board. Building on a successful 2-layer buck converter module, I chose the LM61460 as the buck converter for the 5.15V rail and chose the TPS62932 from TI as the buck converter for the 8V rail. You can find more details about the design process in the Engineering Manual for the competition here. I cover the thought process and decision making in section 2. I made a lot of improvements over last year's hat. Instead of having screw terminals as the interface for power, I switched to the XT30 connector. I also added mounting holes for M2.5 screws, something that was absent last year. This would be the first time I assembled the boards myself, as the custom buck converter I had made was assembled by JLCPCB. I sent the design files to JLC for production. This was the first 4 layer board I had designed. The first step to assembly was applying the solder paste. For this, I securely mounted the PCB on a piece of ply wood and added 4 more PCBs around it to constrain it in place. Then, I stuck the stencil over it and used a scraper to apply the paste. I then used my mom's microscope (thanks mom) to inspect the paste application. Then I placed the components on to the board using tweezers. The most nerve racking part was ensuring proper alignment, but I soon was able to do it without thinking about it too much. The first iteration, V1.0, had a fatal flaw. During the schematic design, the enable pin of the LM61460 was connected to ground. The enable pin needs a voltage of greater than about 3V. This meant that the chip would be in the "shutdown mode" and it would not work at all. Ordering a new board meant a 15-day transit delay and significant shipping costs. So I opted to try and repair the board first. To fix the board, I first cut the trace that connected GND to the EN pin. The next step was to bridge the EN and VIN pins. The microscopic pins of the VQFN package meant that I could not solder a wire externally. The only option was to add a wire underneath the IC and hope that would connect and work. I tried the fix with a 32AWG copper wire, the smallest I had laying around. But the flat pins of the VQFN package got me again. While the wire was fairly thin, its thickness meant that not all the pins of the IC made contact with the PCB. It was like a see-saw. Another attempt was made with a thinner strand of wire, but that led to the same outcome. Hence, a revision was needed and V1.1 was put in place. The board had passed exhaustive bench testing and easily survived its first dozen battery power-cycles. On powering it for twelfth or so time, the LM61460 IC violently self destructed. It turns out the catastrophic failure was driven by an undamped LC hot-plug transient. The battery wires' parasitic inductance and the board's ultra-low Equivalent Series Resistance (ESR) ceramic input capacitors formed an aggressive resonant tank. When the mechanical power switch was toggled, microscopic contact bounce combined with the near-zero resistance of the ceramic caps to trigger a violent inrush current ringing. This transient spiked the voltage past double the 16.8V battery input, instantly shattering the LM61460's 36V absolute maximum rating. This spike was further supercharged by the DC bias derating of the ceramic capacitors, which shed capacitance under high voltage and drove the transient even higher. To tame the parasitic resonance, a 1000 uF electrolytic capacitor was wired between the switch output and ground. The component's native, higher ESR acted as an integrated shock absorber, safely dissipating the inrush kinetic energy as microscopic heat, choking out the LC ringing, and bulletproofing the input rail against future switch bounce. After this fix, the board did not have any issues. Ultimately, I learnt a lot from this experience. I really learnt how to leverage pours (you can now call me "copper pour pilled" I guess) and helped me understand proper check measures. I also learnt how to assemble boards myself and I found the process to be therapeutic. I was using 0603 capacitors and resistors, so I guess it wasn't that bad. I don't think I would change the design in any way (apart from adding a snubbing capacitor directly across the switch) if I were to redesign the board again. I really hate leaving the boards bare. I always add quotes or art work on the silkscreen, on the top and bottom for fun. This board features art work by M.C. Escher. It features "Perfume" on the front side in the surface finish and "Stars" on the back in silkscreen. You can find more pictures I took below!

View More →
LED Controller for FPV Racing

LED Controller for FPV Racing

Most FPV races are held after dark, and it is often mandatory to have LEDs on all four arms. These LEDs typically utilize the WS2812B protocol. Currently, most off the shelf solutions use a separate board to connect the LEDs, featuring a physical button to cycle through colors and patterns. Since none of these are in stock across India at the moment, I decided to design my own. I chose the ATtiny202 as my microcontroller and paired it with a TI TPS62933 buck converter to handle input voltages from 3S to 6S batteries. Initially, I designed the PCB to fit a traditional 20mm x 20mm drone racing stack, but I no longer think that is the most optimal layout. Modern racing frames compress the stack height as much as possible; adding an extra board simply isn't feasible or ideal. I plan to revisit the design once I discover a better mounting solution. That is the primary reason I haven't sent it to fabrication yet. Designing this taught me how simple most consumer electronics truly are. I was able to select components that kept the manufacturing cost for 10 units below the retail price of commercial alternatives, such as those from HGLRC. Plus, I achieved this using a much more versatile MCU like the ATtiny, rather than a generic industrial MCU with the part numbers laser-etched off.

View More →
Custom Buck Converter

Custom Buck Converter

During the 2025 WRO Future Engineers competition, we were disqualified because the data on our Raspberry Pi became corrupted and the SD card failed. Months later, I analyzed the output voltage of the 5V, 5A-rated buck converter we had been using. I discovered that the Raspberry Pi was constantly undervolting under load. We had attempted to add a capacitor before the competition to resolve the issue, but the effort proved futile. Upon reviewing the logs, I confirmed that these undervoltage events were, in fact, what caused the SD card to fail. I searched the market for a buck converter capable of providing the 5.1V required by the Raspberry Pi to prevent undervolting, but I couldn't find a suitable option. Consequently, I decided to design my own. Using the TI LM61460, I designed a buck converter in KiCAD that accepts a 3S-6S battery input and outputs a steady 5.1V at 5A continuous. Due to the small physical size of the IC, I had to incorporate extensive thermal management into the PCB layout. I had the PCB fabricated and assembled by JLCPCB, and I am very happy with the results. I stress-tested the converter at 5A for eight hours, and it performed flawlessly without any issues

View More →
CoreXY 3D printer from scratch

CoreXY 3D printer from scratch

engineered and fabricated a bespoke CoreXY 3D printer, all from scratch, by synthesizing Voron influenced kinematics with a custom Z-axis assembly. This triple lead screw bed system, inspired by the Bambu Lab X1C, utilizes a single motor to maintain synchronization across the build plate. The machine is powered by a BigTreeTech SKR Mini E3 V3 and a Raspberry Pi 4 running Klipper firmware. While the printer reliably sustains speeds of 500mm/s, the current performance ceiling is dictated by the hotend's maximum volumetric flow rate rather than mechanical instability. This project served as a deep dive into systems integration and the principles of kinematic constraint. I successfully optimized the design by eliminating parasitic degrees of freedom and managing tolerance stackup, ensuring all components are properly constrained to prevent unwanted deflection during high acceleration moves.

View More →