View Full Version : Onboard Computers
TerryKing
03-17-2007, 08:07 PM
Discussion thread for Onboard Computers (http://www.boatdesign.net/wiki/Onboard Computers). If you would like to add a comment, click the Post Reply / New Reply button.
Right now, I'd appreciate suggestions on the topics to be covered as seen in the CONTENTS section at the top. If there is something you'd like covered, or something that is confusing, please comment here! If you have knowledge of some area and would like to contribute please do so. Right now, it would be great to have:
- An NMEA expert
- Someone experienced with high-end fly-by-wire systems
- Someone who knows Satellite data communications options
- Probably other stuff we haven't thought about yet!
If there are differences of opinion about something, let's thrash it out here on the discussion page!
TerryKing
03-18-2007, 01:32 PM
Portager and MarshMat, thanks for the great pointers! I am working on a Wiki item on Onboard Computers at http://www.boatdesign.net/wiki/Onboard_Computers
May I use your information there?? I plan to add a section for details of board-level solutions including PC-104, Mini-ITX etc. I'd like to work out a typical configuration of those systems in a DIY case, with approximate pricing to be able to compare to the box-level offerings like TinyByte and LittlePC etc.
The Wiki is supposed to be a collaborative effort and I'd appreciate your contributions there. Also, I'd appreciate it if you would review the Outline as shown in the Table Of Contents, and make suggestions about additions or changes. I hope we can pull some of the wisdom of the many discussions on BoatDesign.Net into easily-accessable summaries in the Wiki.
There is a "Discussion" tab at the top of the Wiki pages that goes directly to the discussion thread here in the forums. Hope to see Y'all there!
Portager
03-19-2007, 02:00 AM
Feel free to use anything I post at you see fit.
I took a look at the outline for the Wiki. Looks pretty good.
For true boat controlls, I would look at PC/104 opto isolated input and relay output boards http://www.diamondsystems.com/products/ir104 . I can do amazing things with these.
TerryKing
03-19-2007, 03:54 AM
..(snip)..For true boat controls, I would look at PC/104 opto isolated input and relay output boards http://www.diamondsystems.com/products/ir104 . I can do amazing things with these.
Portager, I would like to add a section at some point about electronic interfaces in general, for those who want to go to that level of customization. I have built systems with the old OPTO-22 and OPTO-MUX components, and although those are still used, I understand there are modern versions that are USB connected. I'm all for optical isolation in any more-complex system.
I haven't used PC/104 components in a design (although one of my kids has.. I Must Be Old :eek: ). Some time could you put together a list of components that would make up an example PC/104 system, along with approximate prices, for the Wiki? And something about operating system options?
It seems to me that there will always be a choice between 'consumer' single-board solutions like Mini-ATX and 'Industrial' multiboard solutions. What do you think?
Marshmat, I'll look at the Vicor stuff more; I have used other DC-DC parts but not theirs. Have you seen any good 12 VDC output solutions that take (Unruly vehicle battery, starting transients, 16V high charge etc) as inputs and supply well-behaved 12VDC output for the more sensitive devices?
Uh-Oh, I must have been hanging around schools too much lately... now I'm giving out HomeWork! :P
Anyone else is invited to drop in...
Portager
03-29-2007, 01:55 AM
TerryKing
Sorry I did not notice this request earlier, I've been very busy getting ready for and flying to a critical design review. Now that that is over I should have a little more free time (actually it would be more accurate to omit "more").
I have used Industrial rack mounted PC's, Little PC's and PC/104 on marine applications. I think PC/104 is probably the best option for most personal boat applications because; they are easy to customize (no EE degree required), compact, rugged and they can be sealed in a COTS container for corrosion control and shock isolation. One thing that many people overlook is shock isolation. We have had many hard drive failures on marine systems with minimal or insufficient shock isolation.
What would help with the component list is some idea of what the use of the system would be. For example would it run a Navigation system which would require an interface to a GPS, a hard drive and possible an external CD/DVD drive? Would it be used for communication and require cell phone modem or satellite link? Would the PC be used to monitor intrusion detection sensors for security while the owner is away, ...
TerryKing
03-29-2007, 04:39 AM
Portager, Thanks for getting involved in this!
Just like Hulls and Propulsion, many people will buy one made by someone else, and some will DIY. In both cases, more understanding of the internals and design considerations is A Good Thing. Appliance Operators won't show up at boatdesign.net.
(Well, first there's the "What we want to / could do with onboard computers)...
then, the choices, one of which is "Multi-purpose Onboard Computers"
My thoughts about how to structure the Wiki relative to specific computer-based systems are, um (Moving Target: I just modified it a little):
---( copy from Wikii )------
# 4 Multi-Purpose Onboard Computers and Interfaces
* 4.1 Commercially Available "Marinized" Computers
* 4.2 DIY Approaches to "Marinized" Computers
o 4.2.1 Marine Environment
* 4.3 Overview of Different Types of DIY Onboard Computer Systems
o 4.3.1 Mini-ATX based Systems
o 4.3.2 PC-104 based Systems
* 4.4 Examples of Possible DIY Onboard Computer Systems
o 4.4.1 Mini-ATX based Systems
o 4.4.2 PC-104 based Systems
---( end )----
Please comment on this or change it! This is a collaborative effort and I don't 'own' it...
I'd like us to first try to do 4.3.1 (probably me) and 4.3.2 (probably you). This would be an introduction to the architecture, form factors and mechanical possibilities. Then the Processor options, Memory, Hard and Flash 'disk' storage, removable storage, network/serial interfaces, video/display options, human interface options, real-world I/O options, etc. Then Operating System options. Then a bit about the kind of onboard software that can be utilized and typical systems as used today. (What did I forget?) Maybe Power is a generic issue. No-- ATX is not used/useable for PC-104 is it? Hmmm..
Later, I'd really like it if we (and others) could detail a specific onboard system they have built, as a working example. That would be the 4.4 section. Based on other stuff I've done, I think it gets confusing when you combine general information and architecture options with a specific system design.
You've done actual onboard systems. We all will benefit from your onboard experiences and shock-mounting concepts. I've done many landlocked industrial systems, and an older land vehicle system. I will build an onboard system starting in May when I get back to the USA. Hopefully others will drop in here with their experiences.
Speaking of that, I think we should start another thread about onboard computers, with references to the Wiki. What do you think??
Portager
03-30-2007, 02:17 PM
I agree we should probably start a new thread for on-board computers.
Here is the beginning of my write-up on PC/104. As you can see there are many alternatives to PC/104, but PC/104 is the main option.
There are two basic approaches to on-board computers. The most common, and cheapest in terns of initial cost, is to use a general purpose computer, generally a laptop, that is carried aboard and set-up on an available horizontal surface. These laptops slide around and maybe drop on the deck until someone decides to tie them down. Then they get shook and exposed to salt air until components start to come loose and/or contacts corrode and reliability becomes unacceptable. At this point, most people go out and purchase a new laptop, probably changing brands thinking that will help. The real problem is consumer grade computers are not designed for the marine operating environment. The best long term solution is to replace the general purpose PC with a rugged PC that is designed for harsh environments and also more expensive but lower cost in the long term. The second approach is an embedded computer that is mounted onboard and protected from the environment. This protection generally includes shock isolation, especially for high speed boats, and sealing it from the corrosive effects of the salt air. It may also include remotely locating the computer to reduce its exposure to temperature extremes, such as mounting it below deck instead of on the fly bridge. In general the embedded PC will be lower cost that a rugged laptop and easier to isolate from the environment.
Embedded PC's are much more common than you realize. Everything from arcade games to vending machines have an embedded PC in them of some form or another. This production volume helps keep cost down. There are many commonly available form factors such as;
Little Board - 5.75 x 8.0 in. single board computer,
ISA "slot boards" - full-length, 13.8 x 4.8 in. and half-length, 7.1 x 4.8 in.,
PC/104 - stacking 3.6 x 3.8 in. single board computers and expansion modules,
PC/104-Plus - PCI bus added to PC/104,
PCI-104 -PC/104+ without the ISA bus connector,
EBX - PC/104-Plus added to Little Board,
EPIC - shrunken EBX,
EPIC Express - EPIC with PCI-express.
However, no format is more widely supported or has more interchangeable expansion modules than the PC/104 and PC/104+ family. The EBX and Epic options have PC/104 expansion and more board area than a PC/104 SBC, so more features can be accommodated on the main board (fewer expansion modules required) and they support PC/104(+) expansion modules. However, the larger main board of EBX and EPIC means the enclosure will have a lower volumetric efficiency. In general little board is used for embedded applications that do not need expansion modules. EBX and EPIC are used mainly when one or two expansion modules are required. If more than two expansion modules are required, then PC/104 is probably the best option. BTW: all generalizations are false including this one.
PC/104
The PC/104 standard was developed by Ampro and the specification was initially released in 1992 http://www.pc104.org/technology/PDF/PC104%20Spec%20v2_5.pdf to provide a compact, high reliability form factor for embedded computer systems see also http://www.pc104.org/technology/reg_info.html. It features 90 by 96 mm (3.550 by 3.775 inches) boards with 104 (64 pins on P1, plus 40 pins on P2) stacking through connectors. The stack through connectors allow the boards to be stacked in parallel layers instead of at right angles, using 15 mm (.6")spacers to form a very small and compact package.
PC/104+
The PC/104+ specification was initially released in February 1997 http://www.pc104.org/technology/PDF/PC104-Plus%20v2.0.pdf and it adds a stack though connector for the higher speed PCI bus http://www.pc104.org/technology/plus_info.html. The PC/104+ cards are fully compatible with PC/104 cards so PC/104+ and PC/104 cards can be combined in a single stack provided the PC/104+ cards are all at one end of the stack. However, you can only use 5 PC/104+ cards in a stack, the host plus 4 PC/104+ expansion modules.
TerryKing
03-30-2007, 04:40 PM
Portager, This is looking good! Let me know when/if you want me to move/format it into the Wiki.. You can keep editing it here for a while if you want..
One question: The term for a rugged PC mounted in a protected place onboard. The term "Embedded" is widely used for microcomputer-based embedded applications these days, and Embedded Systems is a discipline almost of it's own... It might be confused here by some people. Maybe some term including.. mmm.. "protected mount rugged PC" or something??? What do you think??
I'll dig some more into the PC-104 specs...
Portager
03-30-2007, 07:41 PM
According to Wikipedia http://en.wikipedia.org/wiki/Embedded_system
"Embedded system
From Wikipedia, the free encyclopedia
An embedded system is a special-purpose system in which the computer is completely encapsulated by or dedicated to the device or system it controls. Unlike a general-purpose computer, such as a personal computer, an embedded system performs one or a few pre-defined tasks, usually with very specific requirements. Since the system is dedicated to specific tasks, design engineers can optimize it, reducing the size and cost of the product. Embedded systems are often mass-produced, benefiting from economies of scale."
...
"Physically, embedded systems range from portable devices such as digital watches and MP3 players, to large stationary installations like traffic lights, factory controllers, or the systems controlling nuclear power plants."
What I am trying to address is the concept of a computer that is embedded in the boat and dedicated to boat functions so I think the term is used appropriately within the definition. In addition, PC/104 systems are a major player in embedded systems. Doing a search on "PC/104" at www.embedded.com yields 115 returns. Doing the same on "Zigbee" yields 63 hits.
TerryKing
03-31-2007, 04:37 AM
Portager, I can see both sides.. Hmmm...
Assuming a PC-104 system runs a PC Operating system like Win98 or WIN-XP, and therefore the user can install and run new software, and can use the MultiProgramming environment, is it different enough from the "Embedded System" concept in which it is "completely encapsulated by or dedicated to the device or system it controls." that it should have a different 'Label" ??
I guess a PC-104 system could be used to implement a classical Embedded System, running out of ROM or Flash at power-up and unchanged by the user, right? But if it's running a PC O/S maybe it's in a different category?
I just want to reader of this stuff to be clear on what we mean....
What do you think??
TerryKing
03-31-2007, 04:39 AM
Portager, I'm thinking we should move this level of discussion to the "Onboard Computer" discussion thread connected to the Wiki. Agree?
Tim B
03-31-2007, 05:47 AM
ummmm.... Why would you run an MS operating system on an (effectively) embedded system. That would seem to be asking for overhead and instability near seawater. Surely running a Linux kernel would be preferable by far.
Tim B.
TerryKing
03-31-2007, 06:15 AM
Specifically to be able to use advanced, free navigation software like OziExplorer, integrate communications/weather receivers information, to allow a DIY software person to integrate multiple applications in a shipboard system, to allow use of the system at anchor for lots of other available applications. There are a number of high-end available systems that have WIN-XP as the OS. I'm not great microsoft fan, and Linux / Ubuntu may well be a good choice for some boat applications.
A true Embedded System is something that I could write and integrate. But I'd still probably have some else's multitasking kernel. I bet it would be 100's of hours of work, and with the testing I could do I'm not all that sure that it would be more reliable than a very clean, minimized WIN-XP based system.
Portager
03-31-2007, 02:24 PM
TerryKing;
Yes, I agree we should move this discussion. Just tell me where, or provide a link.
You have a good point on the term embedded computer. PC/104 processors can run Win whatever or they can run Win XP embedded, Linux, ... Since most users wouldn't be using an embedded OS using the term embedded computer would be confusing. Maybe we should coin a catchy and descriptive name?
Tim B;
The disadvantage of using any embedded OS is; installation and set-up is too complex for most DIYers, getting support in remote areas could be difficult and in the case of Linux the lack of compatibility testing means interoperability is by guess and by golly.
Win XP embedded (XPe) is a modular version of Win XP and excellent choice for PC/104 Computers. Windows has an application that allows OEM developers to load just the modules that are required for the embedded application. This strips out all the unnecessary components, allowing the system to boot from a flash drive, reducing boot/reboot time and minimizing the potential for conflicts. The problem is configuring XPe requires a $990 application to set it up (a small one time fee for an OEM, but a big added cost for the DIY user) and Microsoft licensing restrictions prevent it from being deployed on to standard PCs.
The dirty little secret of Linux is nobody is paying for compatibility testing (Microsoft doesn't test Win compatibility either, but Windows is so common that most manufacturers do their own compatibility testing at least for the current versions of Windows) and many expansion modules do not include an application programming interface (API) for Linux.
Tim B
04-01-2007, 05:45 AM
If the "DIY" user is building an embedded system, then the chances are that they know what they are doing. Linux may not be familiar, but shouldn't pose too much of a problem to learn (at least the basics). There is also a not inconsiderable support network (if you're on land) and if you have problems at sea, it's unlikely to be a software fault.
The last time I asked a rep for a particular XP based software package to give me a demo, the machine hung and had to be rebooted. That wouldn't give me much faith in using it.
As for Lack of compatibility testing, do you mean for hardware or software? Yes, software often has to be re-compiled, but from a hardware point of view, Linux runs on more chipsets than anything else (ever).
see:
http://www.linux.org/projects/ports.html
It is worth noting that there are now embedded (or at least SBC) systems that come with a hardware-specific Distro from not a lot more than Microsoft's runtime licence!!
I would advise that you read this page carefully...
http://msdn2.microsoft.com/en-us/embedded/aa714410.aspx
Please note, though that information regarding Linux from microsoft is wildly innaccurate. There are a lot of people around who are very afraid of a genuinely open operating system (and they have their reasons), and are very prone to making wild claims extolling the closed-source method (especially in the server market). Scepticism is a good thing, undoubtedly, just don't believe everything you here from the big organisations because almost all of it is propaganda sold as information.
Cheers,
Tim B.
TerryKing
04-01-2007, 05:47 AM
TerryKing;Yes, I agree we should move this discussion. Just tell me where, or provide a link.
OK, this thread will be moved to:
http://www.boatdesign.net/forums/showthread.php?t=16413
(That's the only link I could find....) which is the discussion for "Onboard Computers. I'm not sure the best way to 'move' this. I may just 'copy' it unless I find a better way.
The Wiki section "Onboard Computers" is at:
http://www.boatdesign.net/wiki/Onboard_Computers
NOTE: The "Discussion" tab at the top brings you to the thread above.
TerryKing
04-01-2007, 05:59 AM
OK, I'm trying to "Move" or copy the old thread to continue it here...... hold you nose...
*****************************
----( Well, this WASN'T too great... Thanks, Jeff, for moving it! )------
TerryKing
04-01-2007, 06:04 AM
If the "DIY" user is building an embedded system, then the chances are that they know what they are doing. Linux may not be familiar, but shouldn't pose too much of a problem to learn (at least the basics).
Tim B.
Tim, please continue this over in the "Onboard Computers" Wiki discussion area. You've got a lot to offer to this discussion.
I'd like to discuss how we could help a user build a DIY "More embedded" system than using XP. I like the idea of a more bulletproof system (if that's truly what they end up with).
TerryKing
04-01-2007, 06:22 AM
----( copy )--------
Tim, please continue this over in the "Onboard Computers" Wiki discussion area. You've got a lot to offer to this discussion.
I'd like to discuss how we could help a user build a DIY "More embedded" system than using XP. I like the idea of a more bulletproof system (if that's truly what they end up with).
----( end copy)-----
Tim, I can see this from fourteen different directions, and none of them come with a guarantee of bulletproofness. (The 15th would be the guys I met while at IBM who wrote and tested the code that ran the Lunar Lander !!)
Nothing is perfect, and any sailor who isn't prepared to pull out his backup handheld compass and stashed waterproof chart is foolish.
I have witnessed, or been involved with managing, Jeezum! I bet 1000 software failures in running factories. From the IBM 1800 - System/7 - Series/1 - Industrial AT - Gearbox to assorted PDP-11's - SUN - Motorola - etc etc. EVERY one of them crashed with hardware or software errors!
So, what the heck do we do??
Let's not slam any doors. Let's try to learn as much as possible about the different possibilities, and learn as much from the work and mistakes of others as possible.
The immeasureably cool thing about this to me, is we get to try stuff out on our own and really use it, and bulls*** about it with people who have a clue and who care to spend their time figuring stuff out.
My fantasy is that a year from now several of 'us' will have built different working systems based on different hardware / OS-kernel / software and documented it well enough here so than someone else can pick up where we left off.
------------------------------------------------
The one who dies with the most (Toys, Parts ) or (unpublished software) LOSES! What do you need that I have??
------------------------------------------------
TerryKing
04-01-2007, 06:45 AM
This thread is now at: http://www.boatdesign.net/forums/showthread.php?t=16413
Portager
04-01-2007, 09:54 PM
Tim B;
I don't want to argue with you, so here is an excerpt from http://www.linuxdevices.com/articles/AT6449817972.html that I think makes my point better than I could.
"A few words about Linux on Embedded-PC SBCs
These days, most manufacturers of PC-compatible single board computers claim to support embedded Linux on their products -- either directly, or via third-party relationships with embedded Linux software providers. However, be careful not to get too complacent when the sales rep says "Sure, we support Linux."
In general, Linux support for PC-compatible embedded SBCs tends to be straightforward -- provided: (1) the chipsets used are mainstream and fairly current; and (2) the chipsets have been used in the normal manner. Always ask the SBC vendor what specific versions of Linux they have tested, how they conducted the tests, which interfaces on the SBC were exercised, and what functions are either untested or unsupported.
Specifically, areas to watch out for include . . .
Display controller modes beyond VGA
LCD panel control signals
SCSI
PCMCIA
Onboard solid-state disks
Nonstandard functions like watchdog timers, digital I/O, and analog I/O
Ethernet (in some cases)
Knowing that Linux drivers or in-kernel support exists for the chips used is encouraging, but that's not sufficient. SBC manufacturers often take shortcuts to save money or board space, and in the process may unwittingly sacrifice compatibility. In short: there's no substitute for testing! "
P.S. This whitepaper was written by LinuxDevices.com founder Rick Lehrbaum
Tim B
04-02-2007, 09:57 AM
Maybe I'm too much of an engineer at times, but if I'm investing time and money into a system I want it to work. Not need replacing every 500 miles.
Personally I'd love to use an Acorn A7000 motherboard as the base for a system. Simply because they don't fail. Unfortunately, I don't think many other people would support the decision. So we go to the next-best thing, an ARM chip and Linux. THese guys seem to have the right idea:
http://www.embeddedarm.com/
Of course there are 1001 things that Linux might not support, but Linux does allow you to write the routines yourself without holding certain vital organs to ransom (a la Microsoft).
I would personally always advise caution when considering reliance on a proprietry OS, particularly a closed-source, poorly documented one, which is geared towards word-processing, not development.
Tim B.
TerryKing
04-02-2007, 02:46 PM
Maybe I'm too much of an engineer at times..(snip)...
I would personally always advise caution when considering reliance on a proprietry OS, particularly a closed-source, poorly documented one, which is geared towards word-processing, not development.Tim B.
I find it personally difficult to understand a problem with "Too much of an Engineer": You'd could have a discussion with my wife, however :eek: ...
After designing hardware (since vacuum tubes) and writing code for 33 years, and spending many $100,000 of other people's money on both successful systems and multi-year disasters that never were finished, I have a simple perspective:
There is no one right answer! And especially in software, software development, and systems software. As a guy I once met said, "There is No Silver Bullet". (Frederick Brooks).
It's been a heck of a long time since I wrote ALL the code for a working system of any size. (Well, maybe a small, simple PIC project). We are always dependent on other's work, and that's how it should be. We HAVE to reuse tools humans have built, or stay in the Dark Ages.
Since we're on a philosophical bent (or I am :p ) here's a quote:
MAN IS A TOOL-MAKING ANIMAL. WITHOUT TOOLS, HE IS NOTHING. WITH TOOLS, HE IS EVERYTHING. THOMAS CARLYLE 1795-1881
Pardon the CAPS, but I first entered that quote on a cassette-tape storage system on a 6502 system that I wrote the drivers for, and which had no "case" and so I keep it that way to remind me.
OK, so I'm Old! What's my point??
We all are going to be dependent on other peoples designs and code in any attempt at a modern shipboard computer system. Their system software, their compilers, linkers and utilities. And (shudder) their DRIVERS. What I'm worried about most, after many IBM O/S, DOS(n.n), OS/2, Win3.1, WIN-XP, UBUNTU, etc. the worry is the doggoned drivers! With a protect-mode OS it's pretty hard to really crash a system with code that WE write that runs as an application. But we're dependent on drivers.
So, bluntly, in 2007, I'm more confident in mature WIN-XP drivers from major hardware manufacturers like Intel, VIA, SIS, Radeon etc, than I am in those that are available for Linux or the various "Real-Time" OS systems that might run on applicable hardware. That said, I think there CAN be a stable Linux-based boat system, with careful selection of devices and drivers. And WIN-XP Embedded should be looked at too..
Oh, man, I once wrote a real-time multitasking OS, sort as a learning experience. Ran some stuff with it. I sure would NOT want to be on a boat running it!! I almost forgot about it. Then there was EDX. Spent part of my life debugging errors in it. Then there was WIN3.1 and my group's DSP drivers. I spend months of my life finding errors in that!
Nothing we can do will be perfect. There are many ways and O/S that can work on a shipboard system. There is no one answer.
I'd love it if we (in various collections of 'we') put together systems based on the hardware and software we like, make it work, and get navigation and monitoring software running, and then RUN it for 100's of hours.
THEN we'll have something that we can use, and others can decide to use as an example if they want.
Wow.. wound off again. Sorry for the excess...
Tim B
04-02-2007, 03:14 PM
I tend not to be enough of an accountant. My projects have a tendancy to stay just about in budget (usually. Well, I say usually...) and doing at least a few things that were nice, but not strictly necessary. All the best of British engineering really.
I remember the 6502 processor with a BBC Micro Model B wrapped round it. for it's time that was a damn nice machine.
Tim B.
ps. I know I can't write all the code myself. So I like to start with the most reliable system I can. Maybe my views are skewed from my usage of Linux on the desktop, but try it, I think you'll be impressed.
marshmat
04-02-2007, 04:23 PM
Sorry I'm a little late to the party on this thread. Terry, do feel free to quote me in the Wiki, if you think my advice means anything :D
Have you seen any good 12 VDC output solutions that take (Unruly vehicle battery, starting transients, 16V high charge etc) as inputs and supply well-behaved 12VDC output for the more sensitive devices? I'm not an elec eng type, although I do work closely with them on the solar car. The Vicor DC/DC modules are the heart of our low-voltage power conversion system, which takes battery voltage (120-160 V ish, depending on pack structure and charge state) and gives us 12 and 5 volt taps that are stable enough for microcontrollers (the PIC18F is probably the most common in our setup). Vicor does sell complete ready-to-use modules that would be ideal for an onboard computer. http://vicr.com/products/custom_solutions/edp/ for example, their product range is huge and it shouldn't be too hard to find something that can give you ATX power specs from your main batteries.
Regarding OS.... OK, now this is a hairy topic I know. I wouldn't write off Linux so quickly. Perhaps the biggest difficulty there is there's nothing (at least that I know of) in the way of navigation/charting software for Linux; all of it is Win32 based. Which is bad, IMHO, because my experience with Windows is that you do not trust it with anything important. Let's get some nav software for Linux, shall we? A good thing to pressure the software companies on. I wouldn't even consider the CE or Embedded versions of Windows- at $1k for the development tools and a lot of work to get them configured for your device, it's not worth it.
A big question, that will probably be the main factor in choosing a system, has got to be "What is it going to do?" If your goal is to interface with radar, sonar and chartplotter, you'll be looking down very different lines than if you want to interface with four televisions, HD DVD player, 7.1 channel surround sound, etc. I suppose you could go down the Starship Enterprise route and build one massive honking computer that sails the boat, sets the coffee machine, monitors the engines and shows you Seinfeld reruns.... but then there's the danger of it turning into HAL and shutting down the whole works.
Personally I'm in favour of small, reasonably independent machines, each capable of doing its own task alone, but networked with enough sophistication that I can plot a course from my laptop or check the weather instruments from belowdecks. Redundancy is key.
Portager
04-03-2007, 12:33 AM
Tim B;
As a Systems Engineer I tend to look at the main applications that I want to run and the drivers for the expansion modules that I can't live without and see what operating systems they require or support.
In this case I believe the main application that most boats want / need is an Electronic Chart Display and Information System (ECDIS). If the DIY boater can build his own chart plotter that uses free NOAA charts and is reasonably reliable then he can forgo purchasing a commercial chart platter and buying proprietary charts. This has the potential to save a lot of money and make all this effort worth the bother. I have reviewed all the ECDIS applications under "Systems that use ENCs" at http://chartmaker.ncd.noaa.gov/mcd/enc/resource.htm and I found none that run under Linux. In fact with the exception of MacENC(TM) they all require some version of Windows.
I think your opinion of Windows XP is unfounded. I use Windows XP everyday and I find it very stable. I hibernate often because I don't want to take the time to shut-down and restart when I carry my laptop from meeting to meeting. Despite this I go several weeks between restarts and crashes occur once or twice a year. I plan to run Windows XP (possible embedded) and Rose Point Coastal Explorer.
TerryKing
04-03-2007, 05:27 AM
OK, I think we're getting somewhere! The point was made that we should talk about what we want an onboard computer to DO. Let's try to prioritize and categorize these things.
The initial Wiki layout has these broad categories:
*Navigation Systems
*Onboard Systems Monitoring and Control
*Leisure Time and At-Anchor Activities
Please take a look at that section and add to/modify it!
Now, what about Priorities???
Any modern boat will have more than one processor of some type executing code. Here's the way I think about it:
----( ABSOLUTE Highest Reliability and Availability )----
The old BoyScout Silva compass on it's cord around my neck and under my shirt...
----( Highest Reliability and Availability )----
GPS running it's own Engine and Firmware, with it's own battery backup, and display readable at the Helm.
Onboard Alarms: Fire, Gases, Bilge Flooding with it's own battery backup, audible and visible alarms.
Dedicated Engine Gauges and Alarms visible/audible at the helm.
----( High Reliability and Availability )----
Electronic Chart Display and Information System (ECDIS). Moving-Chart WhereAmI.
Depth Sensors/Recorders/Alarms
Radar/Collision Avoidance Systems
VHF/HF Radios and antenna systems
----( Medium Reliability and Availability )----
GPS / Compass interface: up/download waypoints, maps, tracks
Chart/Recorders
Monitoring Systems for:
* Propulsion systems
* Onboard power systems
* Heating/cooling
* Lighting
* Water/sanitation systems
* Environmental and weather instruments
* Safety/Security Monitoring: Intrusion, Bilge Flooding, Heat/Fire, Dangerous Gases, Anchor Drag
* Communications thru Email and WWW
----( Optional Availability )----
* MultiMedia: Audio/Music(MP3), DVD/Movie playback
* Writing, Photo viewing and editing, Log-Keeping
* Other typical personal-computer activities
So, if we had to make decisions about how to collect these needs and assign them to one or more onboard computer systems, what would we do??
If I had to choose right now, I'd do something like:
1. Standalone dedicated stuff for "HIGHEST"
2. Stripped-down X86 WIN-XP (possibly Embedded) system for "HIGH"
3. Separate X86 WIN-XP for "MEDIUM" and "OPTIONAL"
What do you think?? What other possibilities are there??
Crag Cay
04-03-2007, 05:42 AM
I think you need to look at computer usage pattern of sailors in different situations. The demands of coastal sailors are going to be different from liveaboards, and people cruising in high latitudes may have different demands to those bobbing along in the trades.
Many of the questionaires conducted after the ARC and other similar rallies have thrown some light on this, at least for their type of sailing.
I'm been amazed that this discussion has got so far without deciding what USE the computer will have to perform. For me, I would only consider one if it could add value beyond what was available in stand alone instrument systems. A need for a degree of redundancy would mean it would never replace core functions, only suppliment them.
Therefore my requirement would be to run MaxSea with its necessary interface to an Iridium Sat phone, which would also allow for emails. Now if this requirement enabled me to have a choice of Windows or Linux, I would have to think about it, but the reality is that there is no choice, so therefore little point in discussing it further. Fiddling with tools that have no use is what sad old men do in their sheds. For the rest of us we just want a means to an end. In this case, a better sailing experience.
Tim B
04-03-2007, 01:27 PM
Contrary to popular opinion, you do have a choice. Just because most people do it one way, doesn't mean that a different system is any worse. I've come across the excuse "That's how we've always done it" far too many times in the last few years (in all walks of life), and it's quite amusing to see people's reaction when you prove that a newer method is better than the one their using.
I couldn't care less if no-one started using Linux because of me. The real message (from many "minority" groups) is "PLEASE ENGAGE BRAIN AND START BEING RESPONSIBLE".
As for usage, I see no problem in a rock solid system that will run power control and navigation software, and also give you web-access etc.
I see no problem in developing something because you want to see if you can. It's just called learning, so what if there's no great purpose in it. If everything you do is a means to an end, then it's a bit of a sad life, where everything has function and nothing has form or elegance about it.
One should remember, that no computer-based system on-board a yacht is actually ever that critical. You'd be surprised what you can do with binoculars, compass and a few lengths of rope.
Thoughts of a Philosophical Nature - Tim B.
Crag Cay
04-03-2007, 02:28 PM
"........a rock solid system that will run power control and navigation software, and also give you web-access etc......."
Can you give us a list of all the charting packages, weather routing programs and Sat Com bundles that are available for Linux so I can check them out?
Cheers.
Tim B
04-03-2007, 05:35 PM
An interesting article is this one:
http://www.expresscomputeronline.com/20070402/technology01.shtml
The following is amusing for the comments the reactions get:
http://www.usatoday.com/tech/news/2002/05/30/linux-government.htm
GPS Drive is the closest thing to a Linux Chart plotter at present:
http://www.gpsdrive.cc/
Not exactly weather - routing, but quite impressive...
http://www.wviewweather.com/
And this is undeniably weather plotting for linux (and it looks VERY impressive)
http://www.xaxero.com/gribplot.htm
I often find that Chart plotters don't ever quite do what I want them to. It is quite probable that I will end up writing my own chart-plotter software.
Sat com and Web connection can be handled in the Linux Network setup, Either on Serial as a modem, or ethernet. GPRS is also supported as are various other protocols.
So, It's around. And the more people who want it, the more likely it is that someone will write something.
Tim B.
marshmat
04-04-2007, 01:55 PM
So it seems like there is a fair bit of interest in Linux-based ship software, even if the developers haven't caught on yet.
Xaxaero's weather software does look impressive indeed. Worth looking into.
It is quite probable that I will end up writing my own chart-plotter software.
Just to put the question out there... is there much interest here in the development of an open-source (GNU GPL or LGPL) software package for GPS/chartplotting on Linux (or, better yet, that compiles on any OS)? Maybe something that could later expand to interface with sonar, radar, etc?
I don't have the programming skills to pull something like this off, but if enough people who do are interested, it might be an interesting project.
Portager
04-05-2007, 12:26 AM
TerryKing;
I agree with your view of applications and I would concentrate on the "High Reliability and Availability" applications with the on-board computer.
In addition I would add interfaces to:
Autopilot,
Anemometers (wind speed & direction, air temperature and barometric pressure),
Water velocity and temperature
Automated Identification System (AIS) transponder
GPS / satellite compass
Network connectivity to download map updated and notice to mariners
Engine monitoring and data logging
With the exception of engine monitoring and data logging, Rose Point Coastal Explorer provides all these features with the easiest user interface and a reasonable cost. It has also proven to be very stable over many hours of operation.
Tim B and marshmat;
Since the ECDIS application is required to be a high reliability and availability, I won't live long enough to develop my own and I'm not interested in using a home grown ECDIS until it is proven reliable.
For my money, I'll be running Windows XPe until I'm convinced Vista is better. Linux isn't even on the list of candidates..
Portager
04-05-2007, 12:30 AM
I have generated some tables in Excel that I would like to add to the Wiki, but I can't figure out how to do tables.
anybody know how to do that?
Honestly, I find the wiki table syntax (http://meta.wikimedia.org/wiki/Help:Table) ok for creating simple tables from scratch, but not very workable for converting existing data from an existing table.
One route is to export the excel table as html -- the wiki will accept basic table, tr, and td tags (http://en.wikipedia.org/wiki/Table_%28HTML%29#Tables). This is pretty easy if you can export a clean html version... the look is fairly basic though.
For the time being, the easiest might be to simply upload the xls file (http://www.boatdesign.net/wiki/Special:Upload) and then link it from the wiki article. With the xls viewer free, this is pretty universal.
(in theory it should be possible to embed a sortable table in mediawiki (http://meta.wikimedia.org/wiki/Help:Sorting), but this gets complicated and seems to require quite a bit of work to make work.)
Tim B
04-06-2007, 04:35 AM
Just for fun, here are some fairly preliminary screen-shots of a GPS track analysis tool I've been working on for some time (on and off). I'm not sure what the future of this software will be, but I will (eventually) write something similar that will do real-time GPS navitagion.
The area shown is the Solent with summertime racing marks. The track shown was collected in Cowes Week 2006.
Tim B.
Tim B
04-06-2007, 04:39 AM
If anyone has any data on any of the electronic chart formats, it would be helpful to put add a chart to the above software.
Cheers,
Tim B.
TerryKing
05-25-2007, 09:37 PM
Tim, your software looks interesting. Kind of a from-the-side view, not top-down, is that right??
I don't know much, but Oziexplorer seems to be pretty open info and lots of people have written add-ons. I've used it a lot on land and sea and it's been great.. And low-cost, use your own charts...
Tim B
05-26-2007, 06:39 AM
No, it displays a standard map-type view with North upwards. The options at the side were just a convenient place to put them.
Tim B.
View Full Version : Onboard Computers