Roger's Core, Arduino IDE 1.8.15 and package_stm_index.json

Development environment specific, Arduino, Eclipse, VS2013, Em::Blocks etc
Y@@J
Posts: 57
Joined: Mon Sep 28, 2020 8:51 pm

Re: Roger's Core, Arduino IDE 1.8.15 and package_stm_index.json

Post by Y@@J »

I'm really old school when it comes to backups !
My workstation has 10 SATA ports (onboard). 2 are for the OS SSD and a DVD, 4 for the data (4x 4TB HDDs, RAID10), and 4 slots for hot swappable backup disks. There's far too much data for USB or clouding ! I use 11 HDDs for backups and always maintain 4 backup sets for docs and media (alterning disks, in folders with dates as names), 1 set for softwares, virtual machines, and OS install images + a mirror of the documents folder on a laptop. No backup software : nowadays it's easier to copy than doing differential backups (incremental is a pain when it comes to restoring files). Regular, Nightly, unattended but sometime 2 or 3 times a day. At work, it was twice a day.
Nearly an OCD... But saved me a couple times !
I also gave up with NAS storage/backups and personnal LAN clouding (Seafile for a couple of years)
As a result, if the computer has a problem (it had a few), I'm back to business on the laptop within one hour at worst, minutes at best.

Compressed folders are not a solution as files are frist uncompressed, then copied, then re-compressed. It was usefull back in the days when storage was expensive, but it is extremely inefficient when doing copies or backups. I stopped using them with Windows NT 4.0, when I switched from SCSI to more affordable ATA disks, and also gave up with streamers ("floppy tape" at first, then DAT).

SSD are too expensive for a 4TB+ RAID1 ! And NAND cells have most likely less on shelf lifetime than magnetic storage.

I tested many backup and mirroring tools, and always went back to copies, and I can retrieve old versions of files (at least one month).
User avatar
Juraj
Posts: 47
Joined: Fri Jan 03, 2020 7:47 pm
Answers: 1
Location: Slovakia
Contact:

Re: Roger's Core, Arduino IDE 1.8.15 and package_stm_index.json

Post by Juraj »

fpiSTM wrote: Thu Aug 26, 2021 2:19 pm
mrburnette wrote: Thu Aug 26, 2021 1:14 pm
Juraj wrote: Thu Aug 26, 2021 4:49 am http://dan.drown.org/stm32duino/package ... index.json
is for Roger's core
"url" : "http://dan.drown.org/stm32duino/STM32F1-2020.1.17.zip",
"category" : "STM32",
"archiveFileName" : "STM32F1-2020.1.17.zip"
NO IT IS NOT ROGER'S CORE



https://github.com/rogerclarkmelbourne/ ... STM32/wiki
Well I agree and not ;)
I would say it is an unofficial Arduino packaging of Roger's core done automatically as a daily basis.
https://github.com/ddrown/Arduino_STM32_release_tools

IMHO, it brings confusion to user because it uses "stm32duino" name for maintainer and packager.
It should explicitly told it is an unofficial package of Roger's core.
packager should be ddrown and for maintainer, hard to tell. Maybe community.

I guess, json url should also remove stm32duino.
it exists a very long time now and many users have the url in IDE Preferences
mrburnette
Posts: 633
Joined: Thu Dec 19, 2019 1:23 am
Answers: 7

Re: Roger's Core, Arduino IDE 1.8.15 and package_stm_index.json

Post by mrburnette »

Juraj wrote: Fri Aug 27, 2021 5:11 am ...
it exists a very long time now and many users have the url in IDE Preferences
The WiKi section on "Installation" is the definitive procedure to follow. The JSON is a creation of a forum member, generally unsupported by a human.

Follow the WiKi or go it independently ... there is no supported JSON for Roger's core. Roger and I discussed this at length during the old forum lifetime and mutually decided not to introduce a JSON; thus it is a decision and not an omission. There is lot of history behind Roger's core effort and many compromising decisions made (far too often) due to the monolithic nature of the core architecture that was originally written by LeafLabs.

But with the creation of STM's official core, users of Roger's core have been repeatedly informed to migrate or self-support themselves. I grow tired of constantly restating the obvious: use the supported Official Core. And for new users - simply avoid Roger's Core unless your expertise level puts you into the self-support category!

Yes, many use Roger's (outdated) core but most are capable of self-support; continued questions in the forum regarding the old codebase are not productive and a drain on support resources.

I will not argue the obvious; if you are looking for someone to blame for the current state-of-affairs, blame me but know it will not change anything.


Ray
ag123
Posts: 1653
Joined: Thu Dec 19, 2019 5:30 am
Answers: 24

Re: Roger's Core, Arduino IDE 1.8.15 and package_stm_index.json

Post by ag123 »

@mrburnette unfortunately i think there are some thing 'beyond' our control. may be someone can log an issue at the said github repo, it is there after all. some of the things that is happening is that 3d printers and maybe even grbl (cnc machines) types h/w are using it.
stm32duino (including libmaple (roger's)) is no longer 'hobbyist toy', it is pretty much formal just like other open sourced projects linux, marlin, arduino etc.
there is a possibility that someone came to know this only after they did that 'click and install', they probably have no idea what it is and maybe is just 'following instructions' say from a manual. - some of them are really sketchy perhaps showing some steps / screen prints, that's about it, and they finally stumbled into this.
if you visit the 3d printing forums, u'd almost always find people stumbling on compiling their firmware etc, i'd think they are not even familiar with the hardware itself, it is probably *foreign* to them who are trying to build a highly complex firmware (marlin) for a chip they know nothing about, let alone if they even know arduino at all - try asking them to 'blink a led' it is probably a foreign concept to them.

we'd make do without that json file, so we'd know that if some one uses a json file, it is most likely from that site

the motivations for creating that little 'which core' sketch is partly this. it is 'impossible' for someone who manually installed either cores after reviewing the available docs on each of the github repo wiki to *not know* which core they are using. But that can't be said for 'click and install' crowd, some probably 'don't know what is it'
https://github.com/stm32duino/wiki/wiki ... running-on
mrburnette
Posts: 633
Joined: Thu Dec 19, 2019 1:23 am
Answers: 7

Re: Roger's Core, Arduino IDE 1.8.15 and package_stm_index.json

Post by mrburnette »

ag123:

You are correct, once the JSON is out and published, it is near impossible to rein-in the problem. This is the very reason that Roger's core has no supported JSON, by agreement early on that to do so would overwhelm the (old) forum with questions sub-novice level.

Our intent was to create a core that would take Arduino users (typically 8-bitters) into a technology that provided more headroom at a ridiculously low cost figure - Maple Mini clone by Baite was the first board supported. It was intended to be a migration path for knowledgeable users, not novices. AVR 8-bit cores are easy enough to teach to a novice if they will apply a bit of time and effort and experimentation; it can even be fun.

STM32 is not hard for users who already have a fair basic understanding and a healthy knowledge of the Arduino ecosystem with a fair grasp on C++ as utilized in libraries; because libraries often need a bit of porting effort. This was painfully true in the early days of STM32duino original forum. These days, many common libraries are just ready to use.

Maybe it is too late to rein in the genie, but that does not mean that I have to participate in this farce. Roger's core is depreciated and while other forum members can make up their own minds about answering inquires, I will no longer assist. STM has done a fantastic job at bringing Arduino support to manufacturer supported tools which provide upward migration for hobbyists and professionals. The HAL code is industry grade; as I stated previously, the revamped code that Roger, myself, and a host of others ported from LeafLabs is monolithic and should only be used for playing around since it is straightforward to understand... a kind of teaching tool.
ag123 wrote: Fri Aug 27, 2021 3:28 pm @mrburnette unfortunately i think there are some thing 'beyond' our control.
Maybe ... for me personally. But the time must come when STM ends discussion of this alternate and ancient software core if for no reason other than liability: which is to mean that the core known as "Roger's core" is not QA hardened and not continuously reviewed and its use may have undesired consequences that have yet not been discovered. It is a use at your own risk product.

Ray
ag123
Posts: 1653
Joined: Thu Dec 19, 2019 5:30 am
Answers: 24

Re: Roger's Core, Arduino IDE 1.8.15 and package_stm_index.json

Post by ag123 »

roger's (libmaple) core, 'unfortunately' today is a 'fine gemstone' after so many years of bug fixes and enhancements from community etc, lean full featured on stm32f103
it is little wonder the large proportion of 3d printers runs on it!

i'd guess we'd need to focus more effort on the 'official' core, it is still a 'little rough' at the edges. e.g. the APIs (i.e. classes) can possibly be made better so that those who want 'extra' features can inherit the base classes and extend them. e.g. dma support, this is not possible to built into the 'generic' core at this stage as it'd mean catering to near 'infinite' permutations of mcu - device - use case combinations. e.g. the timer can be used to trigger dma, but most of the time if you do that you aren't interested in the timer, what you'd do is the timer is used to read data off pins over dma. the scenarios are simply too verbose. but that the classes can be made better so that they can be extended by those having the programming prowess and knowledge to leverage the features of their select mcu platform.

one of those is that some of the methods need to be declared virtual so that extending classes can override them and that some variables need to be declared 'protected' so that the inheriting classes can access them, e.g. the lower level spi device. but that is a very different topic on its own.
Post Reply

Return to “IDE's”