Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support for stm32f722 possible? #1

Open
petem001 opened this issue Nov 11, 2020 · 26 comments
Open

Support for stm32f722 possible? #1

petem001 opened this issue Nov 11, 2020 · 26 comments

Comments

@petem001
Copy link

I have this dev board and I am wondering if it would be possible to compile the mmdvm firmware on this:

https://www.st.com/en/evaluation-tools/nucleo-f722ze.html

Thanks for the very large help you give to the community

Pierre
VE2PF

@juribeparada
Copy link
Owner

Hi Pierre,

I think so, this lib has the F722 support, but it is necessary to add support (pinouts, etc) of this board in the MMDVM project. It is clear for me you are using this Nucleo board, but what filter board (MMDVM board) are you using with this Nucleo board?.

@petem001
Copy link
Author

petem001 commented Nov 11, 2020 via email

@juribeparada
Copy link
Owner

OK, that board uses the Arduino connector, and it was designed for Nucleo64 F446 board. I can add the support for the MMDVM firmware, but I don't have any of your boards, I won't be able to test by myself.

@petem001
Copy link
Author

petem001 commented Nov 11, 2020 via email

@juribeparada
Copy link
Owner

juribeparada commented Nov 11, 2020

Well, it will not work because there is not support yet for your setup (Nucleo-144 F722 + ZUM board). That's why I need to add that support.
I will work on my own repository, and I will back to you (with additional instructions) when I think is ready. Once the new support is OK, I will add to G4KLX MMDVM code.

@petem001
Copy link
Author

petem001 commented Nov 11, 2020 via email

@juribeparada
Copy link
Owner

Hi,

please compile the firmware using my repository:
https://github.com/juribeparada/MMDVM

In the Config.h:
#define EXTERNAL_OSC 12000000
#define MODE_LEDS
#define STM32F7_NUCLEO_ARDUINO_HEADER
#define SEND_RSSI_DATA
#define SERIAL_REPEATER
#define USE_DCBLOCKER
#define USE_ALTERNATE_FM_LEDS

compile:
make f722 -j4

and finally:
sudo make deploy-f7

Let me know what happens.

@petem001
Copy link
Author

petem001 commented Nov 12, 2020 via email

@juribeparada
Copy link
Owner

It seems to me is almost everything OK!
The correct USB port is the ST-LINK USB. This device generates a serial port automatically for debugging (even without MMDVM firmware), and this debugging serial port is the MMDVM main communication port. Please see if you find a /dev/ttyACM0 device, this is the modem port for MMDVMHost.

@petem001
Copy link
Author

petem001 commented Nov 12, 2020 via email

@petem001
Copy link
Author

petem001 commented Nov 12, 2020 via email

@juribeparada
Copy link
Owner

I think you didn't attach the MMDVMHost log.
But try to compile the firmware again, but without RSSI support:
// #define SEND_RSSI_DATA

And try again.

@petem001
Copy link
Author

Think is the email system that stripped the logs.
Give me 10 minute I will recompile.

@petem001
Copy link
Author

i am sending back the old logs.

MMDVM-2020-11-12.log

ok after compling I have this.

Linking complete!

arm-none-eabi-size bin/mmdvm_f7.elf
text data bss dec hex filename
316556 1656 52980 371192 5a9f8 bin/mmdvm_f7.elf
arm-none-eabi-objcopy -O ihex bin/mmdvm_f7.elf bin/mmdvm_f7.hex
arm-none-eabi-objcopy -O binary bin/mmdvm_f7.elf bin/mmdvm_f7.bin
Objcopy from ELF to BINARY complete!

Objcopy from ELF to IHEX complete!

then:

