JojoS62

JojoS62

Member Since 7 years ago

Gelsenkirchen, Germany

Experience Points
5
follower
Lessons Completed
7
follow
Lessons Completed
47
stars
Best Reply Awards
47
repos

240 contributions in the last year

Pinned
⚡ Custom target definitions for Mbed5
⚡ SDIO block device driver
⚡ ARM mbed OS is a platform operating system designed for the internet of things
⚡ mbed on STM32F407 with AdafruitGFX for ILI9341
⚡ Example for usage of I2S and CS43L22 with mbed-os
⚡ HTTP and Websocket Server project
Activity
Nov
17
2 months ago
Activity icon
issue

JojoS62 issue comment Marus/cortex-debug

JojoS62
JojoS62

WSL2 support for in Cortex-Debug. Discussion and Strategy

WSL2 is next on my list. I am trying to set up a Windows machine (my previous WSL2 seems like it got corrupted). I would like people to subscribe to this Issue and comment and help test it. There are several issues and workarounds already related to this and I would like to consolidate the discussion here.

First, comments are welcome on how it should work.

JojoS62
JojoS62

are you using Windows 11 already? There WSL has more new features that are not available in Win 10.

Nov
15
2 months ago
Nov
13
2 months ago
Nov
12
2 months ago
Activity icon
issue

JojoS62 issue comment ARMmbed/mbed-os

JojoS62
JojoS62

STM32: fix SPI write with data >8 Bit

Summary of changes

the low level SPI write calls msp_write_data and passes data in single bytes. Sending data formats with more than 8 Bit are sending only 8 Bit with leading zeros for larger data. This PR passes the data as pointer to make the type casting depending on the bitshift value working.

Impact of changes

fix sending 16 Bit Problem as in #15113

Migration actions required

Documentation


Pull request type

[x] Patch update (Bug fix / Target update / Docs update / Test update / Refactor)
[] Feature update (New feature / Functionality change / New API)
[] Major update (Breaking change E.g. Return code change / API behaviour change)

Test results

urgent fix

[] No Tests required for this change (E.g docs only update)
[] Covered by existing mbed-os tests (Greentea or Unittest)
[] Tests / results supplied as part of this PR

Reviewers


JojoS62
JojoS62

I will try to continue tomorrow and fix the issues that @vznncv mentioned.

Nov
9
2 months ago
push

JojoS62 push JojoS62/custom_targets

JojoS62
JojoS62

enable LSE for F407 targets for RTC

commit sha: 7790a6cd76c08af332fdba5e59639d46dae2c962

push time in 2 months ago
push

JojoS62 push JojoS62/lvgl8-ST7735

JojoS62
JojoS62

set rtc, use RealTimeClock class

JojoS62
JojoS62

add runToMain, change default task

commit sha: 4d6c48aedfd09f9478809dec623b008db0ac17e9

push time in 2 months ago
Nov
7
2 months ago
Activity icon
issue

JojoS62 issue tw1chao/STLinkV3_Adapter

JojoS62
JojoS62

housing for Adapter

I have created a small box that can be 3D printed: https://www.thingiverse.com/thing:5101077

Thanks for this nice board design.

push

JojoS62 push JojoS62/lvgl8-ST7735

JojoS62
JojoS62

fix build error with custom_targets

JojoS62
JojoS62

change order for projects in workspace

JojoS62
JojoS62

commit sha: 060ef8ae8557796dda0342d68a78bc42be5a4f56

push time in 2 months ago
push

JojoS62 push JojoS62/blackmagic

JojoS62
JojoS62

Add support for NXP LPC11xx XL series, add 'readuid' command for some MCUs of the LPC11xx series where it was missing; add comments mapping Device IDs to part descriptions.

JojoS62
JojoS62

Turn error LED off after successful attach to target (error LED blinks on 'target lost').

JojoS62
JojoS62

platforms: stm32f4x1 blackpillv2 as variant of f4discovery

Compile as make PROBE_HOST=f4discovery BLACKPILL=1

JojoS62
JojoS62

Bug fix in Flash erase function for LPC MCUs.

JojoS62
JojoS62

remote/jtag_tdi_tdo_seq: Fix wrong bitmask calculation.

JojoS62
JojoS62

jtag_scan: Deliver full idcode to the handler.

JojoS62
JojoS62

ftdi_bmp: Export and use reset functions.

JojoS62
JojoS62

ftdi_bmp: Fix setting bits and FTDIJTAG srst.

JojoS62
JojoS62

cl_utils: Allow Hardware reset from the command line

JojoS62
JojoS62

remote/jtagtap_tdi_tdo_seq: Split up large transactions.

FIXME: One remote transaction still can only do up to 64 ticks, leaving room for speed enhancement with larger transactions. Firmware assumes (1LL << 65) == 0LL !

JojoS62
JojoS62

jtag_scan: Rework chain detection

Fixme: stlinkv2/hosted probably does only handle STM devices. Check if jtag_devs.c really needed.

JojoS62
JojoS62

hosted/dap: Fix tdi_tdo_seq.

JojoS62
JojoS62

adiv5_swdp_scan: If SWD scan fails, try a JTAG scan.

JojoS62
JojoS62

ftdi_bmp: Add verbosity for libftdi_jtagtap_tdi_tdo_seq()

JojoS62
JojoS62

target: target_error_check now defaults to not indicate error.

Remove unneeded nop_function from efm32

JojoS62
JojoS62

jtag: Make jtag_devs argument to jtag_handler.

JojoS62
JojoS62

ftdi_bmp.h: Fix error when compiling with HOSTED_BMP_ONLY=1

JojoS62
JojoS62

hosted: Make HOSTED_BMP_ONLY the default.

Hopefully more people will use it when reporting errors!

JojoS62
JojoS62

adiv5_swdp: Initialize initial_dp with the definition

JojoS62
JojoS62

Escape '*' in responses of the Remote Serial Protocol, to avoid that it is interpreted as the start of an RLE sequence

commit sha: 7307f086c6425ee8a91fa2c3cd69c210a3cd165d

push time in 2 months ago
Nov
6
2 months ago
started
started time in 2 months ago
Nov
3
2 months ago
open pull request

JojoS62 wants to merge ARMmbed/mbed-os

JojoS62
JojoS62

WeAct Blackpill F411CE target

Summary of changes

Add WeAct BlackPill F411CE target

Impact of changes

Migration actions required

Documentation

Add board page


Pull request type

[x] Patch update (Bug fix / Target update / Docs update / Test update / Refactor)
[] Feature update (New feature / Functionality change / New API)
[] Major update (Breaking change E.g. Return code change / API behaviour change)

Test results

[] No Tests required for this change (E.g docs only update)
[] Covered by existing mbed-os tests (Greentea or Unittest)
[] Tests / results supplied as part of this PR

Reviewers

@ARMmbed/team-st-mcd @ARMmbed/mbed-os-maintainers


JojoS62
JojoS62

looks like a typo, the board has a 25 MHz crystal

pull request

JojoS62 merge to ARMmbed/mbed-os

JojoS62
JojoS62

WeAct Blackpill F411CE target

Summary of changes

Add WeAct BlackPill F411CE target

Impact of changes

Migration actions required

Documentation

Add board page


Pull request type

[x] Patch update (Bug fix / Target update / Docs update / Test update / Refactor)
[] Feature update (New feature / Functionality change / New API)
[] Major update (Breaking change E.g. Return code change / API behaviour change)

Test results

[] No Tests required for this change (E.g docs only update)
[] Covered by existing mbed-os tests (Greentea or Unittest)
[] Tests / results supplied as part of this PR

Reviewers

@ARMmbed/team-st-mcd @ARMmbed/mbed-os-maintainers


push

JojoS62 push JojoS62/custom_targets

JojoS62
JojoS62

120 MHz clock for SPI123. Affects als CAN-FD

commit sha: 8164527747d272955b79bc8ce6469a2af1154a2b

push time in 2 months ago
Activity icon
created branch

JojoS62 in JojoS62/testSPI create branch test-fastSPI

createdAt 2 months ago
Nov
1
2 months ago
Activity icon
issue

JojoS62 issue comment ARMmbed/mbed-os

JojoS62
JojoS62

STM32: fix SPI write with data >8 Bit

Summary of changes

the low level SPI write calls msp_write_data and passes data in single bytes. Sending data formats with more than 8 Bit are sending only 8 Bit with leading zeros for larger data. This PR passes the data as pointer to make the type casting depending on the bitshift value working.

Impact of changes

fix sending 16 Bit Problem as in #15113

Migration actions required

Documentation


Pull request type

[x] Patch update (Bug fix / Target update / Docs update / Test update / Refactor)
[] Feature update (New feature / Functionality change / New API)
[] Major update (Breaking change E.g. Return code change / API behaviour change)

Test results

urgent fix

[] No Tests required for this change (E.g docs only update)
[] Covered by existing mbed-os tests (Greentea or Unittest)
[] Tests / results supplied as part of this PR

Reviewers


JojoS62
JojoS62
* according F4 reference manual (and code of HAL library), the SPI should disabled when we need to change transfer direction

yes, that will be better. Also the transfer for H7 needs to start in disabled state. I wanted to shorten the gap between to writes, it takes also on the fast H7 a few microsecnds.

I have published the current testcode on github: https://github.com/JojoS62/testSPI

And played also with higher SPI speeds. When the H7 is used with PLL3P, then a modification in the init code is neccessary, it destroys a previous set PLL3 setting. But for higher speeds, DMA would be better and that is missing in mbed-os. Because there are so many options, it will be easier to use CubeMX code in a subclassed SPI. Not portable, but I think such features are beyond a versatile OS.

push

JojoS62 push JojoS62/custom_targets

JojoS62
JojoS62

PLL3 P changed for 120 MHz clock to SPI123 needs modification in stm_spi_api.c to use

commit sha: 4be6d6838a5c1c02c37dd6f7cf45dab3d18b428f

push time in 2 months ago
Activity icon
created branch

JojoS62 in JojoS62/testSPI create branch master

createdAt 2 months ago
Activity icon
created repository

JojoS62 in JojoS62/testSPI create repository

createdAt 2 months ago
Oct
31
2 months ago
Oct
30
2 months ago
Activity icon
created branch

JojoS62 in JojoS62/mbed-os create branch spi-trial

createdAt 2 months ago
Activity icon
issue

JojoS62 issue ARMmbed/mbed-os

JojoS62
JojoS62

SPI::transfer is defined in spi.h and spi.cpp

Description of defect

while examing problems with the current SPI implementation in #15115, I found that SPI::transfer is defined twice. Is this intended or is just not removed during compiling?

The transfer function is declared as template including code: https://github.com/ARMmbed/mbed-os/blob/07e119b46754fc313947f3ce8399c68a613f0c77/drivers/include/drivers/SPI.h#L258-L266

And also as code in : https://github.com/ARMmbed/mbed-os/blob/07e119b46754fc313947f3ce8399c68a613f0c77/drivers/source/SPI.cpp#L281-L288

I can remove the code from SPI.cpp and it still compiles fine because its created from the header.

Target(s) affected by this defect ?

Targets with ASYNC_SPI

Toolchain(s) (name and version) displaying this defect ?

gcc 10.2.1

What version of Mbed-os are you using (tag or sha) ?

mbed-os-6.15.0

What version(s) of tools are you using. List all that apply (E.g. mbed-cli)

mbed-tools 7.44.0

How is this defect reproduced ?

with code that uses SPI.transfer()

Activity icon
issue

JojoS62 issue comment ARMmbed/mbed-os

JojoS62
JojoS62

SPI::transfer is defined in spi.h and spi.cpp

Description of defect

while examing problems with the current SPI implementation in #15115, I found that SPI::transfer is defined twice. Is this intended or is just not removed during compiling?

The transfer function is declared as template including code: https://github.com/ARMmbed/mbed-os/blob/07e119b46754fc313947f3ce8399c68a613f0c77/drivers/include/drivers/SPI.h#L258-L266

And also as code in : https://github.com/ARMmbed/mbed-os/blob/07e119b46754fc313947f3ce8399c68a613f0c77/drivers/source/SPI.cpp#L281-L288

I can remove the code from SPI.cpp and it still compiles fine because its created from the header.

Target(s) affected by this defect ?

Targets with ASYNC_SPI

Toolchain(s) (name and version) displaying this defect ?

gcc 10.2.1

What version of Mbed-os are you using (tag or sha) ?

mbed-os-6.15.0

What version(s) of tools are you using. List all that apply (E.g. mbed-cli)

mbed-tools 7.44.0

How is this defect reproduced ?

with code that uses SPI.transfer()

JojoS62
JojoS62

I got it, the function signatures are different. When the buffer pointer is used, then the bit_width is calculated by size_of(TYPE). In case of a generic void pointer, the size must be provided. This can produce nasty problems when casting the buffer pointer to (char*).

Activity icon
issue

JojoS62 issue ARMmbed/mbed-os

JojoS62
JojoS62

SPI::transfer is defined in spi.h and spi.cpp

Description of defect

while examing problems with the current SPI implementation in #15115, I found that SPI::transfer is defined twice. Is this intended or is just not removed during compiling?

The transfer function is declared as template including code: https://github.com/ARMmbed/mbed-os/blob/07e119b46754fc313947f3ce8399c68a613f0c77/drivers/include/drivers/SPI.h#L258-L266

And also as code in : https://github.com/ARMmbed/mbed-os/blob/07e119b46754fc313947f3ce8399c68a613f0c77/drivers/source/SPI.cpp#L281-L288

I can remove the code from SPI.cpp and it still compiles fine because its created from the header.

Target(s) affected by this defect ?

Targets with ASYNC_SPI

Toolchain(s) (name and version) displaying this defect ?

gcc 10.2.1

What version of Mbed-os are you using (tag or sha) ?

mbed-os-6.15.0

What version(s) of tools are you using. List all that apply (E.g. mbed-cli)

mbed-tools 7.44.0

How is this defect reproduced ?

with code that uses SPI.transfer()

Activity icon
issue

JojoS62 issue comment ARMmbed/mbed-os

JojoS62
JojoS62

STM32: fix SPI write with data >8 Bit

Summary of changes

the low level SPI write calls msp_write_data and passes data in single bytes. Sending data formats with more than 8 Bit are sending only 8 Bit with leading zeros for larger data. This PR passes the data as pointer to make the type casting depending on the bitshift value working.

Impact of changes

fix sending 16 Bit Problem as in #15113

Migration actions required

Documentation


Pull request type

[x] Patch update (Bug fix / Target update / Docs update / Test update / Refactor)
[] Feature update (New feature / Functionality change / New API)
[] Major update (Breaking change E.g. Return code change / API behaviour change)

Test results

urgent fix

[] No Tests required for this change (E.g docs only update)
[] Covered by existing mbed-os tests (Greentea or Unittest)
[] Tests / results supplied as part of this PR

Reviewers


JojoS62
JojoS62

some points I've found so far:

  • the driver for F4 is working now
  • disabling/enabling is expensive and should be avoided in read/write. For the the F4, it is working with a fixed setting
  • F4: after initializing, a set direction avoids start firing clocks
  • H7: set direction is locked when SPI is enabled. disable/enable is also expensive here
  • the testprogram is not working yet with async 4-wire.
Activity icon
issue

JojoS62 issue comment lvgl/lvgl_esp32_drivers

JojoS62
JojoS62

ili9488: Start updating to new display port interface

JojoS62
JojoS62

I'm following the lvgl development in general, and have looked also how different drivers are implemted. I haven't used the ILI94xx yet, and I would not use higher resolutions with SPI. I was also not aware that these drivers do not offer RGB565 with SPI, so even more worse. I understand that the ESP32 has not enough pins for parallel interfacing, but then this controller is simply not well suited for such displays. Technically, it can be used, but with for the cost of speed. There is nice table of different controllers/displays that are supported with ESP, maybe it can be extended by a note or measurements of performance.

Oct
29
2 months ago
Activity icon
issue

JojoS62 issue comment ARMmbed/mbed-os

JojoS62
JojoS62

STM32: fix SPI write with data >8 Bit

Summary of changes

the low level SPI write calls msp_write_data and passes data in single bytes. Sending data formats with more than 8 Bit are sending only 8 Bit with leading zeros for larger data. This PR passes the data as pointer to make the type casting depending on the bitshift value working.

Impact of changes

fix sending 16 Bit Problem as in #15113

Migration actions required

Documentation


Pull request type

[x] Patch update (Bug fix / Target update / Docs update / Test update / Refactor)
[] Feature update (New feature / Functionality change / New API)
[] Major update (Breaking change E.g. Return code change / API behaviour change)

Test results

urgent fix

[] No Tests required for this change (E.g docs only update)
[] Covered by existing mbed-os tests (Greentea or Unittest)
[] Tests / results supplied as part of this PR

Reviewers


JojoS62
JojoS62

now it looks fine on the F407, also with LL SPI. I added a SPI_1LINE_TX(handle);before enabling SPI, this prevented it to start generating clocks. There is only clock, but before setting spi enable.

grafik

Previous