Ideas for next evolution of pyboard

The official pyboard running MicroPython.
This is the reference design and main target board for MicroPython.
You can buy one at the store.
Target audience: Users with a pyboard.
User avatar
Roberthh
Posts: 3667
Joined: Sat May 09, 2015 4:13 pm
Location: Rhineland, Europe

Re: Ideas for next evolution of pyboard

Post by Roberthh » Mon Dec 14, 2015 6:10 am

In any form factor, whether compute module or "dual row breadboard friedly design", it would be helpful to have the USB signals on the port pins, such that one could use another form factor for USB when integrating the PyBoard into another board. The micro-USB plug is too flimsy to withstand a day-to-day lab use.

User avatar
marfis
Posts: 215
Joined: Fri Oct 31, 2014 10:29 am
Location: Zurich / Switzerland

Re: Ideas for next evolution of pyboard

Post by marfis » Fri Dec 18, 2015 10:39 pm

If I was going to create a new board, I think that having a board with a focus of low power would be good (perhaps using one of the new STM32L4 MCUs).
+1

The L4 series looks promising because of the updated peripherals, opamps etc. It has better flash bank organisation (256 pages of 2 Kbyte) which would make it easier for an integrated file system (it could use all the space for the FS rather than just a part of it).

If it's low power it would make sense to add charge managment for LiPo, possibly add a FET so that it can be switched off completely (either by a switch or by GPIO - self terminating).

pinout / physical shape - perhaps similar as the espruino pico? Can be directly soldered to an add-on board which is mechanically a sound solution. Maybe it can be designed to have a rounded shape, similar to the adafruit gemma boards so it will have an individual touch.

comm: IR is so cheap and easy to implement - and the L4 would have integrated OpAmps so this might be a really easy way of integrating a simple wireless link. And besides it can be used to detect sunlight levels as well ;)

touch: the L4 has integrated touch functionality. Maybe that can be used to make some simple controls on the board (and it's probably also cheap because it can be done without any components).

LED: a neopixel footprint?

And at last a SW wish: Wouldn't it be nice to have a simple OS written in uPy rather than using an RTOS of manufacturer xyz (with licencing issues)?

User avatar
bmarkus
Posts: 111
Joined: Tue Oct 21, 2014 5:58 am

Re: Ideas for next evolution of pyboard

Post by bmarkus » Sat Dec 19, 2015 6:47 am

marfis wrote: And at last a SW wish: Wouldn't it be nice to have a simple OS written in uPy rather than using an RTOS of manufacturer xyz (with licencing issues)?
Just curious, what do you mean as OS on the board, which additional features would make uPy qualified as OS?
Tiny Core Linux (piCore) developer
HAM radio call: HA5DI (Béla)

User avatar
marfis
Posts: 215
Joined: Fri Oct 31, 2014 10:29 am
Location: Zurich / Switzerland

Re: Ideas for next evolution of pyboard

Post by marfis » Sun Dec 20, 2015 3:15 pm

Just curious, what do you mean as OS on the board, which additional features would make uPy qualified as OS?
I remarked this because of a presentation by David Beazley (see http://www.dabeaz.com/coroutines/ resp. http://www.dabeaz.com/coroutines/Coroutines.pdf for the slides). In part 7 (slide 110) he is talking about how to write an OS in pure python using coroutines. I really liked that (although - it still spins my head ... I worked thorough his slides 2x and yet I still find it difficult to grasp.)

To answer your question about which features it basically comes down to task switching, scheduling, maybe even some control things like killing task. An Idle task that would default to low power?

As the author points out it is possible by using only yield, yet I believe the subject is complex and should be carefully desigend - hence my proposal. I'm no expert on the subject and maybe there are already proposal floating around here (I believe @pythoncoder has a microscheduler implemented). So if something can be "officiallized" by the community that'd be great. I'm happy to help with that.

gbulmer
Posts: 2
Joined: Sun Jan 03, 2016 10:59 pm

Re: Ideas for next evolution of pyboard

Post by gbulmer » Sun Jan 03, 2016 11:34 pm

I haven't seen any mention of Esspressif's new chip, the ESP32, on this forum.

Some details of the ESP32 were released via twitter in November

Summary:
  • 400kB SRAM
  • dual core Tensilica L108 cores, running at 160MHz.
  • Faster WiFi (144.4Mbps)
  • Bluetooth LE, and legacy Bluetooth
AFAIK, like the existing ESP8266 it uses external Quad-SPI flash to store its programs, and loads them when it boots.

I assume GCC for the Tensilica L108 is the same/similar to GCC for the ESP8266.

It has a long list of interesting peripherals:
  • GPIO (close to 40)
  • PWM (on all GPIO pins)
  • ADC (16 pins)
  • DAC (dual)
  • I2C
  • UART
  • SPI
  • SDIO
  • I2S
  • RMII - ethernet
  • capacitive touch (10 pins)
  • (No USB)
And so is much more like a traditional MCU than the ESP8266.

Here is a pin-out of the first Espressif module

They are suggesting one core for wireless, and the other for applications.

The developers forum is at http://esp32.com/
There is an interview with the CEO of Espressif

The expectation is it will be more expensive than an ESP8266, but the hope is it will be very competitive.

There are some videos posted by beta-testers at YouTube with ESP32 in the title.

I'd imagine some Micropython folks might be able to get a beta, or early product, if you are interested.

G Bulmer
PS - I have no relationship with Espressif.
I thought it worth mentioning ESP32 as it seems to fit some of the desires expressed in this thread.

beyonlo
Posts: 58
Joined: Thu Nov 26, 2015 8:03 pm

Re: RE: Re: Ideas for next evolution of pyboard

Post by beyonlo » Wed Jan 06, 2016 4:48 am

gbulmer wrote:I haven't seen any mention of Esspressif's new chip, the ESP32, on this forum.

Some details of the ESP32 were released via twitter in November

Summary:
  • 400kB SRAM
  • dual core Tensilica L108 cores, running at 160MHz.
  • Faster WiFi (144.4Mbps)
  • Bluetooth LE, and legacy Bluetooth
AFAIK, like the existing ESP8266 it uses external Quad-SPI flash to store its programs, and loads them when it boots.

I assume GCC for the Tensilica L108 is the same/similar to GCC for the ESP8266.

It has a long list of interesting peripherals:
  • GPIO (close to 40)
  • PWM (on all GPIO pins)
  • ADC (16 pins)
  • DAC (dual)
  • I2C
  • UART
  • SPI
  • SDIO
  • I2S
  • RMII - ethernet
  • capacitive touch (10 pins)
  • (No USB)
And so is much more like a traditional MCU than the ESP8266.

Here is a pin-out of the first Espressif module

They are suggesting one core for wireless, and the other for applications.

The developers forum is at http://esp32.com/
There is an interview with the CEO of Espressif

The expectation is it will be more expensive than an ESP8266, but the hope is it will be very competitive.

There are some videos posted by beta-testers at YouTube with ESP32 in the title.

I'd imagine some Micropython folks might be able to get a beta, or early product, if you are interested.

G Bulmer
PS - I have no relationship with Espressif.
I thought it worth mentioning ESP32 as it seems to fit some of the desires expressed in this thread.
That is great news :)
Do you know about the power consumption?

gbulmer
Posts: 2
Joined: Sun Jan 03, 2016 10:59 pm

Re: RE: Re: Ideas for next evolution of pyboard

Post by gbulmer » Wed Jan 06, 2016 10:33 pm

beyonlo wrote:
gbulmer wrote:I haven't seen any mention of Esspressif's new chip, the ESP32, on this forum.

Some details of the ESP32 were released via twitter in November

Summary:
  • 400kB SRAM
  • dual core Tensilica L108 cores, running at 160MHz.
  • Faster WiFi (144.4Mbps)
  • Bluetooth LE, and legacy Bluetooth
AFAIK, like the existing ESP8266 it uses external Quad-SPI flash to store its programs, and loads them when it boots.

I assume GCC for the Tensilica L108 is the same/similar to GCC for the ESP8266.

It has a long list of interesting peripherals:
...
And so is much more like a traditional MCU than the ESP8266.

Here is a pin-out of the first Espressif module

They are suggesting one core for wireless, and the other for applications.
...
I thought it worth mentioning ESP32 as it seems to fit some of the desires expressed in this thread.
That is great news :)
Do you know about the power consumption?
I haven't seen a proper datasheet for it.
Remember, the current beta chip is being called 'ESP31B', so it may change in all sorts of ways.

The only power consumption figures I've noticed are extracted from, IIRC, a marketing document by at http://esp32.de/
it says "Low Power: sub-1uA sleep".

The interview with the Espressif CEO is talking about many low-power features, but nothing concrete.

On the ESP32 forum, someone is measuring the ESP31B:
http://esp32.com/viewtopic.php?f=2&t=76 ... ption#p310
where someone posted graphs showing it running it at 103mA.

This is a bit disappointing, but I'll wait for the real chip before making judgements.

mad474
Posts: 60
Joined: Sun Dec 29, 2013 7:48 pm

Re: Ideas for next evolution of pyboard

Post by mad474 » Sat Jan 09, 2016 6:26 pm

A cheerful and serene New Year! Most has been said. I'd propagate a MicroPythonPico:

Hardware
Pico, unique, innovative form factor (yet sustainable = compatible w 1.x?) +
Low, really loooohhh price (see below) +
BLE (also not to interfere with wipy concept) +
Bare bare bones (xept something neat + small onboard = RGB-LED + DS18B20?) +
Low power/energy (works ootb w low cost ~1W solar panel?)

Software
uBluez/uBLE module with goodies:
- piconet-functions
- IOT-capabilities = IPv6/BLE

Questions
Is USB-port immanent? Pins only?
How is it achieveable that everyone wants min 2 better 5 µPps?
What is necessary to go below magic GBP 10 limit? STM32L476RET6+NRF8001=?)
Isn't it time to raise a foundation? :-)

Count me in as investor if opportune
/herbert

dastultz
Posts: 20
Joined: Mon Jan 11, 2016 2:56 am

Re: Ideas for next evolution of pyboard

Post by dastultz » Tue Jan 12, 2016 5:04 pm

I think a lot of people here have some good ideas about stuff I'm not really qualified to judge. I have a couple of Teensy's (Teensies?) lying around. One of the reasons I got the Teensy was because it has a way to run as a standard MIDI device. Just plug it in to USB and it shows up as a system MIDI device, no serial program to run to bridge the gap.

I know MicroPython can run on Teensy and I may get around to trying it, but if it's not hard it would be great to have it in a Pyboard that has all the other great stuff like LEDs and SD card reader. (I'm not sure MicroPython on a Teensy would necessarily support the MIDI mode, I don't have any idea how it works.)

Thanks.

Awesome project, by the way. This has totally transformed my microcontroller work!

/Daryl

JimTal001
Posts: 176
Joined: Thu Jul 30, 2015 4:59 pm

Re: Ideas for next evolution of pyboard

Post by JimTal001 » Thu Jan 14, 2016 6:22 pm

Consider using the MCU:
Kinetis KL03 32 KB Flash
World's smallest MCU based on ARM® technology.
48 MHz Cortex-M0+ Based Microcontroller
Static power consumption as low as 2.2 µA with 7.5 µs
wakeup time for full retention and lowest static mode down to 77 nA in deep sleep

Post Reply