element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet & Tria Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • About Us
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      • Japan
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Vietnam
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
Personal Blogs
  • Community Hub
  • More
Personal Blogs
Frank Milburn's Blog AIS Alarm - PCB Version 0.2
  • Blog
  • Documents
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
  • Share
  • More
  • Cancel
Group Actions
  • Group RSS
  • More
  • Cancel
Engagement
  • Author Author: fmilburn
  • Date Created: 7 Feb 2018 4:24 AM Date Created
  • Views 1551 views
  • Likes 9 likes
  • Comments 9 comments
  • daisy
  • smd
  • ais
  • state machine
  • pcb
  • msp430
Related
Recommended

AIS Alarm - PCB Version 0.2

fmilburn
fmilburn
7 Feb 2018

Project Objective: Develop an open source AIS Alarm that alerts sailors that a new marine vessel with AIS is within range

 

Over the weekend I modified the PCB design, submitted it for production, and started thinking about refactoring the firmware.  This post will show the new PCB design and outline some of the thinking that went into it.  A first pass at the state machine will also be introduced.

 

Here is a rendering of the new PCB that is now being manufactured:

image

The main changes are:

  • Removed the LED that was causing interferences with the side of the case completely.  I decided I could convey necessary information with blinks of different length rather than multiple LEDs - remains to be seen how well that will work.  Reduces BOM and cost.  I considered using SMD LEDs very seriously but in the end settled for the 5mm one used here because I wanted maximum brightness.
  • Moved the dAISy on the alarm board directly over the header on the radio.  Bought some short "Dupont" 0.1" headers and will try to connect the two boards that way rather than use ribbon cable.  Will tidy things up and make assembly easier but is a tight fit.  Somewhat more costly since they are non-standard headers.  This is something of an offshoot of the idea Gene suggested in my last post.
  • Moved the buzzer forward to remove interference and placed the programming header behind it.  The microcontroller is now closer to the radio which is undesirable.  Need to check if this materially reduces reception from the radio when the PCB comes back.

 

This is the simplified state machine both as a diagram and a table showing movement from one state to the next.  In the old design there were LEDs for on/off, alarm, and ship detected.  Now it is done with one LED.  This is probably close but I have to keep stopping myself from adding features (KISS).

image

image

The V0.2 board should be back by the end of next week.

 

I found someone who is willing to test it and give feedback when I am comfortable with the prototype.  It is a person who has sailed the Pacific on a small boat and is interested in looking at it.

 

Past Posts from this Project:

AIS Alarm

AIS Alarm - The Process

AIS Alarm - Prototype Hardware

AIS Alarm - Timers and GPIO

AIS Alarm - Prototype Code Outline

AIS Alarm - UART

AIS Alarm - First AIS Messages

AIS Alarm - First FRAM Storage

AIS Alarm - Debouncing Momentary Button Switches

AIS Alarm - FRAM Ring Buffer

AIS Alarm - Schematic

AIS Alarm - PCB Version 0.1

AIS Alarm - PCB Version 0.1 Arrived

 

References and Links:

WEGMATT LLC - dAISy AIS Receiver - low cost AIS receiver

Texas Instruments MSP430FR2xx FRAM Microcontrollers - Post No. 4

TI MSP430FR2111

Maximize the Sound from a Buzzer

  • Sign in to reply

Top Comments

  • fmilburn
    fmilburn over 7 years ago in reply to gecoz +4
    Hi Fabio, Thanks for examining my work critically - it is appreciated. You have found an omission in the state diagram. Also, I am a self taught enthusiast programmer so my work may not reflect standard…
  • shabaz
    shabaz over 7 years ago +3
    Hi Frank, Nice-looking board design! the entire project is looking really great. As for the board changes, I felt your pain, I too am currently battling with an enclosure, there is never enough room :…
  • gecoz
    gecoz over 7 years ago +2
    Hi Frank, I like this new version of the board, looks very neat. It is great you already found someone willing to test your prototype, I always find on-the-field testing one of the hardest part to cover…
  • fmilburn
    fmilburn over 7 years ago in reply to gecoz

    Thanks Fabio and much appreciated.

    • Cancel
    • Vote Up +2 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • gecoz
    gecoz over 7 years ago in reply to fmilburn

    Hi Frank,

    Thanks for explaining to me, now I think I understand what the snooze state does and how you are using it.

    I think you probably can get away using only one event for the timer, the TIME_CLEAR event. The reasoning behind is that, while in the SNOOZE state, which I assume will start the timer, you can only exit the state if a new ship is detected (NEW_SHIP event), in which case you move back to the ALARM state, or if the time is elapsed, in which case you either move to ALARM, if the old ship is still detected (OLD_SHIP event), or you move back to MONITORING if no detection occurred (TIME_CLEAR event).

    You are doing a superb job with this project, and definitely you should not underestimate your programming skills.

    Keep up the great work.

    Fabio.

    • Cancel
    • Vote Up +2 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • three-phase
    three-phase over 7 years ago

    Nice progress being made. Good luck with the trials.

     

    Kind regards

    • Cancel
    • Vote Up +2 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • fmilburn
    fmilburn over 7 years ago in reply to genebren

    Thanks Gene,

    I decided after another trial that I can hand solder these OK.  I modified the footprint on the dual MOSFET a bit - just lengthened the pads although it is hard to tell from the rendering.  But now that you mention it I could lengthen them some more.  I plan to order a template next time and get myself a toaster oven.

     

    Regarding the OFF state - yes, I will use one of the power saving states on the MSP430 that can wake up with a button press.  It is not too critical though as I don't plan to turn off the radio when the alarm is off and the radio is the main power user.  The reason for not turning off the radio is that in an area with heavy traffic the user will want to leave AIS on and monitor on the screen but not hear the alarm continuously beeping.  Kind of like listening to your favorite station on the radio and not hearing the alarm at the same time :-).

    • Cancel
    • Vote Up +2 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • fmilburn
    fmilburn over 7 years ago in reply to shabaz

    Yes, never enough room.  In this case there is plenty of interior real estate, just not enough on the exterior edge where the user interface is.  Even when there is room it isn't where you need it :-)

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • More
    • Cancel
>
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2026 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube