EEVblog > EEVblog Specific

EEVblog #1144 - Padauk Programmer Reverse Engineering

<< < (287/287)

js_12345678_55AA:

--- Quote from: Slartibartfast123 on August 18, 2022, 03:36:56 pm ---The PFS172/173 series seems to be discontinued and no longer available. The follow up is the PFS122/123 series which only seems to have a 12bit ADC instead of the 8bit ADC. At least the PFS122 is available right now:
https://lcsc.com/search?q=pfs122
Will there be a support in easypdkprog too?

--- End quote ---
Support can be added as soon as I can get hold of some ICs.


--- Quote from: socram on August 19, 2022, 01:16:39 am ---Those look particularly interesting - reading through the datasheet they have a "limited voltage programming mode" where it uses 5.0V volts only, which means a simpler programmer with no voltage shifting shenanigans could be doable.

--- End quote ---
In the development branch you can see already some devices (e.g. PFC151/PFC161/PFC154/PFS172/PFC232) which use limited voltage programing mode.

The main gist of limited voltage programing mode is that VPP is set to 0V during programing phase (only VDD of apx. 4.8V needs to be supplied).
However to activate the special programing mode you still need 2 different voltages for VDD and VPP where VDD < VPP-1.5V
So yes... this would make it possible to omit the DCDC booster, but setting variable output voltages for VDD and VPP is still a thing.

JS

jacola:
Hi JS, do i see this correct that you could have VDD switchable between 3.3V and 5V,
and to activate 'special programming mode' you could do VDD 3.3V, VPP 5V.
Then later set VDD to 5V ?
on-board switching between 3.3V and 5V, with a reasonably low current, could probably even be done with an analog switch ..

I would like to use padauks (PFC154,PFC232,PFS122) in multiple projects now. Ideally programmable in the board, by higher level micro.

Happy to support the development efforts not only with praise but also with material.

We will do a WS2812B output driver and an I2C software slave.

Johannes

hidden:
Attachment NY8AO51H Timings

piotr_go:

--- Quote from: hidden on September 26, 2022, 02:31:08 am ---Attachment NY8AO51H Timings

--- End quote ---

Thank You.

Now I have working write and read :)

I made BIN decoder.
Start decoding from configuration words (0x76 in BIN; "xdat", 4B len, 32B configuration words, 2048B data....)
Output: 1024W data, 16W config.

"ny_dec(buffer, 16+1024);"


