Performance tips for my ioio car?

83 views
Skip to first unread message

Thanos Fisherman

unread,
Feb 15, 2015, 11:50:21 AM2/15/15
to ioio-...@googlegroups.com
Hey folks finally I made my first ioio car.
I bought this chassis from sparkfun which seems really nice and solid however I need some tips:

1. Is my circuit correct? Check out my attached schema
2. What Can I do to make it move faster? It's slow as turtle
3. What can I do to make the whole thing more compact? With less wires? is there any ioio shield like that dude is using here?
ioio_car_bb.jpg
20150212_204429.jpg

Ytai Ben-Tsvi

unread,
Feb 18, 2015, 11:08:45 AM2/18/15
to ioio-...@googlegroups.com

1. This format is not easy to read. Consider posting a schematic.
2. Connect pin 8 of the driver to Vin rather than 5V.
3. Use a smaller breadboard or a perf board. Alternatively, there are motor driver breakout boards from various vendors (e.g. pololou, sparkfun) that you can wire to the IOIO pretty easily. In some cases you might be able to do most of the connections by simply soldering female headers on the IOIO and make headers on the driver board and mount it directly shield-style.

--
You received this message because you are subscribed to the Google Groups "ioio-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ioio-users+...@googlegroups.com.
To post to this group, send email to ioio-...@googlegroups.com.
Visit this group at http://groups.google.com/group/ioio-users.
For more options, visit https://groups.google.com/d/optout.

Thanos Fisherman

unread,
Feb 18, 2015, 1:36:32 PM2/18/15
to ioio-...@googlegroups.com
Cheers Ytai,

1. I have attached the schematic file
2. I think I am already doing that?
3. I'll look into it. Do you have any of these breakout boards in mind? Something like this maybe?
ioio_car.fzz

Tux Leonard

unread,
Feb 18, 2015, 3:46:08 PM2/18/15
to ioio-...@googlegroups.com
What PWM duty cycle and what frquency are you using?

Thanos Psaridis

unread,
Feb 18, 2015, 3:57:20 PM2/18/15
to ioio-...@googlegroups.com

Hey Tux I have a slider that starts from 0.0 and reaches to 1.0 duty cycle but motors can barely move to duty cycles below 1.0 as for the frequency it's fixed to 50

You received this message because you are subscribed to a topic in the Google Groups "ioio-users" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/ioio-users/l6miy4riKbY/unsubscribe.
To unsubscribe from this group and all its topics, send an email to ioio-users+...@googlegroups.com.

Tux Leonard

unread,
Feb 18, 2015, 4:42:55 PM2/18/15
to ioio-...@googlegroups.com
Can you use a frequency around 1000Hz or more?
Are your batteries fully loaded? Do you get 7.5V at the motors when duty cycle is 1.

Thanos Fisherman

unread,
Feb 18, 2015, 5:57:12 PM2/18/15
to ioio-...@googlegroups.com
How can I tell if I get 7.5V at the motors? Batteries are not fully loaded. And I Haven't tried 1000Hz. Right Now Another problem came up. I can't get ioio to be recognized from pc,android or bluetooth. wtf happened now? it used to be ok 

Ytai Ben-Tsvi

unread,
Feb 18, 2015, 6:26:53 PM2/18/15
to ioio-...@googlegroups.com
Thanos, Tux is right, PWMing the motors at 50Hz is not a good idea. Measuring the voltage across the motors can be done using a voltmeter.
Since the IOIO doesn't work now, I would advise you as a first step to disconnect as much as you can from it, plug it into a PC and see if the power LED turns on and if anything gets hot. Also, try powering it externally without USB and see if you have the power LED on.
Send you schematic as an image and I'll review it for any possible errors. I don't know what to do with a .fzz file...

Thanos Fisherman

unread,
Feb 18, 2015, 6:40:31 PM2/18/15
to ioio-...@googlegroups.com
Ytai,
I have no idea about the frequency thing I just used 50 randomly but the car was working ok, it could move but kinda slowly. Now I don't know what happened to the ioio the power led turns on just fine with both usb and external power. Something is indeed getting warm near the microcontroller but I can't tell for sure. It just can't get recognized 

On my first post I have attached the schematic as an image. The .fzz file is from fritzing software. You want me to send something different?

Thanos Fisherman

unread,
Feb 18, 2015, 7:04:56 PM2/18/15
to ioio-...@googlegroups.com
Ah when you say schematic you mean something like that? (check this new attachment) Daaaamn the PIC is getting hotter. Should I say RIP my ioio? :( But what did I do? I used to have fun with my slow car for days
ioio_car_schem.jpg

Tux Leonard

unread,
Feb 19, 2015, 2:01:07 PM2/19/15
to ioio-...@googlegroups.com
Do you have a multimeter?
Can you measure the voltage output of your batteries?

Thanos Fisherman

unread,
Feb 19, 2015, 3:26:06 PM2/19/15
to ioio-...@googlegroups.com
Tux No I don't I should get one. Can you tell if my schema is correct? Right now I'm more concerned about why my ioio stopped responding out of nowhere :/

Tux Leonard

unread,
Feb 19, 2015, 3:39:53 PM2/19/15
to ioio-...@googlegroups.com
Your schema seems OK. Presentation is not the best one. The wiring and placing of parts could be better.

To get the connection running just:
Keep cool and start from scratch. Disconnect everything, delete the bluetooth pairing or use an other USB port. Follow the wiki page to get started.

I fried my IOIO once by inverting the power supply. Shit happens.

Ytai Ben-Tsvi

unread,
Feb 19, 2015, 3:55:46 PM2/19/15
to ioio-...@googlegroups.com
If anything on the IOIO is getting hot when you're just powering it up and not connecting it to anything, you have a damaged board for sure. There's probably no point in trying to continue working with it. Otherwise, indeed starting from scratch slowly is the best idea. You may have mis-wired something, which is a very common problem among newbies and experienced professionals alike.

Thanos Fisherman

unread,
Feb 19, 2015, 4:03:10 PM2/19/15
to ioio-...@googlegroups.com
I'm afraid something like that might have happened to me too :/ Maybe a wire accidentally hooked itself into the wrong position cause that happens very ofter with my long wires. PIC gets super hot when I power the ioio itself with no other parts attached to it. So RIP :( 
As for my car, my connectios are ok right?
next time I'm gonna use a bigger frequency like 500 or 1000? 

Ytai Ben-Tsvi

unread,
Feb 19, 2015, 4:41:53 PM2/19/15
to ioio-...@googlegroups.com
Your connections seem right, as far as I could tell from your spaghetti-style schematic :)
I would actually use higher frequencies, ideally above hearing threshold (20kHz) to avoid audible whining, although such a high frequency might be a horrible trade-off in terms of efficiency with the driver you're using (i.e. it might spend most of the power getting hot instead of turning the motors). Just try and see, but definitely a couple of kHz should be fine.

--

Thanos Fisherman

unread,
Feb 19, 2015, 5:05:23 PM2/19/15
to ioio-...@googlegroups.com
Thank you for your interest guys,
Ytai please excuse my spaghetti schematic Im still getting the hang of fritzing program :P I actually feel more comfortable reading directly from the picture on my first post! 
Shit happens. Next time I'm getting a multimeter and a new ioio. It's so much fun coding everything directly in android. :D

Untill then, I'll be keeping an eye to your repo in case you decide to eventually break the IOIOLib. Then You can try to import them to android studio and see what happens (you will probably get a ton of warnings and errors by the inspector but don't be alarmed)

Ytai Ben-Tsvi

unread,
Feb 19, 2015, 5:28:30 PM2/19/15
to ioio-...@googlegroups.com
Re schematic format: initially you may find the breakboard diagram easier as far as understanding how to connect stuff, but the electrical schematic is WAAAAY more efficient if you actually want to understand what's going on in the circuit. Once you get used to it, you eventually stop needing the breadboard diagram and can easily build directly from the schematic. I actually used to teach a practical academic course where on the first lesson I explained people how to read a schematic (without worrying about how the circuit actually works) and how a breadboard works and after this one lesson people could read any schematic and build it. So this is not a huge hurdle to cross and definitely worth it, because this is the language that everyone can speak.
Be ready to fry a lot of stuff as an electronics hobbyist. Happens to me still every once in a while. Part of the deal I guess...

Thanos Fisherman

unread,
Feb 19, 2015, 5:44:32 PM2/19/15
to ioio-...@googlegroups.com
Hehe I wish I had a teacher like you. Most of my teachers are either robots that play a tape over and over or they are too bored(incapable?) to answer questions or both
I'll give schematics a chance
Cheers

Bill Carter

unread,
Mar 1, 2015, 3:09:35 PM3/1/15
to ioio-...@googlegroups.com
Ha, that thing looks even more like a rats nest than the first rover I tried to build.

One of the drawbacks of IOIO as opposed to Arduino is that there don't appear to be any "shields" for it. With Arduino you can just buy some accessory boards, solder the headers on them, plug them in, and hook wires to motors etc. With IOIO you have to do all the wiring and interfacing yourself, and then write all the software to run the thing.

I use prototype boards. Here are some I got recently that work out well.


I solder female header pins to the IOIO and male pins to the proto board.That allows me to use the same IOIO for multiple projects, I can just unplug it from one and plug it into another one. I wire the pins on the prototype board to whatever else I need to hook up to. You also have room to add pullup resistors, etc if needed. You can easily wind up spending a lot of time soldering a lot of little wires to pins. Get a good soldering iron.

I don't know what kind of car you have there, but if the wheel motors are not servos it means you have some kind of motor controller that drives them. I have seen these come in quite a variety of forms but usually PWM signals control the speed and sometimes the direction as well. I am working with a controller at present for example that uses 1.5 ms as stop and 1.0 ms - 2.0 ms as full reverse and full forward.

Thanos Fisherman

unread,
Mar 1, 2015, 3:32:41 PM3/1/15
to ioio-...@googlegroups.com
Hey Bill Thanks for the tips,
Yeah I think I'm gonna get a few of these prototype boards and solder male pins in them. That would save some space.
That chassis is using simple dc motors so I use the sn754410 driver as you can see on the prototype pic I've attached. I think this is as fast as it can move with duty cicle sets to 1.0 cause the weels are big and heavy

Ytai Ben-Tsvi

unread,
Mar 1, 2015, 6:04:16 PM3/1/15
to ioio-...@googlegroups.com

FYI, they've been a couple of efforts in the past to make an adapter for the IOIO which allows using arduino shields on it. Not sure if those are available for purchase anywhere but worth checking.
Moreover, there's a IOIO shield made by SeeedStudio which is an adapter to their Grove system, which also has a selection of peripherals with easy connectivity.

--

Bill Carter

unread,
Mar 8, 2015, 2:06:29 PM3/8/15
to ioio-...@googlegroups.com


You can find out how fast the motors can potentially turn by just hooking one straight to your power source. I've found that some motor driver devices can't deliver as much current to the motors as they want to draw in order to go full speed.

Also many things sold as a 'motor' are actually what I call a gear motor. Inside the casing there is the actual motor which turns at relatively high speed, and then a set of reduction gears attached to the motor shaft that drive the output shaft that protrudes from the casing at a much lower speed (but much higher torque). All the servo motors I've seen, for example, are made this way and all the ones used to turn wheels as well. The speed of the output shaft depends on the voltage, the current, and the ratios of the reduction gears.

Bill Carter

unread,
Mar 8, 2015, 2:18:01 PM3/8/15
to ioio-...@googlegroups.com
I found this one but it appears to be handmade;
http://www.robotfreak.de/blog/en/android-en/ioio-arduino-shield-adapter/742

Here's one you can actually buy.
http://apolloairobotic.com/products/isa/

Its $40 though, add that to the cost of the IOIO itself and some typical shields and it can get relatively expensive. Sure saves a lot of soldering time though, I might get one. It has 5V-to-3.3V voltage scaling built in too which is nice.

Bill Carter

unread,
Mar 8, 2015, 2:31:15 PM3/8/15
to ioio-...@googlegroups.com

Looking at it more closely, this appears to be a kit. And its not a trivial amount of soldering. But if you want to use Arduino shields there may be no better alternative.

http://www.richmayfield.com/wiki/doku.php?id=the_isd_assembly_guide

Bill Carter

unread,
Mar 8, 2015, 2:35:08 PM3/8/15
to ioio-...@googlegroups.com

Correction, its $40 fully assembled and $30 in kit form.

Thanos Fisherman

unread,
Mar 8, 2015, 2:59:11 PM3/8/15
to ioio-...@googlegroups.com
wow Thanks so much Bill for all that info that second shield seems interesting I might give it a chance along with my next ioio purchase (my current one is dead now). 
In case you haven't seen it this is the chassis I'm using from sparkfun here and yes it has geared motors however I'm not sure how many volts they can handle before I hook them straight to my power source. The batteries are 7.5V but I believe they can handle up to 9Volts although im not sure whatsoever. Anyhow I'm going to equim myself with a multimeter and a better breakout board like this one

P.S Is the ioio board from seeed studio any better in terms of quality than the sparkfun one? I have many local sparkfun distributors here in my country which I can buy ioio from but no seeedstudio ones. So for seeedstudio I'll have to buy directly from china and pay import taxes 

Bill Carter

unread,
Mar 8, 2015, 3:57:31 PM3/8/15
to ioio-...@googlegroups.com

I am sure those motors can take straight 7.5V, and that's probably what they get from the motor driver anyways except in pulses modulated by the duty cycle or PWM width or whatever. You should definitely get a cheap multimeter so you can check voltages and connectivity of soldering joints etc, otherwise you won't be able to debug your hardware builds.

I have one IOIO from Sparkfun and one from Seeedstudio. As far as I can tell they are functionally identical. I did have to update the firmware on both. Seeedstudio is cheaper for me so I would buy another one from them.

One thing I have discovered that wasn't obvious - I soldered female headers onto my IOIO boards. I use these for multiple projects and will often unplug a board from one adapter and plug into a different one. I am concerned that the female sockets may eventually wear out. If I could have a do-over I would have used male headers on the IOIO. I guess I could clip the female headers off and unsolder/rework it if I had to but its a lot of trouble, and my mating boards are opposite gender.
Reply all
Reply to author
Forward
0 new messages