Show newer

@lore Microchip PIC was used in The Stamp I think. The Stamp was used to teach Embedded Systems Programming before the Arduino came along. The lower cost of the UNO and realistic language choice of C made for a more realistic experience if one would go on to work for a company that specialized in Embedded Systems.

The reality, especially for open source developers, is that they have next to no documentation and have to essentially wait for Reverse Engineering of the hardware, firmware and software to be completed so they can use these tools to do what they wanted or learn that they can't do it.

FLOSS developers might seem like pricks in many ways from how they tend to explain things to using a license like the GPLv3. The reality is that every step of the journey was a struggle and companies love to sue. So when something is reverse engineered and released, the GPLv3 is the choice of someone who endured the mountain of red tape, threats and hardship. No one will be able to steal their code because of the GPLv3 Superior Clause which means that the company has to stop use of the code or they will be required to release all of it under the same license.

@lore I think you would be pleased to know that MIPS now produces RISC-V MCUs. Maybe they realized that no matter how impressive it seemed on paper, they had a dumpster fire for people that had to work on them. I will admit that they were impressive and I have seen some of the most professional Low C code used on MIPS.

@lore I try not to complain as much as I used to. Do I have gripes about working with embedded systems work? I don't right now but I haven't been trying to resolve dependencies for a few hours while trying to figure out what device is better to communicate with the device in question.

Part of the reason why Embedded Systems are not always well documented is because someone had to bang their head against the wall until they could get it to work. It usually takes a few people to refine the documentation and get it to where people can use it. This is because they probably despise the hardware and they get shit on for their hard work.

@lore Yes I can flash a ATMEGA328 bootloader but for everything else it was completely worthless despite supported hardware lists indicating that it should support what it did not.

I just use Bash and GNU Emacs. I would rather just use Emacs with documentation handy to write a program for a board and use a Bash utility to flash it. It seems like it would be a problem but they rarely ever fail me. Bash is incredible with the right utilities. Having a Black Magic Probe just adds to the experience.

In all honesty, I believe Arduino Studio is counterproductive especially if one is learning. Realistically everything else will require another IDE and using the terminal. It's better to get used to this early on instead of getting a false sense of competency just for it to be crushed by something that wasn't designed for children.

@thor I don't think Ska has a museum and it's not cool. Fedora tipping intensifies.

@thendrix You might be able to get better performance in the future from it. Nvidia swapped the Falcon core for a GSP based on RISC-V(NV-RISC-V). It's currently being used in the Tesla series and offers quite the boost in performance. They are planning on implementing it across the lineup as the Teslas have seen performance improvements from this. It seems to be physically present but not enabled in firmware on other cards.

The card should have the GSP and it should be possible to enable it in the firmware but it's probably best to wait for the official firmware update that enables it. It should allow higher GPGPU performance and better power control.

@thendrix There was a strong anti-government movement before 9/11 and that seems to have put it on hold until around the last decade. I can see the rationale behind the decision but like many government decisions, certain input is ignored.

For example, I remember watching Modern Marvels as a kid and seeing an FBI Agent essentially describe the Boston Marathon Bombing. The explosive resistant trash cans were ready to be used and mitigation was clearly outlined. It only took a little over a decade for it to seemingly be discarded and the attack occurred.

The ability of political influence to overpower a sincere concern from experts is certainly not unfamiliar to the FBI and other parts of the government responsible for security. I'm fairly certain that they know to say one thing and do another. Getting shit pay and not being allowed to do what they likely joined for is too much. Sometimes a threat goes away in a completely serendipitous way.

I'm not saying that the government should be trusted. Distrust of the government is an important American value. Maybe they do sometimes justify the taxes we pay and perhaps some don't care about the consequences of ignoring politics as they won't be caught.

@lore With some areas it's incredibly niche and stepping off the path results in not having much help. The amount of digging for information, research and experimenting is considerably large. That's just for a prerequisite to a prerequisite to finding the solution.

In my experience it's best to think of it as many small projects. I'm not good with documenting my progress. It looks almost like I have no clue what I did because I will fail to include parts of a month or so of effort.

Start> time passes with unintelligible comments being made >the work is released without any context. I have to go back and explain what I did and why I did it after I recover from the sleep deprivation and collective frustration of the work.

Perhaps what I'm trying to say is don't be like me. 72 continuous hours is not an acceptable amount of time to spend on a project especially when it is a regular occurrence. I have learned my lesson, I at least take notes now.

It's good to allocate a limited amount of time to a project per day to keep morale up. The time spent not doing that thing is when really good realizations are made. Never give in and never give up but remember that it's a project. Projects require patience and pacing to be successful.

Furthermore, you can always find friends along the way. There are many people who enjoy exploring similar things and they could easily be tempted to explore something new. Just be aware that motivations vary so the friends can almost be trusted to go on tangents but it doesn't mean that they no longer care.

Excited to announce that I’ve a new CEO for X/Twitter. She will be starting in ~6 weeks!

My role will transition to being exec chair & CTO, overseeing product, software & sysops. twitter.com/i/web/status/16567

@lore That's just how Embedded Systems work in general. If you want good documentation and clear instructions, look into Mr. Lee's publications. I don't recall him working with the ST series but his work with competing hardware is legendary. There are too many to list. I know that he worked with Nordic Semi hardware as part of the PineTime effort.

github.com/lupyuen

As for the ST hardware, I just used it to make a BMP. I would recommend using an existing project to get it mostly functional and go from there. Maybe look at some of Mr. Lee's work with MCUs to find some useful tools and perhaps some MCUs that you can use in the future.

I've seen non functional hardware go from nothing to functional when he was involved. Open Source tools emerged on previously closed source platforms and obscure products were documented and made to be functional.

@lore If you have a spare STM32 blue or black, make it a Black Magic Probe. This is a proper way to use the board and it's incredibly capable. I keep a board flashed with it ready at all times.

github.com/blackmagic-debug/bl

hackaday.com/2016/12/02/black-

So this is definitely worth putting on one of these MCU boards.

@trinsec @freemo It also beats a Peacekeeper helmet because people won't subsequently question your intentions.

@freemo @trinsec Perhaps say that it's a toxic work environment and you need that gear to make others feel more confident in themselves. Sometimes it's hard to be this good but other people need to feel confident too. It actually takes that much gear to level the field which is more of a testament to their insecurities than anything else.

It really would look like you woke up and somehow thought you were a CNN reporter. Maybe mention some baggage from the past bringing you down and pull the Toughbook out. There are so many jokes about the Toughbook. A Marine once asked me if my Toughbook was a Toughbook so I tossed it down some stairs with the power on. I opened it up and continued what I was doing and responded, "Yes it's a Toughbook." Someone told me I shouldn't do that to a laptop and I told them this is nothing compared to what they are expected to endure. The best way to kill a Toughbook is with time. It's like buyers remorse with useful legacy ports and it doesn't break. I drop tested it frequently out of respect and admiration.

@thor A more accurate scene in the US would be the homeless man being arrested as a result of the awareness. They would also magically be cured.

@thor I immediately thought that's a lot of alcohol and (insert something here). Yeah that's probably not what was being referred to. That's absurdly expensive.

@lore I love it. I've never looked at Z mod 2 equivalency classes in binary. The 2n class would have binary ending in zero and the 2n + 1 class would have the binary end in one. That's pretty damn interesting.

Superficially it's not that impressive but it does a lot more than it seems to. That's a very good dive into the code and explanation. It's textbook worthy, really.

i posted this little C code riddle earlier. so here's what it does:

1. flip all the bits in the input, so 0 becomes 1 and 1 becomes 0

2. bitwise-AND this with 1, whose binary representation is also 1. this will keep only the last bit of the number and set the rest to 0.

the result can thus only be 0 or 1. if you count in binary:

0 = ...000
1 = ...001
2 = ...010
3 = ...011
4 = ...100
5 = ...101

notice how the last bit keeps flipping for every number?

if the function was just x & 1, this would tell you if the number was odd. but if you flip all the bits before you mask it, it tells you if the number is even.

could also be written as !(x & 1)

@lore Embarrassingly enough I seem to have mostly used something closer to ANSI C or C89. I do recall conditionals being used extensively. Well I guess I'll have to check out Fatboy Slim You've come a long way, Baby.
*/
There's also this dead give away from my code.
/*

@lore That's likely where I got confused. In Mathematics the tilde (~) is used to negate. For a Boolean value we used T or F instead of 0 and 1. This is because they are True or False and the 0 or 1 could imply that they are integers. While {0,1} are a subset of Integers, they are merely place holders and not subject to operations.

Perhaps what confused me the most was that there was no mod 2 operation visible. I do assume at first that it would return two values but I couldn't understand why it would do so.
(See nearly every example of C with return 0 ie it worked or the other numbers from where code failed.)

The more I looked at it, it started to appear to be a weird Comp Sci thing and it did turn into more weird Comp Sci things. I've used C for a while and Cpp until around 4 years ago when Cpp++ really made me hate it.

I'm stumped, it seemingly returns bit flipped X (or negation X) And 1. I don't see what it does and I'm not cheating and compiling it. Assuming that X has the value of 0 it could bit flip to 1 and that's what the result is but I really don't get what the & 1 is doing. Very humbling.

Show older
Qoto Mastodon

QOTO: Question Others to Teach Ourselves
An inclusive, Academic Freedom, instance
All cultures welcome.
Hate speech and harassment strictly forbidden.