Shop OBEX P1 Docs P2 Docs Learn Events
TTL-CMOS, IEEE 1394 firewire to ethernet — Parallax Forums

TTL-CMOS, IEEE 1394 firewire to ethernet

mic123mic123 Posts: 7
edited 2010-01-23 19:55 in Propeller 1
Hi everyone,
I am just starting out here, and I hope someone will point me in the right direction.

My goal:· I would like to take a video stream from a firewire camera, and pass·it·through the propeller chip. First I would like to try the·xbee, and then through an ethernet connection·on my DLINK router.· I·will use·premade software to view images, once the video stream is found.

first problem: ·how to read the stream from the firewire?· I think firewire has enhanced TTL, ECL,·or BTL -- while the processor has CMOS I/O.· I dont want to burn the chip before even starting.


Is there a module for this, or some chip which I dont know about.· I may need a new crystal to.· ANy help is appreciated.

Thank you.

Comments

  • MagIO2MagIO2 Posts: 2,243
    edited 2010-01-19 22:42
    Is it already first of april? I swear that was really fast this year!

    No ... seriously ... you are joking aren't you?? Firewire ... USB ... that's far beyond the capabilities of the propeller.
    Firewire has a transfer-rate of 98.304.000 bits per second ... and that's only the basic version. Divide the 98M bits by 20MIPs and you'll find that the propeller has to read 4 bits per instruction ... on a serial interface ... interesting task.
  • CassLanCassLan Posts: 586
    edited 2010-01-19 23:15
    mic123,

    Welcome to the forum!!!

    Rick

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔


    NYC Area Prop Club

    Prop Forum Search (Via Google)

    ·
  • KyeKye Posts: 2,200
    edited 2010-01-20 00:41
    You'll need to use an external chip that can look at the data and buffer it for you.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Nyamekye,
  • mctriviamctrivia Posts: 3,772
    edited 2010-01-20 00:49
    i think what he is asking for is a part number for a chip that will buffer it for him. I do not know of any and a quick search on google comes up with nothing.

    Mic you may need to use an FPGA or pay someone to make you a module that will do this.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    24 bit LCD Breakout Board now in. $24.99 has backlight driver and touch sensitive decoder.

    If you have not already. Add yourself to the prophead map
  • MicrocontrolledMicrocontrolled Posts: 2,461
    edited 2010-01-20 03:29
    McTrivia could make a module. i have a PropMod, very well made and most of the things he makes work well.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Computers are microcontrolled.

    Robots are microcontrolled.
    I am microcontrolled.

    SX Spinning light display·

    http://designedbymemicros.blogspot.com/
  • mctriviamctrivia Posts: 3,772
    edited 2010-01-20 03:41
    i do not know enough about firewire to do that at the moment and do not have the time to research it. It would be a fun one to do though. Someone with more FPGA and firewire knowledge would have to do it.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    24 bit LCD Breakout Board now in. $24.99 has backlight driver and touch sensitive decoder.

    If you have not already. Add yourself to the prophead map
  • MagIO2MagIO2 Posts: 2,243
    edited 2010-01-20 05:29
    So what's the point in using a propeller then? The FPGA can receive it via Firewire and send it via Ethernet ... that's my understanding of what he want's to do. I'd expect that cameras having firewire have a good resolution, so processing of the stream would be hard to achieve, wouldn't it?
  • mctriviamctrivia Posts: 3,772
    edited 2010-01-20 06:28
    the prop could not process the image in real time though it could process still frames.

    As for resolution old SD cameras are 720x480 new HD cameras are 1920x1080

    There is not much you could do with a prop but if you really wanted to and you have time and or money it could be done.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    24 bit LCD Breakout Board now in. $24.99 has backlight driver and touch sensitive decoder.

    If you have not already. Add yourself to the prophead map
  • Peter KG6LSEPeter KG6LSE Posts: 1,383
    edited 2010-01-20 06:48
    MagIO2 said...

    Firewire has a transfer-rate of 98.304.000 bits per second ..

    And that's just slow FireWire 100,, part of "1394A" .FireWire 800 and 3200 "1394B" are evan faster ..
    My FW web cam uses 400Mbps....
    sadly I dont think the prop could ever handle real time video like that ...
    I would love to make a real time green screen system ..

    Peter KG6LSE

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    "Carpe Ducktum" "seize the tape!!"
    peterthethinker.com/tesla/Venom/Venom.html
    Never underestimate the bandwidth of a station wagon full of tapes hurtling down the highway. —Tanenbaum, Andrew S.
    LOL
  • AleAle Posts: 2,363
    edited 2010-01-20 08:10
    mic123 said...
    My goal: I would like to take a video stream from a firewire camera, and pass it through the propeller chip. First I would like to try the xbee, and then through an ethernet connection on my DLINK router. I will use premade software to view images, once the video stream is found.

    You have a video stream on one end and still images on the other... can you elaborate ?

    Have you seen the bit rates that XBee supports ? you may barely do video and with very high compression.

    You still did not specify which is your goal. Try to make some block diagram with on one end what you input and on the other what you want and fill inside with the operations you need, wireless comm or wired comm, digital filters or whatever you need, then look for the devices that would satisfy those specs. The other way round is a "this device is unable to do that" sort of thing. (Like the propeller and almost any kind of video stuff besides generations of VGA signals, Composite (limited number of colors).

    have fun

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Visit some of my articles at Propeller Wiki:
    MATH on the propeller propeller.wikispaces.com/MATH
    pPropQL: propeller.wikispaces.com/pPropQL
    pPropQL020: propeller.wikispaces.com/pPropQL020
    OMU for the pPropQL/020 propeller.wikispaces.com/OMU
  • mic123mic123 Posts: 7
    edited 2010-01-20 14:26
    hi,
    I dont know if Ill be able to make this, but if I already had it all figured out I wouldnt be learning.
    This is part of a larger project, I am hoping to communicate more than just the live camera feed over the internet, I would like to create full duplex for realtime controls. To do this I will need the propeller to setup an IPstack or something to communicate through the router/switch, or a modem. On the other end of this line, I could use labview or maybe some servlets and a flash media server.

    The firewire camera seems a good place to start, because of the high datarate. Also, I have a camera and propeller chip to start with.
    --SO--
    The camera - 6 pin firewire, 2 twisted pair differential signals. The speed is 393.216 Mbit/s, and ttl.
    the propeller - 32 pin, upto 80MHz, CMOS.

    I was thinking shift registers or ram card to buffer the serial feed, and at timed intervals pull chunks of data off the RAM and send them off as UDP packets. no handshakes, no errorchecks, just raw data
    I will research FPGA. Has anyone used FPGA because I could use the advice, I have never used one of these before.
    Thanks again
  • mctriviamctrivia Posts: 3,772
    edited 2010-01-20 14:49
    32x20mip possible to get in but unfeasible

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    24 bit LCD Breakout Board now in. $24.99 has backlight driver and touch sensitive decoder.

    If you have not already. Add yourself to the prophead map
  • MagIO2MagIO2 Posts: 2,243
    edited 2010-01-20 14:53
    Forget the propeller ... it can't handle such an amount of data! It's a microcontroller ... an amazing one, but microcontrollers are not meant to deal with such an amount of data.

    It can't even help you with ethernet. ethernet connections are usually done with an external chip like the ENC2??? (forgot the name). But the connection to that chip is serial. So, even if you have 100MBit/s on physical layer you will never have this speed between propeller and ENC. (And you need 1000MBit/s ethernet if you don't want to decode/resize/encode again and transfer a 393 Mbit/s stream ).

    I think this is a very enthusiastic project for starting with FPGAs. Is this project just for fun?
  • mic123mic123 Posts: 7
    edited 2010-01-20 15:49
    yeah, Im just doing this as a hobby, I'm an EE but Ive been stuck programming with no actual circuitry.
    Are FPGA's the way to go then? maybe some type of compression?
    Also, can the xbee connect to a standard router, with an IP address?
    Im not ready to give up just yet...
  • AleAle Posts: 2,363
    edited 2010-01-20 15:56
    Xbee and standard router ? no way without something in the middle, they use different protocols and so on. Look it up in wikipedia to get the reference white paper/datasheets.
    FPGAs are a step in the high end direction, maybe a chip like the XMOS can do something like what you want...

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Visit some of my articles at Propeller Wiki:
    MATH on the propeller propeller.wikispaces.com/MATH
    pPropQL: propeller.wikispaces.com/pPropQL
    pPropQL020: propeller.wikispaces.com/pPropQL020
    OMU for the pPropQL/020 propeller.wikispaces.com/OMU
  • mctriviamctrivia Posts: 3,772
    edited 2010-01-20 16:18
    An fpga can do everything you want. 802.11n is the only wireless option but gigabit wired would be better.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    24 bit LCD Breakout Board now in. $24.99 has backlight driver and touch sensitive decoder.

    If you have not already. Add yourself to the prophead map
  • MagIO2MagIO2 Posts: 2,243
    edited 2010-01-20 18:49
    Hmmm ... Gigabit Ethernet with the XMOS. I doubt that. It also has to do everything via software. And a XMOS core has 400MIPS. So it has to send 3 bits with one instruction at best. If you program it like the propeller, running more than one program, the MIPS are shared between the threads. At 8 threads per core it can go down to 50MIPS ... That's not so far away from our propeller which has 20MIPS per "thread".

    FPGA would work, but again ... I think your project is to hard for a start with FPGAs ... I think the first projects should not put that much preasure on you. Otherwise you will have a lot frustration and chances are higher that you give up. The FPGA works completely different. The 'program' of a FPGA does not run sequentially, it runs parallel. You should get used to it in smaller steps. Especially timing can cause a lot of problems and your project is at the upper range of speed requirements. Maybe you have a chance to find libraries leaving not much work for you, but I'm not sure if that is what you want.
  • LeonLeon Posts: 7,620
    edited 2010-01-20 19:50
    Firewire should be doable with an XMOS chip using a suitable Phy device such as the 400 Mbps TI TSB41AB1. They can do 480 Mbps high-speed USB without any problems, as well as 100 Mbps Ethernet.

    Leon

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Amateur radio callsign: G1HSM

    Post Edited (Leon) : 1/20/2010 7:56:18 PM GMT
  • mic123mic123 Posts: 7
    edited 2010-01-20 19:52
    Hi, thanks again for all of this info.
    FPGA looks expensive to get started with, xilinx and VHDL I am pretty sure will have a high learning curve. Im interested in learning this, but I am undecided because it will take some added dedication.
    I was just hoping to buffer the data somewhere: then cut out datachunks, or compress the data if I had low bandwidth. I thought if I put it in ram and kept track of the addressing, that I could then stream data from the ram into some NIC. Is this solution impossible?
    To bad I can't just plug in some PCI cards. no cheap-easy solution for this one.
    I think you are right. I will start with something simpler, like controlling motors, and acquiring data from a gyroscope. I'll get the xbee or PINK netburner kit for communications. I hope this gives me some exposure to the lower level assembly and machine logic.
    I will start looking at some FPGA cards, tutorials, a job to pay for this... Anyone have any more recommendations?
    Has anyone tried to connect to the internet through one of those USB cellphone internet sticks, the ones for a laptop???that would be a cool module.
  • mic123mic123 Posts: 7
    edited 2010-01-20 20:00
    The TSB41AB1 looks promising, and they have free samples... Thats a good start.
  • rjo_rjo_ Posts: 1,825
    edited 2010-01-20 20:48
    mic123

    I'm not an engineer, but there are some really good ones around here[noparse]:)[/noparse] I've stated the same essential facts a couple of times and the experts have agreed with them. But I've never stated the facts in the context of firewire... so here goes.

    A couple of years ago, I was asking myself similar questions. What I did was order an FPGA from China via Canada. It was all set up with 1MB cameras and a software demo showing how to use them. It did everything I wanted, except store the images. The demo worked perfectly, just as advertised. But I still wanted to control everything with a Prop. The job seemed simple enough: Take the basic demo, add some lines for Prop control, some SD memory... and call functions, which could be controlled with those lines connected to my Prop. I didn't know enough at the time to make it all work, but I think it is a completely reasonable way to go about things.

    There are proprietary modules available in the FPGA world, someone must make a firewire/FPGA combo. Finding the right module would get you pretty close to where you want to be. You have to study FPGAs anyway... seems like a great way to do it.

    BUT...

    Firewire is a serial protocol. The data rates are a little high for one Prop, but the Prop is the most deterministic device UPS has ever shipped. The Prop is cycle accurate at its core(s). You can hook as many Props together as you want and if they are all fed from the same clock, then with a little software magic, you can make them act in parallel to solve almost any signal processing problem you want. Your job would then consist of building an electronic distributor that fed each new bit to the next Prop in your round robin multi-Prop machine.

    I chose to study the Prop first and worry about FPGAs later, mostly because I have so much to learn about electronics and micro-controllers.

    If you learn everything you can about the Prop, you will convince yourself that if you want to accomplish something ... you can always do it with a Prop. You might be able to do it easier or cheaper some other way.

    Getting things done means solving all of the problems. If you concentrate your efforts in the FPGA arena and you run into one little problem that you cannot solve (or don't have time to solve)... you fail.
  • mic123mic123 Posts: 7
    edited 2010-01-23 19:38
    Howdy all,
    I read about the TI TSB41AB1 which is a Physical Layer Controllers, and that led me to reading about the TSB12LV32 which is a Link Layer Controller.· I need to study this stuff a bit more.
    I like what I've been reading about FPGA's.· It is hard to compete with those kind of speeds.· The problem is to send so much data, lossless, from a firewire over the slow internet.· It would require super compression, which should also be possible with the FPGA· {I had an idea about doing extreme compression using concepts from John von Neumann's cellular automata and state-space, but·have yet to·scratch out the full solution}.· The FPGA's are very interesting, I just wish they were easier and less expensive to get acquainted with.
    To start with, I purchased the GPS and PINK module to try sending some ascii data using UDP.·······
    Thanks again, I am not sure how to close out a thread, so I will just leave this one open
    Mike·····
  • LeonLeon Posts: 7,620
    edited 2010-01-23 19:55
    FPGAs aren't expensive or difficult to use. Digilent sells a $99 Xilinx Spartan 3 kit which can be used with the free Xilinx Webpack tools.

    Leon

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Amateur radio callsign: G1HSM
Sign In or Register to comment.