Clearly one of the most useful and amazing things about T4.0 is that, being that it is only using 100ma running full 600mhz, I should be able to run code 100% of the time at 24mhz using just 4ma whereas T3.6 is using about 17ma to do the same.
I am disappointed there does not seem to be a simple way, or any stated way without being an expert and pouring through beta test thread, to do this.
As a disclaimer, this thread (https://forum.pjrc.com/threads/57439-Teensy-4-0-F_BUS-F_BUS_ACTUAL-F_CPU-F_CPU_ACTUAL) does not answer this question.
Unlike the other Teensy models, the 4.0 in Arduino IDE does not have different Mhz preselections built into the menu.
This is one of my favorite things about Teensy, being able to select lower Mhz for lower power usage, and it is totally gone in Teensy 4.0 where the whole benefit to me is lower power at 24mhz.
I tried calling "set_arm_clock(12000000);" instead of 600000000 in startup.c. The results were very disappointing. First, it transformed by Serial.println-then-delay(1000)-loop test program into a sequence of fast-as-possible Serial prints. It ruined delay(1000); it didn't delay.
Second, the power consumption only dropped to 36ma even though I tested with 12mhz and would expect 2ma power consumption interpolating from 100ma/600mhz. That is way worse than T36, let alone better.
Further, it is an advertised feature of the Teensy 4.0 that "Teensy 4.0 provides support for dynamic clock scaling" "and Arduino functions like delay() and millis(), and Teensyduino's extensions like IntervalTimer and elapsedMillis, continue to work properly while the CPU changes speed".
This, combined with the way better power/mhz ratio, is why I got extremely excited about Teensy 4.0.
How can I lower the clock speed properly? Why is there a dearth of mhz selections in the IDE like with T36? How can I either dynamically or statically lower clock speed?
Thank you.
I am disappointed there does not seem to be a simple way, or any stated way without being an expert and pouring through beta test thread, to do this.
As a disclaimer, this thread (https://forum.pjrc.com/threads/57439-Teensy-4-0-F_BUS-F_BUS_ACTUAL-F_CPU-F_CPU_ACTUAL) does not answer this question.
Unlike the other Teensy models, the 4.0 in Arduino IDE does not have different Mhz preselections built into the menu.
This is one of my favorite things about Teensy, being able to select lower Mhz for lower power usage, and it is totally gone in Teensy 4.0 where the whole benefit to me is lower power at 24mhz.
I tried calling "set_arm_clock(12000000);" instead of 600000000 in startup.c. The results were very disappointing. First, it transformed by Serial.println-then-delay(1000)-loop test program into a sequence of fast-as-possible Serial prints. It ruined delay(1000); it didn't delay.
Second, the power consumption only dropped to 36ma even though I tested with 12mhz and would expect 2ma power consumption interpolating from 100ma/600mhz. That is way worse than T36, let alone better.
Further, it is an advertised feature of the Teensy 4.0 that "Teensy 4.0 provides support for dynamic clock scaling" "and Arduino functions like delay() and millis(), and Teensyduino's extensions like IntervalTimer and elapsedMillis, continue to work properly while the CPU changes speed".
This, combined with the way better power/mhz ratio, is why I got extremely excited about Teensy 4.0.
How can I lower the clock speed properly? Why is there a dearth of mhz selections in the IDE like with T36? How can I either dynamically or statically lower clock speed?
Thank you.