Tag Archives: PCB


Learning hand, VR glove (bits, 2016)

In early March I jumped on board with the Digital Kinematics team as an intern, as they were working on their second prototype of the Learning Hand (the glove for implementing captive feedback in VR gaming). I had some experience in CAD before had obtained some knowledge of electronics after practically “living” in London Hackspace for the previous 3 months, so it seemed that I could be helpful with hardware and software. I was also in the process of taking and EdX course on Embedded Electronics (UT 6.03x), so I could do some embedded programming. Charles and Eugene were amazing mentors, they shared some of their vast experience and knowledge with me. Charles showed me how to use the sophisticated Roland CNC machines they had in the workshop, how to turn stuff on a lathe (to refresh my memory) and a few tricks in Solidworks. Eugene, being very knowledgeable in electronics and programming, became my mentor throughout the whole duration of my internship as I was developing a PID controller for their servomotors first on WeMOS (ESP8266) and then on STM32 using a Nucleo developer board. As a part of my internship I have done the following things: Developed and adjusted a test-rig to test sheathing of different wires (as we had to choose one manufacturer) and how those wires affect the plastic joints (ABS). Set up numerous 3D prints on Ultimaker and Form 2 printers. Developed a PID controller for DK’s own push-pull servomotor using WeMOS ESP8266 dev board and Arduino (for rapid prototyping). Designed and milled a small prototype PCB with hall-effect sensors for the servo. Ported the PID controller to an ARM STM32 chip (programming in C), using Keil IDE and STMCube for quick setup. Designed a fully-functional PCB for the push-pull servomotor. Did a lot of debugging of electronics and software using…


HSRDP: Joint motor driver PCB (2016, left the project)

The HSRDP as London Hackspace had a fully working board prototype on it. The robotics group has decided to move on from that and change the main microcontoller to the Connected Launchpad vs Arduino Mega, because the chip on Launchpad could do floating point operations and they were needed for the odd nature of calculations in some of the joint modules. Around the same time Eugene has made an H-bridge board for a servomotor using a MOSFET transistor chip 2-in-1. And so he wanted me to use those. My main challenge was to find out how things connect, decide on the Pin connections to the Launchpad and then, the hardest of all, do the track routing so be able to accomodate everything with minimum vias (which turned out to be about 94). The biggest challenge was the fact that the main 2×20 connector had some pins hard assigned, so I could not move them around and had to route around the connector quite a few times. This layout took some time and brain power to minimize things and fit everything in. Three mondays later the PCB layout was complete and we went on to milling it on the Hackspace’s Shapeoko. But that’s an update for later.     Share: Twitter Facebook Google+…


Hexapod (2016, currently unfinished)

I’ve started the project in early November 2015 and have been doing it on and off when I had time of work. I started it because a friend in London Hackspace had a Hexapod kit laying around with a bunch of unused servomotors. He offered me to build it. So first step was to test the servos, I’ve connected them to my Pololu Mini Maestro servo controller (a perfect debugging tool for multi-servo projects) and started spinning. A few were broken so I had to take them apart and put back together so that the gears would spin properly again. After purchasing the remaining servos I did some research. The idea was to build a robot using ROS. And I wanted to use Raspberry Pi 2 to control everything. I’ve found a Hexapod robot project done by someone before using ROS and it became my main starting point. That project used BeagleBone Black, but I for some reason wanted to use Raspberry Pi (perhaps as I was in London and Pi is a UK based device). And so I ordered some additional electronic components: 18-servo Pololu Mini Maestro, Bi-directional 3.3v to 5v logic controller, Pololu MiniMU9 (IMU) and MCP3008 (for ADC as Pi2 doesn’t have those). Next step was to assemble the kit. I didn’t have to design or cut the hexapod frame as the kit had everything I needed already. Parts weren’t of the best quality, but I couldn’t complain as I got them for free. All I needed to do was to drill some M8 holes and then cut M8 bolts to size to keep two main plates fixed together. My good friend was visiting London for work and we spent one evening assembling the kit with all of my servos. Happy days 🙂 Next thing I went on…