MAGTAG fetch function - control taken over

CircuitPython on hardware including Adafruit's boards, and CircuitPython libraries using Blinka on host computers.

Moderators: adafruit_support_bill, adafruit

Please be positive and constructive with your questions and comments.
Locked
User avatar
paulskpt
 
Posts: 30
Joined: Sat Oct 03, 2015 7:30 pm

MAGTAG fetch function - control taken over

Post by paulskpt »

I had to wait long for it but finally I received my first MAGTAG. For a year or so, this product was not in stock. I, living in Europe, had to import it from the U.K. A nice piece of gadget the MAGTAG is! I am happy with it.
The negative experience with the MAGTAG thus far is that I have some difficulty to program it.
Partly because of various methods that exist to put text, sprites, images on the display.
Partly also because the programmers of Adafruit went far (TMHO too far) in their efforts to create something nice and useful.
I program since 1977. Started on an Apple ][. Long time ago I programmed microcontrollers 6809 etc. I am quite new to the latest generation of microcontrollers.
Until now, as a programmer, I was used to determine what is displayed or printed when. The libraries that Adafruit made available for the MAGTAG take, in some aspect, control out of the programmer's hand.
This 'experience' confused me after I downloaded and installed into the MAGTAG the 'Showerthoughts viewer' project by John Park.
The project's magtag_showerthoughts.py script, line 47, reads: "value = magtag.fetch()".
I expected that this fetch() function would fetch the wanted data from internet. It did but it also put the received text to the MAGTAG display. And just this particular step/action is what I mean with 'taking control out of the programmer's hands'.
I never encountered such a 'behavior' before. I would appreciate very much that Adafruit change the magtag.fetch function in such a way that it returns the requested data (a string in this case) to the script that called the function so that the programmer next can do with the data what he or she wants to.
I, for instance, modified the script because the script did not display the full texts received. Some texts received were 168 characters long. One of my mods divides lengthy texts and display them alternatively. But I was not able to stop the output to the display by the magtag.fetch() function (displayed in front of my modified text version).
In all activities and publications of Adafruit Industries it becomes clear to me that the company's policy is to animate its customers creativity. Please let this policy also count for the programming aspect of the 'making'.
I am pleased with all the effort that Adafruit Industries is putting into making good products; good software development tools; excellent educational projects. But, please, leave the ultimate (software)control over the hardware in the hands of the customer.
If there exist other functions and or libraries where this kind of 'take-over of control' has been exercised, please change it!
English is not my native tongue. I hope I made myself clear: in a few words: continue to provide good tools but leave control to the customer. Thank you!

User avatar
paulskpt
 
Posts: 30
Joined: Sat Oct 03, 2015 7:30 pm

Re: MAGTAG fetch function - control taken over

Post by paulskpt »

I herewith retract my post. I just now, by reviewing the function fetch, that it has a parameter 'auto_refresh' which defaults to 'True'. So, if we call the fetch function with 'auto_refresh=False' I guess the fetch() function will not put the fetched data onto the Display.
I did a test using the 'auto_refresh=False' option. It worked. fetch() next did not display the fetched data.
My excuse to Adafruit Industries and its collaborators for posting my thoughts premature.

User avatar
adafruit_support_mike
 
Posts: 67485
Joined: Thu Feb 11, 2010 2:51 pm

Re: MAGTAG fetch function - control taken over

Post by adafruit_support_mike »

No worries.. seriously. ;-)

Trying to describe a problem to someone else is widely known to help in identifying a solution. We all do it, and there are probably hundreds of similar threads here in the forum.

The important part is that you got it working. Congratulations, and happy hacking!

Locked
Please be positive and constructive with your questions and comments.

Return to “Adafruit CircuitPython”