Boy, I talking about the firmware inside the STMCHIP 3 way board controller, find / -name fw_upgrade.sh
cod3gen, I love your work, so I give you a hint,
the original code show
msg.data[0] = (clk == 0) ? clk : ((clk / 10) % 20) + 2;
so your chip frequency is 2 + result of modulos....
msg.data[0] = (clk == 0) ? clk : ((clk / 10) % 20) + 2.2;
this is not ASIC chip .... so the chip frequency is 2 + modulo of + 2.0 + add 0.2 = 10% more power freq
32 chip X 3 = 96 X 2.2 = 211mhz...
To be honest this doesn't make any sense. Here is the baikal msg structure that is used in that case:
typedef struct {
uint8_t miner_id;
uint8_t cmd;
uint8_t param;
uint8_t dest;
uint8_t data[512];
uint32_t len;
} baikal_msg;
As you can see the data field consists of 8 bit integer values. So by adding a floating point number of 2.2 makes absolutely no difference compared to the standard 2. Both numbers (2 and 2.2) are converted to uint8_t resulting in a value of 2.