Quantcast
Channel: Propeller 1 — Parallax Forums
Viewing all 2845 articles
Browse latest View live

What is the best Infrared modulation frequency for avoiding interference?

$
0
0
My current project uses a battery powered propeller with an infrared receiver (I have been using the VISHAY TSOP38238 for testing). The propeller sends a step sequence to a motor driver that is connected to a small dashboard sized stepper. The stepper has a needle attached that sits in front of a custom gauge (clock face). It is basically a custom gauge that hangs on a wall that can display data you send it. I send the stepper value with an infrared LED connected to a Raspberry Pi ZeroW.

I’m using a Raspberry Pi Zero W to grab data and send it to the propeller by modulating a 940nM infrared LED at 38kHz. At this point I have everything working and it’s time to pick a modulating frequency and receiver that won’t compete with tv remote controls. VISHAY makes TSOP382xx receivers for 30kHz, 33kHz, 36kHz, 38kHz, 40kHz, and 56kHz. I have ordered receivers for the 33kHz and 56kHz to test with (should be here end of the week).

Does anyone have advice on a good (not used much in the home) modulation frequency I should use?

Is there a governing agency that regulates infrared modulation frequency and protocols?
Thanks, all advice is welcome.


For your enjoyment here is a quick video of the project as it sits on the bench.
image
You will see the first prototype on the breadboard with an unpopulated PCB next to it. It is all through hole as I plan on making this a do it yourself kit for one of my articles. Next, I show a populated PCB with the battery pack soldered to the back connected to a clock face. I then pan to the Raspberry Pi Zero connected to a bread board driving an infrared LED. Finally, you see my DMM showing the Propeller’s current pulling ~11uA. I have been logging current over the weekend and waiting for the run to complete so I didn’t want to disturb anything and move the needle for you. But you get the idea!
PS: I have been able to do everything on the propeller at 20kHz with just the internal clock. Very rewarding project to this point!!

Propeller controlled doorbell

$
0
0
I'm looking to use a propeller to control a doorbell through an uln2003. I'm going to running the doorbell solenoid at 12v...will the uln2003 provide enough protection between the the solenoid and the propeller chip?

Propeller 1 Lead Time (QFP/DIP) Increase May Cause Shortage

$
0
0
Hello,

While we continually manage the P8X32A inventory with a safety stock buffer, customer needs and supply chain changes can still put us in out-of-stock situations. Today we received a notification from the semiconductor foundry that a "massive increase in global semiconductor market" and a production line equipment issue will ultimately increase Parallax's lead time for wafers. The increase in lead time could amount to 45 days of additional time. Inventory planning may seem simple on the surface, always solved by "just getting a lot of chips in stock" to those who view this from the distance. That's not the best way to manage inventory. The variables in inventory planning include unknowns (orders), internal production needs for our products, lead times, yields, cash planning and safety stock. These details are generally handled through a system of simple calculations you can imagine, plus a set of human factors where we modify the results to include pieces of information that don't readily get accounted for in formulas. And it changes by the day - what we have today only applies to this moment in time. We have wafers coming in from prior purchases, too. If you are one of our more enthusiastic customers who monitors our on-line inventory real-time you'll be missing pieces needed to make an accurate guess of what's going on. Parts are usually in transit, in test, in packaging, etc. For example, I think we might have only 1,500 QFPs available for order today (it's a guess; I'm not even going to check) but the pipeline has another 21K units coming in.

If you want the bottom line, it's possible that sometime between February and April we could run low or out of stock on Propeller 1 chips for an unknown period of time. It's also possible we have NO gap in supply and this message will have no purpose.

If you use Propeller 1 chips in production, this is what ensures your supply during these times:

- Have your Purchasing Manager build a lead time of at least 60 days into your planning
- Place purchase orders now for future delivery needs; we fill in the order we receive unless there's a delivery date

Don't be a hoarder, either. This isn't a chance to make an extra buck :)

In times like this, we often receive a frantic inquiry like "are you not going to make Propeller 1s anymore?". Parallax depends on Propeller 1s for our business. Even if the foundry were to end the production line we'd still have several years of opportunity to buy lifetime supplies. You might notice that we still have SX chips from well over ten years ago, for example. There is no threat to the future of the Propeller 1.

This is my friendly message providing enough information to stay informed. Feel free to communicate with us about your concerns.

Thanks,

Ken Gracey

Newbie question: Neopixels w/ Prop, don't understand how to pass hex-value variables

$
0
0
I'm a neophyte Spinner.

I've got a Neopixel array hooked up to a prop and I can use Chip's neopixel driver code to test my hardware and things work, ie, I can change colors by manually changing this value in the code:

' $00_GG_RR_BB
' Fill the grid with a white
repeat i from 0 to numPixels-1
pixels := $00_FF_FF_FF

I manually change those hex values and voila, colors change appropriately. cool!

but now I want to change those values with a variable and I can't figure out how to replace those hard-coded hex values with variables. So, here's my incorrect syntax for what I want to do:

repeat j from 0 to pulselength
fadefactor := j/pulselength

repeat i from 0 to (numPixels-1)

red := 256*fadefactor
green := 256*fadefactor
blue := 256*fadefactor

redh := fdx.Hex(red, 2)
grnh := fdx.Hex (green, 2)
bluh := fdx.Hex (blue, 2)

pixels := $00_grnh_redh_bluh

I hope that makes sense... the use of the fdx object (FullDuplexSerial) was my attempt to make hex values... how do I use variables for that pixels := statement?

Here's Chip's Neopixel object on the Obex:

http://obex.parallax.com/object/774

thank you very much in advance!

pin voltage and current 90 mA 15 pins high => only 2.8 volts instead of 3.3

$
0
0
Hello

I have a device that high is 3.3 low 0 volts, if i use a dc power supply i can set the voltage of the device pins (15) to 3.3volts, but for this project i need to control the device by a micro controller, i am using 15 pins and need to set all 15 to 3.3 volts, but when i use the propeller and when i set all the pins high is get 2.8 volts on each pin, as far as current the combined current is about 90 milli amps. so any ideas how to get the propeller to set to 3.3 volts, I could use a relay to a power supply but that is messy.
by the way, this also happens if i only set one pin, not 15.

regards

Jeff

Anyone ever used Prop inputs to sense water ?

$
0
0
I am building a device to sense water. I'll have a common probe (ground) in the water then 2 different probes at 2 different heights above the water. Want to sense when the water is rising to the different levels. I was thinking maybe tieing the inputs high with a very large resistance to prevent them from floating either way then when the water rises to the probe it makes a circuit to ground.

PropProg v1.0 *** Program your Prop with a Prop

$
0
0
Hello Propellerfriend's,

a new Project: :smile:

PropProg v1.0

Program your Prop with a Prop...

Based on: Propeller Loader 1.0 by Chip Gracey, SD-MMC_FATEngine 2.0 by Kwabena W. Agyeman

Features:
LCD 20x4 4 Bit-Mode
SD/MMC-Card
6 Button's
1 LED, 1 Beeper
1 PropPlug for the Target-Propeller

propprog_3_lo.jpg

main1.png

here to find:

propeller.ws-nbg.de/main.php

Have Fun.

Greetings from Nuremberg, Germany.

Werner

Open Propeller Project #5: BlocklyProp

$
0
0
Attachment not found.

Recently I saw a post mentioning Blockly. A web based, graphical programming editor.

I liked this project and using the Arduino version of Blockly, BlocklyDuino, I created a Propeller version: BlocklyProp.

https://github.com/parallaxinc/BlocklyProp

It's in it's very early stages and doesn't contain a lot yet but I'm working on it every evening.
While Blockly is only javascript that runs in the browser, I added a server component to interact with your Propeller using Propellent Propeller-load from the PropGcc toolchain and compile using OpenSpin.

If anyone has advice, feature propositions, criticisms or want to participate. Please let me know.

Current stage:
I can find the COM port on which the propeller is connected, and you are able to compile. (Loading into ram or eeprom is my next task.)
Blocks currently available:
  • read pin value
  • write pin value
  • wait for x-milliseconds
  • repeat forever
  • repeat x-times
  • conditions (if, elseif, else)
  • variables
  • methods
  • numeric compare
  • boolean operations
  • numeric operations
  • bitwise operations
  • cognew
  • servo
  • Ping)))
  • Debug LCD
I will update this as I go along.

My last build can be downloaded from: http://owncloud.creatingfuture.eu/public.php?service=files&t=0eae565db031cd3ca3f1163de91c5984

You can see the application on http://blocklyprop.creatingfuture.eu/index.html.

P26 LED Stays on upon turn on

$
0
0
I have had my Activity Board for a couple of weeks. The LED for P26 stays on immediately upon turn on. There are no programs loaded and cleared RAM and EEPROM every time before shut down.

Any ideas? Defective board.

Thanks,
Jason

Propeller Assembly

Unable to play WAV file on Activity board

$
0
0
The end goal is to build the Halloween Pumpkin Project (w/o XBee) that is on learn.parallax.com. The speaker is the Veho360 which is suggested in the tutorial. The memory card is 16GB SanDisk SDHC (smallest I could find at the time). For now I am using plain ole LEDs for the lighting.

I loaded the program and verified the pins of the microSD card, Left Channel and Right Channel (I think is what lpin and rpin means) of the speaker, and the PIR sensor. I previously formatted the microSD card to FAT32 and then copied a WAV file to the card; the only thing that is on the card. Well, it didn't work.

I verified the microSD card can be accessed by running "SD-test_103-Archive..." object from the Object Exchange. Next, I downloaded "V2-WAV" object. I made the necessary pin assignments for the microSD card and changed the string name of the file to what is on the microSD card. The object started successfully and displayed error that the file was not found. I promise the WAV file is on the card and I can play it through Windows Media player.

I'm at a loss of how to troubleshoot and isolate this. Thank you in advance for your assistance.

Propellor Code Snippets

$
0
0

Anybody know the code to load a 'register' with a literal value?

The program registers are really 32 bits long?

Then how do we see it?

Debug? Print? Run a debugging session?

Code should be Spin.

Deal with inserting Assembler later.

Where did JonnyMac's "JM_" objects go to?

$
0
0
I needed to look at jm_freqin.spin today, and it was not in the OBEX. All of
JonnyMac's other objects were missing from the OBEX too?


Bill M.

I found a jm_freqin.spin on my back-up drive.

P1V for Digilent Arty FPGA board (Xilinx Artix-7)

$
0
0
So a few weeks ago I had a chance to go to the Hackaday.com SuperConference in Pasadena CA, and I was one of the 40(?) lucky ones who did the FPGA workshop, by Sam Bobrowicz of Digilent Inc.

All the participants in the workshop got to take home an Arty FPGA board, and a new Multi-Touch Display Shield with MicroSD adapter that is not available yet, as far as I can tell. The price for the workshop was probably about half of the value of this hardware. Thanks Digilent, Hackaday and sponsors!

The Arty is a great FPGA board for makers, with a Xilinx Artix-7 35T FPGA. It has 4 "PMOD" connectors with 8 signal pins each (PMOD is the standard that Digilent uses to make peripherals for this kind of board), and it also has a shield header for Arduino and ChipKit. There is Flash ROM on board and DDR3 RAM but unfortunately no I2C EEPROM.

As you may know, I've been maintaining the Propeller Hardware source code on Github (https://github.com/jacgoudsmit/P1V) and I thought this would be an excellent opportunity to see if I could port the P1V sources to the Xilinx tools again. When @Mindrobots and @Heater were working on our initial Github repo of the Propeller HDL sources ("P8X32_Emulation"), we got some great submissions from Magnus Karlsson and others who ported the sources to the ISE tool that was in use for Xilinx targets back then. But this code hasn't been ported to the new "P1V" repo (which is the one that's based on the official Parallax Github release) until now.

Xilinx now has a new tool called Vivado, which (as I understand) integrates the steps of their development process better than the previous tools. I can't confirm that because I never used the older tools, but thanks to the Digilent workshop, I knew enough to be "dangerous" with Vivado. I imported the ISE project for the Pipistrello from the old P8X32_Emulation repo and it looks like it builds just fine but the source code is very different from the current HDL sources in the head revision of the Release branch of P1V, because we basically started over and Magnus made a lot of changes to the code to get everything to compile in ISE. So I haven't integrated Magnus' code into P1V just yet (there are other problems, for example the way he implemented hub memory is super straightforward but can't be used for the DE0-Nano because it doesn't have enough internal memory. But that's a whole different story).

I started a new Vivado project based on the current HDL sources in the head revision of my development branch, with the Arty as a target. It took me a day or so to figure out some minor problems which were basically me getting used to Vivado. For example, in the Altera (now Intel) Quartus software, I ignored pretty much all warnings, but I couldn't get Vivado to compile the source correctly without fixing all of them. Most warnings were caused by wires and regs being used before they were declared, apparently this is an important thing to get right in Vivado (I saw this afternoon that Chip has done some work recently in the P1V source code, to move some declarations around, so I guess he's aware of the problem too :-).

I eventually got the P1V source to compile for the Arty, but the bad news is that this FPGA is only big enough for 2 cogs.

Screenshot%202016-11-21%2023.12.04.png

The above is an image of the Artix-7 with a 2-cog P1V. The blue areas are the gates that are in use, and the green lines show how the I/O pins are connected. I guess I'm too spoiled with my Arrow BeMicroCV and BeMicroCV-A9 having plenty of space for the full Propeller with room to spare :-)

Anyway, I thought I'd share with you guys. This hasn't been checked in to my Github repo yet at this time; I need to do some housekeeping before I'll merge it, probably in the next few days. I'll keep you informed.

Thanks for reading!

===Jac

Small EEPROMs

$
0
0
Hi everyone,

What happens if you connect a Propeller to a small EEPROM? Can it boot (in theory) from e.g. a 24LC02 (256 bytes)?

And can the Propeller tool be used to download a program to a small EEPROM? If not, can the loader that comes with SimpleIDE do it?

Background: I finally got a DE0-Nano FPGA board and I tried a quick experiment, connecting the tiny EEPROM of the DE2-Nano to pins 28 and 29 of the virtual Propeller. I sort of expected it to give an error on the download because Propeller Tool probably always downloads 32K regardless of the program size, but I was hoping I could still boot a small program like the Cog LED test which is 96 bytes. But I couldn't get it to work right away so I was wondering if I did something wrong in my Verilog or if it's just not possible to do this with Propeller Tool.

Thanks!

===Jac

Project using a Propeller 1- Semi Automatic Pneumatic Can Crusher

$
0
0
This is by no means pushing the limits of the Propeller, but just something I made for the fun of it....

image

Hanprit Sandhu Propeller PASM Beginner's Book

$
0
0
It was a killer finding the info to get one.

Don't bother looking on Amazon and Ebay.

You get it by contacting him and he sends you one.

It's $15. Plus you get extra 80 pages of printed out source code.

Here's his email address.

harprit.sandhu@gmail.com

I will get mine pretty quick.

Hope that saves somebody some trouble.

Have his phone number if needed.

Propeller Activity Board WX I2C Far infrared sensor array

$
0
0
I can't figure out this I2c stuff. The dyi I2c does not help. The device asks for commands etc. In desperate need of help.

device: Far infrared sensor array at high speed with low noise (16x4 RES) - MLX90621
https://www.melexis.com/en/product/MLX90621/Far-Infrared-Sensor-Array-High-Speed-Low-Noise

For example, how do I setup communication?

For example the datasheet staes

Figure 4 Whole EEPROM dump (SA = 0x50, command = 0x00)


My modified code:

#include "simpletools.h" // Include simpletools header

i2c *eeBus;
// I2C bus ID

int main() // Main function
{

eeBus = i2c_newbus(9, 8, 0); // Set up I2C bus, get bus ID

// Use eeBus to write to device
i2c_out(eeBus, 0x50, // with I2C address 0b1010000,
0x00, 1, 0x04, 1); // send address 32768 (2 bytes)
// and "abc..." data (8 bytes)

while(i2c_busy(eeBus, 0b1010000)); // Wait for EEPROM to finish

char testStr[] = {0, 0, 0, 0, 1, 0, 0, 0}; // Set up test string

// Use eeBus to read from device
i2c_in(eeBus, 0x50, // with I2C address 0b1010000,
0x00, 1, testStr, 8); // send address 32768 (2 bytes)
// data in to testStr (8 bytes)

print("testStr = %s \n", testStr); // Display result
}


Propeller Board of Education

$
0
0
This might be a question for some of the "old timers" on the forum, :smile: but I am getting ready to put in an order and saw the Propeller Board of Education is on a good sale and looks like a closeout. I'm wondering if I should pick one up? Any opinions on it from those that have used one - such as does it have any benefits over the regular Activity Board or not really?
I currently have a Professional Development Board and a C3 as well, got them both right before they went out of production, I think. So was wondering if I should get one of these to complete the set or just for nostalgia/collection purposes. Wow, that sounds like I'm such a nerd... haha :innocent:
Thanks!

Receiving serial stream from P1 on Raspi, need web page GUI

$
0
0
Actually, it's bidirectional. Send command to P1 via web GUI, display data received.

My question is what software stack do I use on the Pi to provide the page in web browser?

What is out there that isn't a pig to learn, and looks current and is stable?
Viewing all 2845 articles
Browse latest View live


Latest Images