Shop OBEX P1 Docs P2 Docs Learn Events
A new open project - everyone interested is welcome! — Parallax Forums

A new open project - everyone interested is welcome!

kiiidkiiid Posts: 16
edited 2011-05-30 21:56 in General Discussion
Guys, I just wanted to let everyone know that recently I started with setting up an open forum for some old idea of mine that I hope will see the light. It is not directly Propeller-related at the moment, although I hope someday in the future it might become. There isn't much at the moment - only the basic concept and there is a very, very long way to go.
Anyway, you are very welcome to come, have a look and join if you want.
The address is http://ssbgroup.freeforums.org
Thanks!

Comments

  • ElectricAyeElectricAye Posts: 4,561
    edited 2011-05-04 04:04
    Welcome to the forums.

    Perhaps you should include here a title and short description of what your project is.
  • doggiedocdoggiedoc Posts: 2,246
    edited 2011-05-04 04:52
    Hello kiiid,

    Welcome to the Parallax forums! Perhaps you could elaborate on the nature of your project. More information would likely entice more people to chime in or even join.

    Paul
  • kiiidkiiid Posts: 16
    edited 2011-05-04 05:36
    Thank you. Yeah, you are right, I should have put a few words about it.
    I am trying to create an open project that will produce some simple, reliable and easy to work with serial bus that will take from where the good old ones left before being killed by the USB demon. Although haven't had any posts here so far I've been reading here and playing with props for a long time and see there is a bunch of open-minded engineers around. That's why I thought someone might be interested.
    There is always the need to input/output information and in many cases people just need something simple to work with. The hobbyists know that the most. I hope if more people like the basic idea of my bus and it reaches the level of development needed for that it can be included in chips in future.
  • Mike GMike G Posts: 2,702
    edited 2011-05-04 08:49
    I am trying to create an open project that will produce some simple, reliable and easy to work with serial bus that will take from where the good old ones left before being killed by the USB demon

    I'm still not following you. What are you planning to improve? Are you talking about a physical layer or a higher level protocol?
  • kwinnkwinn Posts: 8,697
    edited 2011-05-04 11:18
    There are already a multitude of serial hardware and protocol layers available. At the hardware level we have RS232, RS422, RS485, I2C, SPI, and more. There are protocols out the wazoo for serial hardware. There is BACnet, Lonworks, Profibus, MIDI, and DMX512 to name just a few. I really don't think we need another physical layer or protocol, but feel free to come up with one. Everyone else seems to have come up with their own semi-proprietary protocol. It might be so elegant and flexible that it replaces a lot of what is used now.
  • kiiidkiiid Posts: 16
    edited 2011-05-04 15:34
    Mike G wrote: »
    I'm still not following you. What are you planning to improve? Are you talking about a physical layer or a higher level protocol?

    I am talking physical (for now).
    And yes, there is quite a few at the moment but they all have one thing in common - some flaw that makes them either old, too resource consuming, too unreliable, for internal use only, etc. I am trying to do something that will work well no matter on the board or cable and no matter how fast the devices individually are.
  • Mike GMike G Posts: 2,702
    edited 2011-05-04 18:04
    kiiid, what flaw(s) are you fixing? Can you give an example?
  • kiiidkiiid Posts: 16
    edited 2011-05-04 19:36
    Mike G wrote: »
    kiiid, what flaw(s) are you fixing? Can you give an example?

    Mike, sure, without claiming I am always right here is what I think:
    RS232 - slow; does not have tools for detecting and maintaining the connection; requires setup of a few parameters or don't work; can't be generally forund in today's equipment
    RS485 - better but with different problems - generally not well accepted in consumer products; still requires setup for baudrate; still does not have tools for detecting connection present
    SPI, I2C, one-wire, etc. - only for on-board use
    USB - ridiculuosly difficult even for the simplest tasks; not network oriented; resource consuming
    1394 - fast, clever, but not very suitable for small electronics and microcontrollers; expensive and huge chips; resource consuming
    what else... I can't think of something else popular... were you referring to something particular?
    I am trying to come up with something simple that will take as much as possible from the good side of these and leave the bad ones behind.
  • LeonLeon Posts: 7,620
    edited 2011-05-04 21:11
    CAN-bus is very widely used in industry, and works very well. CAN hardware interfaces are available on many MCUs, or as add-on chips.
  • HollyMinkowskiHollyMinkowski Posts: 1,398
    edited 2011-05-04 21:40
    Hi kiiid

    I enjoy playing around with communications protocols.
    Once I even dreamed up a simple protocol myself to send
    data back and forth using just the power leads to a remote
    device. I got it working although it was no real improvement
    over what had been done before....I just enjoyed tinkering
    with it.

    You seem very enthusiastic about this project and I do wish
    you well and will keep an eye on the progress. Maybe later
    when I get some time play with the stuff I want to instead
    of having to slog through boring tasks day after endless day
    I could even help somehow.

    I'd like to try and use a prop to create a poor-man's multi protocol data
    analyzer. It's not really fast enough to analyze something like USB2.0
    but still there is a lot that could be done with the prop in a device of this sort.

    A prop and a small 7" lcd plus a handful of cheap parts and I think you
    could build something that could monitor everything between slow morse code
    and pretty fast serial protocols. And since the prop has 8 cores you could
    monitor more than one data stream at the same time.

    It would just be fun :-)
  • Mike GreenMike Green Posts: 23,101
    edited 2011-05-04 21:44
    You have certainly bitten off a major task. Not only do you have to come up with something that actually works, works reliably and can be implemented cheaply, but it needs to do something so much better than the ones you've mentioned and others that people will start to adopt it in huge numbers, enough that chip manufacturers will either make interface chips for it or begin to incorporate it into new devices. Eventually it would have to become an accepted standard. Usually that happens after the technique becomes widely adopted.

    Some corrections to your list:
    SPI, I2C: Usually used for on-board communications. There's no reason why they can't be used for moderate distances (tens of meters) with proper design.
    1-Wire: This is designed for moderate to long distances (hundreds of meters or more). There are repeaters available and it's already used for environmental control in large office buildings with large numbers of thermometers on a wire leg.
    USB: This is designed for small complex networks with many very different kinds of devices with widely varying bandwidth, latency, and power requirements and the protocol has to allow for dynamic reconfiguration. Fortunately, most of the work is done by the single host controller. The clients can be much simpler.
    IEEE1394: It is fast, clever, and was never designed for use in general small electronics or with simple microcontrollers. It was designed for use with high performance mass media (disc drives) and with digitized video (and audio) data.

    Good luck with your project.
  • kiiidkiiid Posts: 16
    edited 2011-05-04 23:20
    Thank you all for the comments! Yes, it is a big task with no promise for success but that's what makes the life more exciting isn't it? And I already have some particular ideas for a few parts of it and might even actually work!
    Anyway, my invitation stands for all at any time now and in future
  • kwinnkwinn Posts: 8,697
    edited 2011-05-05 16:08
    I'd like to try and use a prop to create a poor-man's multi protocol data
    analyzer. It's not really fast enough to analyze something like USB2.0
    but still there is a lot that could be done with the prop in a device of this sort.

    A prop and a small 7" lcd plus a handful of cheap parts and I think you
    could build something that could monitor everything between slow morse code
    and pretty fast serial protocols. And since the prop has 8 cores you could
    monitor more than one data stream at the same time.

    It would just be fun :-)

    Go for it Holly. This would be a very useful device for a broad range of applications.
  • kwinnkwinn Posts: 8,697
    edited 2011-05-05 16:25
    kiiid wrote: »
    RS485 - better but with different problems - generally not well accepted in consumer products; still requires setup for baudrate; still does not have tools for detecting connection present
    It is widely accepted in industrial and building automation, has multiple suppliers of inexpensive driver chips, works well over unshielded (although shielded is recommended) twisted pair wires up to 4000 feet, and a simple software driver can be used to auto-detect connected devices and determine baud rates.

    The reason USB is ridiculously difficult is that it was designed to avoid most of the problems you list so it can be "plug and play". Once you add all that to any other communications protocol it will also become ridiculously difficult. The biggest problem with RS232 (other than speed and noise immunity) was that every company that used it on their equipment had some non-standard use for some pin or signal on the DB9/25 connector. I used to carry a bag full of adapters when I serviced mini-computers and PC's.
  • kiiidkiiid Posts: 16
    edited 2011-05-05 22:21
    kwinn, I don't know how to respond... Are you trying to convince me to give up? Generally I am not colouring things black or white only - of course there is always good side and trade-offs in the existing buses. I am just trying to come up with something that has assembled from from the good sides and has less from the bad ones from all that exists now. And ultimately my reluctance to accept the joke about how great the USB is led me to this project. With people there is black and white, though - you either support or not. It is not up to me to decide that.
  • kwinnkwinn Posts: 8,697
    edited 2011-05-06 14:34
    No, I am not trying to convince you to give up, just pointing out what is already available. Keep in mind that the added complexity of USB from the perspective of someone trying to produce a compliant device is what makes it so simple for the users. A user only has to connect the devices using the appropriate cables and it works (mostly).

    From a hardware perspective I think it will be difficult to come up with anything simpler than 2 wires twisted around each other to connect several devices in parallel. From a software and operational aspect I think there is a lot of room for improvement. First and foremost would be automatic baud rate detection (by measuring start bit or character length?) (start at a fixed rate and negotiate?), closely followed by auto address selection and assignment of devices on a bus.

    I am skeptical, but would also be delighted to hear that you have come up with a simple, powerful, and elegant design for this. The first step would be to list all the good and bad characteristics of the existing protocols and look at how to keep the best points and avoid the worst ones. Easier said than done.

    I wish you the very best of luck with this and hope you will update this thread as you go so I can follow your progress.
  • kiiidkiiid Posts: 16
    edited 2011-05-29 00:54
    Just as an update. From today a new, much more detailed and improved document is available on the forum's page. Any feedbacks or suggestions are welcome.
    Soon I may try to implement the first specs of SSB into a Prop object. It will certainly require a few external components, but apart from that will probably work well.
  • kwinnkwinn Posts: 8,697
    edited 2011-05-29 23:04
    kiiid wrote: »
    Just as an update. From today a new, much more detailed and improved document is available on the forum's page. Any feedbacks or suggestions are welcome.
    Soon I may try to implement the first specs of SSB into a Prop object. It will certainly require a few external components, but apart from that will probably work well.

    kiiid, I hate to say it but after going over your latest spec, I think the "Simple" has gone from the "Simple Serial", particularly as far as the hardware is concerned. In particular the requirement for a -5V supply. While the software is nowhere near as complex as USB, it also leaves the "Simple" part in the rear view mirror. Virtually everything you are trying to do can be done with RS485 and some small changes in the data format. Sorry about that. I know you have put a lot of effort into this.
  • HollyMinkowskiHollyMinkowski Posts: 1,398
    edited 2011-05-30 02:14
    kiiid, I tried to go and get a copy of the new document but all I get is this message :-(

    "Sorry but this board is currently unavailable."

    Perhaps you could post this document in this thread as an attachment?
  • kiiidkiiid Posts: 16
    edited 2011-05-30 21:48
    kiiid, I tried to go and get a copy of the new document but all I get is this message :-(

    "Sorry but this board is currently unavailable."

    Perhaps you could post this document in this thread as an attachment?

    Sorry about that, I am playing a little with the forum settings and have disabled it while I finish. Attaching the file here. Still not final and there is one known mistake in the text, but much better from what was in the very beginning (thanks to the great efforts of JR)
    Thanks for the interest.

    kwinn, that's all right. I haven't had even the tiniest belief that everyone will sense what's new or accept it. I can only say you are wrong. Probably haven't understood the concept well? Thanks for the criticism anyway.
  • Phil Pilgrim (PhiPi)Phil Pilgrim (PhiPi) Posts: 23,514
    edited 2011-05-30 21:56
    kiiid,

    You might take a look at the Prop bootloader spec. It's pretty much baudrate-independent, being based on pulse-wdth comparisons. It enables programs to be uploaded to a device running at an uncertain RC-controlled frequency.

    -Phil
Sign In or Register to comment.