Search found 93 matches

by chuckbook
Fri Sep 13, 2019 10:35 am
Forum: Pyboard D-series
Topic: Firmware for PyBoard D
Replies: 4
Views: 143

Re: Firmware for PyBoard D

Re: LCD160CR_1.1 screen update Theoretical limit for full screen updates using SPI fast protocol is 97 Hz. This requires a 32 MHz SPI clock. Smaller rectangular areas can be processed even faster. However, this technique requires a full frame buffer in host MCU RAM. (Original LCD160CR has a max. SPI...
by chuckbook
Wed Sep 11, 2019 5:25 pm
Forum: Pyboard D-series
Topic: Replacement USB fuse
Replies: 3
Views: 94

Re: Replacement USB fuse

You may replace the fuse with an SMD resistor < 0.1 Ohm. Of course there is no more protection but the board works fine. If I remember correctly, recent PYBD boards don't have a fuse installed. Any well designed USB host port should have built in over current protection. As it tuned out that many US...
by chuckbook
Sat Jun 22, 2019 7:20 am
Forum: Pyboard D-series
Topic: WBUS-EMMC how to tell if it's present
Replies: 6
Views: 261

Re: WBUS-EMMC how to tell if it's present

Where to start.. :) Most important (for MCU applications) there is no need for flaky connectors. But there are more: - extended temperature range - much more configuration options - trade in space for reliability (SLC emulation) - power efficiency - space requirements - better sourcing (who knows wh...
by chuckbook
Fri Jun 21, 2019 5:19 pm
Forum: Pyboard D-series
Topic: WBUS-EMMC how to tell if it's present
Replies: 6
Views: 261

Re: WBUS-EMMC how to tell if it's present

Wouldn't the usual way be to just try mounting and evaluate except? EMMC is definitely not a hot-plug device.
by chuckbook
Mon Jun 17, 2019 5:58 pm
Forum: Pyboard D-series
Topic: Using Timers on Pyboard 'D'.
Replies: 5
Views: 341

Re: Using Timers on Pyboard 'D'.

I didn't check in detail, but it looks like the callback method runs inside the interrupt service routine. This should be avoided because of several restrictions that apply to IRQ handlers. One of these restrictions is a locked heap within IRQ handlers. To circumvent this, the IRQ service routine ma...
by chuckbook
Thu May 23, 2019 8:32 am
Forum: Other Boards
Topic: [Any STM32 board] How much time this loop should take ?
Replies: 14
Views: 581

Re: [Any STM32 board] How much time this loop should take ?

The loop of the asm example takes 4 cycles.
This will result in 4e7 cycles (with 10e7 passes).
At 84 MHz I would expect ~476 ms.
by chuckbook
Wed May 22, 2019 7:57 pm
Forum: Pyboard D-series
Topic: i2c woe on pyboard d
Replies: 8
Views: 467

Re: i2c woe on pyboard d

I'm pretty sure there are 4 I2C interfaces on the F767! However, only two of them might be assigned to X & Y interfaces within of-the-shelf MPY binaries. I rarely use the default binaries and I have to admit that we are using our own board configurations where we define all the required interfaces a...
by chuckbook
Fri May 17, 2019 8:15 pm
Forum: Pyboard D-series
Topic: i2c woe on pyboard d
Replies: 8
Views: 467

Re: i2c woe on pyboard d

Hi Nicholas, agreed that the pyb/machine duality is sometimes pretty confusing. But there are good reasons to have them both. In short, pyb is only valid for stm32 MCUs, whereas machine tries to be manufacturer agnostic. Regarding I2C this means that the driver has to cover many different architectu...
by chuckbook
Wed Apr 17, 2019 2:47 pm
Forum: General Discussion and Questions
Topic: Anybody know how to make stdin non-blocking?
Replies: 4
Views: 309

Re: Anybody know how to make stdin non-blocking?

I thought so. But I agree, having some of the termios features on MPY's stdin would be nice.
So far we are using pyb.USB_VCP() to do things like USB to UART converters on pyboards.
by chuckbook
Wed Apr 17, 2019 8:48 am
Forum: General Discussion and Questions
Topic: Anybody know how to make stdin non-blocking?
Replies: 4
Views: 309

Re: Anybody know how to make stdin non-blocking?

Hi Dave,
I'm not quite sure I understood your problem but we always use termios with c_lflags ICANON == off and parameters:

Code: Select all

c_cc[VMIN] = 0
c_cc[VTIME] = 0
That makes perfect polling read.