Cruisers Forum
 

Go Back   Cruisers & Sailing Forums > Seamanship, Navigation & Boat Handling > OpenCPN
Cruiser Wiki Click Here to Login
Register Vendors FAQ Community Calendar Today's Posts Log in

Reply
  This discussion is proudly sponsored by:
Please support our sponsors and let them know you heard about their products on Cruisers Forums. Advertise Here
 
Thread Tools Search this Thread Rate Thread Display Modes
Old 17-11-2018, 22:51   #1
Registered User
 
skkeith's Avatar

Join Date: Mar 2013
Location: Santa Cruz
Boat: 1975 Isander 28
Posts: 132
Custom mouse/keyboard/serial usb AVR with nmea breakout

Having a whale forced respite from sailing I decided to make good on my plans to design an interface for OpenCPN simple and robust enough for me to use from the cockpit of my I28 (while sailing solo). I don't know how the rest of you do it but there is no way I can use a mouse, keyboard, or any other traditional interface while watching out for whales and whatnot.

To this end I created the Navputter project, you can get it from:
github.com/capnkeith/navputter
This is firmware for an 8 bit AVR with USB support creating a keyboard mouse device using a 4x4 keypad. Flash it onto a USB micro controller and it will work as a USB keyboard and a mouse without drivers on Windows, Mac, or Linux. It is designed for OpenCPN, but it is a generic keyboard mouse so it does not require OpenCPN.

It has 3 modes: slow keys, fast keys, and mouse. In slow key mode, the 'arrows' inject 'arrow key + alt' key presses. In fast key mode, just arrow keys are injected. In mouse mode, the arrow keys translate into mouse movement. The other keys map to useful keypress combinations. All the keys are changeable in eeprom via the serial interface.

It has a 'radial encoder knob' like the expensive chart plotters, to zoom in and out.

Since I wanted the eeprrom field customizable I added a virtual serial interface to it also so you can edit the eeprom with a serial terminal program. This made me think Navputter might have legs beyond just a keyboard mouse driver, so I put in some NMEA parsing code and a tiny LCD display. I will accept text commands from the serial and parse the following NMEA sentences: rmc, gga, gsa, gll, gst, gsv, vtg, and zda. Look closely at the display, this is from sending $GPRMC,225446,A,4916.45,N,12311.12,W,000.5,054.7,1 91194,020.3,E*68 to /dev/ttyACM0.

I have just finished the firmware, have not yet taken it out for sea trials, so it probably needs quite a bit of tweaking to make it actually usable. If anyone is actually interested in this I can help you get going, I would appreciate any input on making this more usable...
Attached Thumbnails
Click image for larger version

Name:	IMG_0107.jpg
Views:	129
Size:	434.5 KB
ID:	180812  
skkeith is offline   Reply With Quote
Old 18-11-2018, 01:09   #2
Registered User

Join Date: Jun 2015
Posts: 379
Re: Custom mouse/keyboard/serial usb AVR with nmea breakout

Hi,
For NMEA how is it showing up on the PC ? 3 end points, kbd, mouse and serial?



Just thinking aloud but once you have something like NMEA parsing adding proprietary sentences for keys setup could be interesting.
did-g is offline   Reply With Quote
Old 18-11-2018, 08:17   #3
Registered User
 
skkeith's Avatar

Join Date: Mar 2013
Location: Santa Cruz
Boat: 1975 Isander 28
Posts: 132
Re: Custom mouse/keyboard/serial usb AVR with nmea breakout

yes 3 devices. On ubuntu serial is /dev/ttyACM0.


I have nmea parsing. Adding custom sentences would work fine. Also I have custom non nmea commands via serial as well if you want that kind of thing.
skkeith is offline   Reply With Quote
Old 18-11-2018, 16:22   #4
Registered User

Join Date: Aug 2009
Location: oriental
Boat: crowther trimaran 33
Posts: 4,417
Re: Custom mouse/keyboard/serial usb AVR with nmea breakout

Did you try capacitive touch? I'm not sure how well it works when wet. Those keypads you have may need to be sealed to be truly waterproof.
seandepagnier is offline   Reply With Quote
Old 19-11-2018, 07:42   #5
Registered User
 
skkeith's Avatar

Join Date: Mar 2013
Location: Santa Cruz
Boat: 1975 Isander 28
Posts: 132
Re: Custom mouse/keyboard/serial usb AVR with nmea breakout

I have not built the keyboard yet just the firmware. All the keypads will need some kind of waterproofing, I think the membrane keypad should be easy enough. My plan is to try out some different designs see what works and how long it lasts.



I thought about capacitive touch, but I don't think it works well when wet. Be worth a try...
skkeith is offline   Reply With Quote
Reply

Tags
nmea, serial


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are Off
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Making a custom keyboard for OpenCPN lgj OpenCPN 15 17-11-2018 22:56
Generator AVR sailorboy1 Electrical: Batteries, Generators & Solar 45 19-06-2018 19:13
GX2150 wiring to USB-RS 232 breakout cable hcolvin1 OpenCPN 10 09-11-2013 02:33
opencpn linux mint 13 and GPS USB SKYTRAQ GM 65 Skytraq - chipset Venus 6 USB - NMEA archimede OpenCPN 2 18-02-2013 03:04
How to Handle USB GPS and NMEA to USB Inputs sailracer OpenCPN 16 16-04-2011 07:22

Advertise Here


All times are GMT -7. The time now is 19:56.


Google+
Powered by vBulletin® Version 3.8.8 Beta 1
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Social Knowledge Networks
Powered by vBulletin® Version 3.8.8 Beta 1
Copyright ©2000 - 2024, vBulletin Solutions, Inc.

ShowCase vBulletin Plugins by Drive Thru Online, Inc.