Welkom  

   

Mijn Menu  

   

What's Up  

Geen evenementen
   

Wedstrijd  

Geen evenementen
   
   
   
   
   
   
   
   
   
   
   
   
   
   
Welkom, Gasten
De mogelijkheden om zelf te knutselen/ontwikkelen met de nieuwste generatie mini-PC's is eindeloos. Omdat er diverse fraaie initiatieven lopen die best wat eigen plek behoeven, bundelen we onze kennis in deze categorie.

Onderwerp: Raspberry Pi performance box

Raspberry Pi performance box 01 jan 2016 17:53 #693534

Geen schokkend nieuws maar gisteren wél uit een impasse betreft connectivity geraakt.

Software is al even af (nog niet mee gevaren overigens) en haalde de NMEA0183 data (voorlopig) binnen via de TCP/IP server in de plotter. Enige "to do" was deze zelfde data niet met 1 Hz maar >10 Hz in "Polarplot" te krijgen via het websocket protocol naar de webserver (óók in de plotter). Zoals de hieronder weergegeven "Tier 2".



Als taal/IDE had ik voor Free Pascal/Lazarus gekozen vanwege het beetje ervaring wat ik daarmee had. Als ik ook nog een moderne taal (Python zou voor de hand liggen) zou moeten leren zou het lastig zijn om te concentreren op de inhoud, was mijn gedachte.

