Home › Forums › Ask the Flomies › cannot write tags, help needed
Tagged: firmware, Flojack development
-
AuthorPosts
-
February 14, 2014 at 5:32 pm #5710
Hi all,
Has someone been successful in writing tags using the Flojack and the example app ?
I get either unknown_error or not_enough_memory errors for various tag types.Also I need to write using direct firmware access but get Bad Ack response.
What is the proper parametirization for the Tag Write firmware opcode (0x10) ?Thanks,
PeterFebruary 14, 2014 at 10:27 pm #5713Hi Peter, the FlojackExample app supports writing to a tag in NDEF format. Not all the NDEF Well Known Types are supported, only URL if I recall. See here:
https://github.com/flomio/flomio_ios/blob/master/FloJackExample/TagReadWriteViewController.mm#L261
The FloJack product specification document has the full Flomio Messaging Protocol defined for you to check the proper responses you should get. The code base hasn’t been as thoroughly tested as I would like, but writing URLs does work. Here’s the spec:
I wanted to thank you for your efforts to build on the Flojack hardware. Count on our support so we can add all the services that will make NFC as broadly accessible as possible.
February 16, 2014 at 12:16 pm #5717Hi Richard,
I am following spec sheet v2.0. Testing with various tag types and fresh battery.
I am communicating with the Flojack using own encoder/decoder routines.When Flojack writes to a tag it overwrites the first 4 bytes with 0.
Note, that happens even when I use the iPhone example app. No idea why.I try to write “foo.com” (type URL) by setting the Flojack in write-only mode:
0E 10 02 D1 01 08 55 03 66 6F 6F 2E 63 6F 6D BBThis is the tag before writing. Contains some old data (type Text)
03 0B 0D 01 ….
07 54 02 65 .T.e
6E 74 65 73 ntes
74 FE 00 00 t…This is the tag after writing. Note, the first 4 bytes are overwritten with 0:
00 00 00 00 ….
07 54 02 65 .T.e
6E 74 65 73 ntes
74 FE 00 00 t…Ideally, I would like to read and write in read/write mode (0E 04 03 09)
But the parameters and response for the Tag Write opcode are not documented.Could you show me an example byte sequence that would write “foo.com” to the tag?
Also could you tell me the format for Tag Write opcode and values for the response?Thanks,
PeterFebruary 19, 2014 at 11:07 am #5731Hi Peter, I just realized that we didn’t get around to documenting the Tag Write opcode. Currently we only support Type2 tags in the latest firmware (v11). Also we only support writing NDEF to the first available NDEF data block. The firmware looks for the NDEF TLV inside Type2 memory structure to place the NDEF payload.
// Tag Write Response subopcodes typedef enum { FLOMIO_TAG_WRITE_STATUS_SUCCEEDED = 0, FLOMIO_TAG_WRITE_STATUS_FAIL_TAG_UNSUPPORTED, FLOMIO_TAG_WRITE_STATUS_FAIL_TAG_READ_ONLY, FLOMIO_TAG_WRITE_STATUS_FAIL_TAG_NOT_ENOUGH_MEM, FLOMIO_TAG_WRITE_STATUS_FAIL_TAG_NOT_NDEF_FORMATTED, FLOMIO_TAG_WRITE_STATUS_FAIL_UNKOWN = 0xFF } flomio_tag_write_status_opcodes_t;
I hope that helps get you unblocked. I’ll update the spec sheet and repost once I get a chance.
February 19, 2014 at 11:10 pm #5739Richard, all Flojacks I received have firware v10 (0xA) on them. Is that a problem?
Whatever I try I get fail_unknown or not_enough_memory with various Type 2 tags.Would be grateful if you could show me an example write-command byte sequence.
Or could you record a successful write-command and I will decode the .wav myself? -
AuthorPosts
You must be logged in to reply to this topic.