Forum

Update 1.0.2 Is now...
 
Notifications
Clear all

Update 1.0.2 Is now live!

6 Posts
2 Users
1 Reactions
339 Views
Posts: 102
Admin
Topic starter
(@nivbot)
Member
Joined: 11 months ago

Hello all,

It took some time but the new firmware is ready and so is a new and improved VetusGUI. Versions 1.0.2 of Both the firmware and GUI are ready. Here is a copy and paste from the downloads page. 

Vetus GUI – Test Uploading/Writing

What’s new? Well, a fair bit. First of all, the UI of VetusGUI has been made a little better looking. Hopefully, you agree. It has also been made more useful for those who want more control of testing and the tests in the board. Here is a run down of what’s been changed and how to use the new features. The link is below the update notes. You SHOULD read the notes if you plan to make your own tests.

UI Fixes

  • The UI is now laid out a little better and everything you need for chips is on one screen.
  • After loading chips from Vetus you now have the option to delete or load a selected chip.
  • Tooltips have been added
  • The code window now has line numbers for easier determination of jump locations.
  • The code window now has color coded tags. Opcodes are now blue, comments are green and so on.
  • A toggle has been added to darken the code window and whiten the normal text for easier viewing.
  • You can now add comments to your code use /* comment here */ type tags. Do not comment past the code window. If you need more space then use enter to go to the next line. Comment one line at a time but you only need to use /* */ once.
  • You can now copy, cut, paste and select all using the mouse.
  • There is now a button near the code window for error checking. It gives a basic test for syntax. It should be useful.
  • Code formatting such as indentations and spaces will be preserved through file saving and on the code box in VetusGUI. At the moment is still not possible to format code imported from Vertus Pars.

Variables

Variables are now at your disposal. You can use a variable for a value or a register. Variables do not use code space so your 256 opcode lines are not affected. To declare a variable you need to use the keyword “DIM” (call me nostalgic) like so: DIM MYVAR 0xFF now you can use MYVAR wherever you would normally want to use 0xFF. Yeah, that’s not really a variable because it doesn’t vary. Fear not. To use a register as a variable you simply need to declare it like you would to get a value from it. For example, DIM MYREG #R5. will allow you to use MYREG where you would normally use register 5 like a normal variable, setting and retrieving the value via the variable name only.

Functions

You can now create your own functions in VetusGUI and the newest firmware update has been reworked to allow for them. At the moment, the functions can help you do several things. First, they can help you have cleaner code. If you have something you need to do over and over again it’s much better if you only have to write the whole thing once. This is also save on code space. As of right now, Vetus gives you 256 lines of opcodes to work with. For m most test that should be enough, but adding functions makes it even better because the firmware has been updated so that the function code is only saved once unlike if you had the same code multiple times. And finally, you can return values by sending results to a register.

How do they work?

To create a function you simply need to use the FUNC tag after ENDTEST. You must also give it a name. So, for function myFunc you would use FUNC myFunc. That’s it. When using functions you don’t need to make sure you add all of the arguments like with other opcodes. After you’ve created the function name, on the next line you create your function using any of the other opcodes available. Once you’ve finished you end the function with ENDFUNC. And that’s all you need to do. After you’ve created a function you can use it anywhere in your code by using CALL. Using myFunc again as an example, CALL myFunc. And there you have it. That’s all there is to it. Below is a sample of what using a function might look like.

DIM TIMES #R0

REGLOD TIMES 0x5 0x0

LOOP TIMES 0x0 0x0
     CALL shiftLED
ENDLOOP 0x0 0x0 0x0

ENDTEST 0x0 0x0 0x0

FUNC shiftLED
     LEDON 0x0 0x0 0x0
     DELMS 0x12C 0x0 0x0
     LEDOFF 0x0 0x0 0x0
     DELMS 0x12C 0x0 0x0
ENDFUNC

And that right there is how both the variables and functions work. You can test the code above and it should give you 5 blinks before failing.

 


5 Replies
Posts: 2
(@jimkernsjr)
New Member
Joined: 6 months ago

Where are the instructions for uploading firmware?  (Not the casual mention in the manual) Tried with dfu-util with device in flash mode, but it appears more complicated than dfu-util -D filename.    "More than one DFU capable USB device found! Try `--list' and specify the serial number or disconnect all but one device".  Thanks


Reply
Posts: 102
Admin
Topic starter
(@nivbot)
Member
Joined: 11 months ago

You can download STCMCubeProgrammer. It's easier to use. After you install it and run it. Hold the Boot0 button on Vetus Pars and turn the unit on. Then you can release the button. It is now in DFU mode. On STMCubeProgrammer, go to the dropdown window beside the connect button and select USB. It should detect Vetus and you can click the connect button. Then click on Erasing and Programming in STMCubeProgrammer and select the .elf file. Then Start Programming. It will install the firmware and you can click disconnect and close the program. You are now up to date. 


Reply
1 Reply
Admin
(@nivbot)
Joined: 11 months ago

Member
Posts: 102

And by the way.. I think with DFU-util or other CLI you have to give the mcu name. In this case it would be something like -stm32h7 or something like that. If you type dfu-util -help or -h it should give you a list of commands and probably a list of the exact names to type for each chip. 


Reply
Posts: 2
(@jimkernsjr)
New Member
Joined: 6 months ago

Thank you!  i'll give it a shot.

I had tried it with dfu-util, and you need to specify the port path which was divided up into 3 sections.  I did a upload from device to computer as a test, and it did not produce a binary in the expected size.  For this reason, I was concerned about memory addresses or specific path that may need specified, so I decided to contact you.  I think it was Artery programmer I was familiar with needed it this way.

I downloaded STMCubeProgrammer and it wasnt looking for extension type .elf, so I was aprehensive with that as well.

I'll give it a shot, thanks!

 

You did a great job on this thing - hoping the community gets behind it.  I already have RCT Pro for several years now, but bought this mainly to support you and try a different way.

Thanks again!


Reply
1 Reply
Admin
(@nivbot)
Joined: 11 months ago

Member
Posts: 102

@jimkernsjr Well, thank you! I appreciate that. I hope you find it useful in any case. Let me know how the update turns out.


Reply
Share: