Building an Open Source Boat with Raspberry Pi & NMEA 2000 - Part IV | OpenPlotter, Signal K, KIP

แชร์
ฝัง
  • เผยแพร่เมื่อ 20 ส.ค. 2024

ความคิดเห็น • 77

  • @DeadlyDragon_
    @DeadlyDragon_ หลายเดือนก่อน +62

    A quick tip from a network engineer. Document every single connection in visio or an equivalent software. Print that out and laminate it. Document all your IP addresses you use and be sure everything is statically assigned.
    Make sure you have redundancy factored in. Don't just build 1 SD card build 2 so you have a backup in case the primary fails. label both ends of every cable so you know where it is going to / where it is coming from.
    These small things will save you immense headaches in the future.

    • @TheFloridaCaptain
      @TheFloridaCaptain  หลายเดือนก่อน +3

      Great idea! Thank you!

    • @CaymanIslandsCatWalks
      @CaymanIslandsCatWalks หลายเดือนก่อน +3

      Multiple redundancies is ideal.

    • @DeadlyDragon_
      @DeadlyDragon_ หลายเดือนก่อน +2

      @@CaymanIslandsCatWalks 100% especially when it comes to being out on the water. My parents are retired coast guard and I myself was a network engineer as a contractor for the USCG for a few years. Redundancy is critical to your safety :)

    • @CaymanIslandsCatWalks
      @CaymanIslandsCatWalks หลายเดือนก่อน

      @@DeadlyDragon_ I wrote my comment before he said that he not even near a boat yet.
      Solid tips from you!

  • @SAgaming19
    @SAgaming19 10 วันที่ผ่านมา +6

    Use the Pi5 with NVMe drive. I put a TB system together. Your choke point is the SD card. Electrical engineer here. And have this system running on my boat. Also, find VNC very slow. Good for updating the settings. I run HDMI over ethernet directly to the Pi from the helm with touch. 15" sunlight readable and waterproof screen.

    • @TheFloridaCaptain
      @TheFloridaCaptain  10 วันที่ผ่านมา

      As an engineer how would you do the box? Sealed and no fans or the way I did it?

    • @macgyver5108
      @macgyver5108 8 วันที่ผ่านมา

      @@TheFloridaCaptain HEAT is the enemy of Pi's since the Pi 3. They get hot in a hurry and the CPU throttles it's top speed to cope, probably why you were crashing a lot? I've tried all sorts of bigger heatsinks so I can run faster than stock CPU clock speeds. I'd say the least painful route to get around being inside a sealed box is if you water-cooled the Pi with a small external radiator. There's several TH-cam videos that show how. The big problem I'd imagine is the Pi hat probably blocks off most easy access to the CPU to use bigger heatsinks or even run some heat pipes from the CPU outside the box to an external heatsink? If you modeled the design off of passive cooled PC towers you could put the whole thing in an aluminum box and run a copper tube from the CPU to the aluminum box, using it as a big heatsink. Just need CPU thermal grease or pads making good contact on each end of the tube. Could solder on little flat copper sheeting pads on at least the CPU side.

  • @Andysanche
    @Andysanche หลายเดือนก่อน +20

    One little tip on the newer Pi's from my experience using them as embedded monitoring systems, load your OS onto a really good usb3.x stick (or even better a proper nvme/pci drive) as opposed to an sd. I have had an almost 100% failure on PI's using sd cards (from all different manufactures and quality levels) when putting them into a real production environment. most if not all SD cards just are not designed for the constant read and write cycles that a main hard drive on a pc experiences. I know you had mentioned you were likely going to be using a different PC on the final system but might help a little with some of the headaches.

    • @Shaarawi32
      @Shaarawi32 หลายเดือนก่อน +1

      I've been binge watching the series and that was the first thing that caught my eye. I'd go as far as to say skip usb/nvme and go with sata ssd. You'll hit a bottleneck with nvme drives. But any of those options will be better than sticking with the sd card

    • @TheFloridaCaptain
      @TheFloridaCaptain  หลายเดือนก่อน +1

      I appreciate these comments. I'm obviously in an ideal environment (house, with AC, etc). This will be in a pilothouse 50-60 ft boat. While it won't get wet, the rest of the environment will be hard on the electronics. So how does a SATA SSD connect to the Pi?

    • @AlexTacescu
      @AlexTacescu หลายเดือนก่อน +4

      With a Pi 5, I would go for an nvme sad simply to reduce the requirement of a USB port. They make some super sleek nvme drives that attach to the bottom of the pi and avoiding much added thickness

    • @TheFloridaCaptain
      @TheFloridaCaptain  หลายเดือนก่อน +1

      Very interesting, thanks for sharing!

    • @HXF-pv1ni
      @HXF-pv1ni 23 วันที่ผ่านมา +1

      To my knowledge there are some enterprise SD cards which can take this amount of data being constantly transferred, but they are more expensive (~1,80€ per GB) and not avialable such a high capacity. So, if doable, an SSD is often the smarter choice.

  • @billlindner
    @billlindner หลายเดือนก่อน +6

    You may want to run your box cooling fans on a relay using a bme280 (temp, press, humidity) and node red software to minimize power consumption. Since the bme280 is i2c, you could also monitor the box temp in KIP.

    • @TheFloridaCaptain
      @TheFloridaCaptain  หลายเดือนก่อน +1

      Great idea. I have a bme280 laying around too.

  • @svcyclops
    @svcyclops 29 วันที่ผ่านมา +2

    Very cool. Congrats. Sometimes playing with boat stuff is more fun than boating

    • @TheFloridaCaptain
      @TheFloridaCaptain  29 วันที่ผ่านมา +1

      Ha, I know the feeling. I like both (boating with projects) so long as its not unexpectedly upside down in an engine room underway!

  • @L0wPressure
    @L0wPressure หลายเดือนก่อน

    Oh, man, that's such a joy to see that you can do such things yourself and on a limited budget nowadays :)

    • @TheFloridaCaptain
      @TheFloridaCaptain  หลายเดือนก่อน +1

      It sure is! Thanks for the comment.

  • @Jessassin
    @Jessassin หลายเดือนก่อน +1

    This is a really cool project! Excited to see where you take it.
    As someone else pointed out, the SD card on your pi is the single most likely thing to fail. I would strongly recommend you use an SSD instead of an SD card if you can help it. If you must use an SD card, invest in a "high endurance" card. Several brands make them - most will be branded as "high endurance", "industrial", or "edge". Still, an SSD is definitely the way to go IMO.
    Edit: I believe the pi 5 has a dedicated PCIE interface, that you can use to directly attach a PCIE (NVME) SSD. If this were my project, I would do exactly this.

    • @TheFloridaCaptain
      @TheFloridaCaptain  หลายเดือนก่อน

      I think this is a good idea (and also moving to Pi 5).

  • @davethemmp
    @davethemmp หลายเดือนก่อน

    Great video, love the board, I used to do this at work, I am an industrial electrician, I used to build panels with AC drives PLC’s and computers controlling industrial manufacturing machines, same process as yours then move to an enclosure when fully functional
    Looks like we are on the same wave length with our projects I now monitor pi cpu temp to determine box cooling keep up the great videos I’m learning from you 😂

    • @TheFloridaCaptain
      @TheFloridaCaptain  หลายเดือนก่อน

      Thanks for sharing!

    • @TheFloridaCaptain
      @TheFloridaCaptain  หลายเดือนก่อน

      Although, I do wonder if I could do this with heat shrinks and no fans and thus, a truly sealed box

    • @DeadlyDragon_
      @DeadlyDragon_ หลายเดือนก่อน

      @@TheFloridaCaptain the Pis are low heat but depending on the application running on them they could require some cooling.

    • @Lagittaja
      @Lagittaja 12 วันที่ผ่านมา

      @TheFloridaCaptain With a sealed enclosure, technically adding a heatsink to the Pi will accelerate how fast the inside air of the enclosure heats up.
      Without a heatsink, the heat moves to the surrounding air inefficiently (air is a poor conductor of heat) and the heat will inefficiently move from the air, thru the enclosure inefficiently (plastics are almost as poor conductors of heat) to the outside air.
      Eventually the air temp inside the enclosure will reach an equilibrium as the air can only move a certain amount of heat and the enclosure can only dissipate a certain amount of heat in a given amount of time.
      If you add a heatsink to the Pi, you will increase the surface area the heat source has. Sure, the Pi's temperature will momentarily drop as the heatsink sinks the heat from the Pi to itself.
      But eventually the heatsink will have sunk as much heat as it can and the Pi's temperature will increase.
      Because you increase the surface area of the heat source, it can move it's heat to the surrounding air faster.
      If you have a fan on the heatsink, you will further increase the transfer rate of heat to the surrounding air.
      Air thermal conductivity ~0.025W/m*k
      ABS (enclosure material) ~0.130W/m*k
      Acrylic (presumably lid material) ~0.170W/m*k
      Aluminium 237W/m*k
      Steel ~45W/m*k
      Stainless (316) ~16W/m*k
      Then there's obviously the thickness of the material to consider to get a true idea of heat transfer but the above is just for reference.
      Feel free to geek out with formulas and calculations if you want.
      But what I'm thinking is.. With just the Pi, you're dealing with only a few funny little watts of heat. That's pretty insignificant.
      Place the heat producing components to the bottom of the enclosure so you utilize the natural convection currents to mix the air inside the enclosure. By the air mixing, you probably increase the heat flow from the inside of the enclosure to the outside. This way, the air isn't stagnant and just sit against the sides of the enclosure doing nothing. Warmer air at the top transfers it's heat to the enclosure and the enclosure to the outside air. The air get's a little colder and eventually sinks to the bottom. Not a very efficient process but it will move some heat.
      But the effect is very minor. Sure, hot air rises but even a wimpy fan will easily overpower the convection current.
      So the next step on the path of escalation is to add a fan blowing upwards to force the air to move and mix and help increase the heat transfer. Maybe place it on the inside edge of the enclosure. So it kind of creates a spin in the air..
      If that is not enough, change the material of the enclosure to metal.
      And if we're being pedantic, the paint on steel enclosures surface will limit the transfer of heat (conductivity etc.) but the layer is thin and like I said above, you need to consider the thickness as well as the conductivity.
      The next step after that is to mount a heatsink to the inside surface of the metal enclosure and have a fan blow on it. Preferably with thermal paste or thermal glue/epoxy under the heatsink. Or a phase change thermal pad if you're fancy (Honeywell PTM7950).
      You might also look into conformal coating or maybe even encapsulating your electronics.
      To start you can search for "electrolube conformal coatings vs encapsulation". Or "parylene Best Conformal Coating for Moisture and Chemical Protection". Even if you have a sealed enclosure, conformal coating the boards probably doesn't hurt. Just make sure you've plugged in everything you intend to plug in before coating.
      Regarding fans, purchase high quality fans.
      Noctua is a popular choice. And if you end up with a bigger enclosure, their IndustrialPPC lineup (120mm/140mm) have fans with IP52 or IP67 rating.
      But all Noctua fans have a 6 year warranty. And their regular lineup has the same quality bearing as the industrial lineup. So if you don't need the IP rating or you need a smaller fan (40/60/80/92mm), look at the regular lineup. Maybe contact them and ask what they think about your use case. They have an awesome customer support. (perhaps even hint about this project, might get a care package)
      If noise is an issue, don't look at the voltage. At some point you replaced a 12V fan with a 5V one. Just because the voltage is lower doesn't mean it's any quieter.
      I would advise you to look in to PWM control (with a PWM fan) to adjust the speed. Or just lower the voltage of the fan to reduce the speed. There are potentiometer fan controllers around or you could just add a resistor in series with the fan to reduce the speed. You can calculate the value of the resistor with online calculators or just try what works. For example a 12V fan that draws 0.2A and you want to it to only spin at 7V, something in the neighbourhood of 40-45ohms should get you there.
      If you can't make it (PWM control) happen with the Pi, look for a small control board to do that. Search for something like "dc 12v pwm fan temperature control".
      I have a little control board like that, which cost 2€, in my AV cabinet controlling a 12V computer fan acting as an exhaust. Annoying board to configure with it's single button interface and the manual is really not helpful but in the end it was worth it. Other variants of the board do have dip switches though if you prefer that.
      Or you could buy a fan that already has temperature control. For example the TC lineup from Artic, the smallest fan is 80mm. Around 500rpm until 32*C and ramps to 2000rpm at 38*C so pretty aggressive curve but you don't need to configure anything. They have a long 6 year warranty as well.

  • @thingsmymacdoes
    @thingsmymacdoes 21 วันที่ผ่านมา

    Since you talked about engine sensors and gauges. The boat you will eventually get will very likely have sensors and engine control panels already installed. If you want that data somewhere else you will need dedicated sensors for that on the engine side. You cant piggyback of the existing ones or your data will be off. Analog to Digital conversion can be done in software or with a dedicated Analog to Digital card. Both instances will need calibrating. Temps and pressures are best done by comparing values with gauges you screw into the engine block and in the cooling system. The old fashioned ones with a needle. Whats more importantt than extreme precision is to get good baseline values for all measurements and to plot those together with the actual values. Pro Tip : get a pressure sensor and install it right after the seawater intake pump. On the pressure side. It will warn you of about a lack of cooling well before the engine overheats.

    • @TheFloridaCaptain
      @TheFloridaCaptain  20 วันที่ผ่านมา

      Great advice and I appreciate you taking the time. I know I’ll have to adapt to the engines I get. I like the idea of having additional digital sensors in locations where sensors aren’t now. Just need the boat!

    • @thingsmymacdoes
      @thingsmymacdoes 20 วันที่ผ่านมา

      @@TheFloridaCaptain If you like sensordata I can suggest high and low level sensors for fuel tanks and coolant expansion tank. Both are mandatory in commercial shipping. Low fuel is obvious and high fuel against overfilling. Low coolant can indicate leaks and high coolant can indicate overheating.

    • @TheFloridaCaptain
      @TheFloridaCaptain  20 วันที่ผ่านมา +1

      I’m probably going to pick your brain soon! I’ll look up sensordata

    • @thingsmymacdoes
      @thingsmymacdoes 20 วันที่ผ่านมา

      @@TheFloridaCaptain sure thing

  • @Maaniic
    @Maaniic หลายเดือนก่อน +4

    Running VNC probably also consumes alot of resources from the PI, better connect directly to a monitor and if this is going run over the network in production run it headless(no ui/displayserver installed) and if possible a webui on another PC (prob need to configure alot over SSH if you can do that).

    • @TheFloridaCaptain
      @TheFloridaCaptain  หลายเดือนก่อน

      Good idea!

    • @gjheydon
      @gjheydon หลายเดือนก่อน +1

      I would not use x on a raspberry pi. I would run on things you can run on a web browser. If there are things you need to run in a gui then run it on a windows or a Linux desktop.

  • @jaiume
    @jaiume หลายเดือนก่อน

    I do a lot of network installations on island homes where there is a lot of sea blast, so similar environment to a boat.
    If you can get away with not bringing outside air into your enclosures for cooling, it would be better to run things a bit hotter that bringing that salty air into your enclosure.
    I have a lot of PoE network switches in sealed enclosures, and they run pretty hot because of the lack of external cooling, but I have found that actually is still better than bringing in external air. Even though you are exhausting air, it will still be sucking in air from somewhere.
    If you do need some active cooling of the enclosure, it might be better to move air around the inside of enclosure and move some of the air past a heatsink that is coupled to the outside, but doesn't let any air in.

    • @TheFloridaCaptain
      @TheFloridaCaptain  หลายเดือนก่อน +1

      I think about the fans and holes a lot. I’ll likely experiment with heat sinks before an actual install.

    • @thingsmymacdoes
      @thingsmymacdoes 21 วันที่ผ่านมา

      @@TheFloridaCaptain I agree with all the above. Micro Sd cards fail way too often for this application. Don't use ventilators to avoid water ingress. Try the biggest heatsink you can get instead. Think about how you bring cables into your boxes. Never from the top and always use cable glands. Think about a robust power supply. On the barges I work on we use 12 Volt DC screens and 12V DC Windows pc's for the software. I'm not sure what the Raspberry Pi is doing there to be honest. Convert a small windows pc to linux and add a IO card and you can drop the RPI altogether. It's the weak link in your system. Just my 3 cents.

  • @nicklasgrahn
    @nicklasgrahn 20 วันที่ผ่านมา

    So cool video-series. I have a boat whit two old ad41b. I wold love to have engine data in digital chape. And fuel consumption. But I heard it's difficult whit diesel.
    Thanks for sharing. And yes I start following you 👍

    • @TheFloridaCaptain
      @TheFloridaCaptain  20 วันที่ผ่านมา +1

      I’m working on buying a 20 year old twin diesel Pilothouse. So someday, I’m probably dealing with your exact situation. Stay tuned!

  • @georgef7754
    @georgef7754 หลายเดือนก่อน +4

    Do you have 4.7k pullup resistors on the ds18b20 temp sensors? If not you will see junk data.

    • @TheFloridaCaptain
      @TheFloridaCaptain  หลายเดือนก่อน +1

      I did not. I’ll check this out.

  • @ScooterBean
    @ScooterBean 21 วันที่ผ่านมา

    If I were you. Id pivot from the Rpi and use an x86 board that has gpio. Like the Latte Panda for instance. Which also already has a fan is going to solve many of the issues your are facing and will continue to face with the rpi. Like CPU performance, overheating, storage issues, etc.

    • @TheFloridaCaptain
      @TheFloridaCaptain  20 วันที่ผ่านมา

      I might do this. Let’s see how it goes with a Pi 5 too.

  • @sidneyking11
    @sidneyking11 หลายเดือนก่อน

    Tip: Sdcard have a slow read write performance that could be the cause of it crashing. You might want to consider using a ssd drive instead. You can get a 512gb ssd cheaply these days. Also Sdcard tends to go bad easily.

    • @TheFloridaCaptain
      @TheFloridaCaptain  หลายเดือนก่อน

      Thanks for the advice

    • @ChrisS-oo6fl
      @ChrisS-oo6fl 27 วันที่ผ่านมา

      Ya and a small PC or thin server rather then the PI. Better, cheaper, $40 and customizable. There’s zero need for the IO in this project of done right.

  • @dvires4368
    @dvires4368 17 วันที่ผ่านมา

    You should have used an actual rugged computer. Onlogic is a leader in this world.

    • @TheFloridaCaptain
      @TheFloridaCaptain  16 วันที่ผ่านมา

      I might one day. Part of the experiment was seeing how low I could keep the cost. No doubt I’ll have some failures (on land) and improve some things.

  • @Miguemely101
    @Miguemely101 25 วันที่ผ่านมา

    Not sure how I came across this video (probably doesn't help that I'm friends with @DeadlyDragon_) but as a fellow Floridian who does IT for a living, I love this project. I've always had fun with OpenCPN and a cellular modem when on friends boats.
    Also, I'm jealous of your test board with all the NEMA connections and all the labeling. Keeps making me want a boat...

  • @ChrisS-oo6fl
    @ChrisS-oo6fl 27 วันที่ผ่านมา

    Agin just use Honme assistant as the core to control and monitor all the systems. Reinventing the wheel but doing it worse . Most other open sourced tools you need can be integrated easily enough.

    • @TheFloridaCaptain
      @TheFloridaCaptain  27 วันที่ผ่านมา

      I’m going to look at Home Assistant next so expect a video. But, I do think I need SignalK (though I could be wrong!)

    • @Miguemely101
      @Miguemely101 25 วันที่ผ่านมา +1

      I mean... Home Assistant is great and all... but I feel like something more dedicated to Marine-ish applications would be better fitting (eliminate variables, latency, etc when it comes to processing real-time data)

    • @TheFloridaCaptain
      @TheFloridaCaptain  25 วันที่ผ่านมา +1

      I’m thinking about HA for non critical systems. House lights etc. future vid!

    • @PtJudeRI
      @PtJudeRI 7 วันที่ผ่านมา

      @@TheFloridaCaptain HA with Zigbee sensors has been great on my boat this season. Agreed- non critical its a great tool. Im using BBN as a secondary system backing up my Furuno system.

  • @moimeme3468
    @moimeme3468 2 วันที่ผ่านมา

    Hi, do you have a list somewhere with what you use and where you bought it? like the waterproof boxes, and especially the pi power . thanks a lot

    • @TheFloridaCaptain
      @TheFloridaCaptain  2 วันที่ผ่านมา +1

      I need to do better about links to my build lists. In the meantime, here's the two you requested!
      SunFounder PiPower Raspberry Pi UPS Power Supply
      amzn.to/4fTClg2
      TICONN Waterproof Electrical Junction Box IP67 ABS Plastic Enclosure with Hinged Cover with Mounting Plate, Wall Brackets, Cable Glands (Clear, 8.7"x6.7"x4.3")
      amzn.to/4dQcGmi

  • @seebradrun
    @seebradrun หลายเดือนก่อน

    Cool!

  • @trevsweb
    @trevsweb 2 วันที่ผ่านมา

    dunno if home assistant works with these systems. as it would help with notifications/automations and camera setup

    • @TheFloridaCaptain
      @TheFloridaCaptain  2 วันที่ผ่านมา

      I’m looking at Home Assistant soon!

  • @user-jn4ey5sj2c
    @user-jn4ey5sj2c หลายเดือนก่อน

    I don’t think the whaler needs this lol😮

    • @TheFloridaCaptain
      @TheFloridaCaptain  หลายเดือนก่อน

      No, the Whaler needs a worthy mothership!

    • @user-jn4ey5sj2c
      @user-jn4ey5sj2c หลายเดือนก่อน

      @@TheFloridaCaptain That’s is very true make her proud

  • @Cerv3ra
    @Cerv3ra หลายเดือนก่อน

    Are you doing fuzz testing?

    • @TheFloridaCaptain
      @TheFloridaCaptain  หลายเดือนก่อน

      As in testing for police nearby? ;). Tell me more!

  • @alexd7466
    @alexd7466 หลายเดือนก่อน

    everything wireless would be so much easier...

    • @TheFloridaCaptain
      @TheFloridaCaptain  หลายเดือนก่อน +1

      Easier yes and there may be times when I’ll go that route but I prefer the reliability of a hard line.