--- Code: ---uint16_t nop_bin[16+1024] = {
0xF8E5, 0x269D, 0xE258, 0xBC49, 0x7987, 0xA2DE, 0x4B2F, 0x74E7, 0x5035, 0x3ACD, 0x75A6, 0x55F9, 0xB4DF, 0xA969, 0x74FA, 0x98F6,
0xB372, 0x3850, 0x28FF, 0xFAE5, 0x114A, 0x067A, 0x8AE0, 0x6E5D, 0x5B98, 0x10EE, 0xFC57, 0x018E, 0xAA34, 0x3EEB, 0xB9B1, 0x3FE8,
0x1FB8, 0xF516, 0x8C97, 0x3541, 0xAB8B, 0xAB60, 0xA9EB, 0x9F77, 0x2C11, 0xFBBA, 0x7E49, 0x4A19, 0xB4F9, 0xF44C, 0xFF1D, 0x5725,
0xBB1C, 0x34D9, 0x962D, 0x3EEC, 0x81A8, 0x2291, 0xFD9C, 0x819C, 0xBB93, 0x36F1, 0xD957, 0xE6D3, 0x79BF, 0x5024, 0x30B9, 0xEDE4,
0x1606, 0x17D2, 0x6707, 0x4965, 0x6AFC, 0xA08F, 0xB60B, 0x9F51, 0x7134, 0x705D, 0xB19A, 0x4277, 0xB870, 0x4A9E, 0x3B14, 0xC7C7,
0x9FF7, 0x43A5, 0x79EC, 0xDEE7, 0xA7B7, 0x0791, 0x1AC1, 0x5217, 0xD55C, 0xBFF9, 0x0B5B, 0xEF6D, 0x9B7B, 0xBBB4, 0x4C9D, 0x2C93,
0x1DE9, 0x0832, 0x6721, 0x1440, 0xE11B, 0x6F5C, 0xBE65, 0x93D8, 0xCFE6, 0xB454, 0x2178, 0x669C, 0xCF0C, 0xA55F, 0xDB1F, 0xE1D8,
0xBAF7, 0xA4F8, 0xAA67, 0xB028, 0x2EBF, 0xD59D, 0x137F, 0xB0D3, 0x3ECC, 0xC3DD, 0xCA2C, 0xE482, 0x849B, 0xBB92, 0x11B8, 0xA774,
0xD23A, 0x005C, 0x6BA8, 0xAA92, 0x2512, 0xFFBE, 0x9A8E, 0xE4A4, 0x2027, 0x545F, 0x0767, 0x439C, 0x2851, 0x76D4, 0xB5D0, 0x68D0,
0x68FB, 0xAD46, 0x48A3, 0x5BB8, 0x529B, 0x14EA, 0x1890, 0xAF33, 0x3EEA, 0x9EF8, 0x41CB, 0x2B51, 0x8CF5, 0xB71B, 0xAF6A, 0x637D,
0x42D8, 0x24B7, 0x1CD4, 0x4553, 0xC519, 0xD9A1, 0xBF8E, 0x03F9, 0xF3AC, 0x3A90, 0x8E6F, 0x9190, 0x21EF, 0x9410, 0x5E40, 0x14F4,
0xA98C, 0xA6A9, 0x5743, 0x5B9E, 0x0FBE, 0x9F0D, 0xD743, 0xA75D, 0x3263, 0x202A, 0x85C2, 0xBBB3, 0xA81E, 0xC067, 0x40AB, 0x8376,
0x64C7, 0x01B7, 0xFB89, 0x96D8, 0xABD6, 0x50A9, 0x6D82, 0x0A47, 0x1168, 0xD100, 0xF24B, 0x50E7, 0x2A00, 0x8BF0, 0x5E66, 0x49D1,
0x226B, 0x697A, 0x5F2D, 0x5717, 0xB16C, 0x5B04, 0x47A1, 0x83B6, 0x451F, 0xCFEB, 0x65C9, 0x9DAC, 0x8D1E, 0x273A, 0x9320, 0xEDB9,
0xEDCF, 0xD3BB, 0xF237, 0x741C, 0x4046, 0x2C8D, 0xACF5, 0x01A8, 0x0E88, 0xD126, 0xAF6E, 0xDB00, 0xE5D3, 0x839E, 0x52EF, 0xF703,
0xE662, 0xF998, 0x7BC6, 0x206B, 0x5EAD, 0xBB0F, 0x61BE, 0xA6B6, 0xA242, 0x1C60, 0x0B06, 0x14A4, 0x5F12, 0x2E84, 0x71E4, 0x0629,
0x91EB, 0x12CC, 0xF9D8, 0x6BFC, 0x4060, 0x71A8, 0x2712, 0xCE7B, 0x06E6, 0xDDAF, 0x11BC, 0x1F09, 0x7531, 0xA775, 0x2593, 0x18C2,
0x0669, 0xDF87, 0x5EC6, 0xC736, 0x8D26, 0xD5C0, 0xE8B6, 0x74BA, 0xABFC, 0xFEA4, 0xE096, 0x6880, 0x9E65, 0x256B, 0x6E04, 0x060F,
0xCCCE, 0x992B, 0x360B, 0x6392, 0x4CE9, 0xCF7A, 0xE31B, 0x5E99, 0x220D, 0xAAD3, 0xFE7D, 0xFF02, 0x532E, 0x8275, 0xC2CE, 0xCB49,
0x68A6, 0x568F, 0x8CCA, 0xCE88, 0x6FE2, 0x3E50, 0x9492, 0xB5CD, 0xA013, 0xE144, 0xE0B0, 0x35A5, 0x1582, 0xEAB8, 0x666A, 0x0A86,
0x721C, 0x5D22, 0xA6E9, 0x4779, 0x3B95, 0x20BB, 0x0310, 0x7886, 0x070D, 0x4D8E, 0x2DF6, 0x91CD, 0xDA26, 0x5079, 0xCB70, 0x298D,
0x8336, 0x2AAB, 0x4DBD, 0xC567, 0x7002, 0x3E76, 0xC9B7, 0x3E2A, 0x6FC0, 0xE92A, 0xEC39, 0x8B77, 0xD18B, 0x7A5A, 0x4281, 0x7DFA,
0x9DDD, 0xBD29, 0x80F6, 0x6279, 0xDCC8, 0xF330, 0x6DDF, 0xF18E, 0xD501, 0x4430, 0xCF32, 0x7A5D, 0xA602, 0x910E, 0xC09F, 0x366D,
0x8310, 0x778E, 0xC65A, 0x0AB4, 0x786C, 0x32FF, 0x7765, 0xFA23, 0xFF22, 0xCDC1, 0x9B45, 0x64B6, 0x3180, 0x5C45, 0x6781, 0x9AA7,
0x4E56, 0xD3E6, 0x09FE, 0xB075, 0xD576, 0x11F4, 0x864F, 0x8DAA, 0x1476, 0x4FDF, 0xD0D2, 0x7A7B, 0xFB27, 0x1AE9, 0x0F4C, 0x3E03,
0x8F99, 0xC95C, 0x0253, 0x9A56, 0x5C87, 0x4583, 0x98A4, 0x1A28, 0xD93D, 0xE8C1, 0x7C18, 0xB73D, 0x5F4F, 0xD54D, 0xB58D, 0x9319,
0xAC92, 0x3876, 0x75DA, 0x7102, 0xDE99, 0x0E14, 0x8669, 0xD08F, 0x9F91, 0x800C, 0xD8BC, 0x76F2, 0x45F5, 0xDEE0, 0x9FAE, 0x1AE8,
0xF8E5, 0x269D, 0xE258, 0xBC49, 0x7987, 0xA2DE, 0x4B2F, 0x74E7, 0x5035, 0x3ACD, 0x75A6, 0x55F9, 0xB4DF, 0xA969, 0x74FA, 0x98F6,
0xB372, 0x3850, 0x28FF, 0xFAE5, 0x114A, 0x067A, 0x8AE0, 0x6E5D, 0x5B98, 0x10EE, 0xFC57, 0x018E, 0xAA34, 0x3EEB, 0xB9B1, 0x3FE8,
0x1FB8, 0xF516, 0x8C97, 0x3541, 0xAB8B, 0xAB60, 0xA9EB, 0x9F77, 0x2C11, 0xFBBA, 0x7E49, 0x4A19, 0xB4F9, 0xF44C, 0xFF1D, 0x5725,
0xBB1C, 0x34D9, 0x962D, 0x3EEC, 0x81A8, 0x2291, 0xFD9C, 0x819C, 0xBB93, 0x36F1, 0xD957, 0xE6D3, 0x79BF, 0x5024, 0x30B9, 0xEDE4,
0x1606, 0x17D2, 0x6707, 0x4965, 0x6AFC, 0xA08F, 0xB60B, 0x9F51, 0x7134, 0x705D, 0xB19A, 0x4277, 0xB870, 0x4A9E, 0x3B14, 0xC7C7,
0x9FF7, 0x43A5, 0x79EC, 0xDEE7, 0xA7B7, 0x0791, 0x1AC1, 0x5217, 0xEC2E, 0x16DE, 0x1A38, 0xB0BC, 0x7C78, 0x2BB1, 0x16F2, 0xECB8,
0x743E, 0x07AD, 0xCDE1, 0x63C8, 0x55B2, 0x5621, 0xFAE4, 0x0666, 0xF694, 0x1D73, 0x301B, 0x394D, 0x280F, 0x355A, 0x8170, 0x21F3,
0xD320, 0xAB67, 0x00A7, 0xC7A0, 0x9A16, 0xECE0, 0x57FE, 0x256D, 0x07BE, 0x6AFA, 0xDB4F, 0xBB53, 0x6398, 0x2B97, 0x4BD7, 0x675F,
0xBBED, 0x0FC3, 0xC168, 0xDD1A, 0x91BB, 0xC6C3, 0xDE0F, 0x711A, 0x1955, 0xFD78, 0x1604, 0x1C4D, 0xCF52, 0xE6D1, 0xEFBF, 0xA8FB,
0x012C, 0xA2D9, 0xE263, 0x2C30, 0xE632, 0x2D97, 0x5C11, 0x3A8D, 0x0798, 0x37DF, 0x50A8, 0x7480, 0x6BF6, 0x271E, 0xF505, 0xA356,
0x2B0F, 0x2B28, 0xB614, 0x32DB, 0x71B0, 0xE0DC, 0xFB0F, 0x9647, 0xCADE, 0x93B7, 0x9F0C, 0xCE41, 0xC6EC, 0x0415, 0x042F, 0xD4DF,
0xC05B, 0xA936, 0xFD83, 0x2C16, 0xBB17, 0xA670, 0x93C2, 0x32E3, 0x0B11, 0x890D, 0x94A1, 0xE462, 0x4F1D, 0x5062, 0x1AC4, 0x435D,
0x0D10, 0x0E28, 0x5149, 0xE150, 0x1F7F, 0x69D4, 0x2903, 0x9FF9, 0x281A, 0x7827, 0xE328, 0x0F36, 0xCD03, 0x1BF5, 0x0409, 0x89FA,
0x4BBC, 0x66E5, 0xF5ED, 0x209F, 0x05C5, 0x6279, 0x0320, 0x1608, 0x7C6D, 0x66CC, 0x74AA, 0xC27D, 0x6A1D, 0xB73F, 0xC94F, 0x2D92,
0x8418, 0xDC24, 0x58F7, 0x0394, 0xF4EF, 0x15F0, 0xE874, 0x9416, 0x37FA, 0x7801, 0xBE0D, 0x84D1, 0x02D0, 0x139B, 0x0880, 0x3728,
0x8FB5, 0xF607, 0xD106, 0x57E3, 0xEA04, 0x8272, 0x253F, 0x3308, 0x9B30, 0xB547, 0x1A65, 0x4B75, 0xB811, 0xBE81, 0x2B8B, 0xC602,
0xF83C, 0x1D53, 0x5318, 0x1C74, 0xF4C9, 0x48D5, 0x6393, 0x5BC5, 0x3F94, 0x7488, 0x00DF, 0x40D8, 0x9232, 0x3770, 0x7FFC, 0xD8E9,
0x6FBE, 0xD018, 0xF406, 0xB0BE, 0x398F, 0xECBD, 0xAC37, 0xE104, 0x928E, 0x5783, 0xF1F5, 0x3751, 0x7966, 0xB56E, 0x346B, 0xC624,
0xA519, 0x96B4, 0x9CCB, 0x141A, 0xF840, 0xF607, 0xA79A, 0xCB27, 0x1B7F, 0x03F4, 0xEF1E, 0xA0D3, 0xB42D, 0x1270, 0x98A1, 0x0B62,
0x0171, 0x5910, 0x260A, 0xB900, 0xDB4B, 0x072D, 0xD013, 0x2073, 0x9961, 0x4863, 0xF1D3, 0x6A74, 0xF281, 0x7ABD, 0x3C05, 0xCAAD,
0x1BCB, 0x52BD, 0x0C29, 0x30F1, 0x8F3C, 0x19C6, 0x4791, 0xED38, 0x3E7F, 0xE4A9, 0x3C95, 0xCE1C, 0x3D25, 0xC07C, 0x911F, 0xE9A6,
0xEAE1, 0x2534, 0xE77D, 0xB2EF, 0xC4AB, 0x070B, 0x8D36, 0xAB94, 0x56B2, 0x400D, 0xFD5A, 0xD4A6, 0x3688, 0xEA5F, 0x18EE, 0xBDD1,
0xF40A, 0xB2B6, 0x2A36, 0x15F1, 0x6861, 0xCA4D, 0x295E, 0x6430, 0xEC73, 0xED17, 0xDE51, 0x258C, 0x4101, 0x010B, 0x9AF0, 0xF646,
0xEAC7, 0x7811, 0x6C9A, 0x7D3C, 0xCCC5, 0x0B82, 0x33E4, 0x6F9D, 0xC650, 0x64E6, 0x8A26, 0x3B67, 0xD683, 0xCC40, 0x3DEE, 0x5A8C,
0x2781, 0xDC79, 0xA33E, 0xC7FD, 0x61DF, 0x2889, 0xC2CE, 0x1814, 0x2D04, 0xE6F8, 0xC1B1, 0x25AA, 0x1C24, 0x8AEC, 0x5523, 0xFE28,
0xE64E, 0xC6C3, 0xA893, 0xEDDE, 0xE82E, 0x7CFE, 0xDC25, 0x8F96, 0xE04F, 0x41E6, 0x6D7B, 0xE8EC, 0xB84C, 0x4548, 0xEFE2, 0x5332,
0xC545, 0x37E9, 0xDF1A, 0x068A, 0x6A30, 0x3769, 0xC2E8, 0x4531, 0xA6E3, 0x292B, 0xC9DF, 0x2923, 0xA2F6, 0x4EE5, 0xC5C1, 0xDAC3,
0x9132, 0x2902, 0x4898, 0xCBC1, 0xCD2E, 0x9BA3, 0x0FAE, 0xE159, 0x6947, 0x93EA, 0x64C5, 0x0A28, 0x53DC, 0x396C, 0x2E95, 0x58DD,
0xDAA5, 0x37CF, 0x823F, 0x8D6D, 0xA5E3, 0x3F07, 0xCE61, 0xFBE3, 0x62EA, 0xB9C9, 0xED34, 0x5E5F, 0x4D37, 0xAEEE, 0xE3DE, 0xFFC3,
0x766F, 0xFA89, 0x2657, 0x42C9, 0x1F22, 0x921D, 0xED6A, 0x0AC9, 0x1563, 0x529D, 0x6F2A, 0x15C8, 0x53FA, 0x6449, 0xA572, 0x970E,
0xD2CB, 0x3B46, 0x3CED, 0x4964, 0x3501, 0x1BEC, 0xB91D, 0x1422, 0x82E1, 0x9FD6, 0xC834, 0xB902, 0x9EBC, 0xC021, 0x6AD6, 0x2DCF,
0x7FD1, 0x184D, 0xCDC7, 0x3EED, 0xDE55, 0x99F2, 0xF28A, 0x0AEF, 0x4846, 0xD97A, 0xA0F9, 0x1DA6, 0x5F73, 0xDA9B, 0x617B, 0x07EC,
0xF620, 0x4C3A, 0xD32C, 0xA96F, 0x131E, 0x3EEC, 0x5E40, 0xC7A9, 0xEC2E, 0x16DE, 0x1A38, 0xB0BC, 0x7C78, 0x2BB1, 0x16F2, 0xECB8,
0x743E, 0x07AD, 0xCDE1, 0x63C8, 0x55B2, 0x5621, 0xFAE4, 0x0666, 0xF694, 0x1D73, 0x301B, 0x394D, 0x280F, 0x355A, 0x8170, 0x21F3,
0xD320, 0xAB67, 0x00A7, 0xC7A0, 0x9A16, 0xECE0, 0x57FE, 0x256D, 0x07BE, 0x6AFA, 0xDB4F, 0xBB53, 0x6398, 0x2B97, 0x4BD7, 0x675F,
0xBBED, 0x0FC3, 0xC168, 0xDD1A, 0x91BB, 0xC6C3, 0xDE0F, 0x711A, 0x1955, 0xFD78, 0x1604, 0x1C4D, 0xCF52, 0xE6D1, 0xEFBF, 0xA8FB,
0x012C, 0xA2D9, 0xE263, 0x2C30, 0xE632, 0x2D97, 0x5C11, 0x3A8D, 0x0798, 0x37DF, 0x50A8, 0x7480, 0x6BF6, 0x271E, 0xF505, 0xA356,
0x2B0F, 0x2B28, 0xB614, 0x32DB, 0x71B0, 0xE0DC, 0xFB0F, 0x9647, 0xCADE, 0x93B7, 0x9F0C, 0xCE41, 0xC6EC, 0x0415, 0x042F, 0xDADF
};

uint8_t reverse_bits(uint8_t b) {
uint8_t mask = 0b11001100;
b = (b & mask) >> 2 | (b & ~mask) << 2;
mask = 0b10101010;
b = (b & mask) >> 1 | (b & ~mask) << 1;
return b;
}

void ny_dec(uint16_t *data, uint16_t cnt){
uint16_t i, t[1024+16];
uint8_t a, b;

for(i=0; i<cnt; i++) t[1023+16-i] = data[i] ^ nop_bin[i];

for(i=0; i<cnt-16; i++){
a = t[i];
b = t[i]>>8;

if(a == 0xf6 || (a&0x30) != 0x30) a = (a >> 3) | (a << (8-3));
else a = reverse_bits(a);
b = (b >> 5) | (b << (8-5));

data[i] = a<<8 | b;
data[i] &= 0x3FFF;
}

for(; i<cnt; i++){
a = t[i];
b = t[i]>>8;
b = (b >> 2) | (b << (8-2));
a = (a >> 6) | (a << (8-6));
data[i] = a<<8 | b;
}
}
--- End code ---


https://youtube.com/watch?v=HRjVPssgL48

Navigation

[0] Message Index

[*] Previous page

There was an error while thanking
Thanking...
Go to full version