Stories
Slash Boxes
Comments

SoylentNews is people

Journal by DannyB

Task:
        To blink an LED.

        A blinking LED is required on a control panel to indicate
          a warning condition.
        Therefore it must be extremely reliable.

Hardware engineer:

        Easy, I'll use a 555, a few resistors and a capacitor; or LM3909 chip.
        Done. Did I win a prize?

DIY Maker:

        Easy. I'll use an Arduino with the blink sketch and a resistor.
        Done. I have more billable hours than the first guy.

Senior Software Engineer:

        You guys have it all wrong.
        Such a system would never be flexible enough for a real application
          where a blinking LED indicator is required.

        Consider the inflexibility of the 555 approach.
        What if the marketing people change the requirements from a simple
          on/off blink to a different blink pattern.
        The simplest example would be the double blink.
                Blink, Blink, long pause, Blink, Blink, etc.

        Then consider the lack of sophistication that the Arduino has.
        With a simple microcontroller you can't have a web interface
          to configure the LED's blink rate.
        You would have to re flash the firmware.

        With a more sophisticated controller, like a Raspberry PI, or
          even better, a Beagle Bone, the system could automatically
          check on the internet for software updates; and automatically
          download and apply them.
        For security, downloads could be signed with 4096 bit keys
          using private certificates from the manufacturer.
        (This also ensures ongoing contracts since no other vendor
          would have the private certificates.)
        Higher end boards provide more flexibility.
        The LED controller could have it's own WiFI connection to
          not burden the rest of the system to provide its
          internet access.
        And even better . . .

(lightning bolt strikes in mid sentence)

 

Post Comment

Edit Comment You are not logged in. You can log in now using the convenient form below, or Create an Account, or post as Anonymous Coward.

Public Terminal

Anonymous Coward [ Create an Account ]

Use the Preview Button! Check those URLs!


Logged-in users aren't forced to preview their comments. Create an Account!

Allowed HTML
<b|i|p|br|a|ol|ul|li|dl|dt|dd|em|strong|tt|blockquote|div|ecode|quote|sup|sub|abbr|sarc|sarcasm|user|spoiler|del>

URLs
<URL:http://example.com/> will auto-link a URL

Important Stuff

  • Please try to keep posts on topic.
  • Try to reply to other people's comments instead of starting new threads.
  • Read other people's messages before posting your own to avoid simply duplicating what has already been said.
  • Use a clear subject that describes what your message is about.
  • Offtopic, Inflammatory, Inappropriate, Illegal, or Offensive comments might be moderated. (You can read everything, even moderated posts, by adjusting your threshold on the User Preferences Page)
  • If you want replies to your comments sent to you, consider logging in or creating an account.

If you are having a problem with accounts or comment posting, please yell for help.