marrold / MMDVM-Dissector

A Wireshark dissector for the MMDVM protocol
18 stars 6 forks source link

Add support for the Generic Home Brew protocol #3

Open marrold opened 4 years ago

marrold commented 4 years ago

It has come to my attention that this dissector doesn't support the "Generic Home Brew" protocol used by BlueDV ( and potentially other software ). It would be nice to add support.

BM have given some clues on the differences:

image

smarek commented 3 years ago

@marrold I don't see much difference, from where is this code please?

smarek commented 3 years ago

It's been a while, but revisiting this issue, i've decided to put a name on those, "Homebrew 2015" which is the original specification, and "MMDVM 2020" which is the evolved version currently used in eg. MMDVMHost

Both protocols should be nicely outlined in Kaitai-IO specifications here, with ASCII command prefixes being listed at the very end of each .ksy file https://github.com/OK-DMR/dmr-kaitai/blob/master/okdmr/kaitai/homebrew/homebrew2015.ksy https://github.com/OK-DMR/dmr-kaitai/blob/master/okdmr/kaitai/homebrew/mmdvm2020.ksy

And for the dissector implementation purposes, each message pdu has its fields specifically typed, u{1-8) is unsigned-int{bytes-length), ale u4le and u4be are obviously LE/BE variants, b{1-32} is bit-field{bit-count}, so it could be pretty easy to update the dissector

marrold commented 2 years ago

@smarek Sorry for the delays these notifications get buried.

To answer your question from 1 year ago - the screenshot was provided by Brandmeister, I guess it's private.

And for your recent comment, I'm not currently maintaining the dissector as I'm not actively using it, apologies.