@themactep @lupyuen
I just thought it was funny how this person is trying to opensource-shame this guy.
Perhaps there exists a pooled-order/PCB batching group like OSHPark that enables one to keep the design data proprietary. I don't have all the answers. I do know that the right answer includes: it's on the creator to decide their goals for their project. Grow huge, stay small.
“Smart Farms” Are Hackable Farms
Searching GitHub for "GPIO_INT_CLR" shows ultraembedded RISC-V SoC ... Coincidence? 🤔
https://github.com/search?l=Markdown&q=GPIO_INT_CLR&type=Code
#BL602 Reference Manual mentions "GPIO_INT_CLR" but the address is undefined in the doc ... Methinks a chunk of addresses are missing from the doc 🤔
https://github.com/bouffalolab/bl_docs/tree/main/BL602_RM/en
Mystery #BL602 GPIO Function ... What does it do? Will it fix our problem with triggering multiple GPIO Interrupts? 🤔
"Don't Look Down" by Chicane
https://open.spotify.com/track/4nWjqfZZABM8oZlTDTsJkr?si=DURXqDogTFKVGjeA60MXLA
"Shame on you for not sharing the PCB files"
#Embedded: What we’ve been reading in Februrary
@lupyuen
Need to learn more on lora though for final decision.
Also in your example each process has separate stack while globals are in shared adress space. Interesting os. Feels similar to what i was doing for ericsson.
@lupyuen
If platforms are ready i might try to promote your platform here. It sounds interesting.
@PawelK Thanks :-) I'm planning to use this for IoT Education ... Teaching folks how to create a RISC-V LoRa Sensor that's battery powered...
@PawelK The original code is this:
static RadioEvents_t *RadioEvents;
See https://gist.github.com/lupyuen/1539f9dd52e9a83d4fbe7724481112bf
@PawelK I changed my version to use struct instead of pointer to struct:
#BL602 now displays the #LoRa Packet received from #WisBlock yay!
https://github.com/lupyuen/bl_iot_sdk/blob/lorarecv/customer_app/sdk_app_lora/sdk_app_lora/demo.c
@PawelK Yeah the code looks a bit suspicious ... Generally I would never save a pointer to a stack object. But this code has been in Apache Mynewt OS for a long time 🤔
@lupyuen
Are those two platforms using two different operating systems? Generally depends whether irq handler lives in same adress space as setup code. General guideline for portable code should be using either static data accessible from irq code or dynamically allocated data passable between two adress spaces.
For #BL602 we fix this exception by copying the object ... Instead of storing a pointer to the object
#BL602 #LoRa Exception happened because we passed a pointer to a stack object ... Which gets used by the Interrupt Handler 😲 ... This works OK in the original Mynewt code, but not for BL602
https://gist.github.com/lupyuen/1539f9dd52e9a83d4fbe7724481112bf
IoT Techie and Educator / Apache NuttX PMC