Robotic – Final Project Part 5(Final ) – The Curious & Timid Turtle.

Continue from my part 4 of this project updates,  This is the final part which leads to the completion and is rather long as many things from getting the power supply, modelling, testing, painting, assembling to coding had been done in the past 2 weeks.

First, the final video of The Curious & Timid Turtle.

And then, into the process….


At the end of last post, I was waiting for the power supply to reach and it did during these 2 weeks so I’ve tested it out, The one that I bought is a AC-DC converter at 6V 20A when all I needed was 6V 8A, i decided to buy the higher Amp one just if i need more amp in the future, and I could also share the supply to my Interactive device project during the End of sem show.I did some wiring afterwards.

And after the wiring, I did power test, it could easily run 8 servos simultaneously with nothing overheating. which is a great news for me!



Since the last post that I’ve decided to change the system in the legs to save space and shorten the overall length by stacking a smaller MG90S on the MG966R to act as a lever system to pull control the legs.
After testing this system out and seemed to be working, I merged it with the turtle leg that I’ve modeled in Zbrush, I don’t know about Zbrush before this project and it tool a long time just to model the shell, the legs and the feet.

I merged the leg with the previous test “rod-like” leg because I’ve already gotten the dimension in there so i just need to scale the Zbrush modeled leg accordingly to fit the “rod-like” leg.


changing of the entire base layout to reduce size and increase EFFICIENCY for the back legs.

At this point, I was wondering if I should change the MG966R(metal gears) into SG-5010(plastic gears) due to weight issue I might face later after adding the shell and so on, so I weigh the motors and decided that I should change the back leg to SG5010(but I changed it back to MG966R one day before submission due to the internal gears got loose in SG5010)

Major changes were made for whole layout of the base due to various reasons – the backleg will move differently from the front and since my project is basically a turtle with round shell instead of a flat one, it made more sense to use a smaller but higher layout rather than a flatter and wider one to make use of all the space within the shell.

This was quite the final base before I added the mount for the small backleg servo and the servo driver mount which will be attached it using screws.

Zbrush Modelling Nightmare Funfair

Since my Zbrush was cracked, it crash rather often and I did the same thing over and over if I forgot to save frequently and hence it took quite long to model anything, but well~~

As for the shell… it took so much time and crashes to get it right, because the shell cannot be too thin(unable to print later) and cant be too thick (too heavy) and I cant find a function that could allow me to see the thickness (like reduce opacity of the material to see through), so everytime to check the thickness, I have to export into STL, and import into Tinkercad to check the thickness.

Everytime I made major changes to the shell, I’ll have to import to Tinkercad to check the thickness and shape.

The model appear

Nothing is more satisfying in removing the support in one whole chunk(I did alot of cutting before this video so I can pluck out in one piece.)

this is the liner slider an an aluminium rod for the head system.

Printing for the base shell:

Printing for the top shell:

And then the finishing(PART1)of the model.


The Final mechanism of the turtle

testing out of the head slider and to mark the length I need it to move and cut.

The mechanism to slide the head that I will use after cutting the rod to almost the size I need.

this is the final mechanism for the head after I printed a small piece to prevent the wire from tilting too much when pushing the rod.

the head could be push and pull out nicely even before adding the string to control the tilt of the head.

metal rod were epoxyed into the head to tie the elastic thread to control the tile of the head.

and a elastic thread was added to counter the tension created by the elastic thread to turn the head

And then the finishing(PART2)of the model.

The final test of the turtle before I finally started coding it. The head uses elastic thread because it will go forward and retract, since I dont want anything to be loose and might interfere with the shoulder servo motor, I decided to use elastic thread so that the thread wont be loose when the head is retracted.

This is the almost completed sequence of action,the turtle’s movement is quite restricted due to the shell and the back leg is unable to push the turtle forward because of the shell’s restriction as well as the weaker servo(MG90S) which is responsible for the forward and backward thrust, while the MG966R is strong enough to lift the turtle up, so the turtle could do movements up and down but not walk.

After this, I added a few lines of code to substitute the button pressed with sound sensor to make the turtle more intractable and a few more actions that made it more timid looking (head peeking out to check the environment before the whole body come out.)

In conclusion:

Overall, I really liked this project although I kind of regretted trying to make a turtle during the process because the shell is giving a lot of layout and movability problem made me kept thinking that if I were to make something without shell, it will be so much easier, but the reason that I first wanted to make a turtle is the best is because the shell naturally hide all components that break the user’s perception that this is a robot and a turtle is my spiritual animal, now that I finished the project, I am really glad that I sticked to my initial idea of making a turtle and persevere through all the problems I faced(mainly hardware and mechanical problems which I changed my system and design so many times.).

This was what made into my final turtle with many component being edited into the next version.

With more time, I am sure that I could code the turtle be able to be scare back into the shell by another sudden loud noise – I tried to change the delay in my code to Millis multiple times and it do every action in the sequence twice so I sticked to using delay for now, which disabled me to write the activation code for using the sound as a trigger since it is in a delay loop. But, it looked really nice for now even if there is only one sequence of movement and I am glad that people were thinking that the turtle is cute when they saw it.


Interactive Device Presentation – Unconventional Musical Instruments.

The file size of this presentation was too large to be uploaded so I’ve screen recorded the presentation and uploaded it to youtube.

I’ve chose to narrow down my scope to just Unconventional Musical Instruments mainly because it will be more interesting and fits the time limit nicely.

Robotics Presentation – Biologically Inspired Robots.

The field of Bio Inspired robots is too wide and I think that we will benefit more by understand the different ways of how we could learn from the nature rather than narrowing the scope down and go deep into one of the sub division of bio-inspired robots.

The File size for the presentation is too large so I screen recorded the presentation in presenter’s view.


Telematic Stroll to the Sunrise.

First of all, we did not want to use the Facebook Co-Broadcasting function as our goal of this Telematic Stroll is to test out the system for our final project(there will be four broadcasting at the same time and none of us could see what others are doing, yet we will form a piece together.) ANNDD MANNNNNNN~~ THIS WORKS SOO MUCH BETTER THAN EXPECTED!!

Telematic stroll

Posted by ZiFeng Ong on Monday, 6 November 2017

This was the Broadcast which I did and viewing it individually doesn’t seemed like much, its just a random walk-around video which wasn’t impressive at all.

But when linked it with Bao’s Broadcast… Things get a little more interesting.


  1. Both Broadcast were not edited in any way except for putting them side by side, if we create a video wall and play it directly, it will be the exact thing.
  2. The video were done on the spot through Facebook Live without any feedback of the other Broadcaster available to both of us, we only know what we were doing while unable to see the other party, even if we do, there will be a 7 second delay between broadcasting and watching live.
  3. In conclusion, This is Magic.

But how are we doing it? It’s a secret for now and we shall keep it until our final project. For now we are still improving our system and you should just take it as it is a MAGIC. TADAA!! A sense of wonder for a viewer is what we wanted to achieve. 

This is our one and only try. Most of the times we were uncoordinated and we did not discussed what to film beforehand while there were mistakes made everywhere throughout the broadcast and we did some of the mistakes at the same time which made it seemed intentional, making it even more magical.

To point out some of the wonderful MAGIC we did.

In this Telematic stroll, we had found out what problem there is during the live broadcasting and will improve it for the final project, also, it had been a really long time since I woke up this early.

When I left house, the sky was still dark and it reminded me of my future.


I really like this random shot before the Stroll.

After the stroll, when the sun finally rise.

we checked the timing for sunrise and it stated that it was 6.47a.m, but the actual sun came up only around 7a.m which is when we finished our Telematic stroll.

Luckily for me, right after we finished the broadcasting, it started to drizzle. And did I mentioned that we were supposed to do on Monday morning and we woke up at 5a.m. and it was raining so we postpone our stroll, it was really lucky for us that it wasn’t raining on Tuesday morning even when the weather forecast said would.

Finally, I am REALLY impressed when I put the video next to each other, they worked really well and there is improvements that could be made and we all learnt from it.



Robotic – Final Project Prototype Part 4 – Unlimited Revisions.

There is only testing and remodeling, testing and remodeling after i went to simlim to look for a battery 2 weeks ago.

After that, the battery could also power no more than 3 servo at once so I purchases some AC-DC 6V 10A converter online and had been waiting for its arrival since then.

meanwhile waiting, all I did was re-model almost everything again and again…. and I also downloaded ZBrush- a 3d sculpting software and learnt it just for me to sculpt the turtle appearance since i have to learn it sooner or later and luckily I tried it now so I know that there are actually a lot of problems in my current structure when place in the shell I modeled afterwards.

After last post, I’ve built a bigger base mount for the turtle.

This was originally the rough full size for the turtle base, Version1, Version 2 with 2 arm motor attached, and Version 3 with no Arm motor attached.

And I downloaded Zbrush and started to learn how to sculpt something in it and MANNNNN IT IS HARRDDDDD

And then I printed it out in smaller scale to see how it feels.

And to check which layout should work.



and since after I did more research on turtle, I realize that the bone structure of the turtle wasn’t straight and so I tilted the motors to give it an angular tilt for it to move more like a turtle.

then I tested the structure of this configurations.

I also modeled a arm motor connector and found out that this is WAAAYYY to long for it to work properly, and another problem is that there is still not enough tilt, so I changed from a 45 degree tilt to a 22.5 degree tilt.

This is the Version 4 and Version 5 of the motor mount, I’ve decide to make it higher so to be able to turn the arm in the correct direction, I’ve also tried to add the middle servo which will control the turtle head retraction and head/tail turning.

This is with Version 5 base and version 2 Motor connector which are much shorter.

Next, I further edit the turtle shell and upscale it to see how it fits into my system, however i found many problems here like it doesnt fit well. Since I can make adjustments to the layout, I decided to use another method to do the leg mechanism.

By combining this lever system straight into the leg.

The 4 generation of motor connector.

This should be the mechanism I will use for the leg, I hope it works.

for now, I have to test them out again.

Final Project Rehearsal

Posted by ZiFeng Ong on Tuesday, 24 October 2017

In our final project rehearsal, we are focusing more on the grid appearance and the technical aspect of the overall feel, we also discussed and understand the flow through this rehearsal.


In our discussion, we decided on a few combinations like what to film and how should film it, also the passing of phone is rather tricky because we are afraid that we will drop the phone that doesn’t belong to us.  there are many more fine tuning needed to be done, but for now, we will see what these 4 piece will look like together and decide what combination will we do.


This is the segment where we pass the phone to the next grid, we hope to achieve an effect that feels like we are moving in a straight line instead of passing in circle, we will only know the final effect when we view it from the grid.

and this, just one video alone wont have any effect, but we hope to achieve a panorama spin effect through this when the grid is out. 

We are just as excited because of the fact that we doesn’t know how the true effect of these rehearsal will be like and we are waiting for a surprise which may or may not be what we would like it to be. The first time we see the final outcome will be the first time our class sees it.



Interactive Devices Final Project: Obsoleting Instruments Process 2.

After the last post where I’m almost done with the laser reader and there are still improvements to be made to it, but I will focus on other component and will come back to make it sound nicer if I still have time, for now, I need to slowly build towards the completion of Obsoleting Instruments first… I will need to a way to feed the music sheet into the laser at a constant speed, so after some research and thinking, I could use DC motors with gear box that drives the music sheet through a belt

system, so, with that in mind, I purchased some special rubberbands and the belt driver thing, as well as some gears and shafts and the plastic DIY construction pieces to test it out.

First, Since I’ve got the Landline Telephone, i need to clear the little plastic pieces inside to make room for all my components, and I thought it would be a simple task, but MANNNNNN ITS SOOOO INTENSIVE(because i dont have a proper tool to do it)

Theres a Chinese saying “Small knife cuts huge tree” its a torture and yet quite satisfying for me.

its like the loding screen, I can see the final point when doing it, so the hole need to go 1 round. and my finger hurts.


