Recommended Development Platform

C programming, build, interpreter/VM.
Target audience: MicroPython Developers.
Post Reply
tomlogic
Posts: 13
Joined: Tue Jul 19, 2016 10:20 pm

Recommended Development Platform

Post by tomlogic » Thu Aug 25, 2016 8:02 pm

I'm working to port MicroPython to an ARM-based platform, embedded inside of an existing codebase built with the IAR Embedded Workbench running under Windows.

I'd like to explore the codebase running on the pyboard to understand it better, but would like some guidance on the recommended development platform to do so. Per the project README.md, it looks like Arch Linux might be the easiest to set up due to packages for installing the ARM cross compiler. I'm somewhat familiar with Ubuntu, and already have a VM with a non-GUI Ubuntu 14.04.4 LTS that I've used for some other work.

Is anyone else using Ubuntu as a target? It looks like binutils-arm-none-eabi and gcc-arm-none-eabi might be enough to get started. Is there a reason the README mentions Arch but not Ubuntu?

How about MinGW/MSYS?

User avatar
dhylands
Posts: 3821
Joined: Mon Jan 06, 2014 6:08 pm
Location: Peachland, BC, Canada
Contact:

Re: Recommended Development Platform

Post by dhylands » Thu Aug 25, 2016 8:55 pm

I use Ubuntu LTS series (12.04, 14.04 and now 16.04).

I don't use the toolchain that you can install using ubuntu but rather use one from here: https://launchpad.net/gcc-arm-embedded/
I've used the linux, windows, and Mac versions.

I believe that Damien uses Arch linux for his development.

Under Windows, I normally use cygwin, but you can also use MinGW. I've also successfully built micropython and can talk to the pyboard using Windows 10 WSL (Windows subsystem for linux). You currently can't flash micropython using that environment.

I normally use ubuntu for doing all of my development (including MicroPython).

tomlogic
Posts: 13
Joined: Tue Jul 19, 2016 10:20 pm

Re: Recommended Development Platform

Post by tomlogic » Thu Aug 25, 2016 10:18 pm

Dave,

Thanks for the confirmation! I'll stick with Ubuntu since I already have the VM spun up. I was able to install the necessary packages and complete a build. I won't have my hardware until next week, but this is definitely promising. Most importantly (at the moment) is that I now have a generated pins_PYBV10.c file I can reference.

User avatar
pythoncoder
Posts: 5956
Joined: Fri Jul 18, 2014 8:01 am
Location: UK
Contact:

Re: Recommended Development Platform

Post by pythoncoder » Fri Aug 26, 2016 5:53 am

For what it's worth I have Debian 7 on my desktop boxes and Mint 17.1 on this laptop. I've also used a Debian 8.2VM for building ESP8266 images. All work fine for building firmware. I doubt you'll have any issues with a Debian based distro like Ubuntu.
Peter Hinch
Index to my micropython libraries.

philandstuff
Posts: 2
Joined: Mon Aug 29, 2016 10:00 am

Re: Recommended Development Platform

Post by philandstuff » Mon Aug 29, 2016 10:15 am

As yet another data point, I'm developing on NixOS. I do my development inside a nix-shell which isolates my micropython dependencies from other projects. My shell.nix is:

let pkgs = import <nixpkgs> {};
stdenv = pkgs.stdenv;
in
stdenv.mkDerivation {
name = "micropython-0.0.1";
buildInputs = with pkgs; [ git cmake python pythonPackages.pyusb libusb1 gcc-arm-embedded ];
}

Post Reply