shell - How to create cronjob using bash - Stack Overflow
Does crontab have an argument for creating cronjobs without using . You can add to the crontab as follows: #write out current crontab crontab -l .
http://stackoverflow.com/questions/878600/how-to-create-cronjob-using-bash
Treatment for Herniated or Bulging Discs
How to Create a Cron Job
Unix users write, edit, list, and remove cron jobs using the `crontab` command. ` crontab -e` takes users into their default editor to edit their crontab.
http://www.tech-faq.com/how-to-create-a-cron-job.html
Managing Cron Jobs with PHP | Nettuts+
Apr 7, 2011 . Of course, we'll also need a way to create and remove cron jobs. So we'll define an append_cronjob() and remove_cronjob() method, .
http://net.tutsplus.com/tutorials/php/managing-cron-jobs-with-php-2/
how to create a cron job Herniated or Bulging Discs
How to Create a Cron Job (Scheduled Task) for Your Website or ...
Guide to scheduling a program to run for your website/blog using cron and crontab to handle your site maintenance, web stats, etc.
http://www.thesitewizard.com/general/set-cron-job.shtml
HowTo: Add Jobs To cron Under Linux or UNIX?
Apr 16, 2006 . I want to create a cron job to delete a temp file in a directory and it run on every saturday of the week. I have created a cron job as cron.txt.
http://www.cyberciti.biz/faq/how-do-i-add-jobs-to-cron-under-linux-or-unix-oses/
How Do I Setup Cron Job? - Ask Ubuntu
Aug 16, 2010 .  Date Submitted: 9-18-2012. Cron is a standard Linux feature that allows you to schedule tasks, called "Cron Jobs," to run unattended .
http://support.godaddy.com/help/article/3547/creating-a-basic-cron-job
- univ south carolina walterboro (narrowing of the spine)
How to create a cron job - Video Tutorial
This quick video tutorial will show you how to create cron jobs from the Crontab section of your Control Panel. See how to define the main automated task .
http://www.ntchosting.com/videos/how-to-create-cron-job.htmlHow do I create and delete a cron job? - HostGator.com Support Portal
Dec 17, 2011 . Cron Jobs run scheduled tasks at specific times. This is good to set up automated maintenance and other unmanned server duties.
http://support.hostgator.com/articles/cpanel/how-do-i-create-and-delete-a-cron-job
A Short Introduction To Cron Jobs | HowtoForge - Linux Howtos and ...
The command to create/edit, list, and remove cron jobs is crontab. If you call it with . You can create a cron job from that file as follows: crontab .
http://www.howtoforge.com/a-short-introduction-to-cron-jobs
Learn How To Create Cron Jobs In Linux Crontab Tutorial
today i had a challenge, a customer wanted his back ups to be done at least once a month. but i thought i would be too much maintenance for me to have to .
http://www.wallpaperama.com/forums/learn-how-to-create-cron-jobs-in-linux-crontab-tutorial-t5639.html
Medical-Vocational Allowance for Herniated Disc
How to setup a Cron job
Learn how the Cron tool can help you automate the scripts on your web site. Domain . This article will explain what is a Cron Job and how to create one.
https://my.bluehost.com/cgi/help/cron
Newbie: Intro to cron
Cron is the name of program that enables unix users to execute commands or . To edit (or create) your crontab file, use the command crontab -e, and this will . logfile 2>&1 You can then set up a cron job that mails you the contents of the file .
http://www.unixgeeks.org/security/newbie/unix/cron-1.html
How to create cron jobs - YouTube
Feb 26, 2010 . This video will show you how to easily automate your site management tasks: http://www.ntchosting.com/videos/how-to-create-cron-job.html.
http://www.youtube.com/watch?v=aBsAtGHCsmQ
Appealing a Denial of Benefits
Creating Cron jobs?
When does the cron job I create go into effect? I know that some other webhost will have the Cron list update at midnight and then it will add the .
https://discussion.dreamhost.com/thread-10779.html
How do I create a cron job to backup my MySQL database on Cloud ...
Oct 1, 2012 . To make the cron job work, create a file called backup.sh and place the following code inside of it :: #!/bin/sh mysqldump -h DB_HOST -u .
http://www.rackspace.com/knowledge_center/frequently-asked-question/how-do-i-create-a-cron-job-to-backup-my-mysql-database-on-cloud-sites


--- layout: default title: login ---
Welcome to Sky Bike! Start renting a bike by loging in or signing up.
Try<EMAIL_ADDRESS>for admin access.


compiler.block(exprs)
Return the intermediate language code required for evaluating the list of expressions exprs
sequentially as a single block of
code.
// { showln(123); showln(456) }
eval(compiler.block([compiler.call('showln, [123]),
compiler.call('showln, [456])]))
//> 123
456


Sign up example illustrates usage of asynchronous validators. The use case also shows how to setup visual elements to communicate that the async validator is waiting for server-side evaluation results.
The only valid email address that should make async validator error out is dmitriy@dmitriy.org.


Car market
Enter profile
Create new profile
Login:
Password:
Enter
Login:
Password:
Create new profile


Price
None
$
$$
$$$
$$$$
Radius
0.5 miles
2 mile
5 miles
10 miles
Sort by
Best Match
Rating
Review Count
Advanced Search
Open now
Hot & new
Accepts reservations
Deals


This is Ruba Banat .
I'm 24 years old , I'm from Jordan Lives in a city called Jarash If you ever heard about it
I studied Economic of finance and business in Yarmouk University and I graduated in 2018 and my GPA : 74.2
I had a great volunteer work experience with an international organization called AIESEC , this experience gave me a lot , I was a team leader for sales and marketing area , but I don't have any professional work experience yet so I decided to try something new something I aspire to do so I found this chance , and I believe it is the way to fulfill my ambition.
The best is coming .
Just To know me better I'll add for you something I intrested in and I think it will help you to choose what to watch ;)


{% extends "base.html" %} {% block header %} {% endblock %} {% block content %}
More detailed content and links will be put up here towards the end of the summer. For now, check out some of the cool groups that are addressing the vacant land problem in Philadelphia.


public abstract class File
extends java.lang.Object
| Constructor and Description |
|---|
File(java.lang.String name)
One and only constructor that accepts just file name;
|
| Modifier and Type | Method and Description |
|---|---|
void |
copy(Directory destination)
Template method for copying abstract file from and to real storage.
|
void |
delete()
Template method for deleting abstract file from real storage.
|
void |
download(java.lang.String path)
Template method for downloading abstract file from real storage.
|
boolean |
equals(java.lang.Object obj) |
void |
extract(java.util.List<File> files) |
java.lang.String |
getAbsolutePath(java.lang.String relative)
Appends provided relative path to the root path and returns abolute path.
|
Metadata |
getMetadata() |
java.lang.String |
getName() |
Directory |
getParent() |
java.lang.String |
getPath()
Builds path from current file node to the root of file tree and return absolute path.
|
boolean |
hasParent() |
void |
move(Directory destination)
Moves current file to provided destination.
|
protected abstract void |
onCopy(Directory destination)
Should be overridden in
File implementation to handle copy operation. |
protected abstract void |
onDelete()
Should be overridden in
File implementation to handle delete operation. |
protected abstract void |
onDownload(java.lang.String path)
Should be overridden in
File implementation to handle download operation. |
protected abstract void |
onUpload(java.lang.String path,
Directory destination)
Should be overridden in
File implementation to handle upload operation. |
void |
setMetadata(Metadata metadata) |
void |
setParent(Directory parent) |
public File(java.lang.String name)
name
- Name of the abstract file.public void delete() throws StorageException
StorageException
- if user does not have required privileges or file does not exist.public void copy(Directory destination) throws StorageException
StorageException
- if user does not have required privileges or file does not exist.public void download(java.lang.String path) throws StorageException
StorageException
- if user does not have required privileges or file does not exist.protected abstract void onDelete() throws StorageException
File
implementation to handle delete operation.StorageException
- if there was a problem in implementation.protected abstract void onCopy(Directory destination) throws StorageException
File
implementation to handle copy operation.StorageException
- if there was a problem in implementation.protected abstract void onUpload(java.lang.String path, Directory destination) throws StorageException
File
implementation to handle upload operation.StorageException
- if there was a problem in implementation.protected abstract void onDownload(java.lang.String path) throws StorageException
File
implementation to handle download operation.StorageException
- if there was a problem in implementation.public void extract(java.util.List<File> files)
public final void move(Directory destination) throws StorageException
destination
- New parent directory of current file.StorageException
- if user does not have required privileges or file does not exist.public final java.lang.String getPath()
public final java.lang.String getAbsolutePath(java.lang.String relative)
relative
- Relative path to be expanded to absolute path.public final java.lang.String getName()
public final boolean hasParent()
public final Directory getParent()
public final void setParent(Directory parent)
public final Metadata getMetadata()
public final void setMetadata(Metadata metadata)
public boolean equals(java.lang.Object obj)
equals
in class java.lang.Object


Ruth Bader Ginsburg
“Fight for the things that you care about,
but do it in a way that will lead others to join you.”
- 1933 - Born in Brooklyn, NY
- 1954 - Graduated from Cornell University
- 1956 - Enrolled at Harvard Law School where she was one of only nine women in a class of about 500 men.
- 1959 - After transferring to Columbia University Law School she earns her law degree and finishes tied for fist in her class.
- 1963 - Started her first position as a professer at Rutgers University.
- 1972 - Taught at Columbia University, where she became the first tenured woman.
- 1972 - Co-founded the Women's Rights Project at the American Civil Liberties Union.
- 1980 - Nominated to the U.S. Court of Appeals for the District of Columbia by President Jimmy Carter
- 1993 - Nominated to the U.S. Supreme Court by President Bill Clinton, becoming only the 2nd woman justice on the court.
- 2002 - Inducted into the National Women's Hall of Fame.
- 2010 - Became the oldest justice on the court at the age of 77.
- present - Remains a justice and intends to do so while she is still mentally sharp enough to perform her duties.
Here's a time line of Ruth Bader Ginsburg's life:
— Ruth Bader Ginsburg"I would like to be remembered as someone who used whatever talent she had to do her work to the very best of her ability."
You can read more about this incredible woman's life on her Wikipedia Entry.


Buildings:
delete add save json file
Name:
offset x:
offset y:
length:
width:
height:
orientation on site:


This is tab one.
This is tab one.
This is tab two.
This is tab 3.
This is tab 3.
This is tab 3.
This is tab 3.
This is tab 3.
This is tab 3.
This is tab 3.
This is tab 3.
This is tab 3.
This is tab 3.


Coding Quiz Challenge
Answer questions correctly about coding within time frame. Penalization of 10 seconds for every question missed.
Start Quiz


REFRESH LIQUIGEL- carboxymethylcellulose sodium gel
Allergan, Inc.
Disclaimer: Most OTC drugs are not reviewed and approved by FDA, however they may be marketed if they comply with applicable regulations and policies. FDA has not evaluated whether this product complies.
Active ingredient
Carboxymethylcellulose sodium 1%
Purpose
Eye lubricant
Uses
- For the temporary relief of burning, irritation, and discomfort due to dryness of the eye or exposure to wind or sun.
- May be used as a protectant against further irritation.
Warnings
- For external use only.
- To avoid contamination, do not touch tip of container to any surface. Replace cap after using.
- If solution changes color or becomes cloudy, do not use.
Stop use and ask a doctor if you experience eye pain, changes in vision, continued redness or irritation of the eye, or if the condition worsens or persists for more than 72 hours.
Keep out of reach of children. If swallowed, get medical help or contact a Poison Control Center right away.
Directions
Instill 1 or 2 drops in the affected eye(s) as needed.
Other information
- Use only if imprinted tape seals on top and bottom flaps are intact and clearly legible.
- Use before expiration date marked on container.
- Store at 59°-86°F (15°-30°C).
- RETAIN THIS CARTON FOR FUTURE REFERENCE.
Inactive ingredients
Boric acid; calcium chloride; magnesium chloride; potassium chloride; purified water; PURITE® (stabilized oxychloro complex); sodium borate; and sodium chloride.
Questions or comments?
1.800.433.8871
refreshbrand.com
Refresh
Liquigel®
Lubricant Eye Gel
SOOTHING GEL
Long-lasting relief
for dry eyes in a
soothing gel formula
0.5 fl oz (15 mL) Sterile
Allergan, Inc.


To simplify the handling of times in different time
zones, time is always represented as the number of milliseconds
after midnight independent of time zone.
It handles flexible
input and normalizes the value when the control loses focus. For
example, type "12p" in the box and hit TAB.
The UTCDateTimeUtils class
is provided for use on the server to allow conversion to a Date on a
known day in a known TimeZone.
Note: These demos use the "en" locale with
default date/time formats, but other locales and formats can be specified.
UTCTimeBox Demo
UTCTimeBox ValueChangeEvents (most recent on top)


{% extends "happenings/event_detail.html" %} {% load typogrify_tags %} {% block title %}{{ object.name }} Attendees: {% endblock %} {% block content %} {% csrf_token %}
{% if u.first_name and u.last_name %}
{{ u.first_name }} {{ u.last_name }}
{% endif %}
{{ u.city }}{% if u.state %}, {{ u.state }}{% endif %}
We're all very important people, right? Here's some of the folks from around the site you might run into at {{ object.name|typogrify }}.
{% if authenticated_request %}


We're sorry but Snapshot doesn't work properly without JavaScript enabled. Please enable it to continue.


Black_Mirror
Over the last ten years, technology has transformed almost every aspect of our lives before we've had time to stop and question it. In every home; on every desk; in every palm - a plasma screen; a monitor; a smartphone--a black mirror of our 21st Century existence. Black Mirror is a contemporary British re-working of The Twilight Zone with stories that tap into the collective unease about our modern world.


Piles of burnt timber became the new flooring of Your Father’s Moustache. The bright colorful walls were now black — what was left of it anyway. The red booths where clients used to sit were tarnished. The mirrors shattered into pieces. The scissors, spray and shampoo bottles were gone, along with Smart’s job.
When Smart arrived at the shop, the demolition crew was about to destroy the shop. He ran into the shop to see if there was anything salvageable. He hurried to his desk and scrounged through the drawers, trying to find anything worth saving. He did find one sliver of hope that day — a box with some of his scissors.
It was a faint farewell for Smart. He said his goodbyes until the bulldozers started busting through the walls.
Smart later found out the fire traveled through the attic of the shop. The attic connected to multiple buildings on the east side of Court Street. Your Father’s Moustache was not the only building that was destroyed because of the fire. Flower shops and boutique stores were two of the many casualties. The cause of the fire is still unknown, though Smart has his own theories.
“I believe the fire was arson, but that’s not confirmed,” Smart said.
 Investors started talking with Smart about starting a training program where stylists would learn alongside him. Smart knew that was out of the picture now.
Investors started taking their shares out of the business, which made partners of the business antsy. Fritz and Bookman sold the company and moved on, leaving Your Father’s Moustache in the rubble.
Through the fire and selling the company was still fresh in his mind, one thought kept ringing through Dave Smart’s head: “you’re now unemployed.”
Unemployed
Smart along with the 30 other employees of Your Father’s Moustache were left to their own devices. There wasn’t another shop they could go to and start up again. Their equipment, chairs, decorations and clientele were in that now crumbled building.
“It was pretty devastating,” Smart said. “You lose 50% of your business. The personality of the shop really brings people in.”
It was time to start again or leave the business of hairstyling all together.
When the thought of leaving the business entered Smart’s mind, he remembered what helped him to get to this point in his career: the S. Davis brothers and Fritz Bookman.
“Cutting hair is like a relationship. You have to say to yourself, ‘How are we going to make it through this?'”-Dave Smart, owner of Smart's Barbershop
Smart then recalled the lifeblood to a successful barbershop — clients, clients who will come back even after a fire. He would get calls from clients, and each one would call Smart, saying, “I still need a haircut.” All he could think was, “what are you going to do?”
“A haircut is something you can’t order,” Smart said. “It’s a product that is indescribable, a creative and artistic expression.”
Olivia Juenger | Asst. Art Director
He started making calls, asking if he could cut hair in people’s houses and cars. Finding work was the only goal.
“Cutting hair is like a relationship,” Smart said. “You have to say to yourself, ‘How are we going to make it through this?’”
Smart landed a haircutting job at Attractions Hair and Nail Salon, located further down on and on the other side of Court Street than Your Father’s Moustache. Smart was joined with some Your Father’s Moustache alumni, which helped ease his anxieties of being in another shop.
Then, like an uninvited guest, another fire entered Smart’s shop. As he was entering Attractions one day, he was told by an employee that the shop was on fire.
“I just started grabbing what I could find,” Smart said. He fled with his cash register, appointment book and his stereo. While the firefighters were putting out the fire, Smart started rescheduling hair appointments with his clients.
“I was out on the streets again,” Smart said.
After both fires, Smart lost 50% of his clientele. Each fire was a cut to his paycheck and reputation.
Smart still was not ready to end his barber career.  He searched for years before landing himself on West Washington Street.
Smart and his wife have been snipping and sweeping in the little blue building for over 18 years of hard work and perseverance.
When a client walks through Smart’s red lined door, they are greeted to a red wooden block sign: “In-spire, verb (1): to encourage somebody to greater effort, enthusiasm, or creativity (2): to awaken a particular feeling in somebody.”
In the waiting room, old vintage radios and desk fans line his upper shelf.
“I got fans,” Smart said. “ I always got people cheering for me.”
Traditions, however, good or bad, do not go away with grace.
Traditions
On March 18, 2020, the coronavirus impacted barber shops across Ohio. Gov. Mike DeWine issued an executive order to close all barber shops, salons and tattoo parlors until further notice.
Athens became a ghost town. The city was swept clean, with only townies and students who were renting apartments or houses staying. The rest of the student population was kicked out of town and headed back to their homes for quarantine. Smart’s clients were now scattered throughout the U.S. A man can only travel so far for a Dave Smart haircut.
Olivia Juenger | Asst. Art Director
“I have lost 50% of my business due to the virus,” Smart said.
His business is surviving, though the pandemic hasn’t made it easy.
“I’m making ends meet, but that’s about it,” Smart said. “All the money is going toward the bills.”
The funds that would go away for safekeeping is now going toward cleaning supplies and masks to keep his shop as same as possible for clients.
A barbershop is only as good as the people who come in it. Luckily for Smart, he is still having customers come in for a haircut during the pandemic. If some customers can’t go to his barbershop, Smart goes to their home to do the haircut there.
“Dave’s reputation is giving haircuts for families. Everyone knows him,” Bookman said. “Dave is an excellent example of an encourager.”
Like the red wooden block, Smart follows the word “inspire”: to encourage somebody to greater effort. Through the challenges two fires and a pandemic have given Smart, he has survived and gained inspiration to move forward in the barber business.
“I really like what I do and I really like people,” he said. “I have never woken up a day in my life and dreaded coming to work. I’ve never had a boring day.”


sfGlyph describes a glyph (a visual character)
More...
#include <Glyph.h>
sfGlyph describes a glyph (a visual character)
Definition at line 38 of file Glyph.h.
Offset to move horizontically to the next character.
Definition at line 40 of file Glyph.h.
Bounding rectangle of the glyph, in coordinates relative to the baseline.
Definition at line 41 of file Glyph.h.
Texture coordinates of the glyph inside the font's image.
Definition at line 42 of file Glyph.h.
The documentation for this struct was generated from the following file:


inputEx - SelectField Usage
Basic SelectField creation
Use the following code to create a basic inputEx SelectField.
Updated event
How to listen to the updated event :
addOption
Add options dynamically
removeOption
Remove options dynamically


Graduate Student & Software Engineer
I'm a graduate student studying Computer Science at Northeastern
University. I'm also a self-driven software engineer skilled in
Python, Java and JavaScript and interested in Web and Android App
Development.
-
Degree: Master of Science
-
Phone:
+1 669 *** ****
-
City:
Fremont, CA
-
Graduation: Winter 2021
-
Email:
<EMAIL_ADDRESS>-
Languages:
Mandarin (native), English (fluent), Japanese
(intermediate)
-
Hobbies:
Cooking, Anime, Games, Pets, Photography


Hello World: 5
Exercises and Suggestions
| GEOS SDK TechDocs
|
| 4 The Source File and Source Code
After studying the Hello World sample application and reading the System Architecture chapter, you may be ready to try some exercises before embarking on your application. It is strongly suggested that you spend some time modifying the Hello World program to get used to the programming environment and the Goc UI definition syntax. Some things you might try are outlined below--some are extremely easy; some are more difficult. Some will require you to read other chapters in this and the User Interface manual. In any case, you should go on to read the GEOS Programming chapter to understand the various keywords and constructs of the Goc programming language.
Some simple UI exercises you can incorporate into the Hello World program include the following suggestions:
-
Add a new menu item that brings up a dialog box letting the user select a point size for the text. In the dialog box you would use a GenValue object or perhaps a list of point sizes (or even one or more triggers) to take the user's input. The GenValue sends out a message with a new number when the user sets it, and your Process object would handle this message and set the point size. Your
HelloDrawText()
routine would then have to set the point size of the text as well as the color.
-
Add a feature that lets the user set the position and/or rotation of the text. This exercise will help you get used to the GEOS coordinate space.
-
Make HelloView scalable. To do this, you will create a new menu or dialog box that lets the user specify the scale. Most likely you will create a number of GenTriggers that apply a pre-specified scale; each of these triggers will send
MSG_GEN_VIEW_SET_SCALE_FACTOR
to HelloView. You may even try using a
GenViewControlClass
object.
-
Add background graphics to get used to the coordinate system. Perhaps draw a colored rectangle behind the text that changes colors to be the inverse of the text (i.e. when the text turns blue, the rectangle turns yellow).
-
Add printing. This is not nearly as difficult as you might think. To do this, you should read the Printing chapter. This exercise essentially consists of adding a trigger to invoke printing and a message handler for the printing message. This handler will create a printing GState and call the drawing routine. Instead of drawing to the screen, it draws to the Spooler's input.
Some of the exercises may have been implemented in the sample programs provided. You should look through the samples for insight into how the exercises may be completed. You are also encouraged to make up your own exercises to build on Hello World.
If you are new to GEOS programming, you should work through the Tutorial; otherwise, you will likely be overwhelmed by the complexity and depth of the system and not know where to begin.
| GEOS SDK TechDocs
|
| 4 The Source File and Source Code


For the rest of the talk, I'm focusing on the 'fitting in'
case, but including web which is kinda its own thing.
Drawing
What are we showing, where are we showing it.
Drawing
- Most users will receive information from our app visually
- Retaining/caching output can be important for performance, but
easier for programmer to redraw everything every frame
- Frameworks like React try to give best of both worlds
Drawing
- We don't need to expain how to add/remove stuff when
shouldShow
changes, that bit is figured out for
us
- How to make UI easy for the programmer is a massive topic on its own
Text
- Text is hard
- Easy: Ow now brown cow
- Easyish: mais Mémé aimait même, mes mets...
- Hard:
यह देवनागरी है, और यह हिब्रू में नमस्ते है:
שלום מימין לשמאל
- (My text editor completely failed on the last one, but browsers tend to
have really good support for alternate scripts)
Text encoding
- Massive subject, but the upshot is everyone uses Unicode and UTF-8
(except Microsoft of course, who use a slightly wrong UTF-16)
- The thing to remember is "Unicode is the way of recording all text from
any languages, and UTF-8 is how to actually store it on disk
efficiently"
Text shaping
This is turning a string of text into a sequence of glyphs and locations to
draw them
- In English, there is almost always a 1-1 correspondence between
characters and glyphs
- Not so in other languages
- Arabic (العربية) normally has 4 ways to draw each character, for start, middle,
end of a word, and on its own
- Oh yeah, Hebrew and Arabic are written backwards. How does selecting
text work when you have languages in both directions? People have
actually solved this.
- kerning, emoji 😃, ...
Text drawing
Glyphs must be turned from a list of curves into actual pixels at a given size
to be drawn.
- Antialiasing (including subpixel)
- Hinting
- 4k screens mean we may be able to consign some techniques to the
dustbin of history
Input handling
- Traditionally, the main sources of input were mouse and keyboard. Now
we have many devices, including speech, touchscreen, accessible
devices, and more.
- Most input methods can be represented as either a stream of characters,
or a pointer to parts of the screen. This greatly simplifies the job of
application developers: they do not have to think about the great
complexity here; it can be handled by UI libraries
- Again, scripts come to bite us again here: CJK languages (Chinese,
Japanese and Korean) have far too many characters to have a keyboard
key for each one
- They usually use Imput Method Editor (IME) software. All I will say
here is that you should support it
Accessibility
I've run out of time, but this should be its own talk anyway. There are many
different disabilities, and many different technologies to enable full access
to computing for people with any of them. A very quick list: color blindness
and gradient selection, blindness, screen readers and tree-based interface
representation, motor problems and keyboard-only navigation (tab through input
elements).
Accessibility is something that you cannot ignore as an
application developer, the same way you can ignore other stuff I've talked
about. High-contrast mode, easily understandable text, and much besides is in
the domain of the application developer.
End
I hope this has been interesting. It's tricky for an application developer,
because we can forget about this stuff most of the time, but not all the
time.


{% extends "parent.html" %} {% block child %}
| Name | Codechef long
Rating |
Codechef short
Rating |
Codeforces
Rating |
College
Rating |
|---|---|---|---|---|
| {{ student.username | angular }} | {{ student.lrating | angular }} | {{ student.srating | angular }} | {{ student.cfrating | angular }} | {{ student.colg_rating | angular }} |


--- layout: page title: About header-img: "img/about-bg.png" ---
I like solving things, designing things, and making things -- especially in python, ruby, and javascript.


{% extends "core/base.html" %} {% load i18n widget_tweaks %} {% block head_title %}{% trans "Signup" %}{% endblock %} {% block content %}
{% blocktrans with provider_name=account.get_provider.name site_name=site.name %}You are about to use your {{provider_name}} account to login to {{site_name}}. As a final step, please complete the following form:{% endblocktrans %}


Home
About
Projects
Contact
Welcome to Mark 1
A Platform for the Future
Project Vera
Project Mayhem
Previous
Next
What I Do
Project 2
Current Project
Project 3


This is Lyla. She is a pink flamingo. She would love to be adopted into a family that has a pool. She has sleep apnea and was formerly obese. Come see her today!!
This is Harry. Harry loves to eat and cuddle. He was born with a cleft palate but you'd never know, right? He will do well with a family that has a grassy lawn.
This is Slushy. He enjoys Nascar events. Slushy has been waiting for his perfect family for four years now. Do you really want him to wait any longer? We don't.
This is Tinker Bell. She has done very well on her diet and is now ready for adoption. She doesn't require much, other than a hot tub and to snuggle you at night.


{% extends "base.html" %} {% load urlify %} {% load crispy_forms_tags %} {% block head_title %} {{ instance.title }} | {{ block.super }} {% endblock head_title %} {% block post_detail_link %} {% endblock %} {% block content %}
You must login to comment
{% endif %}{{ comment.content }}
Publish Year: {{ instance.year }}
{% if instance.author %}Author: {{ instance.author }}
{% endif %}Total Votes: {{ instance.like_count }}
Please write some reviews and send us we will feel awesome to post it here!!
You must login to comment
{% endif %}


Train to Pakistan
[Screened at the Cinequest Film Festival 9, San Jose]
[3.0/4.0] (dialog in Hindi, English subtitles)
The Punjab in 1947 pre-partition India is a powder keg. As the British are about to pull out of their colonial holding, there are many people who would like to have a new, single country, but instead sectarian and ethnic prejudice is apparently going to create two new states -- the predominantly Muslim Pakistan and the predominantly Hindu and Sikh India. The unfortunate side effect of this is that many people living on their ancestral lands are going to find themselves on the wrong side of the new border, since the Punjab itself is being split in the middle. Mano Majra is a fairly typical village; peaceful and quiet. Although its classes are stratified into the unequal distribution of Sikh landlords and Muslim laborers, this economic division has not been a source of tension. Both communities coexist peacefully, but there are storm clouds on the horizon.
The communist party has sent the earnest Iqbal to organize worker and discourage sectarian violence with the ultimate goal of keeping India united. The local moneylender has been robbed and murdered, so the police initially suspect the newcomer and detain him. There have also been many agitators travelling the countryside who are encouraging the Muslims to fight the Hindus and Sikhs, and vice versa. Because of this, the local magistrate thinks maybe he can pin the crime on insurgent Muslim bandits (although he knows it was really done by local Sikh bandits) and connect Iqbal to them as an agitator. In jail, Iqbal meets Jagga Singh, one of the local Sikh bandits who is following in the general profession of his ancestors. Jagga is in love with Nooran, the daughter of a Muslim peasant, but their union is doomed because of the difference of their ethnicity, although Jagga naively declares that he is neither Sikh nor Muslim, but only a bandit.
The magistrate is the narrator of the story, but is a flawed protagonist. His main goal is to maintain peace and order in the district, but he is perfectly willing to sacrifice few innocents. But can this action be condemned? If he does not act, it appears a wholesale slaughter is possible, as a trainload of dead Hindus and Sikhs sent from Pakistan demonstrates. His cold-heartedness is apparently the result of the loss of his family. The death of his daughter (we are not told how she died, but violence is intimated) is a ghost that has swallowed his spirit. As a surrogate for both his daughter and his wife, he detains a young itinerant dancing girl. The girl herself symbolically represents the lost innocence of the subcontinent. Ultimately the magistrate realizes that he must send the girl with the other Muslims who are fleeing to Pakistan for their own safety.
The story is based on the novel by Kurshwant Singh. Anyone familiar with the history of the events will recognize this as an accurate depiction of all the factors leading to the tragedy; from the ability of radicals to exploit longstanding ethnic differences to the way a small spark of unrest can quickly escalate into an inferno, and to the way those who wish to control the situation are rendered into helpless observers. The main problem with the film is that it is too ambitious. Since this is a novel adapted to a screenplay, it tries to fit as much of the narrative of the original work into the running length of a film.
Recommended. The drama can be heavy-handed, but that is not unusual for Indian productions. It does accurately portray the many aspects of the issues it presents.
(c) 1999 Murali Krishnan The Art House Squatter http://pages.hotbot.com/movies/murali24/
-----------== Posted via Deja News, The Discussion Network ==---------- http://www.dejanews.com/ Search, Read, Discuss, or Start Your Own
The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


KzmScroll
Date: 18.Nov.95 - Last Release: 22.Nov.95
This applet was created basing on the
c|net scrolling text applet. I needed something like that for my
provider so i wrote this applet.
KzmScroll put a message on the screen, in a colored rectangle
and let into it a message moving from right to left.
PARAMETERS
- Font: (String, default=Arial)
- This is the name of the font. The only restriction is that it must
be written excactly as the system need (normally with the first
letter capitalized). NOT WELL TESTED, SORRY !
- FontSize: (Int, default=12)
- The size of the font.
- FontBold: (0/1, default=1)
- If this value is 0, the font is bold, if it is 1 the font is bold.
- Rectangle: (X Y WIDTH HEIGHT, default=applet dimension)
- This is the dimension of the scrollable area.
- Shift: (Int, default=5)
- Is the shifting of the message.
- Delay: (Int, default=50)
- Is the delay between every shift.
- Rect_Color: (R G B, default=0 0 0)
- The color of the scrollable area, the rectangle.
- Text_Color: (R G B, default=255 255 255)
- The color of the message.
- Message: (String, default=my name)
- This is the text of the message.
- Copyright: (String)
- Ok, this is a copyright line. Please don't change it. This applet
is freeware, so the only cost is to leave this copyright parameter.
DOWNLOAD "KzmScroll.zip"


1. What is CSS?
2. Which of the following is true?
3. The font size small is:
4. CSS is beneficial because:
5. 1em represents?
6. The font-family:
7. Embedded styles:
8. The style tag is in what section?
9. Which of the following is a type of CSS sheet?
10. Inline style sheets:
11. Embedded style sheets;
12. External style sheets:
13. In the style body{color:blue}, what is considered the selector?
14. Which delaration property defines a web page background color as blue?
15. The color code #FFFFFF represents:
16. Which of the following is a CSS property for configuring text?
17. Font-style:
18. xx-large text size is configured as:
19. Which element configures a drop shadow on text?
20. Text-transform:
21. CSS style rules can be configured for a
22. An email hyperlink:
23. What element displays a subscript?
24. What element displays a superscript?
25. How do you italicize text in HTML?
Question 1: The correct answer is the Cascading Style Sheet.
Question 2: The correct answer is All of the above.
Question 3: The correct answer is 13px.
Question 4: The correct answer is None of the above.
Question 5: The correct answer is Medium text size.
Question 6: The correct answer is Determines the font style.
Question 7: The correct answer is Style the whole site.
Question 8: The correct answer is The head.
Question 9: The correct answer is External.
Question 10: The correct answer is Applies only to the specific element.
Question 11: The correct answer is the All of the above.
Question 12: The correct answer is Separates text file with .css file extension.
Question 13: The correct answer is Body.
Question 14: The correct answer is None of the above.
Question 15: The correct answer is White.
Question 16: The correct answer is All of the above.
Question 17: The correct answer is Configures text to an italic styles.
Question 18: The correct answer is 2 em.
Question 19: The correct answer is text-shadow.
Question 20: The correct answer is Confgures the capitalization of text.
Question 21: The correct answer is Class selector.
Question 22: The correct answer is Launches default mail program confiured for browser.
Question 23: The correct answer is <sub>.
Question 24: The correct answer is <sup>.
Question 25: The correct answer is <i>.
You answered them all right!


Panic! At The Disco’s Brendon Urie livestreams new monster metal song – listen
The frontman has shared another headbanger online
Panic! At The Disco‘s Brendon Urie has shared another metal song online – watch the video below.
The frontman, who had told fans he’d be taking a break from music in 2019, premiered a ferocious track during a Twitch livestream over the summer.
Taking to the video platform once again earlier today (November 16), the musician was joined by Fall Out Boy‘s Pete Wentz and Twenty One Pilots‘ Josh Dunn in a bid to raise funds for PATD’s Highest Hopes Foundation.
Once Urie raised $75,000 (£58,117) in donations, he unveiled another monster metal tune. The singer is seen headbanging on the stream as the relentless cut kicks in, with feral screams making way for his distinct vocals in the chorus.
Speaking upon the release of his first metal track back in August, Urie explained: “That’s literally me stoned and drunk in my room, sitting in this room and going, ‘Oh, let me grab a guitar real quick.’ I played that on a click [track], and then I automated the drums. I did one cymbal, one snare track and then one kick track. That was it.”
Urie spoke of his interest in exploring a heavier sound back in December 2018, explaining that he felt he needed to be “more diverse” with his output.
“I want to do a metal project in particular,” he revealed, saying that there were “so many different things” he wanted to do in terms of genre.
At the other end of the musical spectrum, Panic! At The Disco recently released their rendition of ‘Into The Unknown’ from the forthcoming sequel to Disney’s Frozen.


You are in Group 2
This tag shows which group you've been assigned to.
Prompt text
£1.00
£5.00
★
Instructions
Click or Touch the tooltip above to move on...


Toggle navigation
Home
About
Events
Officers
Families
Files
Donate
{% block content %}{% endblock %}


bar-boy
cosmo
daquiri
mojito
screwdriver
lemondrop
kamikaze
lagoon
hurricane
cranberry
glue
mistake
created by drew ehrlich and corey duval
github.com/deehrlic/bar-boy


with
statements (no-with)The with
statement is potentially problematic because it adds members of an object to the current scope, making it impossible to tell what a variable inside the block actually refers to.
This rule disallows with
statements.
If ESLint parses code in strict mode, the parser (instead of this rule) reports the error.
Examples of incorrect code for this rule:
/*eslint no-with: "error"*/
with (point) {
r = Math.sqrt(x * x + y * y); // is r a member of point?
}
Examples of correct code for this rule:
/*eslint no-with: "error"*/
/*eslint-env es6*/
const r = ({x, y}) => Math.sqrt(x * x + y * y);
If you intentionally use with
statements then you can disable this rule.
This rule was introduced in ESLint 0.0.2.


NYC based web developer and student at the OSU Coding Bootcamp, graduating in July 2021.
With a background in management, hospitality, and accounting, I am ready and excited to embark on a new journey in full stack development, utlizing skills such as HTML, CSS, JavaScript, and Node.js.


pod try Alderis
Alderis is a fresh new color picker, with a gentle, fun, and dead simple user interface. It aims to incorporate the usual elements of a color picker, in a way that users will find easy and fun to use.
The user can start by selecting a color they like on the initial color palette tab, and either accept it, or refine it using the color wheel and adjustment sliders found on the two other tabs.
Alderis is named for the Alderamin (Alpha) star in the Cepheus (Cephei) constellation. (There is no dependency on the Cephei project.)
|
Click for full-quality MP4 |
Why do I want this? Isn’t there already a color picker in iOS?
Alderis was originally released before iOS 14 was unveiled with a built-in color picker feature, which seems to be heavily inspired by Alderis. However, rather than throw in the towel here, I’m considering this an opportunity to continue building what I feel is a better, less cluttered user experience, with more configuration options for apps to fine-tune a color picker UI suitable for each use case and target market.
If this doesn’t seem important to you, the answer is simple: skip Alderis and use UIColorPickerViewController. If it does, read on.
Feature Comparison
| Alderis | UIKit | |
|---|---|---|
| Minimal UI | ✔ | ✖ |
| Drag and drop colors within app | ✔ | ✔ * |
| Drag and drop colors across apps | ✔ | ✖ |
| Color grid | ✔ | ✔ |
| Color spectrum/wheel | ✔ | ✔ |
| RGB sliders | ✔ | ✔ |
| HSB sliders | ✔ | ✖ |
| Grayscale slider | ✔ | ✖ |
| Opacity slider | ✔ | ✔ |
| Hex color code support | ✔ | ✔ |
| Color space support (Display P3) | ✖ | ✔ |
| Save favorite colors | ✖ | ✔ |
| Saved colors shared across apps | ✖ | ✔ |
| Grab color from screen (eyedropper) | ✖ | ✔ |
| Customise title label | ✔ | ✖ |
| Customise tab row visibility | ✔ | ✖ |
| Customise visible tabs | ✔ | ✖ |
| Customise initially selected tab | ✔ | ✖ |
| Customise opacity slider visibility | ✔ | ✔ |
| Customise color grid | ✖ | ✖ |
| Interface Builder support | ✖ | ✖ |
| SwiftUI support w/o UIKit bridging | ✖ | ✖ |
| Observe value change with KVO | ✖ | ✔ |
* UIColorWell supports dragging colors onto it, but not out of it. Alderis supports both directions, which are separately configurable. The default Alderis ColorWell behavior matches UIColorWell. Alderis supports drag and drop on the color picker window; UIKit does not.
Installation
CocoaPods
Add to your Podfile:
pod 'Alderis', '~> 1.1'
And then run pod install
.
Carthage
Add to your Cartfile:
github 'hbang/Alderis' ~> 1.1
And then run carthage update
.
Swift Package Manager
- Click File → Swift Packages → Add Package Dependency.
- Enter
http://github.com/hbang/Alderis.git
. - Specify
1.1
as the version filter.
Or, manually add it to your Package.swift:
dependencies: [
.package(url: "http://github.com/hbang/Alderis.git", from: "1.1")
]
And then run swift package update
.
Jailbreak packages
Add ws.hbang.alderis (>= 1.1)
to your Depends:
list.
Preference Bundles and libcolorpicker Compatibility
Alderis acts as a drop-in replacement for libcolorpicker, an abandoned but still very popular color picker library on jailbroken iOS. Packages can simply change their dependencies list to replace org.thebigboss.libcolorpicker
with ws.hbang.alderis (>= 1.1)
to switch their color picker to Alderis. No other changes required!
For more information, refer to the docs.
License
Licensed under the Apache License, version 2.0. Refer to LICENSE.md.
Header backdrop photo credit: John-Mark Smith on Unsplash


{include file="common/title" /} {load href="__STATIC__/css/index.css" /} {load href="__STATIC__/css/collocation.css" /} {load href="__STATIC__/js/01.js"/} {load href="__STATIC__/js/shortcut.js"/} {load href="__STATIC__/js/collocation.js"/}


turn on your speakers!
don't forget there is a download hidden somewhere.
§
1
2
3
4
5
6
7
8
9
0
?
+
d
tab
q
w
e
r
t
y
u
i
o
p
º
´
e
up
A
S
D
F
G
H
J
K
L
ç
~
/
Lalt
<
z
x
c
v
b
n
m
,
.
-
tab
fn
ctrl
alt
cmd
space
cmd
alt
lef
top
do
rig
move your cursor around


Formidable
Purpose
A node.js module for parsing form data, especially file uploads.
Current status
This module was developed for Transloadit, a service focused on uploading and encoding images and videos. It has been battle-tested against hundreds of GB of file uploads from a large variety of clients and is considered production-ready.
Features
- Fast (~500mb/sec), non-buffering multipart parser
- Automatically writing file uploads to disk
- Low memory footprint
- Graceful error handling
- Very high test coverage
Changelog
v1.0.6
- Do not default to the default to the field name for file uploads where filename="".
v1.0.5
- Support filename="" in multipart parts
- Explain unexpected end() errors in parser better
Note: Starting with this version, formidable emits 'file' events for empty file input fields. Previously those were incorrectly emitted as regular file input fields with value = "".
v1.0.4
- Detect a good default tmp directory regardless of platform. (#88)
v1.0.3
- Fix problems with utf8 characters (#84) / semicolons in filenames (#58)
- Small performance improvements
- New test suite and fixture system
v1.0.2
- Exclude node_modules folder from git
- Implement new
'aborted'
event - Fix files in example folder to work with recent node versions
- Make gently a devDependency
v1.0.1
- Fix package.json to refer to proper main directory. (#68, Dean Landolt)
v1.0.0
- Add support for multipart boundaries that are quoted strings. (Jeff Craig)
This marks the beginning of development on version 2.0 which will include several architectural improvements.
v0.9.11
- Emit
'progress'
event when receiving data, regardless of parsing it. (Tim Koschützki) - Use W3C FileAPI Draft properties for File class
Important: The old property names of the File class will be removed in a future release.
Older releases
These releases were done before starting to maintain the above Changelog:
- v0.9.10
- v0.9.9
- v0.9.8
- v0.9.7
- v0.9.6
- v0.9.5
- v0.9.4
- v0.9.3
- v0.9.2
- v0.9.1
- v0.9.0
- v0.9.0
- v0.9.0
- v0.9.0
- v0.9.0
- v0.9.0
- v0.9.0
- v0.9.0
- v0.1.0
Installation
Via npm:
npm install formidable@latest |
Manually:
1 2 3 |
git clone git://github.com/felixge/node-formidable.git formidable vim my.js # var formidable = require('./formidable'); |
Note: Formidable requires gently to run the unit tests, but you won't need it for just using the library.
Example
Parse an incoming file upload.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
var formidable = require('formidable'), http = require('http'), sys = require('sys'); http.createServer(function(req, res) { if (req.url == '/upload' && req.method.toLowerCase() == 'post') { // parse a file upload var form = new formidable.IncomingForm(); form.parse(req, function(err, fields, files) { res.writeHead(200, {'content-type': 'text/plain'}); res.write('received upload:\n\n'); res.end(sys.inspect({fields: fields, files: files})); }); return; } // show a file upload form res.writeHead(200, {'content-type': 'text/html'}); res.end( '<form action="/upload" enctype="multipart/form-data" method="post">'+ '<input type="text" name="title">
'+ '<input type="file" name="upload" multiple="multiple">
'+ '<input type="submit" value="Upload">'+ '</form>' ); }).listen(80); |
API
formidable.IncomingForm
new formidable.IncomingForm()
Creates a new incoming form.
incomingForm.encoding = 'utf-8'
The encoding to use for incoming form fields.
incomingForm.uploadDir = process.env.TMP || '/tmp' || process.cwd()
The directory for placing file uploads in. You can move them later on using
fs.rename()
. The default directory is picked at module load time depending on
the first existing directory from those listed above.
incomingForm.keepExtensions = false
If you want the files written to incomingForm.uploadDir
to include the extensions of the original files, set this property to true
.
incomingForm.type
Either 'multipart' or 'urlencoded' depending on the incoming request.
incomingForm.maxFieldsSize = 2 * 1024 * 1024
Limits the amount of memory a field (not file) can allocate in bytes.
If this value is exceeded, an 'error'
event is emitted. The default
size is 2MB.
incomingForm.bytesReceived
The amount of bytes received for this form so far.
incomingForm.bytesExpected
The expected number of bytes in this form.
incomingForm.parse(request, [cb])
Parses an incoming node.js request
containing form data. If cb
is provided, all fields an files are collected and passed to the callback:
1 2 3 |
incomingForm.parse(req, function(err, fields, files) { // ... }); |
incomingForm.onPart(part)
You may overwrite this method if you are interested in directly accessing the multipart stream. Doing so will disable any 'field'
/ 'file'
events processing which would occur otherwise, making you fully responsible for handling the processing.
1 2 3 4 5 |
incomingForm.onPart = function(part) { part.addListener('data', function() { // ... }); } |
If you want to use formidable to only handle certain parts for you, you can do so:
1 2 3 4 5 6 |
incomingForm.onPart = function(part) { if (!part.filename) { // let formidable handle all non-file parts incomingForm.handlePart(part); } } |
Check the code in this method for further inspiration.
Event: 'progress' (bytesReceived, bytesExpected)
Emitted after each incoming chunk of data that has been parsed. Can be used to roll your own progress bar.
Event: 'field' (name, value)
Emitted whenever a field / value pair has been received.
Event: 'fileBegin' (name, file)
Emitted whenever a new file is detected in the upload stream. Use this even if you want to stream the file to somewhere else while buffering the upload on the file system.
Event: 'file' (name, file)
Emitted whenever a field / file pair has been received. file
is an instance of File
.
Event: 'error' (err)
Emitted when there is an error processing the incoming form. A request that experiences an error is automatically paused, you will have to manually call request.resume()
if you want the request to continue firing 'data'
events.
Event: 'aborted'
Emitted when the request was aborted by the user. Right now this can be due to a 'timeout' or 'close' event on the socket. In the future there will be a separate 'timeout' event (needs a change in the node core).
Event: 'end' ()
Emitted when the entire request has been received, and all contained files have finished flushing to disk. This is a great place for you to send your response.
formidable.File
file.size = 0
The size of the uploaded file in bytes. If the file is still being uploaded (see 'fileBegin'
event), this property says how many bytes of the file have been written to disk yet.
file.path = null
The path this file is being written to. You can modify this in the 'fileBegin'
event in
case you are unhappy with the way formidable generates a temporary path for your files.
file.name = null
The name this file had according to the uploading client.
file.type = null
The mime type of this file, according to the uploading client.
file.lastModifiedDate = null
A date object (or null
) containing the time this file was last written to. Mostly
here for compatibility with the W3C File API Draft.
License
Formidable is licensed under the MIT license.
Ports
- multipart-parser: a C++ parser based on formidable
Credits
- Ryan Dahl for his work on http-parser which heavily inspired multipart_parser.js


Hi
I have installed emonhub on my raspberry pi running raspbmc:
pi@raspbmc:/var/log/emonhub$ uname -a
Linux raspbmc 3.12.31 #2 PREEMPT Wed Oct 29 09:24:56 UTC 2014 armv6l GNU/Linux
I get following error when I started emonhub in the emonhub.log file:
2015-01-01 16:17:53,186 INFO EmonHub Pre-Release Development Version (rc1.2)
2015-01-01 16:17:53,188 INFO Opening hub...
2015-01-01 16:17:53,194 INFO Logging level set to DEBUG
2015-01-01 16:17:53,196 INFO Creating EmonHubEmoncmsReporter 'emonCMS'
2015-01-01 16:17:53,201 INFO Set up reporter 'emonCMS' (buffer: memory | size: 1000)
2015-01-01 16:17:53,204 INFO Setting emonCMS url: http://emoncms.org
2015-01-01 16:17:53,207 INFO Setting emonCMS apikey: set
2015-01-01 16:17:53,209 INFO Creating EmonHubJeeInterfacer 'RFM2Pi'
2015-01-01 16:17:53,215 DEBUG Opening serial port: /dev/ttyAMA0 @ 38400 bits/s
2015-01-01 16:17:55,221 DEBUG Opening serial port: /dev/ttyAMA0 @ 9600 bits/s
2015-01-01 16:17:57,226 ERROR Unable to create 'RFM2Pi' interfacer: Attempting to use a port that is not open
Do you have any idea why I am having this problem ?
Note that I have checked it and there is no process that is using ttyAMA0 :
pi@raspbmc:~$ ps -ef | grep tty
root 1018 1 0 16:04 tty2 00:00:00 /sbin/getty -8 38400 tty2
root 1019 1 0 16:04 tty3 00:00:00 /sbin/getty -8 38400 tty3
pi 2558 1416 0 16:36 pts/1 00:00:00 grep tty
pi@raspbmc:~$
Note also that raspbmc is a bit different compared to raspbian as inittab and cmdline.txt didn't make any reference to ttyAMA0. Instead I have out commented the last 2 lines of the file /etc/init/ttyAMA0.conf:
# ttyAMA0 - getty
#
# This service maintains a getty on tty2 from the point the system is
# started until it is shut down again.description "Start getty on ttyAMA0"
author "Scott James Remnant<EMAIL_ADDRESS>on ((xbmc-started FIRST_RUN!=no or started delay-start-20) and runlevel [23])
stop on runlevel [01456]
#respawn
#exec /sbin/getty -L ttyAMA0 115200 vt100
FYI my emonhub.conf (note that I have deleted most of my API wite key):
...
# All lines beginning with a '#' are comments and can be safely removed.
#######################################################################
####################### emonHub settings #######################
#######################################################################
[hub]# loglevel must be one of DEBUG, INFO, WARNING, ERROR, and CRITICAL
# see here : http://docs.python.org/2/library/logging.html
loglevel = DEBUG#######################################################################
####################### Reporters #######################
#######################################################################
[reporters]# This reporter sends data to emonCMS
[[emonCMS]]
Type = EmonHubEmoncmsReporter
[[[init_settings]]]
[[[runtimesettings]]]
url = http://emoncms.org
apikey = 5..deleted...3#######################################################################
####################### Interfacers #######################
#######################################################################
[interfacers]# This interfacer manages the RFM2Pi module
[[RFM2Pi]]
Type = EmonHubJeeInterfacer
[[[init_settings]]]
com_port = /dev/ttyAMA0
[[[runtimesettings]]]
group = 210
frequency = 433
baseid = 15#######################################################################
####################### Nodes #######################
#######################################################################
[nodes]# List of nodes by node ID
# 'datacode' is default for node and 'datacodes' are per value data codes.
# if both are present 'datacode' is ignored in favour of 'datacodes'
[[10]]
datacode = h
datacodes = l, h, h, h,
(END)
Any help would be greatly appreciated and of course a happy 2015 for you all.
Jan.
Re: emonhub error: "ERROR Unable to create 'RFM2Pi' interfacer: Attempting to use a port that is not open"
Hi Jan,
When did you purchase RFM2Pi ? If recently do you know if it is an RFM12 or RFM69 based board ?
I think if you can see a "larger" metal crystal can on the small RF sub-board (as seen here) it's an RFM12 or if not (as seen here) it's an RFM69.
If it's an rfm69 and not an "extremely" recent build it may use a baud of 57600, easily tested for and accommodated by adding a line to the [[RFM2Pi]] [[[init_settings]]] in the emonhub.conf below the com_port setting
You can find more on this on the "RFM12Pi with RFM69CW" thread.
Otherwise it maybe a permission or console issue which is unfamiliar territory for me on raspbmc but I did find this http://www.raspberrypi.org/forums/viewtopic.php?&t=33715 which seems to suggest moving the ttyAMA0.conf file or editing the files "start" line.
Paul
Re: emonhub error: "ERROR Unable to create 'RFM2Pi' interfacer: Attempting to use a port that is not open"
Hi Paul,
Thanks for the fast response.
I have checked it and it is a RFM12.
Regarding http://www.raspberrypi.org/forums/viewtopic.php?&t=33715 : I have already checked this and updated ttyAMA0.conf.
FYI: I can "echo" things to /dev/ttyAMA0 without getting errors:
kr
Jan.
[Duplicate post deleted - Moderator (RW)]
Re: emonhub error: "ERROR Unable to create 'RFM2Pi' interfacer: Attempting to use a port that is not open"
This problem is solved now (output emonhub.log)
I have no idea what I did to fix the problem.
Is it because I have installed https://github.com/lurch/rpi-serial-console and ran it once to enable the serial and once to disable the serial console:
Or was it because I did a hard shutdown (just pulled the power) instead of doing a "reboot".
FYI my /boot/cmdline.txt now looks like:
kr
Jan.
Re: emonhub error: "ERROR Unable to create 'RFM2Pi' interfacer: Attempting to use a port that is not open"
Glad you got it going, I wonder did you originally reboot the Pi for the initial changes to take effect ?
Paul
Re: emonhub error: "ERROR Unable to create 'RFM2Pi' interfacer: Attempting to use a port that is not open"
Hi Paul, I certainly rebooted it originally using the "reboot" command.
kr
Jan.
Re: emonhub error: "ERROR Unable to create 'RFM2Pi' interfacer: Attempting to use a port that is not open"
I don't know why this happened to you and why it got solved, but for the record, and as a note to Paul, I had the same mysterious message the other night when I plugged my new RF69 (which was flashed with an old firmware).
At baud rate detection, in the for
loop, if both baud rate give no answer, the loop is exited with self._ser not None but closed.
Then
tries to write in a closed serial port.
In my case, the firmware was probably set to 57600. In I jvda's case, I don't know.
We may want to rework the baud rate detection, at least to yield a more explicit error message.
While we're at it, I'm not sure the continue statement is needed here, is it ?
And maybe replace
by
?
Maybe I'll find the time to submit something...
Re: emonhub error: "ERROR Unable to create 'RFM2Pi' interfacer: Attempting to use a port that is not open"
Hi Jérôme, Thanks for the pointers, I have opened a Rework serial port read() and auto-baud selection issue on emonHub's repo as this does indeed need some attention.
The baud selection does need to be more robust or at least more informative if an error occurs, I wasn't aware of the "loop is exited with self._ser not None but closed" status and the "continue" probably can be removed, I think it was accidently left when the "Display device firmware version and current settings" code was removed from the auto-baud code so it could be reached when a baud was manually set in the conf.
The "self._rx_buf = self._rx_buf + self._ser.readline()" was copied over from the existing read() code, as I thought it was to ensure the line read remained a string and couldn't be accidently cast if for example, a purely numeric value was read and assumed to be an int etc.
I have occasionally encountered this same issue, but when cold booting a Pi with the RFM2Pi v2 (rfm12) and I believed it maybe due to the extended "help text" printed at power up or the extra newline with no CR in the sketches setup().
Sorry about the 57600 baud, but I think it only effects a handful of us and was for the greater good to drop it as discussed in the "RFM12Pi with RFM69CW" thread.
Paul
Paul
Re: emonhub error: "ERROR Unable to create 'RFM2Pi' interfacer: Attempting to use a port that is not open"
> The "self._rx_buf = self._rx_buf + self._ser.readline()" was copied over from the existing read() code, as I thought it was to ensure the line read remained a string and couldn't be accidently cast if for example, a purely numeric value was read and assumed to be an int etc.
The only reason I did this was because the readline() method is used with timeout 0 to avoid blocking the execution, and it might get executed before the frame is received in its entirety. Therefore, the received frame is checked for "end of frame" and if incomplete, it is completed at next readline() execution.
I never thought about potential cast issues.
Apart from the read() method occurence, all occurences of self._rx_buf = self._rx_buf + self._ser.readline() are useless but harmful, although they can be misleading, for instance
We can safely simplify this. (I can do it soon, don't bother.)
Re: emonhub error: "ERROR Unable to create 'RFM2Pi' interfacer: Attempting to use a port that is not open"
Ideally, the "auto baud detection" and the "firmware and settings retrieval" code should use the existing read() method and just act on the results rather than reading the port directly.
Re: emonhub error: "ERROR Unable to create 'RFM2Pi' interfacer: Attempting to use a port that is not open"
Hmmm, good point. I was modifying the file step by step by small modifications first but I shall move back, stop and think. This is a nice way of improvement. I'll have that in mind.
Re: emonhub error: "ERROR Unable to create 'RFM2Pi' interfacer: Attempting to use a port that is not open"
Another point it may be worth keeping in mind with regard to the bigger picture is the need to implement threading to the intefacers.
This is needed to assist implementing subscription to mqtt topics, return multiple payloads from "one read event" using I²C and also sending (routing) data out from interfacers, including http requests eg interfacing with packetgen. Not only as this would be a lot of work for the main thread but also to prevent blocking.
The experimental branch has a working version of threaded interfacers and routed data to get the gist of the idea. So in the (not so distant) future it may be that the interfacers are threads looping a read_to_rx_queue() method unless interrupted to execute a send_from_tx_queue().
Re: emonhub error: "ERROR Unable to create 'RFM2Pi' interfacer: Attempting to use a port that is not open"
Additionally it has now occurred to me that the configuration commands may need to be considered as well. In the experimental branch there is a send() method used to write to the serial port by the "glcd time update", "rfm2piListenerRepeater" and "packetgen", it does not however currently handle the "jee configuration commands", the "auto baud detection" or determining the "firmware revision and current settings". This may lead to clashes over serial port access within emonHub possibly, although I haven't experienced this yet.
Re: emonhub error: "ERROR Unable to create 'RFM2Pi' interfacer: Attempting to use a port that is not open"
I haven't look at the experimental branch yet, but indeed, if several threads are to send data over the serial port, they should send it first to a common buffer managed in a specific thread to prevent clashes.
Re: emonhub error: "ERROR Unable to create 'RFM2Pi' interfacer: Attempting to use a port that is not open"
Same error here: ERROR Unable to create 'RFM2Pi' interfacer: Attempting to use a port that is not open
Can I bypass the whole baud rate detection by specifying the baud rate explicitly with 'com_baud = 9600'?
I am asking because I am not using the RFM2Pi but my RS485 adapter which does not respond to any serial commands.
Jörg.
PS: or would it be possible to use the 'EmonHubSerialInterfacer' instead? And then com_baud has to be specified, too?
Re: emonhub error: "ERROR Unable to create 'RFM2Pi' interfacer: Attempting to use a port that is not open"
Hi Jörg.
The auto-baud detection is only on the "JeeInterfacer" for RFM devices as we can invoke a response to confirm a connection is successful or not. It can be over-ruled by setting 'com_baud = 9600' in the [[RFM2Pi]][[[init_settings]]], However the "JeeInterfacer" is just a "SerialInterfacer" heavy customised for the "Jee" family of devices so there is a lot of baggage and attempts to make settings that you just don't need.
I would recommend using a SerialInterfacer and if needed tune it to your needs. I'm sure you got it covered but if you search for terms like "emonhub serial direct" you'll find a couple of examples or just holla if you need any pointers :-)
Paul
Re: emonhub error: "ERROR Unable to create 'RFM2Pi' interfacer: Attempting to use a port that is not open"
Thank you very much for the info, Paul!
Then I will go with the SerialInterfacer. I have gone through the sources in the meantime and this is what I thought already. Just wanted to be sure because I gave one of my RS485 Pcbs to a friend and he had a lot of problems with it and the newest 'Low-Write' Emoncms version. Most of the problems came from typing errors (but which were based on documentation errors! There are examples with [runtimesettings] and [runtime_settings] and 'type' instead of 'Type'). Hope we get it fixed tomorrow. He is some 500km away, so it always takes some time between 'iterations' :-)) (and a lot of guessing what is happening there).
BR, Jörg.
PS: just found it again (the wrong documentation):
https://github.com/emoncms/emoncms/blob/bufferedwrite/docs/setup.md
"
Emonhub reporters config example for posting data to both the local buffered write installation and emoncms.org
[reporters] [[emonCMS_local]] type = EmonHubEmoncmsReporter [[[init_settings]]] [[[runtime_settings]]] url = http://localhost/emoncms apikey = xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx [[emonCMS_remote]] type = EmonHubEmoncmsReporter [[[init_settings]]] [[[runtime_settings]]] url = http://emoncms.org apikey = xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
"
Is there somebody out there who could correct this, please? Just cost me and my friend a few hours of our precious time :-))))
Re: emonhub error: "ERROR Unable to create 'RFM2Pi' interfacer: Attempting to use a port that is not open"
Hi Jörg.
I've submitted a pull request for the corrections. not quite sure how they slipped though the net. They are very early references from the days of listeners and dispatchers.
It's alittle late now but for future ref Type Is CamelCase As Per The EmonHubInterfacerTypes, all_the init_settings have_underscores and runtimesettingsarelowercasenobreaks (indicating settings that can be changed 'withoutstopping').
I am around on and off tomorrow so post if you have any issues.
Paul
Re: emonhub error: "ERROR Unable to create 'RFM2Pi' interfacer: Attempting to use a port that is not open"
Hello,
I still could'nt figure out a way to solve this error.
Please help me
I am getting error:
ERROR Unable to create 'RFM2Pi' interfacer: Attempting to use a port that is not open
thank you
Rao
Re: emonhub error: "ERROR Unable to create 'RFM2Pi' interfacer: Attempting to use a port that is not open"
You will need to tell us more to be able to help you.
Are you using Raspbian or raspmc? are you using a pre-built image, guide or self build?
Have you made the serial port available by editing cmdline.txt and inittab?
Which rfm2pi board are you using ? has it ever worked (ie has it stopped working or is this 1st install)?
Paul
Re: emonhub error: "ERROR Unable to create 'RFM2Pi' interfacer: Attempting to use a port that is not open"
I'm starting to get this message. I'm using Raspian with a self build and self install, recent. I added the RFM69PI and it didn't work at first, then ran the disable/enable serial port and it started to work. It worked until last night when it stopped with this message:
2016-01-31 23:59:11,891 INFO emonCMS sending: http://localhost/emoncms/input/bulk.json?apikey=E-M-O-N-C-M-S-A-P-I-K-E-Y&data=[[1454302750.63,8,4,20,0,0,12530,3000,3000,3000,3000,3000,3000,1,0,-58]]&sentat=1454302751
2016-01-31 23:59:13,086 DEBUG SIGINT received.
2016-01-31 23:59:13,282 WARNING emonCMS couldn't send to server, Exception: Traceback (most recent call last):
File "/home/pi/emonhub/src/emonhub_reporter.py", line 227, in _send_post
response = urllib2.urlopen(request, timeout=60)
File "/usr/lib/python2.7/urllib2.py", line 127, in urlopen
return _opener.open(url, data, timeout)
File "/usr/lib/python2.7/urllib2.py", line 401, in open
response = self._open(req, data)
File "/usr/lib/python2.7/urllib2.py", line 419, in _open
'_open', req)
File "/usr/lib/python2.7/urllib2.py", line 379, in _call_chain
result = func(*args)
File "/usr/lib/python2.7/urllib2.py", line 1211, in http_open
return self.do_open(httplib.HTTPConnection, req)
File "/usr/lib/python2.7/urllib2.py", line 1184, in do_open
r = h.getresponse(buffering=True)
File "/usr/lib/python2.7/httplib.py", line 1034, in getresponse
response.begin()
File "/usr/lib/python2.7/httplib.py", line 407, in begin
version, status, reason = self._read_status()
File "/usr/lib/python2.7/httplib.py", line 365, in _read_status
line = self.fp.readline()
File "/usr/lib/python2.7/socket.py", line 447, in readline
data = self._sock.recv(self._rbufsize)
error: [Errno 104] Connection reset by peer
2016-01-31 23:59:13,286 WARNING emonCMS send failure: wanted 'ok' but got ''
2016-01-31 23:59:13,319 INFO Exiting hub...
2016-01-31 23:59:13,321 DEBUG Closing serial port
2016-01-31 23:59:13,390 INFO emonCMS sending: http://localhost/emoncms/input/bulk.json?apikey=E-M-O-N-C-M-S-A-P-I-K-E-Y&data=[[1454302750.63,8,4,20,0,0,12530,3000,3000,3000,3000,3000,3000,1,0,-58]]&sentat=1454302753
2016-01-31 23:59:13,433 WARNING emonCMS couldn't send to server, URLError: [Errno 97] Address family not supported by protocol
2016-01-31 23:59:13,436 WARNING emonCMS send failure: wanted 'ok' but got ''
2016-01-31 23:59:13,442 INFO Exit completed
2016-01-31 23:59:42,534 INFO EmonHub Pre-Release Development Version (rc1.2)
2016-01-31 23:59:42,592 INFO Opening hub...
2016-01-31 23:59:42,595 INFO Logging level set to DEBUG
2016-01-31 23:59:42,598 INFO Creating EmonHubEmoncmsReporter 'emonCMS'
2016-01-31 23:59:42,604 INFO Set up reporter 'emonCMS' (buffer: memory | size: 1000)
2016-01-31 23:59:42,608 INFO Setting emonCMS url: http://localhost/emoncms
2016-01-31 23:59:42,611 INFO Setting emonCMS apikey: set
2016-01-31 23:59:42,616 INFO Creating EmonHubJeeInterfacer 'RFM2Pi'
2016-01-31 23:59:42,621 DEBUG Opening serial port: /dev/ttyAMA0 @ 38400 bits/s
2016-01-31 23:59:44,630 DEBUG Opening serial port: /dev/ttyAMA0 @ 9600 bits/s
2016-01-31 23:59:46,636 ERROR Unable to create 'RFM2Pi' interfacer: Attempting to use a port that is not open
And then nothing from then on. I rebooted and same thing. rpi_serial_console status says ttyAMAo is disabled and it's set to do that in inittab and cmdline.txt
I added the line COM_BAUD=57600 and got a slight different message: ( I also tried 38400 and got the same message)
...
2016-02-01 09:57:07,650 INFO Creating EmonHubEmoncmsReporter 'emonCMS'
2016-02-01 09:57:07,655 INFO Set up reporter 'emonCMS' (buffer: memory | size: 1000)
2016-02-01 09:57:07,660 INFO Setting emonCMS url: http://localhost/emoncms
2016-02-01 09:57:07,662 INFO Setting emonCMS apikey: set
2016-02-01 09:57:07,665 INFO Creating EmonHubJeeInterfacer 'RFM2Pi'
2016-02-01 09:57:07,670 DEBUG Opening serial port: /dev/ttyAMA0 @ 57600 bits/s
2016-02-01 09:57:09,676 WARNING Device communication error - check settings
2016-02-01 09:57:09,683 INFO Setting RFM2Pi frequency: 433 (4b)
2016-02-01 09:57:10,687 INFO Setting RFM2Pi group: 210 (210g)
2016-02-01 09:57:11,691 INFO Setting RFM2Pi quiet: 1 (1q)
2016-02-01 09:57:12,696 INFO Setting RFM2Pi baseid: 15 (15i)
2016-02-01 09:57:13,700 DEBUG Setting RFM2Pi interval: 300
2016-02-01 09:57:13,717 DEBUG RFM2Pi broadcasting time: 09:57
I don't know why it would be working and then suddenly stop.
Any ideas?
Re: emonhub error: "ERROR Unable to create 'RFM2Pi' interfacer: Attempting to use a port that is not open"
I cannot figure out the order of events from the logs since the second item in the log is
2016-01-31 23:59:13,086 DEBUG SIGINT received
which is a "ctrl-C" issued from the command line which is odd as emonhub should be running as a service not from the command-line. The next lines seem to suggest emoncms is not responding, but that could be due to some sort of shutdown being issued???
However the first line of the logs included show a packet recieved into emonhub 1s before the attempt to pass it to emoncms which would suggest at the time the SIGINT was issued all was ok.
Is there any log from prior to this? it's difficult to establish the root cause since the log seems to start at the response to those events.
Did you update anything? change anything? why was the SIGINT issued? could it be that you have more than one instance running somehow?
What baud is your rfm2pi? setting 9600, 38400 or 57600 is to match the device only one will work and emonhub has no control over which, it just needs to use the correct one for your device.
What happens if you just restart emonhub without rebooting the pi using " sudo service emonhub restart "
Paul
Re: emonhub error: "ERROR Unable to create 'RFM2Pi' interfacer: Attempting to use a port that is not open"
Here's the log prior to the DEBUG SIGINT:
2016-01-31 23:59:10,627 DEBUG 8393 NEW FRAME :<PHONE_NUMBER>.63 OK 8 4 0 20 0 0 0 0 0 242 48 184 11 184 11 184 11 184 11 184 11 184 11 1 0 0 0 (-58)
2016-01-31 23:59:10,645 DEBUG 8393 Timestamp :<PHONE_NUMBER>.63
2016-01-31 23:59:10,647 DEBUG 8393 Node : 8
2016-01-31 23:59:10,657 DEBUG 8393 Values : [4, 20, 0, 0, 12530, 3000, 3000, 3000, 3000, 3000, 3000, 1, 0]
2016-01-31 23:59:10,665 DEBUG 8393 RSSI : -58
2016-01-31 23:59:10,757 DEBUG 8393 Append to 'emonCMS' buffer => time:<PHONE_NUMBER>.63, data: [8, 4, 20, 0, 0, 12530, 3000, 3000, 3000, 3000, 3000, 3000, 1, 0, -58], ref: 8393
2016-01-31 23:59:10,861 INFO emonCMS sending: http://localhost/emoncms/input/bulk.json?apikey=E-M-O-N-C-M-S-A-P-I-K-E-Y&data=[[1454302750.63,8,4,20,0,0,12530,3000,3000,3000,3000,3000,3000,1,0,-58]]&sentat=1454302750
2016-01-31 23:59:11,769 WARNING emonCMS couldn't send to server, HTTPException
2016-01-31 23:59:11,779 WARNING emonCMS send failure: wanted 'ok' but got ''
2016-01-31 23:59:11,891 INFO emonCMS sending: http://localhost/emoncms/input/bulk.json?apikey=E-M-O-N-C-M-S-A-P-I-K-E-Y&data=[[1454302750.63,8,4,20,0,0,12530,3000,3000,3000,3000,3000,3000,1,0,-58]]&sentat=1454302751
2016-01-31 23:59:13,086 DEBUG SIGINT received
2016-01-31 23:59:13,282 WARNING emonCMS couldn't send to server, Exception: Traceback (most recent call last):
The Raspberry is rebooted at midnight daily. It's been doing running emonyx for several days and the Raspberry is going through the shutdown cycle so not sure if that's causing the issue. Why it doesn't restart upon reboot I don't know. I have not done a power reset, just a "reboot' command.
I have not done any updates or changes since I installed the RFM69PI board. It's been running fine for several days and going through the reboot cycle. I was letting it run standalone for a few days prior to installing the emontx.
When this started I did not have a COM_BAUD line in the config file. I've tried setting it with all three values with the same result. The RFM69PI is a brand new board so it should be using the latest, but I don't know what it is.
When I comment out the COM_BAUD line, it seems to be trying 38400 and 9600, both fail and I get no connection. When I specify 57600 (or any value) I get this:
2016-02-01 19:32:07,759 DEBUG Opening serial port: /dev/ttyAMA0 @ 57600 bits/s
2016-02-01 19:32:09,765 WARNING Device communication error - check settings
I've restarted emonhub service several times when dealing with the baud issue.
Thanks
Re: emonhub error: "ERROR Unable to create 'RFM2Pi' interfacer: Attempting to use a port that is not open"
if it's a recent rfm69pi the baud will be 38400 so setting " com_baud = 38400 " in [[RFM2Pi]] [[[init_settings]]] in emonhub.conf will remove that possible issue, note "com_baud" is all lowercase, I haven't tried all uppercase so cannot say if it will or won't work but it is not intended to be written that way so could get broken in future development.
Personally, I do not like the idea of rebooting at midnight, the most stressful time and the most likely time to experience an issue is at boot time. There should be no reason to do it and I can only see it causing problems and at a time when you are least likely to notice for several hours.
The http posting errors will be where emoncms is still trying to find it's legs following the reboot.
can you post the content of /boot/cmdline.txt and confirm if you are using wheezy or jessie?
Can you also confirm you have not installed emoncms's retired raspberrypi module?
Paul
Re: emonhub error: "ERROR Unable to create 'RFM2Pi' interfacer: Attempting to use a port that is not open"
I have com_baud in lower case. And I tried 38400 and got this: This is the entire log from when I restarted emonhub:
2016-02-01 20:22:06,403 DEBUG Closing serial port
2016-02-01 20:22:06,405 INFO Deleting interfacer 'RFM2Pi'
2016-02-01 20:22:06,408 INFO Creating EmonHubJeeInterfacer 'RFM2Pi'
2016-02-01 20:22:06,413 DEBUG Opening serial port: /dev/ttyAMA0 @ 38400 bits/s
2016-02-01 20:22:08,418 WARNING Device communication error - check settings
2016-02-01 20:22:08,422 INFO Setting RFM2Pi frequency: 433 (4b)
2016-02-01 20:22:09,425 INFO Setting RFM2Pi group: 210 (210g)
2016-02-01 20:22:10,429 INFO Setting RFM2Pi quiet: 1 (1q)
2016-02-01 20:22:11,433 INFO Setting RFM2Pi baseid: 15 (15i)
2016-02-01 20:22:12,440 DEBUG Setting RFM2Pi interval: 300
2016-02-01 20:22:12,444 DEBUG RFM2Pi broadcasting time: 20:22
2016-02-01 20:22:12,498 DEBUG SIGINT received.
2016-02-01 20:22:12,501 INFO Exiting hub...
2016-02-01 20:22:12,503 DEBUG Closing serial port
2016-02-01 20:22:12,571 INFO Exit completed
2016-02-01 20:22:15,327 INFO EmonHub Pre-Release Development Version (rc1.2)
2016-02-01 20:22:15,329 INFO Opening hub...
2016-02-01 20:22:15,333 INFO Logging level set to DEBUG
2016-02-01 20:22:15,335 INFO Creating EmonHubEmoncmsReporter 'emonCMS'
2016-02-01 20:22:15,341 INFO Set up reporter 'emonCMS' (buffer: memory | size: 1000)
2016-02-01 20:22:15,346 INFO Setting emonCMS url: http://localhost/emoncms
2016-02-01 20:22:15,348 INFO Setting emonCMS apikey: set
2016-02-01 20:22:15,351 INFO Creating EmonHubJeeInterfacer 'RFM2Pi'
2016-02-01 20:22:15,356 DEBUG Opening serial port: /dev/ttyAMA0 @ 38400 bits/s
2016-02-01 20:22:17,363 WARNING Device communication error - check settings
2016-02-01 20:22:17,366 INFO Setting RFM2Pi frequency: 433 (4b)
2016-02-01 20:22:18,369 INFO Setting RFM2Pi group: 210 (210g)
2016-02-01 20:22:19,373 INFO Setting RFM2Pi quiet: 1 (1q)
2016-02-01 20:22:20,378 INFO Setting RFM2Pi baseid: 15 (15i)
2016-02-01 20:22:21,381 DEBUG Setting RFM2Pi interval: 300
2016-02-01 20:22:21,399 DEBUG RFM2Pi broadcasting time: 20:22
cmdline.txt:
dwc_otg.lpm_enable=0 console=tty1 root=/dev/sda1 rootfstype=ext4 elevator=deadline rootwait rootdelay=5
And contents of /etc/os-release:
PRETTY_NAME="Raspbian GNU/Linux 7 (wheezy)"
NAME="Raspbian GNU/Linux"
VERSION_ID="7"
VERSION="7 (wheezy)"
ID=raspbian
ID_LIKE=debian
ANSI_COLOR="1;31"
HOME_URL="http://www.raspbian.org/"
SUPPORT_URL="http://www.raspbian.org/RaspbianForums"
BUG_REPORT_URL="http://www.raspbian.org/RaspbianBugs"
How would I know which version of the Raspberry module I have loaded?
Re: emonhub error: "ERROR Unable to create 'RFM2Pi' interfacer: Attempting to use a port that is not open"
I got it working but not sure why it wasn't. I installed avrdude as mentioned in this post:
http://openenergymonitor.net/emon/node/10055?page=1 on 7/2/2015
When I restarted emonhub, it was working. Perhaps a power cycle might have worked.
What does the command "avrdude -v -c arduino -p ATMEGA328P -P /dev/ttyAMA0 -b 38400" do?
Thanks for your help
Re: emonhub error: "ERROR Unable to create 'RFM2Pi' interfacer: Attempting to use a port that is not open"
That command is used to just "test the waters" before trying to upload a sketch, it just tries to communicate with the rfm2pi without actually doing anything.
Just have to keep an eye on it and see what happens, especially around midnight :-)
Paul
Re: emonhub error: "ERROR Unable to create 'RFM2Pi' interfacer: Attempting to use a port that is not open"
Thanks, I stopped the nightly reboots. I started doing it because I was having trouble with the Ethernet. It would go catatonic and require a power cycle to fix. Not sure what the issue was but it appeared when I started using the Raspberry as an FTP server to save captured images (lots of them - 8 images every 15 seconds 24/7). I did a system upgrade and that fixed the Ethernet problem but I never stopped the reboot. Prior to that the system stayed up for over 1/2 a year.


“ED Is The Boss…He Doesn’t Receive Anyone” – Mnangagwa’s Spokesperson Clarifies On VP Chiwenga’s Return
by Timothy NdoroMnangagwa’s Spokesperson Clarifies On VP Chiwenga’s Return
President Emmerson Mnangagwa’s spokesperson George Charamba has clarified on the welcome that was received by Vice President Constantino Chiwenga who returned home early this morning. Chiwenga spent more than 4 months away from the office after suffering from an undisclosed ailment, although some reports have said that he was poisoned. However, he seems to have recovered well after he went for treatment in China where specialists from Zimbabwe, South Africa, India and China worked on his health.
Following the return of the Vice President, social media has been awash with speculation and conspiracy theories. The speculation and the theories were generated after the Vice President was welcomed by a delegation of officials from the local Chinese Embassy. The lack of high-level government officials at the airport also roused interest in some who speculated that this was a clear indication that Chiwenga was not in good books with his principal, President Emmerson Mnangagwa.
Charamba as the presidential spokesperson, took it upon himself to educate Zimbabweans on state protocols and how this affects the delegation that welcomed the former Commander of the Zimbabwe Defence Forces (ZDF). Writing on social media site Twitter, under his handle @Jamwanda2, Charamba took aim at some of the critics saying,
Also Read,
-
It Was “LAUNDERED”: Mnangagwa Spokesperson Speaks As Brand New Bank Notes Flood Black Market
-
Sick VP Chiwenga to be BOOTED OUT by ZANU-PF Bigwigs Mugabe style…
-
SHAME: Mnangagwa’s Presidential Spokesperson Quits Twitter Following Po_rn Scandal
-
“Mnangagwa Will Hire Private Jets Until Zim Gets A Presidential Jet” – Charamba Speaks On Private Jets Furore
To View and Apply for the latest Jobs and Vacancies in Zimbabwe, Please Visit our Sister website iHarare Jobs


{% include "src/site/components/navigation-sidebar.html" %}
{% include "src/site/components/navigation-sidebar-trigger.html" with menuId = "va-detailpage-sidebar" %}
{% include "src/site/components/react-loader.html" %}
{% include "src/site/includes/header.html" %} {% if gibsAlert %} {% include "src/site/includes/gibs-down.html" %} {% endif %} {% include "src/site/includes/breadcrumbs.html" %}


UEFA.tv is UEFA's OTT platform which is available on Android, iOS, web and coming to TV platform and PS4 n the upcoming months.
It has a cutting edge tech stack that means it is 100% written in Kotlin while using Rx, data binding and clean architecture.