Re: [sedonadev] SoxClient

280 views
Skip to first unread message

Matthew Giannini

unread,
Sep 24, 2012, 1:28:28 PM9/24/12
to sedo...@googlegroups.com
Hi Anthony,

First, the SoxClient API has many methods that take SoxComponents as parameters. I would recommend using those methods over ones that manipulate ids directly.

The first step is to probably load the app (the root component using

SoxComponent app = client.loadApp()

From there, you would use the sedona.sox.SoxComponent API to work with the app. You will need to find the children in the component tree you want to modify. Then i would use client.write(soxCompToChange, ...) to modify the values.

matthew

On Mon, Sep 24, 2012 at 12:53 PM, Anthony Paul <antho...@gmail.com> wrote:
Hi, I'm trying to connect to an EasyIO via Java using SoxClient.  I can successfully connect, but at that point it is not clear to me what commands available via SoxClient are useful to me?

My goal is to be able to read/write registers on the EasyIO.  SoxClient.ReadProp and Write sound like the obvious choices.  But read:

req
{
  u1  'r'
  u1  replyNum
  u2  compId
  u1  propId
}

is looking for compId and propId.  Write is looking for CompId and slot.  I'm not sure how/what compId is? I seem to be missing something here?

Did I mention I'm a complete noob at this stuff?

Any help, pointers, reference would be much appreciated.

Thanks.

--
You received this message because you are subscribed to the Google Groups "Sedona Framework" group.
To view this discussion on the web visit https://groups.google.com/d/msg/sedonadev/-/Z5qFEarebFwJ.
To post to this group, send email to sedo...@googlegroups.com.
To unsubscribe from this group, send email to sedonadev+...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/sedonadev?hl=en.

Craig Gemmill

unread,
Sep 24, 2012, 1:29:46 PM9/24/12
to sedo...@googlegroups.com
Hi Anthony-

Sedona devices contain an App, which is a database of Sedona Components.  Each Component has a unique integer id (its compId), by which it can be referenced in a Sox request.  Each Component may also have property slots, which are referenced by their slotId.  Slots can be either properties or actions, the id space is shared between them.  The Sox read and write messages reference the compId of the component you wish to interact with, and the propId of the property you wish to interact with.  If you are trying to read and write registers on an EasyIO device, you'll need to know what the component id and property id is of the register you want to read or write.

Craig

Anthony Paul

unread,
Sep 28, 2012, 12:45:20 PM9/28/12
to sedo...@googlegroups.com
Matthew and Craig - thanks for you insights and explanations.

I've successfully loaded the App now, and I've iterated through the tree of children (components), but I'm having trouble understanding or reading the slots.  The "slots" member is hidden in the component, and the retrieval fns seem to take a slot object.  I'm not sure how to get a Slot object, and more specifically, to get the one I'm interested in.

If there is some documentation on this sort of thing please feel free to direct me to it - I haven't been able to find much...

Thanks again

emck

unread,
Sep 28, 2012, 1:08:14 PM9/28/12
to sedo...@googlegroups.com
Are you writing a client side application?  Normally the sox client gets the slot ids etc from the kit manifest.

Anthony Paul

unread,
Oct 4, 2012, 11:46:42 AM10/4/12
to sedo...@googlegroups.com
Ok, I've made some progress with help from you all.

I can successfully read and write slots from my app.

Currently my app is a Java app running on a PC, talking to a network connected EasyIO.

My next step is to be able to do the same (read and write slots) from a mobile device, android device in this case.

I have the java compiled and running on the device (emulator, actually), but the code is failing when it tries to read the manifest files.  Of course, the manifest files were not on the device.  I've been trying to figure out where to locate the manifests on the device, but thus far, I've had no success.  Other option would be to include the manifests more tightly with the android app, but that would then require changes to the Sedona classes to know how to read them.

Anyone have any advice or experience they can share?

Thanks
Message has been deleted
Message has been deleted

keith bradley

unread,
Nov 11, 2017, 1:14:44 PM11/11/17
to sedo...@googlegroups.com
Graf,

There is no Sox Client in Android or JAVA I know of.

The Sox Client is in the Sox kit along with the native code to make it work.



On Mon, Oct 16, 2017 at 12:00 PM, Graf Bumsti <jpb.s...@gmail.com> wrote:
how is it possible to get the components running on the controller?
there is this method loading everything but I  do not think that it does the trick...
is there anybody who could give me a hint?
Thanks

--
You received this message because you are subscribed to the Google Groups "Sedona Framework" group.
To unsubscribe from this group and stop receiving emails from it, send an email to sedonadev+unsubscribe@googlegroups.com.

To post to this group, send email to sedo...@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages