author

rgrokett

My Site
103
Inbox View Profile
19Instructables443,008Views92CommentsFlorida

Tell us about yourself!

Achievements

10K+ Views Earned a bronze medal
Raspberry Pi Contest 2017
Contest Winner Runner Up in the Raspberry Pi Contest 2017
  • One Transistor Audio for Pi Zero W

    Audio INPUT is trickier as the only input avail on a Zero is via I2S, a serial interface, so needs more than a single transistor. Personally, I'd get a cheap USB Audio In/Out adapter like https://www.adafruit.com/product/1475

    View Instructable »
  • One Transistor Audio for Pi Zero W

    Since the audio jacks are separate from the video, it is possible to use this to feed the audio. You probably just need to solder a RCA plug to it to plug in the cable. (Or just cut the cable and solder it directly to the amp.) If you use a Y cable, you could feed both L&R audio channels. Probably just need to increase the volume on the TV. The audio quality isn't the best, but might be good enough for retro stuff.

    View Instructable »
  • One Transistor Audio for Pi Zero W

    Its really only good for voice quality audio, not high-fidelity. Any programs that play mp3 audio or video, like youtube video would work. But a Raspberry Zero isn't real powerful. Never tried to watch video on one.

    View Instructable »
  • PiTextReader - an Easy-to-Use Document Reader for Impaired Vision

    You'll have to replace the line in pitextreader.pyCAMERA = "raspistill -cfx 128:128 --awb auto -rot 180 -t 500 -o /tmp/image.jpg"with something like:CAMERA = "fswebcam /tmp/image.jpg"You will have to add options if needed to rotate or improve the image quality.If fswebcam does not work with your camera, then it is likely that the camera requires a special driver for Linux. So you will have to look to see if there is a webcam that is supported on Linux. You need at least 1024x768 resolution (megapixels don't really tell anything) But even that is far below the resolution of 3280x2464 resolution of the pi camera. So small print may not be clear enough to be read.

    View Instructable »
  • PiTextReader - an Easy-to-Use Document Reader for Impaired Vision

    Can you post a photo it has taken of a document to be read?These should be in /tmp/text.txt and /tmp/image.jpg files Are you using raspistill or fswebcam program to take the image?

    View Instructable »
  • PiTextReader - an Easy-to-Use Document Reader for Impaired Vision

    It was written for Python 2.7. It does not used opencv. That framework is far more elaborate than what optical character recognition requires. An existing Linux package, tesseract, is what handles OCR.

    View Instructable »
  • PiTextReader - an Easy-to-Use Document Reader for Impaired Vision

    You'll have to replace the line in pitextreader.py CAMERA = "raspistill -cfx 128:128 --awb auto -rot 180 -t 500 -o /tmp/image.jpg"with something like:CAMERA = "fswebcam /tmp/image.jpg"You will have to add options if needed to rotate or improve the image quality.If fswebcam does not work with your camera, then it is likely that the camera requires a special driver for Linux. So you will have to look to see if there is a webcam that is supported on Linux. You need at least 1024x768 resolution (megapixels don't really tell anything) But even that is far below the resolution of 3280x2464 resolution of the pi camera. So small print may not be clear enough to be read.

    View Instructable »
  • PiTextReader - an Easy-to-Use Document Reader for Impaired Vision

    It sounds like the push button switch is closed all the time, grounding pin 24. This would cause the program to think it should take a picture. See the attached diagram.NOTE! if this GPIO pin is grounded (or button closed) after taking a picture, the program will stop and reset without completing talking.

    View Instructable »
  • PiTextReader - an Easy-to-Use Document Reader for Impaired Vision

    If you see a file called /tmp/image.jpg, then you need to view the image. Follow the info in Step 8. Troubleshooting for 4.Scanning and OCRIf you don't see a file in /tmp/image.jpg then it is likely that the camera cable is not attached properly to the Pi. ( Step 8. Troubleshooting for 1. Camera )Looking at the image, make sure the text is clearly readable and not upside down.

    View Instructable »
  • PiTextReader - an Easy-to-Use Document Reader for Impaired Vision

    It would be very slow... about a minute to process the image and convert to speech.

    View Instructable »
  • Raspberry Pi Amateur Radio Digital Clock

    Simple change:On line 90 of raspiclock.py change:OLD: disp.show("%02d%02d"%(hour, minute))NEW: disp.show("%2d%02d"%(hour, minute))

    Simple change:On line 90 of raspiclock.py change:OLD: disp.show("%02d%02d"%(hour, minute))NEW: disp.show("%2d%02d"%(hour, minute))

    Simple change:On line 90 of raspiclock.py change:OLD: disp.show("%02d%02d"%(hour, minute))NEW: disp.show("%2d%02d"%(hour, minute))

    Simple change:On line 90 of raspiclock.py change:OLD: disp.show("%02d%02d"%(hour, minute))NEW: disp.show("%2d%02d"%(hour, minute))

    View Instructable »
  • PiTextReader - an Easy-to-Use Document Reader for Impaired Vision

    The usb camera must be 8 Megapixels or better resolution (3280 × 2464 pixels) in order to decipher the text characters. This is the same as the Raspberry Pi V2 camera. Most USB webcams are lower resolution so insufficient quality image for reading small text.

    View Instructable »
  • DIY Geiger Counter With an ESP8266 and a Touchscreen

    In case you are interested, there are a number of Geiger counter circuits that don't use an arduino. But of course, they don't have the fancy touch display. http://www.techlib.com/science/geiger.htmlJust FYI, For the not-so-inclined hobbyist, here's an already assembled one that appears pretty decent for under $100 geiger counters. https://amzn.to/2NlYk4m

    View Instructable »
  • DIY Geiger Counter With an ESP8266 and a Touchscreen

    Works great with my old pulse only geiger counter, including touch! I used a NodeMcu Lua ESP8266 CP2102 Module and Arduino IDE with same display. For some reason, I had to rearrange the ILI9341.h include before the fonts, but otherwise, worked fine once the dependencies were met.#include <Arduino.h>#include <ESP8266WiFi.h>#include <EEPROM.h>#include "SPI.h"#include <Adafruit_GFX.h>#include <Adafruit_ILI9341.h>#include <Fonts/FreeSans9pt7b.h>#include <Fonts/FreeSans12pt7b.h>#include <XPT2046_Touchscreen.h>Thanks! Excellent GUI!

    View Instructable »
  • Were you able to go through the Troubleshooting procedures (Step 8 above)? You need to be sure the /tmp/text.txt and /tmp/image.jpg files show good readable text image and that the audio is working.

    View Instructable »
  • It uses the tesseract-ocr software that supports a number of different fonts. See the tesseract-ocr site for more details:https://github.com/tesseract-ocr/tesseract/wikiandhttps://github.com/tesseract-ocr/tesseract/blob/master/doc/tesseract.1.asc#languagesYou may need to add the -l language option to the tesseract command on line 144 of pitextreader.py program:cmd ="/usr/bin/tesseract -l eng+hin+afr /tmp/image.jpg /tmp/text"

    View Instructable »
  • This circuit is so simplistic, that transistor should be fine. Even the resistors and capacitors can be varied quite a bit. I suggest just breadboarding the circuit and adjusting components up and down + - 50% or more in value one at a time, if the audio isn't acceptable. You can probably even get away without R4 the 8 ohm resistor; it's mainly there to limit max current, but unless your audio is a constant high volume tone (like an alarm), it probably won't matter.

    View Instructable »
  • I don't see why not. I suggest you fork or download the PiTextReader software from GitHubhttps://github.com/rgrokett/PiTextReader and then install espeak using instructions at https://www.dexterindustries.com/howto/make-your-r...You will need to modify the command on line 84 of the pitextreader.py to use espeak instead of flite, but otherwise that should be all that is needed.

    View Instructable »
  • I found a tab char in the raspitherm.py at line 221 that might be the problem you were seeing. I have updated the code, so you can either git the code again and reinstall or you can edit raspitherm.py and make sure that there are 8 spaces at line 221, and not a tab and 4 spaces. # GPIO Button Press ........if GPIO.input(BTN4) == GPIO.LOW: logger.info("stopping camera()")If you still have problems, turn on DEBUG and run and then check the debug.log file to trace to see if there is an error message.

    View Instructable »
  • I assume you have tested your external audio amplifier and speaker and they are ok? (You can also plug a stereo earphone into the Pi to see if hear anything during the tests) Note that the Pi's audio requires an external amplifier as its audio is only loud enough for headphones otherwise. Since you get no error messages and assuming your external audio is good, then the only things left are the amixer volume and the raspi-config force headphone jack. Beyond that, you'd probably have to start all over and reinstall the Raspbian OS on your SD card.

    View Instructable »
  • Yes, The 3A+ should be fine.

    I assume that you tried the troubleshooting steps for the audio?2. AUDIOYou do have volume up?$ sudo amixer -q sset PCM,0 100%Run audio test$ aplay /usr/share/sounds/alsa/Front_Center.wavNo audio still? Force audio out the jack:$ sudo raspi-config Advanced Options -> Audio -> Force headphone jack

    View Instructable »
  • This program currently only supports GPIO pin buttons. But if you know some python programming to do that. Not too many samples of such code for Raspberry seem to exist since typically USB buttons cost significantly more than a plain momentary button.

    View Instructable »
  • The 3.5ohm speaker should work fine. No changes needed. This simple amplifier is very forgiving on the values of it components. Any values even remotely close should work.

    View Instructable »
  • Not sure if a USB webcam would work as most are too low resolution for optical character recognition (OCR) work. The Pi camera is 8 megapixel capable of 3280 x 2464 resolution. If your camera is of this high a quality, then to use it, you would probably have to change the default raspistill program for one called fswebcam.https://www.raspberrypi.org/documentation/usage/we...You would have to change the line 38 in my pitextreader.py program to use the new program:CAMERA="raspistill -cfx 128:128 --awb auto -rot 180 -t 500 -o /tmp/image.jpg"I don't have a usb webcam so don't know the arguments that would be needed using fswebcam, but you can just start by using its defaults, changing it to use the output filename /tmp/image.jpg then looking at this image file to see if the text is …

    see more »

    Not sure if a USB webcam would work as most are too low resolution for optical character recognition (OCR) work. The Pi camera is 8 megapixel capable of 3280 x 2464 resolution. If your camera is of this high a quality, then to use it, you would probably have to change the default raspistill program for one called fswebcam.https://www.raspberrypi.org/documentation/usage/we...You would have to change the line 38 in my pitextreader.py program to use the new program:CAMERA="raspistill -cfx 128:128 --awb auto -rot 180 -t 500 -o /tmp/image.jpg"I don't have a usb webcam so don't know the arguments that would be needed using fswebcam, but you can just start by using its defaults, changing it to use the output filename /tmp/image.jpg then looking at this image file to see if the text is clear and easily readable. Blurry text cannot be read by the OCR program.

    View Instructable »
  • You would need to change the OCR software (Tesseract) to read Tamil and the TTS software (flite) to speak it. I see these two links as possibilities:https://indic-ocr.github.io/tessdata/http://dhvani.sourceforge.net/The python program just does system command calls to execute these, (see lines 84 and 110 in the pytextreader.py program https://github.com/rgrokett/PiTextReader/blob/mast...

    View Instructable »
  • Yes, the NOIR camera may not be as sharp if the light source has both Infrared and visible light since they focus at different wavelengths. Incandescent lights have both. Some LED lights might be better than incandescent (or sunlight!) as visible light LEDs don't emit much IR light. (Unless they are IR LEDS!)

    I don't see why not. I suggest you fork or download the PiTextReader software from GitHub https://github.com/rgrokett/PiTextReader and then install espeak using instructions at https://www.dexterindustries.com/howto/make-your-r...You will need to modify the command on line 84 of the pitextreader.py to use espeak instead of flite, but otherwise that should be all that is needed.

    View Instructable »
  • If you are not getting a /tmp/text.txt file, then the OCR software isn't able to read the text in the image. Can you post a copy of the /tmp/image.jpg file here? The most likely issues are that the image is out of focus or too bright or too dark. More details are avail in Step 8. Troubleshooting item 4. Scanning and OCR.If the image text looks ok, then I suggest turning on DEBUG mode:$ cd /home/pi/PiTextReader$ nano pitextreader.py Edit the line:##### USER VARIABLESDEBUG = 1 # Debug 0/1 off/on (writes to debug.log)Reboot the pi to rerun in debug mode.You can then check the /home/pi/PiTextReader/debug.log file. $ cat debug.log

    View Instructable »
  • Yes, it should be just fine with Raspbian Stretch Lite. The installation commands and script will install the latest versions of the OCR and text-to-speech programs. Note that this does use python 2.7 (the default) and not python3. Also, should be fine even on the newest and less expensive Raspberry Pi 3 A+.

    View Instructable »
    • RaspiWWV - Simulated WWV Shortwave Audio Time Broadcast
      410 views
      5 favorites
      0 comments
    • Raspberry Pi Amateur Radio Digital Clock
      2,763 views
      25 favorites
      1 comments
  • The limitation is with the TM1637 Library being used. I see 6 digit libraries for Arduino, but not for Raspberry. https://github.com/TinyTronics/TM1637_6D

    View Instructable »
  • This appears to be coming from some unrelated program, possibly called either PayDay2 or CoreAMP_for_xzm_tw. Neither of those are needed or installed by Benbox package. You might look in the directory D:\CoreAMP_for_xzm_tw to see what filenames are in there to get a clue as to what program it is.Did you get this during the installation of the Benbox software (aka. EleksLaser) or did you get it when trying to run Benbox?

    View Instructable »
  • Understand this sensor resolution is only 8x8 that is interpolated to 32x32 pixel format here, a far cry from 1920x1200 pixels of a HDMI TV. (But from a distance, you will still see a heat image, just not very high res!)For an HDMI monitor, you probably should use the original Adafruit software only, as it doesn't use the touch screen menus that this version for the PiTFT has.https://learn.adafruit.com/adafruit-amg8833-8x8-thermal-camera-sensor/raspberry-pi-thermal-camera

    View Instructable »
  • I assume you can manually move the X/Y carriages reasonably easily while power is turned off and unplugged? (Too tight bands can bind the stepper motors). There are current adjustment potentiometers for each motor that may need adjusting.Last resort would be to loosen the bands to free the stepper motors and see if they rotate forward/backwards properly.

    View Instructable »
  • I'm using these in "receive_and_process_satellite.sh" :sudo timeout $6 rtl_fm -M wfm -f ${2}M -s 60k -A fast -p 10 -E wav -E deemp -F 9 - | sox -t wav - $3.wav rate 11025/usr/local/bin/wxtoimg -m ${3}-map.png -e MSA $3.wav $3.color.png

    Welcome to the world of VIM the VI editor. Being new, I suggest to use only the NANO editor. It lists the commands at the bottom of the screen. $ sudo nano /etc/modprobe.d/no-rtl.confThen to exit, type Control-X It will ask to save Y/N

    The message "Tuned to 137580000 Hz. <--------" is correct. RTL-SDR's have to offset themselves from center frequency due to a DC spike that they filter out. But then they actually "listen" on the frequency that you originally entered. This just moves the filter away from your tuned freq. I also use the V antenna, but mine is outside. See the comments below for my userid "rgrokett" to see the rtm_fm and wxtoimg cmds I use and notes about the antenna.

    Here is the antenna I am using, up at 15 ft fed by CATV coax:https://www.rtl-sdr.com/simple-noaameteor-weather-...And my wxtoimg line in "receive_and_process_satellite.sh"sudo timeout $6 rtl_fm -M wfm -f ${2}M -s 60k -A fast -p 10 -E wav -E deemp -F 9 - | sox -t wav - $3.wav rate 11025/usr/local/bin/wxtoimg -m ${3}-map.png -e MSA $3.wav $3.color.pngRussell

    View Instructable »
  • In the video, I did see that when you unplug USB, the laser & servos stop. That sounds like a driver or gcode initialization issue. Try this: unplug usb,reboot computer, plug in cable but don't start any laser app. The driver should load but nothing sent to the Nano. Turn on the laser power. If it still starts the laser and the motors, then something is weird with the driver on the PC. Uninstall the driver, reboot and plug the USB back in. If it still shows in Device Mgr, then there is another driver loading and maybe conflicting.If turning on the laser w/o running any app seems ok, then it appears that the app is sending gcode down to the nano that it cannot interpret properly. Note that uninstalling the apps probably leaves behind (mangled?) settings/config files or registry setting…

    see more »

    In the video, I did see that when you unplug USB, the laser & servos stop. That sounds like a driver or gcode initialization issue. Try this: unplug usb,reboot computer, plug in cable but don't start any laser app. The driver should load but nothing sent to the Nano. Turn on the laser power. If it still starts the laser and the motors, then something is weird with the driver on the PC. Uninstall the driver, reboot and plug the USB back in. If it still shows in Device Mgr, then there is another driver loading and maybe conflicting.If turning on the laser w/o running any app seems ok, then it appears that the app is sending gcode down to the nano that it cannot interpret properly. Note that uninstalling the apps probably leaves behind (mangled?) settings/config files or registry settings. Lastly, be sure to check out http://benboxlaser.us/

    View Instructable »
  • Did you try reinstalling the Firmware (see Step 5 above) into the Arduino Nano? Note that sometimes it can get corrupted during install, so unplug USB & power, then plug back in and reload firmware again.I believe the laserGRBL and BenBox use different firmware from each other, so the Arduino nano must have the matching firmware for that particular program.Also, be sure the "Weak" laser button is NOT pressed in before burning.

    View Instructable »
  • You can look at:https://www.drivethelife.com/windows-10/insufficie...

    NOTE: If you do not see your Laser's COM port in Benbox, even after unplugging and re-plugging and stopping Benbox and restarting, then your Firewall may be blocking the "laserdaemon.exe" background process.Temporarily turn off your Windows Firewall from the Control Panel. Run Benbox.exe as Administrator.Quit it again and then Run it a second time.This time, look for the Serial Port COM for the Laser. Now you can turn the Firewall back on (you can use the "Use Recommended Settings" button, if asked.)This should update the Firewall rules for the laserdaemon process so should be fine now.Repeat this process if a Windows update causes the Benbox to quit showing the COM port again.

    View Instructable »
  • Looks like the Time Libraries have changed with newer Arduino IDE... You need to change line 20 #include <Time.h> to #include <TimeLib.h>If you happen to be missing the newer Time Library, the source is available at:https://github.com/PaulStoffregen/Time(You should be able to download it as a Zip and import it into Arduino IDE Sketch->Include Libraries -> Add ZIP File. String.h is an Arduino IDE built-in library and does not even need to be called as an #include, so you could just comment it out, if you get a compiler complaint. I have updated the code in https://github.com/rgrokett/GSM_SIM900_Arduino

    View Instructable »
  • To support Spanish, I believe you would need to change the Text to Speech engine from Flite to Festival as I don't believe Flite supports Spanish. I think Tesseract OCR would support Spanish, but you would need to add the language package and also change the tesseract command in the pitextreader.py slightly:$ sudo apt-get install tesseract-ocr-spacmd = "/usr/bin/tesseract -l spa /tmp/image.jpg /tmp/text"Changing the program to use festival instead of flite is a little more involved, but if you experiment with the command line version of festival and then substitute it for the flite commands in pitextreader.py it should work. http://www.cstr.ed.ac.uk/projects/festival/If you have used GitHub, you could fork it and modify your copy for others to use. https://github.com/rgrokett/Pi…

    see more »

    To support Spanish, I believe you would need to change the Text to Speech engine from Flite to Festival as I don't believe Flite supports Spanish. I think Tesseract OCR would support Spanish, but you would need to add the language package and also change the tesseract command in the pitextreader.py slightly:$ sudo apt-get install tesseract-ocr-spacmd = "/usr/bin/tesseract -l spa /tmp/image.jpg /tmp/text"Changing the program to use festival instead of flite is a little more involved, but if you experiment with the command line version of festival and then substitute it for the flite commands in pitextreader.py it should work. http://www.cstr.ed.ac.uk/projects/festival/If you have used GitHub, you could fork it and modify your copy for others to use. https://github.com/rgrokett/PiTextReader

    View Instructable »
    • PiTextReader - an Easy-to-Use Document Reader for Impaired Vision
      1,566 views
      24 favorites
      5 comments
  • By heightening the arm holding the camera, a larger field of view is available. While assembling, just hold the camera at various heights and run the test.sh program to take photos. BUT, two issues: The OCR takes about 1 second per line of text, so full pages could take a couple minutes to convert before speaking. Also, too small a font can't be resolved by the camera."Real" (i.e. expensive) readers use flatbed scanners to scan in and then OCR the document using a more powerful computer (laptop). Microsoft does offer a free app for iphone (maybe android, too) called SeeingAI which is amazing, but requires relatively tech savy use of smartphone and Internet connection or cellular data. https://www.microsoft.com/en-us/seeing-ai/

    View Instructable »
  • I've used it for examining electrical plugs & wall warts, water heaters, candles, smoldering embers, car engines and lamps, but I would not consider it reliable enough for things like doors and windows. Not enough temperature variation typically. I would say this is more useful for science experiments and other hacks. For home use, I just use the $29 black & decker tld100 thermal leak detector http://a.co/iS3sQMC The FLIR, besides being expensive, is probably overkill unless you are doing professional work, though the FLIR One Gen III at $199 looks like a good deal.

    View Instructable »
  • Yes, you can see some more settings available in Benbox for burning photo images in JPG format at https://youtu.be/OMnQ-DFJnbg

    View Instructable »
  • Excellent! I have a Pi cam sitting here idle now. Are you going to publish on Instructable or Github ?

    View Instructable »
  • Looks like a Raspberry Pi Zero will work, though it is definitely slower, but still usable. Setup is basically the same, with very little software differences. I have initial instructions at:https://github.com/rgrokett/RaspiThermalCam/tree/m...

    The problem is that the Far Infrared sensors are very expensive. This project's AMG8833 from Panasonic is billed as "advanced motion detector", not really as a FLIR replacement. A normal motion detector is basically one bit (on/off). This one is 64 bit (actually 8x8 matrix) which, with math that Adafruit added, generates a usable image, if no where near a FLIR. (but costs ~$40 instead of >$400). Also, its range is limited to about 25 feet or so.Worse, Far IR lenses are rather exotic since glass & most plastics are opaque to that wavelength. Individual parts (sensor, lens, electronics, etc.) end up being back into the hundreds of dollars. So far, the best use I have seen with this is looking for heat/cold leaks around the house. Like how much heat is lost with our old …

    see more »

    The problem is that the Far Infrared sensors are very expensive. This project's AMG8833 from Panasonic is billed as "advanced motion detector", not really as a FLIR replacement. A normal motion detector is basically one bit (on/off). This one is 64 bit (actually 8x8 matrix) which, with math that Adafruit added, generates a usable image, if no where near a FLIR. (but costs ~$40 instead of >$400). Also, its range is limited to about 25 feet or so.Worse, Far IR lenses are rather exotic since glass & most plastics are opaque to that wavelength. Individual parts (sensor, lens, electronics, etc.) end up being back into the hundreds of dollars. So far, the best use I have seen with this is looking for heat/cold leaks around the house. Like how much heat is lost with our old water heater and looking for faulty wiring or "wall warts".

    View Instructable »
  • rgrokett's instructable PiEyeR Enhanced Thermal Camera's weekly stats:
    • PiEyeR Enhanced Thermal Camera
      1,119 views
      41 favorites
      2 comments
  • I was planning to try switching out the Pi 3 for a Pi Zero W right after I finish building the Pi 3 version. Besides being smaller and cheaper, battery drain should also be less. How compatible it is with driving the piTFT display is the main question. I hope to start on it by next week.

    View Instructable »
  • Interesting. It is possible that the ESP8266WiFi library has been updated to build in necessary delay() or yield() to allow for WiFi interrupts to occur. Also, differences in ESP modules appear to impact the Arduino IDE compiled code vs LUA coding. That is one reason I stick with the Adafruit HUZZAH (Espressif-based ESP-12), as it appears to be more reliable, even if more expensive, vs. Ai-Thinker and other 3rd party manufacturers. Noisy power is their worse enemy, so Adafruit added several capacitors in key spots, though, I add more, particularly with the interference that steppers and servos generate. Just FYI, here is some docs from ESP8266 concerning this."There is a watchdog timer in the ESP8266 that will reset the processor if you keep it busy too long. Put lots of yield() or d…

    see more »

    Interesting. It is possible that the ESP8266WiFi library has been updated to build in necessary delay() or yield() to allow for WiFi interrupts to occur. Also, differences in ESP modules appear to impact the Arduino IDE compiled code vs LUA coding. That is one reason I stick with the Adafruit HUZZAH (Espressif-based ESP-12), as it appears to be more reliable, even if more expensive, vs. Ai-Thinker and other 3rd party manufacturers. Noisy power is their worse enemy, so Adafruit added several capacitors in key spots, though, I add more, particularly with the interference that steppers and servos generate. Just FYI, here is some docs from ESP8266 concerning this."There is a watchdog timer in the ESP8266 that will reset the processor if you keep it busy too long. Put lots of yield() or delay(0) statement in your program to keep this from happening. Note, delays with values greater than zero (delay(10) for example) are fine."If you want to verify ESP modules, there is a list at:https://en.wikipedia.org/wiki/ESP8266

    View Instructable »
  • Is this with the servos connected? You can try repeatedly running commands that do not run the servos, such as$ curl -v http://192.168.x.x/ # the ESP's IP address or you can disconnect the servos and run the testmotors.sh repeatedly.$ ./testmotors.sh # edit it to add your ESP IP addressYou may need to set up a script to run them dozens of times. The webserver is built into the library ESP8266WiFi from Arduino dev group and is pretty simplistic. If repeatedly running web commands without failure, then reconnect the servos and run testmotors.sh again repeatedly. Servos generate large voltage spikes on the power leads which ESP8266's don't like. I suggest adding .01uf & 10uf capacitors between +5v and GND and +12v and GND. (The HUZZAH has capacitors already, but doesn't hurt to…

    see more »

    Is this with the servos connected? You can try repeatedly running commands that do not run the servos, such as$ curl -v http://192.168.x.x/ # the ESP's IP address or you can disconnect the servos and run the testmotors.sh repeatedly.$ ./testmotors.sh # edit it to add your ESP IP addressYou may need to set up a script to run them dozens of times. The webserver is built into the library ESP8266WiFi from Arduino dev group and is pretty simplistic. If repeatedly running web commands without failure, then reconnect the servos and run testmotors.sh again repeatedly. Servos generate large voltage spikes on the power leads which ESP8266's don't like. I suggest adding .01uf & 10uf capacitors between +5v and GND and +12v and GND. (The HUZZAH has capacitors already, but doesn't hurt to add more.) Also, I used an old laptop power supply for 12v and 5v as the servos can need several amps during steps. The servos can also shake the wiring during stepping, which can cause intermittent loss of power (and thus crashes). Soldering connections is best, otherwise make sure connections are solid.

    View Instructable »
  • First, you would need a arduino/esp8266 library compatible with the OLED display (example: https://github.com/squix78/esp8266-oled-ssd1306)You need to use one that uses I2C interface because of limited pins on the ESP8266.Then, you would need to add a bit of extra code to the AltAzPointer.ino like:else if (req.indexOf("/oled/text") != -1) {String text = getValue(req);x = 1;y = 1;drawString(x, y, text);respMsg = "OK: TEXT = "+text;}Then call the ESP8266 web server using a URL like:* http://{ip_address}/oled/text?HELLO%20WORLDThere are hardware changes needed to free up the I2C pins.You will have to move the LED from GPIO pin #4 to pin #0 Also, you will need to move pin #5 to pin #2.Then in AltAzPointer.ino, change those pins:int STBY = 2; // GPIO 2 TB6612 Standby…

    see more »

    First, you would need a arduino/esp8266 library compatible with the OLED display (example: https://github.com/squix78/esp8266-oled-ssd1306)You need to use one that uses I2C interface because of limited pins on the ESP8266.Then, you would need to add a bit of extra code to the AltAzPointer.ino like:else if (req.indexOf("/oled/text") != -1) {String text = getValue(req);x = 1;y = 1;drawString(x, y, text);respMsg = "OK: TEXT = "+text;}Then call the ESP8266 web server using a URL like:* http://{ip_address}/oled/text?HELLO%20WORLDThere are hardware changes needed to free up the I2C pins.You will have to move the LED from GPIO pin #4 to pin #0 Also, you will need to move pin #5 to pin #2.Then in AltAzPointer.ino, change those pins:int STBY = 2; // GPIO 2 TB6612 Standbyint LEDIN = 0; // GPIO 0 (built-in LED)int LEDEX = 0; // GPIO 0 External LED

    View Instructable »
  • I would strongly suggest switching to the deep sleep version https://github.com/rgrokett/ESP8266_PIRv2 though it takes a bit more hardware wiring. Using that, a set of AA batteries lasts about 6 months w/o recharging. If space is available, a 6v lantern battery or D batteries would last 1 or 2 years or more. Otherwise, you would need a charging converter for the solar panel so that the batteries could charge and also run the ESP/PIR at the same time. I haven't attempted that, since the deep-sleep works reliably. If you use the Adafruit HUZZAH ESP8266, you do not need to convert the power, as it includes a 3-6v regulator and has a 3.3v output for the PIR along with UART stuff. Its worth the price for the extra ease of implementation.

    View Instructable »
  • I updated the docs for the IFTTT Webhooks change. I wasn't able to reproduce the functions error in the .ino, but I went ahead and relocated the functions anyway. The .ino compiled for me either way. I am using Arduino IDE v1.8.5 Just FYI, I have been able to get about 6 months use from 4AA batteries on the PIRv2 version with hundreds of IFTTT message sent over that time. (They only lasted a week with the previous v1 version). Deep Sleep makes BIG difference!. Thanks!

    View Instructable »
  • I saw same invalid date error. Found that weather.tle file was empty. Reran schedule_all.sh again and saw that weather.txt and weather.tle was now populated. Suspect wget failed first time. You can add the following to the schedule_satellite.sh: to turn on debug:#!/bin/bashset -xThen run the schedule_all.sh and see if you see PREDICTION_START and PREDICTION_END populated:+ PREDICTION_START='1507371700 Sat 07Oct17...+ PREDICTION_END='1507371968 Sat 07Oct17...

    View Instructable »
    • Raspberry Pi Talking Barcode Reader
      185 views
      11 favorites
      0 comments