Now to find something to "robotize"
Now to find something to "robotize"
Based on the rest of their stuff, the price is going to weigh in around $65 to $80.
It's not a whole lot more than a simple microcontroller, a crystal, and some headers. Buy the chip yourself for less than five bucks and integrate it into your own board.
I am willing to bet that is a 6 or 8 layer board, and I am an old-school FORTH programmer, so their IsoMax is a natural for me.
Yeah you could probably roll your own and program it in either C or assembler. Small C is free, but C will cost you a pretty penny, have you priced Codewarrior lately? But the ISOMAX/Forth language that is built in is really nice. Remember this sucker runs at 80mhz clock. Lets, see, you need a 3v regulator for the chip, RS232 MAX232 like chip,8mhx crystal, some LEDs Caps and resistors. Then you need to lay out a more than two layer PCB for mounting the chip. So putting several 4-7 layer PCB layouts on one board to have made by a vendor. You may have to use a PCB layout program that isn't free too. The last time I checked that was pretty expensive. So you'll wind up with a bunch of PCB's to cut out of the big board (of which you had to get at least five). But the cost per PCB is usually $50-60 bucks a board. Unlike a company you can't order in quantity. And making your own 6 layer PCB with plated through holes is pretty hard to do. Then you'd have one too, but unless you roll your own Forth, it's C or assembler.
So actually it's pretty cost effective when you think about it.
I agree. I started out with pre-built microcontroller (the OOPIC) but very quickly outgrew it. I found I needed the flexibility provided by selecting the right $5 PIC chip for my app and adding a crystal. The programming learning curve is kinda steep, but it's worth it.
You're a just a little ahead of us Mike. We've only sold one, and you got it. We're still working up documentation, etc., for the rest of the world. We expect to announce this coming month, but we did put up pictures on the web site, which I just saw yesterday. Well, I'm not complaining. I also made a post on trcy today about it. So, it's okay.
It's something we've been developing for about a year now, trying to get "just right". We've been through about a half a dozen versions, which weren't quite the way we wanted, for one detail or another. Hardware is good now. You have production unit # 1.
Ha ha... Right. :-P
If you know where we can get this chip for less than $5, we'll take a thousand of them right now.for SPAK56F803BU80, but you may not be able to buy them, since they may be on allocation. Expect possibly to have to pay 50 to 100% or even 200% premium, if you find them. Depends if they've caught up with demand yet.
Also you might want to get half a dozen or more, 'cause the pitch is so fine on their leads, less than an expert solderer will probably go through a handful before getting one down right. Good luck knowing the difference.
BTW, make sure your board is at least 4 layers with significant gnd/pwr planes, per Motorola recommendations, or the timing may get "off" inside the chip. Expect to pay several hundred dollars for a prototype run on multilayer boards or more.
And don't forget the SMT serial chips, CANbus interface chips, LVDT, drivers, LED's, caps and resistors, on the bottom you can't see in the picture. Oh, and the free software provided with it, ...just get the evaluation version of Code Warrior for $495, which is much less than the full $5000 version we got when it first came out. I think it's actually down to $2995 now.
I don't think you're giving good advice this time, and hope you don't mislead the less knowlegeable. But everybody has an opinion.
Well, I'll put aside the fact that you're *selling* them, for now. Though I notice you didn't dispute my guess at pricing at all.
I'm not saying it has zero advantages. Since the chip is covered up with that sticker, it's not immediately evident that it's a MCU/DSP combo. If you're buying a chip for 16 GP I/O, serial, PWM, and some other peripherals, there are lots of microcontrollers out there for peanuts. And C compilers for less than $200. They don't really require a four-layer board minimum, either. But if your application really needs the DSP functions of the device, and isn't hampered by the 16 GP I/O limitation, then it may be a worthy investment.
Soldering a device that size isn't difficult. There are techniques which have always worked for me. And building boards, as long as you aren't making a multilayer board, which you don't have to if you only need a normal microcontroller, isn't that bad.
But, hey, don't worry about me. If someone has an application that uses the full power of the chip, then it's worth it and they'll buy it. I just hope no one thinks this is a good idea for a little line-following bot or something, that's all. Sorry if I'm getting in the way of you selling your product.
It really comes down to what you want to spend your time doing, and what your time is worth. There is a trend in industry called COTS, Commercial Off The Shelf. More and more people are realizing that if you let someone else do the difficult stuff, then you can do what you want to do. If designing and stuffing boards is what you want to do, then that is ultra cool, because the world is your oyster. For me, that comes last in the list of things that I like to do, but it used to be the opposite.
Express PCB is a really nice service, I haven heard that they do 4 layer boards. Got to try that some time.
I like to build mechanical contraptions, and give them a life of their own, so hardware based registers for everything is ideal. I hate writing interrupts, and dealing with program level timing. I did that with some PIC chips and got real sick of it. I don't like working in assembly anymore.
Take the basic stamp for example, for $79.00 you are buying an awful lot of development on their part. I just think that if you want to play with advanced concepts, your money is better spent on a tinipod or a pluga pod.
Personally, I would rather see someone build a line follower with a motor control DSP, where thay have the opportunity to play with more serious robotics concepts, than buy a basic stamp. and ram their head against the performance ceiling. In fact I am working on a line follower with some small motors and H-bridges I have. I am stuffing it into my spybotics thing, and also a 1/32 diecast car I have.
My tinipod is battling with my plug-a-pod for a couple of projects. I am building a stabilized platform, and depending on a lot of things, I may want to use 16 bit analog for my sensors, in which case I will use the pluga.
I am also working on a miniaturized version of my centipede, in which case, the pluga is an ideal CAN node, since I can do my CANbus backbone, and my motor PWM. I have smaller encoded motors, like the ones I gave DPRG, that would be perfect for a mini-pede, and now I could go with PID control on each motor.
I just finished up doing inverse kinematics for the LynxMotion L6 arm, and thought I would make a CANnode out of it, and hang it off the wall where I work. So there is another place I would like to apply it.
Just got excited. Don't know what to build with it. Stuffing it into a mini line follower now.
Actually costwise using a PIC chip or a Motorola DSP 56F80X chip doesn't really save you any money.
You can't compare the 56F803 DSP 16 bit chip to a PIC micro8 bit MCU they are worlds apart. The 56F803 is a 80 mhz clock DSP chip (40mips), with tons of built in robot niceties like 6 channel PWM with 3 quad timers (12 timers), dual Quadrature Decoders, 2 four channel ADC's, SPI, CAN, and so on. Next although they only talk about 16 general purpose I/O pins, many of the other pins can be used for I/O too. It comes in a 100 pin surface mount package, only 16 of those are general purpose I/O, lot's of extra ones there to play with too. Timers are really useful, I can't seem to get enough of them anymore. Fortunately with 12 timers, I haven't used them all up yet. The built in dual Quadrature Decoders are nice, they are almost plug and play, just hook up your A and B quad encoder outputs to the decoders and start reading the decoder registers. I used to use expensive Single Quadrature Decoder IC's for this, except these use up precious I/O pins on a MCU as well. Plus the chip comes with NewMicros' ISOMAX(tm) multitasking state machine RTOS already built in. Forth is part of that as well.
Doing an intellectual exercise here. Getting four - four layer 3.5"x4.5" PCB's made by express PCB costs about $200.00. Other PCB companies seem to want a lot more than this to make a few boards. Plus you typically have to use a PCB layout program that isn't all that cheap either (Eagle et al). You could same a good amount of money by going to a two layer board, but it would be much larger in size. Making a homemade board with the fine pitch pads for the surface mount chips is beyond most hobbyists capabilities. Getting five 56F803 DSP chips from Digikey costs about$18.38 each (they had115 at the moment). Getting five 3v 1 amp regulators costs about $1.50 each You'd probably want a 5v regulator too, they cost about 1.50 each also. Using switching regulators would be better but they cost more of course and are larger. A Maxim serial port interface chip such as the MAX3332 which goes for about $5.00 in unit quantities. A MAX232 would work too but it uses big 1uf caps, the 3332 uses lttle .1uf caps. Use good new low noise caps not old surplus ones. Maybe you would want CAN as well, that's add to the cost with a CAn chip. You also need a nice MAXIM Supervisor IC for the reset line to control the DSP chip during power ups and low battery situations. These go for about $5.00 in single unit quantities too. Then we need some .100" connector strips, LED's and resistors and caps and such figure about $10.00 for the bunch (although you typically wind up spending about $100+ to meet the minimum order levels). Don't forget the JTAG connector either (don't forget you'll need a JTAG programmer adapter too, that costs extra also). So then we get maybe $313 or so to have the fixin's for four boards. Thus it costs about $80.00 each to make four boards up to use. Proces are higher when you can't use economies of scale here. Of course if you have some stuff in your parts bins you can save a little here and there. Hidden costs: Then you figure in the cost of a nice compiler like Codewarrior which goes for about $3,000+. A JTAG programmer for about $100.00 Unless you want the fancy one which was going for over $5,000 when I last looked.
What's interesting is the difference a PIC MCU would make on the cost. A $5.00 PIC chip only drops the cost down by $5.00 using 4 layer PCB's. A Two layer board would drop it down about $20.00 maybe, depends on who makes the PCB. But using a 4,8, or 20 mhz PIC MCU only saves a little. Now you need to factor in the cost of a Quadrature Encoder IC or two. Then PWM causes a problem, with only two timers, you may need to throw in some extra PIC's or other controllers for handling PWM chores as well. Then depending on which PIC you choose you may need a ADC as well. Then you may need to add some more RAM to the PIC which is hard to do and use effectively . So then you could maybe make up a PIC based board for about $50.00. Granted if you roll your own PCB's that appears to reduce the cost,but how much did all the PCB etching equpment and chemicals cost?
The last robot I built using more conventional methods had a Atmel Atmega128 as the main brain, two quadrature decoder IC's as PID feedback being used with a separate Atmel AT90S8515 as a smart motor controller. Another Atmel AT90S8515 served as a servo controller for RC 8 servos. I still had to use a third AT90S8535 as a I/O interface for things like bumper switches, ultrasound range finders, IR object detectors too. I can do all of that using a single 56F803 chip. Which is a pretty impressive shrink down and reduction in complexity and programming. The only thing better maybe is to go with a 56F807DSP chip, $24.12 each in single unit quantities from Digikey. I hope Motorola comes out with a newer 56F*xx chip with maybe four serial uart ports, and double everything else. Plus eight quadrature decoder inputs, so I can run up to eight A&B quad encoders into it.
When you start to outgrow the 56F8xx chips then you can use them as smart I/O controllers for a VIA MINI-ITX or even the newer VIA NANO-ITX boards.
I apologize for going off on a rant here. I am just frustrated by the weather at the moment. I've been dying to go outside and do some welding, but I can't.
"Garrett Mace" wrote in message news:dspOb.92124$ email@example.com...
No, don't bother. I've never tried to diguise what I do. I'm not ashamed of it. I'm surprized if you think I should be.
Price is not firm yet. Your guess is very close. I was in a meeting Wednesday with general manager and head of engineering, where we tried to fix the pricing. Your thinking is pretty good on quessing where we'll be. We might be even be higher than $80 depending on the power supply option you choose. We have several linear and switching regulator options. And there's also the "no regulator option" show in the picture, where you source 3.3V to it.
Well, a rollerskate and a Ferrarri both have four wheels. It doesn't mean they should cost the same.
This is the smallest we've been able to make so far, with just the 16 I/O and serial and CAN. Nice thing about the TinyPod(TM) is there's a migration path up the processor line, from TinyPod(TM) to Plug-a-Pod(TM) to MiniPod(TM) to IsoPod(TM) to IsoPodX(TM) to ServoPod(TM). At the low end, you've got 24 pins, at the high end, over a hundred pins.
Yes. I doubt you will find another tiny 24 pin devices that would make a high-performance 3-axis motion-controller all in itself, with complementary PWM outputs, and quadrature inputs, PID and the computing power to do floats to make velocity profiled moves... all written in high level language interpreted and compiled on the chip... and still have enough left over to do serial communications in the foreground.
On the other hand, you don't have to use the full range of its function to get performance beyond other devices. Just a small amount of code, and the TinyPod(TM) can be a Serial Servo Controller with 12 channels, with the PWM generated in hardware, leaving the 80MHz 40MIP processor essentially free for other tasks, like controlling the speed and acceleration of the servos moves.
Yes, low speed processors with low pin counts can usually be fitted to2-layer boards.
But this brings up a point. As processor speed increase over 30MHz, like our new ARM board under development at 60MHz, there won't be an option for just 2 layer boards because of the need for gnd/pwr planing.
So that's the idea behind TinyPod(TM)'s slightly bigger brother, our new Plug-a-Pod(TM). We're making a board (8 layer iirc) that carries the processor, with pins spread out so it can be mounted on the users2-layer board. This sort of bridges the gap between protorun board and a full blown multilayer development.
You mean like Shnoz and Mike-3, the IsoPod(TM) based ones, that dominated the DPRG line following contests last year, and I wrote up in a feature column in Nuts and Volts magazine?
To each their own, but I'd rather see people "Think outside the Stamp" and that level of processors, and buy a processor with enough features, speed and memory that it's hard to outgrow.
Randy has given good advice, and his signature leads right to the site that sells them. In addition, reading his post gives clear clues that he is at least familiar with the economics of this particular device.
And given the other devices with less power, this seems fairly priced to me.
The only competition I've seen for it with the space constraint is the Kronos Robotics Dios Versa Board (which is based on a PIC). It isn't as powerful, but it is about half the price. [Note, I'm not recommending one over the other.]
Read the web site.
Why? 16 GPIO is fine for most simple robotics applications.
Yes, and how many pure beginners can deal with SMT soldering?
Any why wouldn't this be a good choice for a simple beginner's bot? It does require that the programmer be in the Iso-Max mindset, but I have always found Forth fairly easily.
I'm just trying to say that it is easier for a beginner to use a device like the Tiny-Pod than to build their own.
I haven't been a beginner in quite some time. I build my own I/O boards (OK, I design them and send the to Olimax, but you know what I mean). I still like the Timy-Pod and may use it if I ever have a problem that requires a series of processors.
Hmmmmm. How about a parallel array of 'Pods used for image analysis or decryption? :)
-- D. Jay Newman
-- D. Jay Newman
I know a guy who does artificial neural nets with the gameboy on the pod.
I still want to use EVALUATE to do genetic programming.
I thing that the tinypod is a great platform for beginners..
Wow, that really seems like major overkill. Are you sure you really maxed out your ATmega128? Your ATmega128's got plenty of power to handle all you mentioned above.
I'm currently building a bot using an ATmega128 and right now (using one of my MAVRIC-II boards) and it is controlling 2 drive servos, 1 tilt servo, 2 servos in a pan/tilt arrangement, performing Sony IR protocol remote control reception for command override, getting long range information using an SRF08 ultrasonic ranger via I2C, compass headings from a CMPS03 compass module using I2C, talking, yes talking, using an SP03 text to speech synthesizer via I2C, performing short range IR ranging using a Sharp GP2D12 (connected to the pan/tilt platform), and using a hardware UART for command entry and debugging, while meanwhile multitasking a number of behaviour threads. And while the chip has 128K of flash program memory, all this consumes less than around 20K so far. And I'm still going.
All that and I still have tons of resources still left like 7 remaining A/D channels, 16 general purpose I/O lines completely unused, another hardware UART to use, an SPI interface unused, another hardware PWM output channel unused for a 6th servo, 2 external interrupt inputs remaining, about 100 K of program memory left and about 1/2 of the RAM unused, and more that I can't remember right now. For all of the unused peripherals like SPI, second UART, A/D lines, those can also be used as general purpose I/O which I did not count in the 16 free - so there's really a ton of I/O available. And if I wanted, I could give up the 16 I/O lines and drop in 64K of RAM module (or 128K bank switched), but since the chip has 4K of RAM built-in and I'm using less than 2K of that right now, I can't imagine that will be necessary, but it's available if I need it.
And if I really wanted more than 6 servos, or needed the PWMs for something else, I would simply add a 4017 decade counter connected to a _single_ hardware PWM and 1 I/O line of the ATmega128 to generate 10 very precise servo pulses serially. If I needed more servos, I'd daisy 3 4017's and a couple of AND gates (no additional CPU I/O resources required) to give me 25 servo outputs which consumes only 1 HW PWM and 1 I/O line. No problem. And while I've built that circuit and it works flawlessly using a single hardware PWM running (mostly) in the background, I won't need it on this bot since I doubt I will exceed the 6 hardware PWM outputs which drive the servos in parallel. Seems a waste though, since with the addition of a single simple chip, you can expand 1 PWM to drive 10 servos at .5 uS resolution (or less).
Yeah I am amazed myself too, your not thinking big enough yet. The big problem was using 128k of external NovRam with data logging for Temperature, humidity, fluid level and detection. Then the ADC's got used up for the data measurements and battery voltage current monitoring. Brushless motor controllers and quadrature encoders can suck up a lot of MCU time. Theres a bunch of other stuff on the robots like ultrasonic range finders, bumper switches, IR object detectors, RF links for video cameras, digital camera for stills, fluid level detection and depth, slope angle of the robots, RF remote control link versus autonomous mode, plus a nifty cable remote control for moving them around manually, turning on lights and stuff, etc. Also GPS with a fixed reference GPS reciever and it's own RF link to the robots as well.
A few years ago I started using the concept of having things work autonomously similar to the way things work in animals. We don't have to think about breathing, making our hearts beat, walking, running etc. So why should the main MCU fo all this too? Thus I started offloading things to separate MCU's and let them handle the details. The problem is as the robot gets more complicated the program gets more complicated. Offloading processes to separate MCU's simplifies the problem. Especially when your debugging a problem. It's easier if things are spread out to seperate MCU's.
The ISOPOD's can have multiple state machines so they can do a lot of these things within the chip itself. So my ideas still apply with them only I need to use one chip for much of this using separate state machines. Since it has a CAN bus already built in it makes it even nicer. Data logging and gathering is getting more intensive, thus going to a VIA MINI-ITX board looks better now.
Reliability is still a concern, it's hard to beat the NovRams, they go for about 10 years before the Lithium battery fails, but if they are powered externally who knows how long they'd last, I haven't had one go out yet. EEPROMs, FLASH, hard disk drives don't seem to quite have that long life read write capability. Yeah a hard disk drive may work for a year or so, but a NovRam seems to go on forever. We're talking long life here, changing out the batteries once a year is all that's supposed to happen. If a robot dies, and the MCU board is still intact you can get the NovRam out and analyze it some to see what the robot was doing at the last moment. Since TI has newer up to 2 megabyte NovRam chips, I am thinking about running several of these for data storage now. I just have to figure out something for using them on a Via Mini-ITX board. The new monster USB flash disks look promising. But I dont know how many times I can write to them reliably and whether it would be long enough. I thought about ARM CPU's but except for using Codewarrior, I can't get them to work with a stupid GNU C++ cross compiler. I still have problems with the cost of CodeWarrior for ARM chips.
PolyTech Forum website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.