Comments (12)
Is there a register for the error state of a device?
from jacdac.
@jamesadevine should we have a string register in control service? or maybe a common string register for every service? or should that be numeric?
@pelikhan do you have specific use cases in mind?
I was thinking hardware errors like:
- my I2C accelerometer doesn't work (we currently panic, which may be actually better)
from jacdac.
I was thinking about surfacing the panic error code.
from jacdac.
I was thinking a register in the control service that exposes a "list" of errors if there are any.
In the case where hardware isn't working, I think it is better to panic and send a message over JACDAC.
from jacdac.
should a device has a "safe boot" option that ignores all sensors and just broadcasts the error code?
from jacdac.
It could just broadcast while the sensors are broken, I don't think there's much need to safe boot.
from jacdac.
does jacdac still broadcast while in panic mode?
from jacdac.
I understand we want to avoid a broken device polluting the bus with error messages.
from jacdac.
Yeah, I think you'd just continue sending advertisement reports with some error flag set. A JD debugger/brain could then interrogate a device for its error state when connected
from jacdac.
- bit in the advertisement packet for failure
- bundle a report packet in the case of a failure
- generic code
- device specific
Kinds of Failures:
- hard fault (segmentation violation) vs. software panic (OOM, etc.)
- hardware failures (I2C device doesn't respond)
Common failure codes for JACDAC:
- generic codes (SUCCESS, ...)
- device-specific codes
Take a look at: https://en.wikipedia.org/wiki/CAN_bus
from jacdac.
Base register in the service definition
from jacdac.
from jacdac.
Related Issues (20)
- jacdac-ledstrip number of pixels and brightness HOT 1
- jacdac-ultrasonic get value HOT 2
- jacdac-power HOT 3
- jacdac-servo servo2 can't work fine in first time HOT 2
- Hide power from makecode dashboard
- RGB Ring bug in dashboard HOT 5
- led strip buffer is not initialized to zero after 8th pixel. HOT 3
- jacdac-Accelerometer gesture in Makecode
- Missing translation
- miltiplayer in Arcade with jacdac
- Using 16x2LCD-Display only supports one line HOT 3
- Lag when animating LED ring based of STM32 (MSR JM RGB-8) HOT 2
- JD Brain RP2040 HID in Makecode HOT 2
- JD Brain RP2040 HID Consecutive letters HOT 2
- JD Brain RP2040 HID VolumeDown and VolumeUp HOT 2
- rotary control doesn't work with jacdac/micro:bit jukebox HOT 1
- led strip(RGB Strip) can't be turned off in Makecode HOT 9
- jacdac device-registration PCB Form factor miss some options HOT 2
- Ultrasonic Sensorv1.0 pic and name incorrect in the simulator HOT 5
- The servo is set to 180 degrees, but it comes up 135 degrees HOT 6
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from jacdac.