Die laatste stap heeft voor nogal wat ergernis, verspilde tijd en gedoe gezorgd. Free Pascal zou vrijwel compatibel moeten zijn met Delphi, waarbij ik de daarvoor bestaande libraries zou kunnen gebruiken. De angel zit in het woordje "vrijwel". Juist op dit webconnectivity gebied loopt deze taal behoorlijk achter; enige bruikbare zijn tyische open-source dingen die in Delphi "vrijwel" werken, maar voor Free Pascal een soort status "voor eigen risico" hebben. Anyway veel conflicten tussen tientallen compiler opties (zo'n command-line ding wat door Lazarus aangeroepen wordt), versie conflicten tussen voorgecompileerde bibliotheken en andere bibliotheken waar de websockets weer op gebouwd zijn. Uiteindelijk zelfs maar een source gekocht en een week later weer vloekend gedelete.

Via een HTML pagina met wat Javascript werkt de websocket verbinding gewoon notabene - voor m'n gevoel was ik er bijna, maar $@#^%# als die laatste stap dan niet lukt...

Een simpele search naar websockets voor Javascript of Python levert wél honderden hits op. Niet toevallig natuurlijk. Hmmm, maar helemaal opnieuw beginnen of in z'n geheel proberen over te zetten? Neeeh!

Probleem is opgelost door een kleine Javascript console applicatie te schrijven, een soort helper-taak die met NODE.JS gestart wordt. Deze taak heeft een soort proxy functie, maar ook weer niet helemaal. Taak:
  • Is een TCP server waar Polarplot client van is;
  • Is een websocket client van de webserver in GoFree;
  • Stuurt eenmalig een "subscribe request" naar de webserver voor de data die ik nodig heb;
  • Webserver pushed deze data real-time naar de helper-taak;
  • Helper taak parsed de ontvangen JSON strings en pushed de metingen naar de TCP client (Polarplot).
Op deze manier heb ik Polarplot nauwelijks hoeven aanpassen (er komt nu geen NMEA0183 binnen maar een eigen variant) en krijg toch voor mekaar wat ik wil.

Nog niet aan boord getest, wel met on-line websocket "echo" servers waar naartoe ik de te ontvangen JSON strings stuur: deze komen dan weer terug op dezelfde manier zoals GoFree dat zal doen...

Voor wie een Navico/B&G/Simrad + GoFree heeft en hier iets mee wil doen: script is beschikbaar per PB.
Laatst bewerkt: 01 jan 2016 18:13 door Nachtvlinder.
Alleen ingelogde leden kunnen reageren.

Raspberry Pi performance box 07 jan 2016 16:25 #695421

Hard op weg naar een maand verlof, waarin er eindelijk getest kan gaan worden met snelle data.

Neem maar even aan dat het allemaal gaat communiceren zoals verwacht. Volgende stap gaat dan worden om de software op de RPi te laten draaien en het scherm via de plotter weer te laten geven. Ook moet dan iets bedacht worden om de user-toggles binnen te krijgen.

Eerder had ik in gedachte om een van de GPIO pennen te gebruiken om (via een getimede "press & hold" druktoets) user-input in te lezen. Bijvoorbeeld om de logging te starten/stoppen of tussen stromend en stilstaand water te kiezen.

Nu vond ik ook Unified Remote. Op papier ziet dat er goed uit en ik zou met software alléén kunnen bereiken wat ik wil.

Het appje laat je telefoon als remote-control-slave verbinden aan een PC, Mac of Linux apparaat. Je kunt je telefoon laten functioneren als toetsenbord, touchpad of (in dit geval) 4 grote knoppen aanmaken die alleen doen wat je nodig hebt. Werkt via WiFi en Bleutooth...

Ik vind alleen geen gebruikerservaringen van dit produkt op een RPi. Iemand ervaring hiermee?
Laatst bewerkt: 07 jan 2016 16:26 door Nachtvlinder.
Alleen ingelogde leden kunnen reageren.

Raspberry Pi performance box 08 jan 2016 07:55 #695592

  • Erwin72
  • Erwin72's Profielfoto
  • Offline
  • Gebruiker
  • Berichten: 165
Is het in dit geval niet eenvoudiger om een webinterface te maken met die paar knoppen? Zit je niet vast aan een betaalde app?

(Waarvoor je zo te zien ook nog een binary op je Pi moet installeren?)
Laatst bewerkt: 08 jan 2016 07:55 door Erwin72.
Alleen ingelogde leden kunnen reageren.

Raspberry Pi performance box 08 jan 2016 10:20 #695646

Goed idee denk ik!

Moet wel uitzoeken of in dat geval beide apparaten (telefoon en RPi) elkaar kunnen bereiken via het GoFree WiFi netwerk. Volgens mij is dat geconfigureerd als Access Point. Betekent dat automatisch dat beide clients een IP adres in hetzelfde domein krijgen?

In dat geval zou ik die helper-taak (2 posts terug) wellicht kunnen uitbereiden met een eenvoudige webserver om die 2-3 knoppen te tonen/af te handelen. Webserver stuurt dan wanneer nodig een "speciaal commando" naar Polarplot.exe via de reeds bestaande TCP verbinding? Zoiets?

Ben een nono op netwerk-gebied voor zover dat nog niet duidelijk was...

PS: Eigenlijk zou Polarplot geheel als webapp geschreven moeten zijn. Dat ligt volledig buiten mijn kennis. Weet ook niet of je dat met Javascript voor elkaar krijgt gezien de grafische features. Wat kan een moderne webapp eigenlijk, grafisch gezien? Waarin schrijf je dat typisch?
Alleen ingelogde leden kunnen reageren.

Raspberry Pi performance box 08 jan 2016 10:26 #695647

  • 3Noreen
  • 3Noreen's Profielfoto
  • Offline
  • Gebruiker
  • Berichten: 14799
De RPi is waarschijnlijk een veel betere server dan de GoFree. Kan die laatste niet als client van de RPi ingesteld worden ?
dat conservatieven in doorsnee hechten aan veiligheid, voorspelbaarheid en autoriteit, terwijl liberalen zich eerder thuis voelen bij nuance en complexiteit,
Alleen ingelogde leden kunnen reageren.

Raspberry Pi performance box 08 jan 2016 10:44 #695650

Goede vraag waar ik niet zinnig op kan reageren.

Zal vanavond een tekening maken die weergeeft hoe het in elkaar zit betreft client/server relaties in dit systeem. Dat voorkomt spraakverwarring: met Erwin's oplossing komen er immers meerdere webservers en wordt het wat ingewikkelder:
  • De webserver van de Zeus die via het websocket protocol de boorddata pushed naar de subscribers. Hier valt niets aan de sleutelen (ik weet niet of deze webserver fysiek in de GoFree module draait of dat die GoFree echt alleen maar een veredeld AP is en de webserver fysiek in de Zeus geprogrammeerd is.
  • Een toe te voegen webserver die de knoppen toont en bijbehorende events afhandelt. Events moeten dan nog op een of andere manier binnen komen in de Polarplot console applicatie. Die luistert nu alleen maar naar een speciaal daarvoor gemaakte TCP server
Alleen ingelogde leden kunnen reageren.

Raspberry Pi performance box 08 jan 2016 12:57 #695696

  • Erwin72
  • Erwin72's Profielfoto
  • Offline
  • Gebruiker
  • Berichten: 165
Nachtvlinder schreef :
Betekent dat automatisch dat beide clients een IP adres in hetzelfde domein krijgen?
Zo'n ding noemen we een subnet, en het antwoord is zeer waarschijnlijk JA. Maar: ze moeten elkaar ook nog kunnen bereiken, de router moet verkeer tussen twee aangesloten devices toestaan. Is meestal wel toegestaan. Eenvoudig te testen door twee apparaten (laptops/PC's...?) aan te sluiten en het andere apparaat te 'pingen'.

Nachtvlinder schreef :
In dat geval zou ik die helper-taak (2 posts terug) wellicht kunnen uitbereiden met een eenvoudige webserver om die 2-3 knoppen te tonen/af te handelen. Webserver stuurt dan wanneer nodig een "speciaal commando" naar Polarplot.exe via de reeds bestaande TCP verbinding? Zoiets?
Was dat dat stukje in Node.js? Zo ja, dan is dat uitstekend geschikt voor het serveren van 'n HTML pagina met die knoppen en het afhandelen van een HTTP POST met welke knop erin gedrukt is. Kan prima.


Nachtvlinder schreef :
Wat kan een moderne webapp eigenlijk, grafisch gezien?
Grofweg alles. De beperkingen liggen vaak in de beperkte toegang tot de in het apparaat aanwezige sensoren (zoals bij telefoons). Een webapplicatie heeft zelfs toegang tot 3D rendering via WebGL. Het belangrijkste voordeel van een webapp is dat je niet voor elke type apparaat (Windows, OS/X, X-Windows, Android, iOS, ...) weer een nieuwe applicatie moet bouwen. Wel moet je je webapp zo opgebouwd worden dat het 'responsive' is. Het reageert op de hoogte en breedte van het toevallige beeldscherm waar het opstaat. Je kunt eens naar 'Bootstrap' van Twitter kijken om te zien wat daarmee bedoeld wordt.


Ik wil je wel helpen je huidige code om te zetten naar een moderne omgeving en mee te werken aan het project. Je hebt m'n nummer :)
Laatst bewerkt: 08 jan 2016 13:03 door Erwin72.
Alleen ingelogde leden kunnen reageren.

Raspberry Pi performance box 08 jan 2016 13:06 #695699

  • Erwin72
  • Erwin72's Profielfoto
  • Offline
  • Gebruiker
  • Berichten: 165
Nachtvlinder schreef :
De webserver van de Zeus die via het websocket protocol de boorddata pushed naar de subscribers. Hier valt niets aan de sleutelen (ik weet niet of deze webserver fysiek in de GoFree module draait of dat die GoFree echt alleen maar een veredeld AP is en de webserver fysiek in de Zeus geprogrammeerd is.
Dit is er eentje die ik ook graag wil weten. Ik heb namelijk nog geen behoefte gevoeld om de GoFree module aan te schaffen, maar zou het wel fijn vinden als ik de data uit m'n Zeus kan trekken.

Is die stekker achterop de Zeus gewoon echt Ethernet met een gedocumenteerd pin-out? Wordt weer een Google-tochtje....
Alleen ingelogde leden kunnen reageren.

Raspberry Pi performance box 08 jan 2016 14:55 #695741

Hier en daar lees ik dat die "speciale kabel" niet meer dan een waterdichte ethernet verbinding is:
Lowrance yellow Ethernet cabling

En op Panbo een ander positief bericht:
I don't have a Navico Wifi-1 module but my own Linux based router/server which uses simple Linux bridging and acts as a DHCP server, so all devices get an IP address. I'm happy to report that the HDS2T had no problems in working with the assigned IP address, and the GoFree app immediately found the HDS2T and connected flawlessly. I guess that Navico sells the Wifi-1 as a solution for a plug-and-play solution, I've heard that they don't mind when the system is included in a larger existing WiFi system. This is great as it means you don't have to switch between multiple onboard WiFi systems.

Een huis-tuin-en-keuken router met WiFi AP zou dus ook goed moeten gaan.

Wat ik dan weer niet begrijp is dat ik via de MFD die GoFree (in ieder geval gedeeltelijk) kan configureren - dit lijkt me niet mogelijk met een ander AP. Weet niet of dat grote issues zal geven in de praktijk - waarschijnlijk interfaced de MFD met de specifieke webinterface van déze router betreft die instellingen. Slim bedacht om het voor iedereen eenvoudig (en eenduidig!) te houden...


Laatst bewerkt: 08 jan 2016 15:01 door Nachtvlinder.
Alleen ingelogde leden kunnen reageren.

Raspberry Pi performance box 08 jan 2016 15:24 #695750

  • Erwin72
  • Erwin72's Profielfoto
  • Offline
  • Gebruiker
  • Berichten: 165
Nachtvlinder schreef :
Een huis-tuin-en-keuken router met WiFi AP zou dus ook goed moeten gaan.
Dan lukt het waarschijnlijk ook 1:1 met de Ethernet poort van de Raspberry Pi. Geen aparte Ethernet router nodig. DHCP-server activeren op de Pi en het zal wel werken.
Moet ik er nou nog eens achter komen wat dat voor stekkers allemaal zijn achter op die Zeus. Dan kan ik een paar kabels voor gehobby thuis produceren.
Laatst bewerkt: 08 jan 2016 15:24 door Erwin72.
Alleen ingelogde leden kunnen reageren.

Raspberry Pi performance box 08 jan 2016 15:30 #695755

  • Erwin72
  • Erwin72's Profielfoto
  • Offline
  • Gebruiker
  • Berichten: 165
I'm happy to report that the HDS2T had no problems in working with the assigned IP address, and the GoFree app immediately found the HDS2T and connected flawlessly. I guess that Navico sells the Wifi-1 as a solution for a plug-and-play solution, I've heard that they don't mind when the system is included in a larger existing WiFi system.

Aha!
Dat eerdere plaatje van GoFree geeft het antwoord op WAAROM die app de plotter meteen vind op het network. De plotters ondersteunen namelijk service broadcast op basis van Bonjour. Zolang je netwerk IP multicast toestaat gaat dit prima werken. Zelfs meerdere van die apparaten zijn zo discoverable.

Bonjour (aka Zeroconf, Multicast DNS, Avahi) wordt bijvoorbeeld ook gebruikt om printers te vinden op een netwerk.
Alleen ingelogde leden kunnen reageren.

Raspberry Pi performance box 08 jan 2016 17:51 #695797

  • Menno
  • Menno's Profielfoto
  • Offline
  • Gebruiker
  • Berichten: 3661
Ik weet uit ervaring dat de koppeling met een normaal ethernet accesspoint gewoon werkt. De connector heeft 4 of 5 pins, er wordt dus alleen het groene en oranje paar gebruikt (max 100 Mbit/s, maar dat is snel zat voor deze toepassing). Ik heb het vorig jaar getest met een paar stukjes paperclip die ik als pins aan een UTP kabel had gesoldeerd, dat werkte gewoon (met een Lowrance HDS5).
Ik heb nog wel ergens plaatjes van de pinout, zal ik vanavond even naar zoeken.

Ik heb het type connector die gebruikt is nog niet kunnen vinden, dus de originele kabel is nog wel nodig. Door de kabel door te knippen kan je 2 Navico-ethernet naar RJ45 verloopjes maken.
Laatst bewerkt: 08 jan 2016 17:52 door Menno.
Alleen ingelogde leden kunnen reageren.

Raspberry Pi performance box 08 jan 2016 20:29 #695823

  • FMJ
  • FMJ's Profielfoto
  • Offline
  • Gebruiker
  • Berichten: 5183
Eigenlijk zou je dit project nog iets moeten professionaliseren. Dat je een dataverwerkcore hebt waar iedereen vervolgens API's voor kan maken, volgens mij zijn er genoeg handige zeilers die dan extra functionaliteit en compatibiliteit bij gaan programmeren :-)

Blijft een erg gaaf project!
Alleen ingelogde leden kunnen reageren.

Raspberry Pi performance box 09 jan 2016 20:21 #696103

YES!! De software-remote control zoals Erwin72 dat bedacht heeft is geboren. Dient nog verder geintegreerd te worden, maar de basis werkt:

-mobiel apparaat maakt verbinding met webserver op de RPi;
-HTML pagina wordt geladen naar mobiel apparaat en geupgrade naar websocket verbinding
-indrukken van een knop heeft een event (simpele tekst) aan de webserver!

Deze teksten worden straks gemixed in de datastroom naar Polarplot, waar ze ondervangen (geparsed) worden en de toggles in het programma kunnen bedienen.



Erwin dank voor je hulp!

Zal nu toch echt eens die server/client tekening maken want ben benieuwd of ik het morgen zélf nog snap ;)
Laatst bewerkt: 09 jan 2016 20:49 door Nachtvlinder.
Alleen ingelogde leden kunnen reageren.

Raspberry Pi performance box 11 jan 2016 07:21 #696464

Hierbij een schema van de netwerk architectuur, de servers, hun clients en wat deze doen. Ben niet op de hoogte van gebruikelijke symbolen en hoe je fysieke en logische elementen onderscheid, maar geeft wellicht een idee; ook hoe de remote control HTML pagina haar commando's aan Polarplot.exe door gaat geven.



PS: om de RPi bekabeld aan te sluiten op de GoFree wil ik zo'n "Gele Navico ethernet" kabel kopen (eur 40!) en door midden knippen. Iemand behoefte om deze aanschaf te delen om de andere helft te gebruiken?
Laatst bewerkt: 11 jan 2016 07:42 door Nachtvlinder.
Alleen ingelogde leden kunnen reageren.

Raspberry Pi performance box 11 jan 2016 07:44 #696468

  • hscharft
  • hscharft's Profielfoto
  • Offline
  • Gebruiker
  • Berichten: 2299
wat is er zo bijzonder aan die kabel dat ie 40 euro moet kosten?

Heeft een paar rj45 stekkers aan een stuk utp of stp knijpen niet precies hetzelfde effect?
groeten Harm Scharft
Schipper Ex Multiplex

members.home.nl/hrscharft
Alleen ingelogde leden kunnen reageren.

Raspberry Pi performance box 11 jan 2016 07:55 #696469

  • Erwin72
  • Erwin72's Profielfoto
  • Offline
  • Gebruiker
  • Berichten: 165
hscharft schreef :
Heeft een paar rj45 stekkers aan een stuk utp of stp knijpen niet precies hetzelfde effect?
Is geen RJ-45 maar een waterdichte stekker voor Ethernet. Als iemand weet welke standaard stekker hiervoor door de fabrikant gebruikt is, wil ik het graag horen ...
Laatst bewerkt: 11 jan 2016 08:00 door Erwin72.
Alleen ingelogde leden kunnen reageren.

Raspberry Pi performance box 11 jan 2016 07:58 #696470

  • Erwin72
  • Erwin72's Profielfoto
  • Offline
  • Gebruiker
  • Berichten: 165
Nachtvlinder schreef :
PS: om de RPi bekabeld aan te sluiten op de GoFree wil ik zo'n "Gele Navico ethernet" kabel kopen (eur 40!) en door midden knippen. Iemand behoefte om deze aanschaf te delen om de andere helft te gebruiken?
Als dat bruikbaar is op de Zeus heb ik er wel interesse in.
Alleen ingelogde leden kunnen reageren.

Raspberry Pi performance box 11 jan 2016 14:53 #696567

  • Calidris
  • Calidris's Profielfoto
  • Offline
  • Gebruiker
  • Berichten: 29061
Erwin72 schreef :
hscharft schreef :
Heeft een paar rj45 stekkers aan een stuk utp of stp knijpen niet precies hetzelfde effect?
Is geen RJ-45 maar een waterdichte stekker voor Ethernet. Als iemand weet welke standaard stekker hiervoor door de fabrikant gebruikt is, wil ik het graag horen ...

www.google.com/search?q=bulgin...C4CA&ved=0CAgQ_AUoAQ
ZF informatie kanaal Telegram: t.me/zeilersforum
Alleen ingelogde leden kunnen reageren.

Raspberry Pi performance box 11 jan 2016 15:54 #696580

Die is het niet. Het gaat om de gele connector helemaal rechts op deze foto. 5 Pennen in de stekker, 5 gaatjes in het chassisdeel...

Laatst bewerkt: 11 jan 2016 15:55 door Nachtvlinder.
Alleen ingelogde leden kunnen reageren.

Raspberry Pi performance box 11 jan 2016 17:16 #696598

Omdat de posts van de afgelopen dagen nogal IT gericht zijn een korte demonstratie die een en ander hopelijk wat duidelijker maakt. Fullscreen afspelen werkt het beste qua resolutie...

Laatst bewerkt: 11 jan 2016 17:33 door Nachtvlinder.
Alleen ingelogde leden kunnen reageren.

Raspberry Pi performance box 11 jan 2016 18:19 #696617

  • Calidris
  • Calidris's Profielfoto
  • Offline
  • Gebruiker
  • Berichten: 29061
Ik ben onder de indruk, al moet ik wel op m'n tenen lopen.

Heeft die gofree nu de gele netwerkstekkers nodig? of een ander toestel?
Ik zal eens kijken in het magazijn wat we hebben liggen.
ZF informatie kanaal Telegram: t.me/zeilersforum
Alleen ingelogde leden kunnen reageren.

Raspberry Pi performance box 11 jan 2016 18:32 #696626

Dank je. Voor mij ook tenenlopen maar veel bijgeleerd afgelopen tijd ;)

Die speciale connectors zitten op de GoFree "WiFi-1" module en de Zeus. "GoFree" is eigenlijk Navico's naam voor het plug&play systeem wat ze aanbieden ("framework" klinkt nogal bullshitbingo achtig maar dekt de lading beter hier!). Het GoFree systeem bestaat uit de genoemde servers in de MFD, dat access point (wat nu blijkt willekeurig welke router kan zijn!) en die Tier1 en -2 specificaties.

Op de Zeus is één en op die Wifi-1 module zijn 2 bedrade ethernet aansluitingen te vinden. Met die speciele connector dus. Je gebruikt ze ook om B&G "4G" radars of 3D dieptemeters aan te sluiten (volgens Tier3 van het "framework" - zie vorige pagina).

Met het "GoFree starterspakket" wat ik eerder heb aangeschaft krijg je één zo'n kabel (die nu dus in gebruik is). Ik heb (de helft) van een tweede kabel nodig om zelf een verloopje te maken tussen de WiFi-1 en de RPi. Aan de Pi kant dan een standaard RJ45 stekker (waarvoor ik de tool wel in huis heb).

Kan me niet voorstellen dat Navico zélf zo'n (waterdichte) stekker zou hebben ontwikkeld, maar de draadjes op Panbo die ik heb gelezen eindigen zonder de gouden tip. Ben heel benieuwd of jij iets ziet wat er op lijkt!

PS: zie "network 1" en 2 hier beneden.
Laatst bewerkt: 11 jan 2016 20:44 door Nachtvlinder.
Alleen ingelogde leden kunnen reageren.

Raspberry Pi performance box 11 jan 2016 19:47 #696654

  • Erwin72
  • Erwin72's Profielfoto
  • Offline
  • Gebruiker
  • Berichten: 165
Wellicht een apart draadje voor de connectors?

Googlen en zoeken levert me een link op naar een fabrikant: Amphenol LTW.

De POWER en VIDEO ingang van mijn Zeus lijken uit deze serie te komen:
Amphenol LTW Circular Connectors (PDF)

Over die gele Ethernet wordt gezegd dat het wellicht een custom is uit bovenstaande serie. Het grootste verschil dat ik op het apparaat zie (zie foto hieronder) is dat de gender van de contacten precies andersom is.


Meest links de Ethernet, daarna de NMEA2K, VIDEO en POWER connectors.
Laatst bewerkt: 11 jan 2016 20:08 door Erwin72.
Alleen ingelogde leden kunnen reageren.

Raspberry Pi performance box 11 jan 2016 20:15 #696664

  • Erwin72
  • Erwin72's Profielfoto
  • Offline
  • Gebruiker
  • Berichten: 165
Nachtvlinder schreef :
een korte demonstratie die een en ander hopelijk wat duidelijker maakt.
Mooie demonstratie! Ik zal m'n Raspberry Pi binnenkort meenemen om de boel daarmee te testen.
Laatst bewerkt: 11 jan 2016 20:15 door Erwin72.
Alleen ingelogde leden kunnen reageren.
Tijd voor maken pagina: 0.183 seconden
Gemaakt door Kunena
   
   
   
   
© Zeilersforum.nl