pi-star@pi-star(rw):MMDVM$ sudo make deploy-f7
/usr/local/bin/openocd -f /usr/local/share/openocd/scripts/interface/stlink-v2-1.cfg -f /usr/local/share/openocd/scripts/target/stm32f7x.cfg -c "program bin/mmdvm_f7.elf verify reset exit"
Open On-Chip Debugger 0.10.0+dev-01488-ge44539d66-dirty (2020-11-10-18:13)
Licensed under GNU GPL v2
For bug reports, read
http://openocd.org/doc/doxygen/bugs.html
WARNING: interface/stlink-v2-1.cfg is deprecated, please switch to interface/stlink.cfg
Info : auto-selecting first available session transport "hla_swd". To override use 'transport select '.
Info : The selected transport took over low-level target control. The results might differ compared to plain JTAG/SWD
Info : clock speed 2000 kHz
Info : STLINK V2J29M18 (API v2) VID:PID 0483:374B
Info : Target voltage: 3.233006
Info : stm32f7x.cpu: hardware has 8 breakpoints, 4 watchpoints
Info : starting gdb server for stm32f7x.cpu on 3333
Info : Listening on port 3333 for gdb connections
Info : Unable to match requested speed 2000 kHz, using 1800 kHz
Info : Unable to match requested speed 2000 kHz, using 1800 kHz
target halted due to debug-request, current mode: Thread
xPSR: 0x01000000 pc: 0x08012bbc msp: 0x20040000
Info : Unable to match requested speed 8000 kHz, using 4000 kHz
Info : Unable to match requested speed 8000 kHz, using 4000 kHz
** Programming Started **
Info : device id = 0x10006452
Info : flash size = 512 kbytes
** Programming Finished **
** Verify Started **
** Verified OK **
** Resetting Target **
Info : Unable to match requested speed 2000 kHz, using 1800 kHz
Info : Unable to match requested speed 2000 kHz, using 1800 kHz
shutdown command invoked

Did a reboot
removing rssi did one thing, there is now no more
2020-11-12 18:01:12.835 DMR Slot 1, overflow in the DMR slot RF queue
in the logs.

But no change in the leds behavior.

I did releoad the firmware from github recompile it all and here is the config.h file I used to recompile renamed to .txt so github accept it.

Config.txt

@petem001
Copy link
Author

just a small update. if I reset the board I have the cos led flashing 3 time, then the ptt come back right away. with or without activity.

@petem001
Copy link
Author

new follow up. I had the #define MODE_PINS still active at my last compile. I removed it and still no change in the behavior

@juribeparada
Copy link
Owner

OK, it seems to me we have no clock (external) to the F722: I am looking at the data sheet, and with the F446 we use pin PB8 (Arduino connector) for external clock. Unfortunately, the F722 has no capabilities for external clock at the pin PB8, and only a few pins have that capabilities. Then, the solution for your case it will be not so elegant: to put a wire between the TCXO output of the ZUM board to PA15 (pin 9 of CN7, Arduino connector). I will change the external clock to PA15 now in my repo.

Captura de pantalla 2020-11-12 a las 17 52 11
Captura de pantalla 2020-11-12 a las 17 50 58

@petem001
Copy link
Author

Ok I will do that. I will need to remove the pin that goes to d15and will wire a cable to the down side of the nucleo board.

@petem001
Copy link
Author

petem001 commented Nov 13, 2020

OK! We have some new result. I took a female/female jumper between the 2 pins that are sticking out under the nucléo pcb.

jumper

the ptt is now following whit the activity on the networks.

I will now try to plug the modem to a radio so that I can check if the audio section is ok.

@juribeparada
Copy link
Owner

Excellent!, that confirm the PB8 pin issue.

@petem001
Copy link
Author

petem001 commented Nov 13, 2020 via email

@juribeparada
Copy link
Owner

Uhmm, that is strange. Please also see the MMDVMHost log (with log level = 1), and tell me what you see when the PTT is stuck. It would be very interesting to check DAC and ADC activity, you can do that also with the MMDVMCal software (sudo pistar-mmdvmcal)

@petem001
Copy link
Author

petem001 commented Nov 13, 2020 via email

@juribeparada
Copy link
Owner

OK, just be sure to not compile with RSSI support:
// #define SEND_RSSI_DATA

Because I still need to fix the RSSI support for this setup. Once we get RX and TX working properly, I will fix the RSSI.

@petem001
Copy link
Author

petem001 commented Nov 13, 2020 via email

@juribeparada
Copy link
Owner

OK, LEDs should not be a problem. Here I tested the new Arduino pinouts with my F767 board, and works fine so far. I also added the support for RSSI, and also works fine with my board (even if I compile with f722). Also Nextion display works fine with the serial repeater (PC12 and PD2 CN11).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants