Author Topic: Git from Maxim max35104evkit2_max32625mbed.git  (Read 867 times)

0 Members and 1 Guest are viewing this topic.

Offline ace1903Topic starter

  • Regular Contributor
  • *
  • Posts: 240
  • Country: mk
Git from Maxim max35104evkit2_max32625mbed.git
« on: October 04, 2024, 06:27:32 am »
Hi All,

Recently for personal project I purchased MAX35104evkit2 module and mounted it on STM32H745 board.
All accompanying firmware code from Maxim that was promised on marketing materials is nowhere to be found.
Seems after Analog Devices acquisition of  Maxim all Maxim's gits from github are removed.

I managed to find some personal gits for MAX35104 on github and wrote code for STM32H745 ST board myself
and got ultrasound measurements working(basic things). But to be able to use chip fully I need to emulate MAX32625 part fully.
Basically to find how several functions are implemented in order to emulate them fully (it is difficult to deduce from function's names).

I was wondering if someone has copy of this git: max35104evkit2_max32625mbed.git that can share with me?
Or some creative idea how to find git from github that now is not available?
Full path is:
url = git@github.com:maxim-ic-flow/max35104evkit2_max32625mbed.git

I asked on AD forum for support but no response till now.
It is personal project so no access to FAE or specials channels for communication with Analog Device.



 

Online bob1033

  • Contributor
  • Posts: 13
  • Country: us
 
The following users thanked this post: ace1903

Offline ace1903Topic starter

  • Regular Contributor
  • *
  • Posts: 240
  • Country: mk
Re: Git from Maxim max35104evkit2_max32625mbed.git
« Reply #2 on: October 04, 2024, 04:17:44 pm »
Actually I have those two gits, I miss the third one.
Function that I think causes problems in my implementation is:
uint16_t board_max3510x_interrupt_status(void)
There is another function that reads interrupt flags directly from the chip:
uint16_t max3510x_interrupt_status( max3510x_t p_max3510x )
The first one, in my opinion somehow flags events from interrupt line and from system timer for scheduled timer trigger.
Think it is all related to low power mode that I don't need.
Probably software stack expect code somewhere to go to sleep and on interrupt wake to provide measurements to upper layers.

Good to see that AD refreshes some gits and for the git that I need there is hope that will appear.
Thanks for pointing AD github repo.
 

Online DavidAlfa

  • Super Contributor
  • ***
  • Posts: 6430
  • Country: es
Re: Git from Maxim max35104evkit2_max32625mbed.git
« Reply #3 on: October 05, 2024, 04:17:41 pm »
Maybe this helps?

https://github.com/analogdevicesinc/arduino-max326xx

Try Internet Archive!
Hantek DSO2x1x            Drive        FAQ          DON'T BUY HANTEK! (Aka HALF-MADE)
Stm32 Soldering FW      Forum      Github      Donate
 

Offline ace1903Topic starter

  • Regular Contributor
  • *
  • Posts: 240
  • Country: mk
Re: Git from Maxim max35104evkit2_max32625mbed.git
« Reply #4 on: October 05, 2024, 06:00:03 pm »
Short update:
Part of the problems were caused by errata in STM32H7 devices:
"With the system clock (spi_pclk) substantially faster than SCK (spi_ker_ck divided by a prescaler), SPI master
data transfer can stall upon setting the CSTART bit within one SCK cycle after the EOT event (EOT flag raise)signaling the end of the previous transfer."

Got distracted and tried dozens of combinations of clocks and SPI speeds. Found nice traffic on logic analyzer in one debug session and complete garbage in very next one, without changing code in between.
Then decided to move project to STM32G491 nucleo board that has SPI part in errata substantially cleaner. Using CubeMX made this move 1hour job.

Mangled data appeared again and I started debugging more thoroughly.
max3510x_read_registers contains following call to SPI driver level:
     max3510x_spi_xfer( p_max3510x, p_reg, p_reg, size );
STM32 spi hardware with same transmit and receive data pointer registers was doing not so funny things. Data that looked almost right.
Adding temporary buffer fixed SPI traffic and I got proper interrupts from ultrasound chip.
Seems my understanding for software stack is on track and just need to emulate that in FreeRTOS.

It will be nice if git that I need appear in AD's repo, but it is not end of the world if it doesn't.
Makes me more aware of how much proper comments in code are helping and shorten development time.

Maybe I will try again with STM32H745 because I like nice display with TouchGFX, but decoding that wording "substantially faster" doesn't sound like fun job.

Arduino git for max326xx doesn't provide info that I need. Have heard for Internet Archive several times but I have no idea what is that, where to find it and how it works. Google gives me nonsense links if I search for that.

Thanks to all of you that helped with replays and reading my thoughts. 

 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf