Hi DS! > Battery support for the C139 is very cool! It's a great step towards > a fully usable C139 with a free firmware.
Well, it still doesn't work quite right: I still need to understand why the battery voltage as measured by the ADC keeps climbing past the 4.2V mark in the CV charging mode, causing the charging process to end by the overvoltage condition very shortly after the beginning of the CV phase, while the charging current is still high. Unfortunately Mot's official fw for the C139 does not emit any debug traces whatsoever related to the charging process, so it is very difficult to see what it does. They removed TI's ETM, but kept the old non-enhanced Test Mode component in L1, presumably because they needed this L1TM to do RF calibration on their production line - so I thought about using the old L1TM ABB register read command to read the charging-related Iota registers while Mot's fw does its charging process. But the numbers it returns are garbage that cannot possibly be the Iota register values (it returns garbage for all ABB register read attempts, not just the charging-related registers), so they must have broken something in that L1TM ABB register read path. I did capture one set of charging control register values by breaking into the running fw with tfc139 while it was charging, and then reading the ABB registers in fc-loadtool - but this method can only capture a single snapshot at a not-particularly-controlled point, not the full charging process. Pirelli's fw is much better in this regard: their charging code is closely based on TI's old PWR driver, all of that old driver's debug traces are still there, and we can read the ABB registers while the fw is running through either ETM or L1TM commands. My current plan is to write an rvinterf-based program that will interrogate the running fw for all of the relevant ABB registers after each "IQ EXT: ADC End" trace while logging everything, and thus capture a complete picture of the entire battery charging process as performed by Pirelli's fw. The charging hw is sufficiently similar between Mot C1xx and the Pirelli (or at least it is my understanding) that I hope to be able to port these observations over to the C139. I also remember you saying that you have several C11x phones with 4 MiB flash that can run that one special fw version we found with a linker map with symbols - would you perchance be able to send me one of those phones? I never found any C139 fw with symbols, only that one version for C11x with 4 MiB flash, but we have good reason to assume that the charging hw and the fw's charging control algorithms are most likely the same between C11x and C139, thus it seems promising to reverse-eng the charging process on the C11x and then port it over to the C139. Right now FC Magnetite cannot run on C11x phones, not even the 4 MiB flash version, because it needs 512 KiB of XRAM - but all current FC Magnetite configs still have CSD, fax and GPRS enabled, sitting as non-exercisable dead weight in the C139 and Pirelli builds. One of my near-term plans is to build hybrid configs with GPRS and FAX_AND_DATA disabled, and see if the XRAM usage goes down sufficiently to allow a port to the C11x target. > I was wondering: how do you measure energy consumption? Do you need > external equipment such as a scope or multimeter? My current setup is very crude: I powered the phones under test from a basic low-end bench power supply (the kind on which you control the output voltage by turning a knob until the voltage display reads the desired number) with alligator clips on the battery contacts (a *very* hacky and poor connection) and simply read the numbers on this bench supply's built-in ammeter display. I do not expect particularly high accuracy from this crude setup, but it was sufficient to confirm my suspicion about the Pirelli and to reassure me that the same problem does not occur on the C139. M~ _______________________________________________ Community mailing list Community@freecalypso.org https://www.freecalypso.org/mailman/listinfo/community