This thing tortured me, I tortured it back. Fair Game.

Slowly, i manage to cut all protruding parts except for the two longest one as i still need to close the top back and secure it.

and then put the belt and the belt wheel to check the distance required to have the just right tension as too tight it will not spin well and too loose it will come off easily.

I tried placing then together so they could sandwich the music sheet, but this is too near and it wont work well

and if I use a gear system, I could do more of the thing, but still need to consider about it.

After I got the usable distance, I proceed to 3D modeling the parts that is required.

The initial concept of the belt system. I know its abit overkill but.. I dont know where will it fail so I decided to give the music sheet full support, also, this was measured according to the belt length, Motor dimensions, phone dimensions, laser dimensions and the music sheet dimension to make sure they all fits. The complex base plate is to enable me to insert the belt after assembly.




I placed some holes to save some material and reduce printing time.

Then split the base into two part so that I can work on half and combine them later, I think it woule be much easier for me this way.. (And I dont have to print 6 hours just for the base.


It worked really well, but there is only one problem, my top cover of the phone could not close as it is slanted, so I have to shift the whole plate to the back, or place the top belt about 40% inwards but I cant just shift both belt wheel as there will be the laser reader there. so…

I will settle on my 6th one for now, since this is only half of the system, I need to get my music sheet up first for me to test the speed of the motor with this system since if half doesn’t work, nothing can work.


Pew Pew PEW. look at dem laZEERRRRR


I supposed it will work if i attach the motors to it. will upload another post once I’ve Progressed more.

Robotic – Final Project Prototype Part 3 – Understanding the Motors and Power Supply.

For weeks, I’d been thinking that my code was wrong hence I cant move more than 2 motor at the same time or it will corrupt the system….

And in the end, it wasnt my code, as I was using PCA9685 which is a servo driver which I bought online and thought that I could control 16 motors at the same time, Yes, it could and the code can work.. the problem is the power supply. NEVER HAVE A SERVO DRIVER’S MOTOR POWER SUPPLY POWERED STRAIGHT FROM THE ARDUINO!

I finally found out today that was the main reason, when the motor drains too much of the Arduino’s power, it will brownout, causing erratic behaviors in the motors which was my main problem up till now, so instead of limiting myself to code up to two motors to move at the same time, I could potentially move all 16 motors just by finding another power supply.

15:15- 16:10


My Brownout will occur when I run 4 servo at the same time, so 3 servo running simultaneously is the maximum for my current power supply, There are ways which I could solve this problem.

  1. Using a battery which could supply 6V power at 10A or more, after my research, battery are rarely rated at 6V and 10A is just too much for a battery, even if they do, it will drain the battery out really fast unless I am using a HUGE car battery on 12V and step down the supply using a Voltage Regulator.
  2. Using Multiple battery at 5 V or 6V and parallel them to increase their current, since this will be the most expensive out of all option, the only way possible to get this done is to series 4xAA battery and parallel multiple group of 4xAA to create a powerbank, the downside of this will be the voltage drop overtime due to lesser power in the battery.
  3. Using a power adapter with the 5V or 6V at 10A, and this will probably be more feasible due to the availability of 10A power adapter in the market, or I could use a 12V 10A power adapter along with a Voltage Regulator and step down it to 6V. I think this will be relatively doable because it will have a stable supply and I do not have to worry about recharging my battery, moreover, I might be able to supply power to my Arduino at the same time too.
In conclusion

I will try to find suitable power adapter along with voltage regulator, if this still don’t work as well as i thought it would work, I probably can use a capacitor to increase the current rating(I am still not sure how does this work, but I’ll figure out)

Interactive Devices Final Project: Obsoleting Instruments Process 1.

After the Initial concept, I’ve 3D modeled the Laser mount and Photoresistor mount.

And after the Laser mount was done and working great, I went ahead to print the Photo Resistor mount.


It is designed to hold the photo resistor and allow the connector of each Photoresistor to be protruded out so that I could solder the circuit with the pull down resistor right on the module to remove the need for having a breadboard in the Telephone as the space will be limited in it, and i guess this will be the more efficient way of doing thing while making sure all connections are secured.

The soldering took some time to complete but luckily for me, I only need to do it once, or so I thought… (some part broke when I bring this to school so I did re-solder it again.)

I also purchased an old Landline Telephone on Carousell, I must say that Carousell is a wonderful thing.

In the end, the only part that could be reused is the phone’s body, the speaker/handle/hearing thing, the buttons and the telephone wire.


Meanwhile, I started to write the code on Arduino for the Laser and Photoresistor.

The value will be higher than 800 when the laser shine directly on the Photoresistor and lesser than 100 when blocked, so I can simply write if( value <= 400), play tone 1.


After some coding, this is my prototype for the music player part which is to be installed into the Landline Telephone.



Interactive Devices Final Project: Obsoleting Instruments Concept.

The speed of our advancing technology and the technology that is getting obsolete are on the same pace, 15 years ago, we were using Floppy Disks, 10 years ago, we were still using Compact Discs and the millennials now does not know what a Floppy Disk is. We still see CDs now but they are getting obsolete really soon as there are lesser devices playing them now.

Choosing of the Best Appliances.

For this project, I want to give new life to daily objects which are on the path of becoming obsolete by making them a musical instrument, there are many common appliances that are in this category and should be ancient in a few years time –

CRT TV( Cathode Ray Tube or also known as the old Fat TV)”
Remote Controllers
CD and all devices which plays them
MP3 Player
Old Gaming Console
Top Loading Washing Machine
Landline Telephone
Fax Machine
Public Payphones
Answering Machine
Slide Projector
Dial-up Modem
Basic Alarm System
GPS Units

Bold are appliances which are totally possible for this project since I want to make musical instrument and they naturally produces sound in their normal usage context.

Green are appliances which are Bold and their normal usage context have the interactions when the user use them, which make them exactly what I could use for INTERACTIVE DEVICES.

Image result for old gaming consoles

Since the signification of a Gaming Console is different for every individual, people plays different consoles and different game or not at all, it is difficult for me to create something that all the end user(during the End Of Year Show) will resonate with.

Image result for landline phone
The best of all will be the Landline Telephone as I am sure that most of the end user will have some interaction with it some point in their life and the basic function of a Landline Telephone is to receive a call or to make a call, this resulted in almost the same user interaction throughout the globe – making a call or when the Phone Ring = Pick up.


And the Instrument that I have in mind…

After my researches on musical instruments,
I’ve decided to use the musical box concept where the user could play music by inserting a sheet of musical notes and it will play music digitally.

This could be done by using a set of lasers and photo resistors to read the musical notes on a clear piece of plastic scrolling through the system.

There are 14 sets of Laser and Diodes due to the research I had done on music theory(not posted yet as it is still an ongoing research) whereas there are 8 notes in an octave but only 7 different notes in an octave C D E F G A B C, so by placing 2 octave next to each other, there will be 14 white keys C D E F G A B C D E F G A B as I chose to omit the last C so that it looks visually completed from the looks of piano keys.

And what about the black keys? since I don’t want to add in 10 keys for the major and minor (black), I could use a combination of the adjacent white key to produce the sound of a major and minor. For example if I want the C♯(D♭) key, I could have CD shaded at the same time to produce a C♯(D♭) sound.

Flow of usage

  1. The phone will look like a normal phone with an exception of a slot to insert the musical sheet into the system in the body of the phone.
  2. Nothing can be done when the phone does not ring or the user does not make a call.
  3. Scenario 1 – Phone Ring -> User pick up phone -> voice command user to insert the music sheet -> User insert music sheet -> the phone pull the music sheet -> User listen to the music.
  4. Scenario 2 – Phone does not ring -> User Pick up the phone -> User hear the *toot toot toot* tone of the land line phone -> User dial some number on the number pad -> User hear the tone of an outgoing call -> Voice command user to insert music sheet -> user insert music sheet -> phone pull the music sheet -> User listen to music.