Ham Radio Remoting with RigPi

Yaesu 991A connected to Rigpi How to select memory and then up or down through memories? MACRO CODES???? #mfj-1234 #ft-991a #memory select #yaesu commands #hexadecimal convert

Oct 9   
Here are a couple of Macro menu setups I did for a Yaesu 991A . There is a button number with a dash separating the Label and then another dash separating the ascii or Hex command.

RSS Factory with a few Yaesu 991A Codes added

Button 01 – WAIT 1 (AS) – $[

Button 02 – MY CALL  – $’*

Button 03 – 5NN  – $5NN TU

Button 04 – ESC  – !ESC

Button 05 – ERROR (…) – $<1b>HH

Button 06 – TUNE – !TUNE

Button 07 – T/R – !T/R

Button 08 – CQ – $CQ CQ CQ DE ‘* K

Button 09 – QRZ – $QRZ

Button 10 – HIS DE MINE – $’X DE ‘*

Button 11 – CANCEL – !ESC

Button 12 – PWR ON – *PS1;

Button 13 – PWR OFF – *PS0;

Button 14 – HAMLIB TEST (F) – *F 21025000

Button 15 – ROTATE – !ROTATE

Button 16 – ROTATE STOP – !RTR STOP

Button 17 – BK – $<1b>BK

Button 18 – KNWD w TEST – *0w FA00014030777; 

Button 19 – SWITCH OFF – $<18><00>

Button 20 – SWITCH ON – $<18><01>

Button 21 – VFO<>MEM – *0w \0x56\0x4d\0x3b

Button 22 – MEM UP – *0w \0x43\0x48\0x30\0x3b

Button 23 – MEM DN – *0w \0x43\0x48\0x31\0x3b

Button 24 – SCAN UP – *0w \0x53\0x43\0x31\0x3b

Button 25 – SCAN DN – *0w \0x53\0x43\0x32\0x3b

Button 26 – SCAN STOP – *0w \0x53\0x43\0x30\0x3b

Button 27 – BAND UP – *0w \0x42\0x55\0x30\0x3b

Button 28 – GO TO CH 79 – *0w \0x4d\0x43\0x30\0x37\0x39\0x3b

Button 29 –   

Button 30 –   

Button 31 –   

Button 32 –   

Customized for N1JDI

Button 01 – VFO<>MEM – *0w \0x56\0x4d\0x3b

Button 02 – MEM UP – *0w \0x43\0x48\0x30\0x3b

Button 03 – 5MEM DN – *0w \0x43\0x48\0x31\0x3b

Button 04 – SCAN UP – *0w \0x53\0x43\0x31\0x3b

Button 05 – SCAN DN – *0w \0x53\0x43\0x31\0x3b

Button 06 – SCAN STOP – *0w \0x53\0x43\0x30\0x3b

Button 07 – BAND UP – *0w \0x42\0x55\0x30\0x3b

Button 08 – BAND DN – *0w \0x42\0x44\0x30\0x3b

Button 09 – TX PWR 5w – *0w \0x50\0x43\0x30\0x30\0x35\0x3b

Button 10 – TX PWR 10w – *0w \0x50\0x43\0x30\0x31\0x30\0x3b

Button 11 – TX PWR 20w – *0w \0x50\0x43\0x30\0x32\0x30\0x3b

Button 12 – TX PWR 30w – *0w \0x50\0x43\0x30\0x33\0x30\0x3b

Button 13 – TX PWR 40w – *0w \0x50\0x43\0x30\0x34\0x30\0x3b

Button 14 – 

Button 15 – 

Button 16 – CANCEL / ESCAPE – !ESC

Button 17 – MEM 01 – *0w \0x4d\0x43\0x30\0x30\0x31\0x3b

Button 18 – MEM 02 – *0w \0x4d\0x43\0x30\0x30\0x32\0x3b

Button 19 – MEM 03 – *0w \0x4d\0x43\0x30\0x30\0x33\0x3b

Button 20 – 

Button 21 – 

Button 22 – 

Button 23 – 

Button 24 – 

Button 25 – SWITCH ON – $<18><01>

Button 26 – SWITCH OFF – $<18><00>

Button 27 – 

Button 28 – 

Button 29 – 

Button 30 – 

Button 31 – PWR ON – *PS1;

Button 32 – PWR OFF – *PS0;

Haven’t tested it all yet but those tested worked perfectly

Oct 9   
I am happy to report that I have found an easy way to begin programming the macro buttons for the Yaesu FT-991A.  Thanks to Howard and Mitch.  All of the Yaesu commands are in ascii in this document https://www.yaesu.com/downloadFile.cfm?FileID=13370&FileCatID=158&FileName=FT%2D991A%5FCAT%5FOM%5FENG%5F1711%2DD.pdf&FileContentType=application%2Fpdf

You follow the tables in the document.  First 2 letters are the actual ascii command.  The next set is the parameter.  the last part is the end.  You must convert all ascii characters to Hexadecimal for the FT-991A to recognize and act on the commands.  Thanks to Mitch, you must first preface your Hex command with a start which will always be the Hex combination   *0w \ . Then you add the Hexadecimal command and you do that by going to an ascii to Hexadecimal converter site like this one https://www.rapidtables.com/convert/number/ascii-to-hex.html

You would enter the ascii command like  CH . for channel command (as in command the radio to go up a memory or down a memory) into the ascii field on the converter site and then hit convert to Hex on the site and you would get a result of 43 48 in hex which represents the ascii characters CH.  Take note of the space in the resulting numbers after conversion as it is separating each ascii character in the hex conversion.  Notice the space in between the numbers.  Each number will need to be placed into it’s own Hex space that is to say separated by the backslash and also it must follow the hex characters of 0x.  So it would look like this for each character that was converted to Hex…  begin with the start command in hex so it would be *0w with a space added after and then you would place the backslash to start a new command . \ . and then enter the 0x followed by the converted first ascii command letter which in this case is C so the hex would be 43 and then separate the next ascii command with a backslash \ which would then start the next ascii command which you should now have converted to hex so it would be again starting with the 0x and then adding the converted ascii character H which is now a hex of 48 and end that command with a backslash \ . Then add the parameter which in ascii is 0 (in the yaesu CAT manual the 0 is the parameter to tell the radio to go “UP” on channel) and converted to hex is 30 . So the next set would be again starting with 0x and then adding the 30 and ending that parameter set with a backslash and moving on to the end command in hex which would be 0x3b thanks to Mitch.  So all together the Channel up command taking from the Yaesu CAT manual in ascii would be CH0; but knowing that Yaesu wants to see all of that in Hexadecimal after converting and adding the start hex command and the preface hex to the converted ascii commands and adding the end command would all look like this…

ascii command . CH0; converted to hexadecimal is *0w \0x43\0x48\0x30\0x3b . which by the way the hex 0x3b is also in ascii a semicolon ;  which is the command to end the string in ascii.  So there you have it…  Happy Macro programming!!!!!!!