MicroPython for Teensy 3.1

Status
Not open for further replies.
When I build the latest, then it reports the following size information:
Code:
LINK build/micropython.elf
   text	   data	    bss	    dec	    hex	filename
 199884	   1252	  20328	 221464	  36118	build/micropython.elf
 
I tried both the most recent version of the loader (1.2) and the build of 1.18 posted earlier in the forum.

My build reports:

Code:
LINK build/micropython.elf
   text	   data	    bss	    dec	    hex	filename
 199924	   1252	  20328	 221504	  36140	build/micropython.elf
HEX build/micropython.elf

I think that I'm just missing something..
 
Your size looks fine, so it has to be something to do with teensyduino.

I just installed arduino-1.0.6 and then installed tensyduino-1.20 on top of that and did:

cd micropython/teensy
ARDUINO=~/arduino-1.0.6 make deploy

and it downloads fine (and shows in the Teensy boot loader as 81%)
 
there were some changes a few revs back to Teensyduino, noted here in the forum by other than Paul, that allowed unused library code (mostly) to be omitted.
Maybe that's releated?
 
I don't think so.

I also tried:

USE_ARDUINO_TOOLCHAIN=1 ARDUINO=~/arduino-1.0.6 make deploy (after a make clean)

and that also works (the original invocation uses arm-none-eabi-gcc from your path). This invocation uses the toolchain from teensyduino.

In both cases, micropython is built with

CFLAGS += -fdata-sections -ffunction-sections
LDFLAGS += -Wl,--gc-sections

The size of the elf text being about 200K is correct. The teensy 3.1 has 256K flash. I'm not sure where the 312% is coming from (I only see 81-82%)

If you do:

USE_ARDUINO_TOOLCHAIN=1 ARDUINO=~/arduino-1.0.6 make V=1 deploy

then it will display the full command line of each command exeuted to do the build and the download.
 
Reviving this thread to comment on the clever online testing you can do of pyboard, see
http://micropython.org/live/
and the underlying 168 mhz STM32F405RG with RNG and floating point suggests a teensy3++ candidate.

(the other board I've recently played with is the Intel Edison with Arduino breakout. breakout has lots of real estate consumed with voltage levelers and such, but Arduino IDE works, though you'll see the latency and jitter from having linux manage the digital pins. So big Intel hardware and software teams can almost match what Paul does by himself -- and the help of a few friends.)
 
Last edited:
I believe Intel spent more on just their pavilion at Maker Faire, just one event, than PJRC sells on all Teensy board for an entire year.
 
... and the underlying 168 mhz STM32F405RG with RNG and floating point suggests a teensy3++ candidate.
I'd love to see a Teensy based on the STM32F415 rather than the '405, (64pin or better, the 100pin as it has more peripherals). Reduce development time by reuse of HAL libs for all I/O, wrappers for Teensyduino APIs.

But methinks Teensy is ever-implanted in the Freescale camp.
 
But methinks Teensy is ever-implanted in the Freescale camp.

Well, maybe. But 8 bit AVR to 32 bit ARM / Kinetis was certainly a much bigger change.

I do not believe I'd switch to ST's chips unless I had some contact and support from people within ST.
 
#3: Use the 32K data flash. The 2K EEPROM actually is a hardware layer that writes to this 32K area, so it can't be used when EEPROM is configured. It works pretty much the same way as normal flash, writes are 32 bits and erasing is 1K blocks. The big upside to using the 32k data flash is it doesn't interfere with the normal flash memory (or risk overwriting micropython itself), so interrupts don't need to be disabled and normal can be run, as long it doesn't access the data flash memory.

Has this been implemented?
I need to use the 32k flash as flash instead of as a 2k eeprom emulator.

thanks.
 
Status
Not open for further replies.
Back
Top