Open edgetriggered opened 1 year ago
Hi there! any chance seeing progress on this one? I've seen many that are currently hesitant on switching to the firmware, for it being a one-way ticket while loosing support fro original functionality. not trying to hurry up or something, just curious of the current state..
@RE-Specto Hello, I am not actively working on this issue. I was able to backup the factory firmware but I am not using it in any projects that would be useful for feature testing by comparison. This issue can be reassigned to anyone who is better able to take on the effort.
got you. I was looking into it, however it seems beyond my knowledge of embedded coding. maybe if you document registers a little bit more, then I or perhaps somebody else can give it a try 🤔
I have done some research on the subject, and found at1846_registers.md and AT1846S_programming_guide.pdf
(which are slightly inconsistent btw 🤷 )
those the registers to be used by i2c_read
(PEEK) and i2c_write
(POKE) right?
is the original functionality can be wrapped around those two commands with the appropriate register values, or anything else is required?
There are differences between the AT1846S and RDA1846S programming guides, which accounts for the inconsistencies. Commands not implemented by sa8x8-fw
may be implemented from scratch by refering to these programming guides or can also be reverse engineered through monitoring I²C transactions on the hardware or even disassembling factory firmware. Publicly available documents appear to be missing some important registers that radio manufacturers seem to know about so that may be a difficult option. The included Python example is derived from the factory firmware on MD-UV380.
hmm.. thanks for the clarification. so appears that more research is required at the moment. indeed somewhat above my current expertise unfortunately. maybe one day I'll be able to setup the correct equipment for eavesdropping on the I²C bus, and can document my findings, but until then hopefully someone better equipped for the task can take over
This firmware currently only provides I2C register control, but it would be convenient if it served as a direct drop-in replacement firmware for devices relying on the factory command set. Close this issue when support for the factory command set has been added.