Netduino home hardware projects downloads community

Jump to content


The Netduino forums have been replaced by new forums at community.wildernesslabs.co. This site has been preserved for archival purposes only and the ability to make new accounts or posts has been turned off.

Szymon's Content

There have been 108 items by Szymon (Search limited from 29-April 23)


By content type

See this member's


Sort by                Order  

#1692 Netduino Mini

Posted by Szymon on 02 September 2010 - 06:51 PM in Netduino 2 (and Netduino 1)

If you plan to use it as a sensor node maybe it would be worth adding some wireless options directly on the board. I'm thinking something like this guy: http://www.sparkfun....roducts_id=9712



#1666 Sizing a Battery?

Posted by Szymon on 02 September 2010 - 07:56 AM in Netduino 2 (and Netduino 1)

Just out of curiosity, what features will a "weather" station have? To me personally, using 48 MHz ARM7 processor (with all the features) for temperature measurements seems a bit overkill... I understand benefits of .NET Micro Framework programming, though.


I agree with CW2. I built my weather stations using Arduino clone called JeeNode from http://news.jeelabs.org/. It has a built in low-power radio. It also uses modular design for and specifc "plugs" many sensors and devices are already available in his shop http://shop.jeelabs.com/. There is also lot of discussion about low-power requirements on his blog and forums.

My nodes last for more than a month on 3xAA batteries. Each uses a Room Board (http://shop.jeelabs....ucts/room-board) with temperature, humidity, motion and light sensor. I put them inside Airwick Freshmatic Mini enclosures: http://cid-4c7ec0c21...tal electronics

I think it might be worth using such devices for the sensor nodes but use Netduino with Ethernet shield as a central interface. It could be plug into a PC via USB or report data directly to a cloud service such as http://www.pachube.com/ via the Ethernet shield.



#1637 Motor Control in an Airsoft gun

Posted by Szymon on 01 September 2010 - 06:45 PM in General Discussion

Hi Stacy, Recenty there was a series of posts on the Make Blog about using Arduino to control aNerf Sentry Gun. Maybe this will give you some ideas to start with: Here are few of the posts in this series: http://blog.makezine...uild_wirin.html http://blog.makezine...emassembly.html http://blog.makezine...uild_prima.html http://blog.makezine...denclosure.html http://blog.makezine...king_stand.html http://blog.makezine...uild_motor.html They apparently used relays for this project: http://blog.makezine...olderrelay.html



#1633 Netduino Controlled Servo Robot

Posted by Szymon on 01 September 2010 - 04:32 PM in Project Showcase

Thank you for writing the WiiChuck driver! I was going to take a stab at this, but now I don't have to. AWESOME! Thank you SO much, you have provided so much help to us newbies. :-)


No problem. Now we can be Netduino Ninjas :-)

Let me know how it works out for you or if you have any suggestions how to improve it.



#1624 Netduino Controlled Servo Robot

Posted by Szymon on 01 September 2010 - 05:34 AM in Project Showcase

Nice project, I was curious what is the board that you are using that is connected to the Netduino?---AJB


It's the Adafruit's prototyping shield http://www.adafruit....&products_id=51



#1572 Netduino Controlled Servo Robot

Posted by Szymon on 31 August 2010 - 05:52 PM in Project Showcase

Hi,
I have published my second project. This time I upgraded the robotic kit from oomlout with Netduino. The robot uses continous rotation servos as differential drive (works great with Chris Seto's Servo class). It also uses Nintendo Wii Nunchuck as contoller (and includes my WiiChuck driver) and adds wireless communication via pair of XBees.

Here is the blog post http://geekswithblog...ervo-robot.aspx

The source code is here: http://cid-4c7ec0c21...b^_20100831.zip

This time no video because its to dark now. Let me know if I should make one tomorrow :-)



#1562 Feedback on proposed SD card mounting functions...

Posted by Szymon on 31 August 2010 - 11:44 AM in Beta Firmware and Drivers

Would we get any notification (event) when card is inserted or removed?



#1412 More blinking leds

Posted by Szymon on 27 August 2010 - 11:23 AM in Project Showcase

Ok, think this should be stickied, the problem is that VS2010 will AUTOMATICALLY put the microsoft default PINS in there, which do not map up to the Netduino pins. That was my problem. Thank you so much!!!!


I think you are right. The classes from SecretLabs.NETMF.Hardware.Netduino namespace should be actually declared as internal classes on Netduino class. Then it would be clear that you have to write for example Netduino.Pins.GPIO_PIN_D3. Currently this code is invalid. If I remmember ut is done this way in GHI and DeviceSolutions SDKs.



#1407 Schematic capture software?

Posted by Szymon on 27 August 2010 - 07:33 AM in General Discussion

Are there any others I should look into? I'm on the Windows platform, BTW.


Did you look at Fritzing? It's what I use to document schematics for my projects.
And CW2 already created Fritzing part for Netduino.



#1399 Best Hobby Oscilloscope

Posted by Szymon on 27 August 2010 - 05:36 AM in General Discussion

If you can afford it, I suggest the Rigol DS1052E. It has the bandwidth and sampling rate needed for most microcontroller project.


There was some hack to double the sampling rate to 100Mhz (but it no longer works with new firmware)
http://www.eevblog.c...100mhz-ds1102e/

I found it on http://www.dealextre...ls.dx/sku.30573

But what you think about this one? http://www.dealextre...ls.dx/sku.36153

If you are just going to look at digital signals, you can consider USB logic analyzer. There are a few companies that makes them.


I was thinking to buy this one http://www.saleae.com/logic/features/. Is it good enough?



#1339 .NET micro Framework device

Posted by Szymon on 26 August 2010 - 06:07 PM in General Discussion

The processor itself is surely fast enough for 1-Wire, at this time the problem is with native (C++) code generated by GCC, but it works.


It works on Arduino so it would be weird if Netduino's much superior CPU couldn't handle it :-)



#1323 More blinking leds

Posted by Szymon on 26 August 2010 - 11:29 AM in Project Showcase

Here is a simple Shifter test class extracted from my project:

using System;
using System.Threading;
using Microsoft.SPOT.Hardware;

namespace ShiftRegisterTest
{
    public class Program
    {
        private static Cpu.Pin latchPin     = SecretLabs.NETMF.Hardware.Netduino.Pins.GPIO_PIN_D7;
        private static Cpu.Pin clockPin     = SecretLabs.NETMF.Hardware.Netduino.Pins.GPIO_PIN_D6;
        private static Cpu.Pin dataPin      = SecretLabs.NETMF.Hardware.Netduino.Pins.GPIO_PIN_D5;

        public static void Main()
        {
            var shifter = new Shifter(latchPin, clockPin, dataPin);

            byte value = 0;
            while (true)
            {
/*
                // blink all LEDs
                shifter.Write(255);
                Thread.Sleep(200);
                shifter.Write(0);
                Thread.Sleep(200);
*/
                // blink single LED
                shifter.Write(value);
                value = (byte)(value << 1);
                if (value == 0) value = 1;
                Thread.Sleep(200);
            }
        }
    }

    public class Shifter : IDisposable
    {
        private readonly OutputPort _latchPort;
        private readonly OutputPort _clockPort;
        private readonly OutputPort _dataPort;

        public Shifter(Cpu.Pin latchPin, Cpu.Pin clockPin, Cpu.Pin dataPin)
        {
            _latchPort = new OutputPort(latchPin, false);
            _clockPort = new OutputPort(clockPin, false);
            _dataPort = new OutputPort(dataPin, false);
        }

        public void Dispose()
        {
            _latchPort.Dispose();
            _clockPort.Dispose();
            _dataPort.Dispose();
        }

        public void Write(params byte[] buffer)
        {
            // Ground latchPin and hold low for as long as you are transmitting
            _latchPort.Write(false);

            for (int i = 0; i < buffer.Length; i++)
            {
                ShiftOut(buffer[i]);
            }

            // Return the latch pin high to signal chip that it 
            // no longer needs to listen for information
            _latchPort.Write(true);
            _latchPort.Write(false);
        }

        private void ShiftOut(byte value)
        {
            _clockPort.Write(false);

            for (int i = 0; i < 8; i++)
            {
                byte mask = (byte)(1 << i);
                _dataPort.Write((value & mask) != 0);

                // Raise Clock
                _clockPort.Write(true);

                // Raise Data to prevent IO conflict 
                _dataPort.Write(true);

                // Lower Clock
                _clockPort.Write(false);
            }
        }
    }
}




#1322 More blinking leds

Posted by Szymon on 26 August 2010 - 11:05 AM in Project Showcase

I'm using Dig Pin5 for DS, Dig Pin6 as Data, Pin7 as latch and reading values from Q0 on Pin0 and Q1 on Pin1.


You should be using the SecretLabs.NETMF.Hardware.Netduino.Pins enumeration instead of Cpu.Pin. This will ensure correct mapping from hardware specific pin numbers to internal numbers. For example Netduino.Pins.GPIO_PIN_D5 true value is 51. So in your case you should change these lines:

            OutputPort DS = new OutputPort(SecretLabs.NETMF.Hardware.Netduino.Pins.GPIO_PIN_D5, false); 
            OutputPort StoreData = new OutputPort(SecretLabs.NETMF.Hardware.Netduino.Pins.GPIO_PIN_D6, false); 
            OutputPort Latch = new OutputPort(SecretLabs.NETMF.Hardware.Netduino.Pins.GPIO_PIN_D7, true); 
 
            InputPort Read1 = new InputPort(SecretLabs.NETMF.Hardware.Netduino.Pins.GPIO_PIN_D0, false, Port.ResistorMode.Disabled); 
            InputPort Read2 = new InputPort(SecretLabs.NETMF.Hardware.Netduino.Pins.GPIO_PIN_D1, false, Port.ResistorMode.Disabled); 

I hope this helps.



#1321 Native OneWire implementation needed

Posted by Szymon on 26 August 2010 - 10:38 AM in Netduino 2 (and Netduino 1)

Thats great news! Let me know if I can help with testing or anything.



#1318 .NET micro Framework device

Posted by Szymon on 26 August 2010 - 10:02 AM in General Discussion

Just thought of something else I'd love to see - a couple of power pins for the netduino itself. I'd like to be able to power it with LiPo batteries using a JST connector, but just a a couple of power input pins I can work with. :)

(no, I don't want to have to hook a barrel connector up to the battery if possible).


If I understand you are thinking about something like with Arduino Pro?
http://www.sparkfun....roducts_id=9221

And similar with Arduino Fio (it even has LiPo charger built-in):
http://www.sparkfun....roducts_id=9712



#1317 Temperature Sensor?

Posted by Szymon on 26 August 2010 - 09:56 AM in Netduino 2 (and Netduino 1)

The wikipedia article on 1-wire talks about bridge chips. http://en.wikipedia.org/wiki/1-Wire
For example I found this one DS2482-800 that works over I2C. This might be a viable short term solution.

The same article also mentions that UART ports could be used:

If a parallel port is inconvenient or the operating system interferes with the timing, a UART running at 100 kbit/s with a few resistors and special software can produce and sense acceptable 1-wire pulses.


Does anyone you know how to make this work?



#1315 Temperature Sensor?

Posted by Szymon on 26 August 2010 - 09:44 AM in Netduino 2 (and Netduino 1)


With my oscilloscope I see that the period is 115.28 uS. So it take 115.28 / 2 = 57.64 uS to change Digital Port state. To slow for OneWire communication.


Hi Pascal,
Great that you confirmed this with the oscilloscope. I tried this myself and came to the same conlusion like you and Pavel. See here http://forums.netdui...ntation-needed/

@Segu,
I'm afraid that right now if you want to use any OneWire devices you will have to use FEZ boards.



#1314 Native OneWire implementation needed

Posted by Szymon on 26 August 2010 - 09:08 AM in Netduino 2 (and Netduino 1)

Here is my delay microseconds method:

        private const long TicksPerMicrosecond = TimeSpan.TicksPerMillisecond/1000;

        private static void DelayMicroseconds(int microSeconds)
        {
            long stopTicks = Utility.GetMachineTime().Ticks + 
                (microSeconds * TicksPerMicrosecond);

            while (Utility.GetMachineTime().Ticks < stopTicks) { }
        }



#1313 Native OneWire implementation needed

Posted by Szymon on 26 August 2010 - 08:48 AM in Netduino 2 (and Netduino 1)

Hi, Last couple of days I was trying to write drivers for the DS18B20 one-wire temperature sensor. I converted the code from arduino library found here: http://milesburton.c...Control_Library Since it relies on one-wire protocol I also tried to convert the OneWire arduino library. The latest version is here: http://www.pjrc.com/...bs_OneWire.html Unfortunatelly I couldn't get it to work using managed ports (I used a TristatePort for data pin). I first confirmed my setup is correct by connecting the sensor to Arduino. It works fine there. I think the problem again is the correct timing. I don't have an osciloscope so I can't confirm this, but since one-wire doesn't even use a clock pin it has to rely on tight timings. As explained on http://en.wikipedia.org/wiki/1-Wire to transmit logical "0" master needs to send short 1-15 µs pulse. To send "1" the pulse should be 60 µs. The arduino code implements direct write through registers and microsecond delays. I don't think we can achieve this timing accuracy in managed code as was already observed by Pavel Bánský http://bansky.net/bl...k/comments.html However guys from GHI have included one-wire support in their firmware. So I run the same code for the temperature sensor on FEZ Mini board (but using their OneWire library instead) and this time it works perfectly. Chris Seto implemented it on FEZ a while ago as well http://files.chrisseto.com/8DC So I'm afraid that to interface with this type of devices we would need native support in the netduino firmware. It doesn't look very complex so I hope it could be added quickly. EDIT: I submited change proposal to the .NET MF team http://www.netmf.com...bf-3e8d70abfffb



#1216 Netduino Fritzing part

Posted by Szymon on 24 August 2010 - 10:56 AM in General Discussion

I have update schematics on my blog. It looks great! Thanks for great work. http://geekswithblog...nking_leds.aspx



#1215 Communication between 2 or more duino's

Posted by Szymon on 24 August 2010 - 10:40 AM in Netduino 2 (and Netduino 1)

That would be realy cool. Would even do greater distances and could use a switch for connecting them..


In the meantime I recommend reading the "Making Things Talk" book that dicusses many other communication technologies.
http://oreilly.com/c...g/9780596510510

Maybe it will give you some ideas. In any case let us know what you came up with.



#1214 Hobby Grade RC Car Control Suite

Posted by Szymon on 24 August 2010 - 10:25 AM in Netduino 2 (and Netduino 1)

Chris, The project looks super cool! Please keep posting about your progress. I'm busy now with some other things but would like to follow along and build one later too.



#1213 What prototype shield would you recommend?

Posted by Szymon on 24 August 2010 - 10:17 AM in Netduino 2 (and Netduino 1)

As the topic states, what prototype shield would you recommend?


Yesterday I received bunch of these shields ordered from Adafruit:
http://www.adafruit....&products_id=51
http://www.adafruit....products_id=187

Haven't tried them yet with Netduino, but I had used the first one in past with Arduino and I think its very well designed. Especially if you plan to test some ICs than it has a dedicated pads for it (up to 20 pins). You also get two LEDs and general use button. Important to note that reset button is brought up so it's not obscured by the shield. Important to note that board is double-sided so you can solder on both sides.

If you don't need the extra components you can order just the PCB for half the price:
http://www.adafruit....&products_id=55
But you also need the headers http://www.adafruit....&products_id=85
Or if you don't plant to stack shields simple break-away headers like this (you can cut them easily to proper length):
http://www.sparkfun....products_id=116

The other shield is just regular single-sided prototyping surface but you get lots of free space.



#1148 Protection!

Posted by Szymon on 23 August 2010 - 02:08 PM in Netduino 2 (and Netduino 1)

Hi, I received the adafruit's arduino enclosure today. Netduino fits nicely inside but of course I will have to make a new hole if I wanted to plug USB from outside. Also because the power plug dosn't stick out as much as on arduino there is a little gap between the bottomplate. Here you can see few photos of it: http://cid-4c7ec0c21...e.aspx/Netduino Overall the board looks good. I will try to connect the LCD and figure out how to add the buttons (probably will use switch buttons on the proto shield).



#1123 RepRap with Netduino Plus

Posted by Szymon on 23 August 2010 - 05:26 AM in Netduino Plus 2 (and Netduino Plus 1)

That's a fantastic idea.

Do you think it would make sense to use the USB port on the regular Netduino to make a RepRap type of device which could be printed via USB as well?


Yes, I think this might work too. But I think Ethernet+SC card combo would make it more interesting. I will try to digg why people are looking to use ARM boards for RepRap in general. Maybe Arduino has other limitations they want to solve this way.




home    hardware    projects    downloads    community    where to buy    contact Copyright © 2016 Wilderness Labs Inc.  |  Legal   |   CC BY-SA
This webpage is licensed under a Creative Commons Attribution-ShareAlike License.